api.go 217 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package s3 provides a client for Amazon Simple Storage Service.
  3. package s3
  4. import (
  5. "io"
  6. "time"
  7. "github.com/aws/aws-sdk-go/aws/awsutil"
  8. "github.com/aws/aws-sdk-go/aws/request"
  9. )
  10. const opAbortMultipartUpload = "AbortMultipartUpload"
  11. // AbortMultipartUploadRequest generates a request for the AbortMultipartUpload operation.
  12. func (c *S3) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput) {
  13. op := &request.Operation{
  14. Name: opAbortMultipartUpload,
  15. HTTPMethod: "DELETE",
  16. HTTPPath: "/{Bucket}/{Key+}",
  17. }
  18. if input == nil {
  19. input = &AbortMultipartUploadInput{}
  20. }
  21. req = c.newRequest(op, input, output)
  22. output = &AbortMultipartUploadOutput{}
  23. req.Data = output
  24. return
  25. }
  26. // Aborts a multipart upload.
  27. //
  28. // To verify that all parts have been removed, so you don't get charged for
  29. // the part storage, you should call the List Parts operation and ensure the
  30. // parts list is empty.
  31. func (c *S3) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error) {
  32. req, out := c.AbortMultipartUploadRequest(input)
  33. err := req.Send()
  34. return out, err
  35. }
  36. const opCompleteMultipartUpload = "CompleteMultipartUpload"
  37. // CompleteMultipartUploadRequest generates a request for the CompleteMultipartUpload operation.
  38. func (c *S3) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *CompleteMultipartUploadOutput) {
  39. op := &request.Operation{
  40. Name: opCompleteMultipartUpload,
  41. HTTPMethod: "POST",
  42. HTTPPath: "/{Bucket}/{Key+}",
  43. }
  44. if input == nil {
  45. input = &CompleteMultipartUploadInput{}
  46. }
  47. req = c.newRequest(op, input, output)
  48. output = &CompleteMultipartUploadOutput{}
  49. req.Data = output
  50. return
  51. }
  52. // Completes a multipart upload by assembling previously uploaded parts.
  53. func (c *S3) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*CompleteMultipartUploadOutput, error) {
  54. req, out := c.CompleteMultipartUploadRequest(input)
  55. err := req.Send()
  56. return out, err
  57. }
  58. const opCopyObject = "CopyObject"
  59. // CopyObjectRequest generates a request for the CopyObject operation.
  60. func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, output *CopyObjectOutput) {
  61. op := &request.Operation{
  62. Name: opCopyObject,
  63. HTTPMethod: "PUT",
  64. HTTPPath: "/{Bucket}/{Key+}",
  65. }
  66. if input == nil {
  67. input = &CopyObjectInput{}
  68. }
  69. req = c.newRequest(op, input, output)
  70. output = &CopyObjectOutput{}
  71. req.Data = output
  72. return
  73. }
  74. // Creates a copy of an object that is already stored in Amazon S3.
  75. func (c *S3) CopyObject(input *CopyObjectInput) (*CopyObjectOutput, error) {
  76. req, out := c.CopyObjectRequest(input)
  77. err := req.Send()
  78. return out, err
  79. }
  80. const opCreateBucket = "CreateBucket"
  81. // CreateBucketRequest generates a request for the CreateBucket operation.
  82. func (c *S3) CreateBucketRequest(input *CreateBucketInput) (req *request.Request, output *CreateBucketOutput) {
  83. op := &request.Operation{
  84. Name: opCreateBucket,
  85. HTTPMethod: "PUT",
  86. HTTPPath: "/{Bucket}",
  87. }
  88. if input == nil {
  89. input = &CreateBucketInput{}
  90. }
  91. req = c.newRequest(op, input, output)
  92. output = &CreateBucketOutput{}
  93. req.Data = output
  94. return
  95. }
  96. // Creates a new bucket.
  97. func (c *S3) CreateBucket(input *CreateBucketInput) (*CreateBucketOutput, error) {
  98. req, out := c.CreateBucketRequest(input)
  99. err := req.Send()
  100. return out, err
  101. }
  102. const opCreateMultipartUpload = "CreateMultipartUpload"
  103. // CreateMultipartUploadRequest generates a request for the CreateMultipartUpload operation.
  104. func (c *S3) CreateMultipartUploadRequest(input *CreateMultipartUploadInput) (req *request.Request, output *CreateMultipartUploadOutput) {
  105. op := &request.Operation{
  106. Name: opCreateMultipartUpload,
  107. HTTPMethod: "POST",
  108. HTTPPath: "/{Bucket}/{Key+}?uploads",
  109. }
  110. if input == nil {
  111. input = &CreateMultipartUploadInput{}
  112. }
  113. req = c.newRequest(op, input, output)
  114. output = &CreateMultipartUploadOutput{}
  115. req.Data = output
  116. return
  117. }
  118. // Initiates a multipart upload and returns an upload ID.
  119. //
  120. // Note: After you initiate multipart upload and upload one or more parts,
  121. // you must either complete or abort multipart upload in order to stop getting
  122. // charged for storage of the uploaded parts. Only after you either complete
  123. // or abort multipart upload, Amazon S3 frees up the parts storage and stops
  124. // charging you for the parts storage.
  125. func (c *S3) CreateMultipartUpload(input *CreateMultipartUploadInput) (*CreateMultipartUploadOutput, error) {
  126. req, out := c.CreateMultipartUploadRequest(input)
  127. err := req.Send()
  128. return out, err
  129. }
  130. const opDeleteBucket = "DeleteBucket"
  131. // DeleteBucketRequest generates a request for the DeleteBucket operation.
  132. func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request, output *DeleteBucketOutput) {
  133. op := &request.Operation{
  134. Name: opDeleteBucket,
  135. HTTPMethod: "DELETE",
  136. HTTPPath: "/{Bucket}",
  137. }
  138. if input == nil {
  139. input = &DeleteBucketInput{}
  140. }
  141. req = c.newRequest(op, input, output)
  142. output = &DeleteBucketOutput{}
  143. req.Data = output
  144. return
  145. }
  146. // Deletes the bucket. All objects (including all object versions and Delete
  147. // Markers) in the bucket must be deleted before the bucket itself can be deleted.
  148. func (c *S3) DeleteBucket(input *DeleteBucketInput) (*DeleteBucketOutput, error) {
  149. req, out := c.DeleteBucketRequest(input)
  150. err := req.Send()
  151. return out, err
  152. }
  153. const opDeleteBucketCors = "DeleteBucketCors"
  154. // DeleteBucketCorsRequest generates a request for the DeleteBucketCors operation.
  155. func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request.Request, output *DeleteBucketCorsOutput) {
  156. op := &request.Operation{
  157. Name: opDeleteBucketCors,
  158. HTTPMethod: "DELETE",
  159. HTTPPath: "/{Bucket}?cors",
  160. }
  161. if input == nil {
  162. input = &DeleteBucketCorsInput{}
  163. }
  164. req = c.newRequest(op, input, output)
  165. output = &DeleteBucketCorsOutput{}
  166. req.Data = output
  167. return
  168. }
  169. // Deletes the cors configuration information set for the bucket.
  170. func (c *S3) DeleteBucketCors(input *DeleteBucketCorsInput) (*DeleteBucketCorsOutput, error) {
  171. req, out := c.DeleteBucketCorsRequest(input)
  172. err := req.Send()
  173. return out, err
  174. }
  175. const opDeleteBucketLifecycle = "DeleteBucketLifecycle"
  176. // DeleteBucketLifecycleRequest generates a request for the DeleteBucketLifecycle operation.
  177. func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (req *request.Request, output *DeleteBucketLifecycleOutput) {
  178. op := &request.Operation{
  179. Name: opDeleteBucketLifecycle,
  180. HTTPMethod: "DELETE",
  181. HTTPPath: "/{Bucket}?lifecycle",
  182. }
  183. if input == nil {
  184. input = &DeleteBucketLifecycleInput{}
  185. }
  186. req = c.newRequest(op, input, output)
  187. output = &DeleteBucketLifecycleOutput{}
  188. req.Data = output
  189. return
  190. }
  191. // Deletes the lifecycle configuration from the bucket.
  192. func (c *S3) DeleteBucketLifecycle(input *DeleteBucketLifecycleInput) (*DeleteBucketLifecycleOutput, error) {
  193. req, out := c.DeleteBucketLifecycleRequest(input)
  194. err := req.Send()
  195. return out, err
  196. }
  197. const opDeleteBucketPolicy = "DeleteBucketPolicy"
  198. // DeleteBucketPolicyRequest generates a request for the DeleteBucketPolicy operation.
  199. func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *request.Request, output *DeleteBucketPolicyOutput) {
  200. op := &request.Operation{
  201. Name: opDeleteBucketPolicy,
  202. HTTPMethod: "DELETE",
  203. HTTPPath: "/{Bucket}?policy",
  204. }
  205. if input == nil {
  206. input = &DeleteBucketPolicyInput{}
  207. }
  208. req = c.newRequest(op, input, output)
  209. output = &DeleteBucketPolicyOutput{}
  210. req.Data = output
  211. return
  212. }
  213. // Deletes the policy from the bucket.
  214. func (c *S3) DeleteBucketPolicy(input *DeleteBucketPolicyInput) (*DeleteBucketPolicyOutput, error) {
  215. req, out := c.DeleteBucketPolicyRequest(input)
  216. err := req.Send()
  217. return out, err
  218. }
  219. const opDeleteBucketReplication = "DeleteBucketReplication"
  220. // DeleteBucketReplicationRequest generates a request for the DeleteBucketReplication operation.
  221. func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *request.Request, output *DeleteBucketReplicationOutput) {
  222. op := &request.Operation{
  223. Name: opDeleteBucketReplication,
  224. HTTPMethod: "DELETE",
  225. HTTPPath: "/{Bucket}?replication",
  226. }
  227. if input == nil {
  228. input = &DeleteBucketReplicationInput{}
  229. }
  230. req = c.newRequest(op, input, output)
  231. output = &DeleteBucketReplicationOutput{}
  232. req.Data = output
  233. return
  234. }
  235. func (c *S3) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error) {
  236. req, out := c.DeleteBucketReplicationRequest(input)
  237. err := req.Send()
  238. return out, err
  239. }
  240. const opDeleteBucketTagging = "DeleteBucketTagging"
  241. // DeleteBucketTaggingRequest generates a request for the DeleteBucketTagging operation.
  242. func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *request.Request, output *DeleteBucketTaggingOutput) {
  243. op := &request.Operation{
  244. Name: opDeleteBucketTagging,
  245. HTTPMethod: "DELETE",
  246. HTTPPath: "/{Bucket}?tagging",
  247. }
  248. if input == nil {
  249. input = &DeleteBucketTaggingInput{}
  250. }
  251. req = c.newRequest(op, input, output)
  252. output = &DeleteBucketTaggingOutput{}
  253. req.Data = output
  254. return
  255. }
  256. // Deletes the tags from the bucket.
  257. func (c *S3) DeleteBucketTagging(input *DeleteBucketTaggingInput) (*DeleteBucketTaggingOutput, error) {
  258. req, out := c.DeleteBucketTaggingRequest(input)
  259. err := req.Send()
  260. return out, err
  261. }
  262. const opDeleteBucketWebsite = "DeleteBucketWebsite"
  263. // DeleteBucketWebsiteRequest generates a request for the DeleteBucketWebsite operation.
  264. func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *request.Request, output *DeleteBucketWebsiteOutput) {
  265. op := &request.Operation{
  266. Name: opDeleteBucketWebsite,
  267. HTTPMethod: "DELETE",
  268. HTTPPath: "/{Bucket}?website",
  269. }
  270. if input == nil {
  271. input = &DeleteBucketWebsiteInput{}
  272. }
  273. req = c.newRequest(op, input, output)
  274. output = &DeleteBucketWebsiteOutput{}
  275. req.Data = output
  276. return
  277. }
  278. // This operation removes the website configuration from the bucket.
  279. func (c *S3) DeleteBucketWebsite(input *DeleteBucketWebsiteInput) (*DeleteBucketWebsiteOutput, error) {
  280. req, out := c.DeleteBucketWebsiteRequest(input)
  281. err := req.Send()
  282. return out, err
  283. }
  284. const opDeleteObject = "DeleteObject"
  285. // DeleteObjectRequest generates a request for the DeleteObject operation.
  286. func (c *S3) DeleteObjectRequest(input *DeleteObjectInput) (req *request.Request, output *DeleteObjectOutput) {
  287. op := &request.Operation{
  288. Name: opDeleteObject,
  289. HTTPMethod: "DELETE",
  290. HTTPPath: "/{Bucket}/{Key+}",
  291. }
  292. if input == nil {
  293. input = &DeleteObjectInput{}
  294. }
  295. req = c.newRequest(op, input, output)
  296. output = &DeleteObjectOutput{}
  297. req.Data = output
  298. return
  299. }
  300. // Removes the null version (if there is one) of an object and inserts a delete
  301. // marker, which becomes the latest version of the object. If there isn't a
  302. // null version, Amazon S3 does not remove any objects.
  303. func (c *S3) DeleteObject(input *DeleteObjectInput) (*DeleteObjectOutput, error) {
  304. req, out := c.DeleteObjectRequest(input)
  305. err := req.Send()
  306. return out, err
  307. }
  308. const opDeleteObjects = "DeleteObjects"
  309. // DeleteObjectsRequest generates a request for the DeleteObjects operation.
  310. func (c *S3) DeleteObjectsRequest(input *DeleteObjectsInput) (req *request.Request, output *DeleteObjectsOutput) {
  311. op := &request.Operation{
  312. Name: opDeleteObjects,
  313. HTTPMethod: "POST",
  314. HTTPPath: "/{Bucket}?delete",
  315. }
  316. if input == nil {
  317. input = &DeleteObjectsInput{}
  318. }
  319. req = c.newRequest(op, input, output)
  320. output = &DeleteObjectsOutput{}
  321. req.Data = output
  322. return
  323. }
  324. // This operation enables you to delete multiple objects from a bucket using
  325. // a single HTTP request. You may specify up to 1000 keys.
  326. func (c *S3) DeleteObjects(input *DeleteObjectsInput) (*DeleteObjectsOutput, error) {
  327. req, out := c.DeleteObjectsRequest(input)
  328. err := req.Send()
  329. return out, err
  330. }
  331. const opGetBucketAcl = "GetBucketAcl"
  332. // GetBucketAclRequest generates a request for the GetBucketAcl operation.
  333. func (c *S3) GetBucketAclRequest(input *GetBucketAclInput) (req *request.Request, output *GetBucketAclOutput) {
  334. op := &request.Operation{
  335. Name: opGetBucketAcl,
  336. HTTPMethod: "GET",
  337. HTTPPath: "/{Bucket}?acl",
  338. }
  339. if input == nil {
  340. input = &GetBucketAclInput{}
  341. }
  342. req = c.newRequest(op, input, output)
  343. output = &GetBucketAclOutput{}
  344. req.Data = output
  345. return
  346. }
  347. // Gets the access control policy for the bucket.
  348. func (c *S3) GetBucketAcl(input *GetBucketAclInput) (*GetBucketAclOutput, error) {
  349. req, out := c.GetBucketAclRequest(input)
  350. err := req.Send()
  351. return out, err
  352. }
  353. const opGetBucketCors = "GetBucketCors"
  354. // GetBucketCorsRequest generates a request for the GetBucketCors operation.
  355. func (c *S3) GetBucketCorsRequest(input *GetBucketCorsInput) (req *request.Request, output *GetBucketCorsOutput) {
  356. op := &request.Operation{
  357. Name: opGetBucketCors,
  358. HTTPMethod: "GET",
  359. HTTPPath: "/{Bucket}?cors",
  360. }
  361. if input == nil {
  362. input = &GetBucketCorsInput{}
  363. }
  364. req = c.newRequest(op, input, output)
  365. output = &GetBucketCorsOutput{}
  366. req.Data = output
  367. return
  368. }
  369. // Returns the cors configuration for the bucket.
  370. func (c *S3) GetBucketCors(input *GetBucketCorsInput) (*GetBucketCorsOutput, error) {
  371. req, out := c.GetBucketCorsRequest(input)
  372. err := req.Send()
  373. return out, err
  374. }
  375. const opGetBucketLifecycle = "GetBucketLifecycle"
  376. // GetBucketLifecycleRequest generates a request for the GetBucketLifecycle operation.
  377. func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput) {
  378. op := &request.Operation{
  379. Name: opGetBucketLifecycle,
  380. HTTPMethod: "GET",
  381. HTTPPath: "/{Bucket}?lifecycle",
  382. }
  383. if input == nil {
  384. input = &GetBucketLifecycleInput{}
  385. }
  386. req = c.newRequest(op, input, output)
  387. output = &GetBucketLifecycleOutput{}
  388. req.Data = output
  389. return
  390. }
  391. // Returns the lifecycle configuration information set on the bucket.
  392. func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error) {
  393. req, out := c.GetBucketLifecycleRequest(input)
  394. err := req.Send()
  395. return out, err
  396. }
  397. const opGetBucketLocation = "GetBucketLocation"
  398. // GetBucketLocationRequest generates a request for the GetBucketLocation operation.
  399. func (c *S3) GetBucketLocationRequest(input *GetBucketLocationInput) (req *request.Request, output *GetBucketLocationOutput) {
  400. op := &request.Operation{
  401. Name: opGetBucketLocation,
  402. HTTPMethod: "GET",
  403. HTTPPath: "/{Bucket}?location",
  404. }
  405. if input == nil {
  406. input = &GetBucketLocationInput{}
  407. }
  408. req = c.newRequest(op, input, output)
  409. output = &GetBucketLocationOutput{}
  410. req.Data = output
  411. return
  412. }
  413. // Returns the region the bucket resides in.
  414. func (c *S3) GetBucketLocation(input *GetBucketLocationInput) (*GetBucketLocationOutput, error) {
  415. req, out := c.GetBucketLocationRequest(input)
  416. err := req.Send()
  417. return out, err
  418. }
  419. const opGetBucketLogging = "GetBucketLogging"
  420. // GetBucketLoggingRequest generates a request for the GetBucketLogging operation.
  421. func (c *S3) GetBucketLoggingRequest(input *GetBucketLoggingInput) (req *request.Request, output *GetBucketLoggingOutput) {
  422. op := &request.Operation{
  423. Name: opGetBucketLogging,
  424. HTTPMethod: "GET",
  425. HTTPPath: "/{Bucket}?logging",
  426. }
  427. if input == nil {
  428. input = &GetBucketLoggingInput{}
  429. }
  430. req = c.newRequest(op, input, output)
  431. output = &GetBucketLoggingOutput{}
  432. req.Data = output
  433. return
  434. }
  435. // Returns the logging status of a bucket and the permissions users have to
  436. // view and modify that status. To use GET, you must be the bucket owner.
  437. func (c *S3) GetBucketLogging(input *GetBucketLoggingInput) (*GetBucketLoggingOutput, error) {
  438. req, out := c.GetBucketLoggingRequest(input)
  439. err := req.Send()
  440. return out, err
  441. }
  442. const opGetBucketNotification = "GetBucketNotification"
  443. // GetBucketNotificationRequest generates a request for the GetBucketNotification operation.
  444. func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated) {
  445. op := &request.Operation{
  446. Name: opGetBucketNotification,
  447. HTTPMethod: "GET",
  448. HTTPPath: "/{Bucket}?notification",
  449. }
  450. if input == nil {
  451. input = &GetBucketNotificationConfigurationRequest{}
  452. }
  453. req = c.newRequest(op, input, output)
  454. output = &NotificationConfigurationDeprecated{}
  455. req.Data = output
  456. return
  457. }
  458. // Deprecated, see the GetBucketNotificationConfiguration operation.
  459. func (c *S3) GetBucketNotification(input *GetBucketNotificationConfigurationRequest) (*NotificationConfigurationDeprecated, error) {
  460. req, out := c.GetBucketNotificationRequest(input)
  461. err := req.Send()
  462. return out, err
  463. }
  464. const opGetBucketNotificationConfiguration = "GetBucketNotificationConfiguration"
  465. // GetBucketNotificationConfigurationRequest generates a request for the GetBucketNotificationConfiguration operation.
  466. func (c *S3) GetBucketNotificationConfigurationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfiguration) {
  467. op := &request.Operation{
  468. Name: opGetBucketNotificationConfiguration,
  469. HTTPMethod: "GET",
  470. HTTPPath: "/{Bucket}?notification",
  471. }
  472. if input == nil {
  473. input = &GetBucketNotificationConfigurationRequest{}
  474. }
  475. req = c.newRequest(op, input, output)
  476. output = &NotificationConfiguration{}
  477. req.Data = output
  478. return
  479. }
  480. // Returns the notification configuration of a bucket.
  481. func (c *S3) GetBucketNotificationConfiguration(input *GetBucketNotificationConfigurationRequest) (*NotificationConfiguration, error) {
  482. req, out := c.GetBucketNotificationConfigurationRequest(input)
  483. err := req.Send()
  484. return out, err
  485. }
  486. const opGetBucketPolicy = "GetBucketPolicy"
  487. // GetBucketPolicyRequest generates a request for the GetBucketPolicy operation.
  488. func (c *S3) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *request.Request, output *GetBucketPolicyOutput) {
  489. op := &request.Operation{
  490. Name: opGetBucketPolicy,
  491. HTTPMethod: "GET",
  492. HTTPPath: "/{Bucket}?policy",
  493. }
  494. if input == nil {
  495. input = &GetBucketPolicyInput{}
  496. }
  497. req = c.newRequest(op, input, output)
  498. output = &GetBucketPolicyOutput{}
  499. req.Data = output
  500. return
  501. }
  502. // Returns the policy of a specified bucket.
  503. func (c *S3) GetBucketPolicy(input *GetBucketPolicyInput) (*GetBucketPolicyOutput, error) {
  504. req, out := c.GetBucketPolicyRequest(input)
  505. err := req.Send()
  506. return out, err
  507. }
  508. const opGetBucketReplication = "GetBucketReplication"
  509. // GetBucketReplicationRequest generates a request for the GetBucketReplication operation.
  510. func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *request.Request, output *GetBucketReplicationOutput) {
  511. op := &request.Operation{
  512. Name: opGetBucketReplication,
  513. HTTPMethod: "GET",
  514. HTTPPath: "/{Bucket}?replication",
  515. }
  516. if input == nil {
  517. input = &GetBucketReplicationInput{}
  518. }
  519. req = c.newRequest(op, input, output)
  520. output = &GetBucketReplicationOutput{}
  521. req.Data = output
  522. return
  523. }
  524. func (c *S3) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error) {
  525. req, out := c.GetBucketReplicationRequest(input)
  526. err := req.Send()
  527. return out, err
  528. }
  529. const opGetBucketRequestPayment = "GetBucketRequestPayment"
  530. // GetBucketRequestPaymentRequest generates a request for the GetBucketRequestPayment operation.
  531. func (c *S3) GetBucketRequestPaymentRequest(input *GetBucketRequestPaymentInput) (req *request.Request, output *GetBucketRequestPaymentOutput) {
  532. op := &request.Operation{
  533. Name: opGetBucketRequestPayment,
  534. HTTPMethod: "GET",
  535. HTTPPath: "/{Bucket}?requestPayment",
  536. }
  537. if input == nil {
  538. input = &GetBucketRequestPaymentInput{}
  539. }
  540. req = c.newRequest(op, input, output)
  541. output = &GetBucketRequestPaymentOutput{}
  542. req.Data = output
  543. return
  544. }
  545. // Returns the request payment configuration of a bucket.
  546. func (c *S3) GetBucketRequestPayment(input *GetBucketRequestPaymentInput) (*GetBucketRequestPaymentOutput, error) {
  547. req, out := c.GetBucketRequestPaymentRequest(input)
  548. err := req.Send()
  549. return out, err
  550. }
  551. const opGetBucketTagging = "GetBucketTagging"
  552. // GetBucketTaggingRequest generates a request for the GetBucketTagging operation.
  553. func (c *S3) GetBucketTaggingRequest(input *GetBucketTaggingInput) (req *request.Request, output *GetBucketTaggingOutput) {
  554. op := &request.Operation{
  555. Name: opGetBucketTagging,
  556. HTTPMethod: "GET",
  557. HTTPPath: "/{Bucket}?tagging",
  558. }
  559. if input == nil {
  560. input = &GetBucketTaggingInput{}
  561. }
  562. req = c.newRequest(op, input, output)
  563. output = &GetBucketTaggingOutput{}
  564. req.Data = output
  565. return
  566. }
  567. // Returns the tag set associated with the bucket.
  568. func (c *S3) GetBucketTagging(input *GetBucketTaggingInput) (*GetBucketTaggingOutput, error) {
  569. req, out := c.GetBucketTaggingRequest(input)
  570. err := req.Send()
  571. return out, err
  572. }
  573. const opGetBucketVersioning = "GetBucketVersioning"
  574. // GetBucketVersioningRequest generates a request for the GetBucketVersioning operation.
  575. func (c *S3) GetBucketVersioningRequest(input *GetBucketVersioningInput) (req *request.Request, output *GetBucketVersioningOutput) {
  576. op := &request.Operation{
  577. Name: opGetBucketVersioning,
  578. HTTPMethod: "GET",
  579. HTTPPath: "/{Bucket}?versioning",
  580. }
  581. if input == nil {
  582. input = &GetBucketVersioningInput{}
  583. }
  584. req = c.newRequest(op, input, output)
  585. output = &GetBucketVersioningOutput{}
  586. req.Data = output
  587. return
  588. }
  589. // Returns the versioning state of a bucket.
  590. func (c *S3) GetBucketVersioning(input *GetBucketVersioningInput) (*GetBucketVersioningOutput, error) {
  591. req, out := c.GetBucketVersioningRequest(input)
  592. err := req.Send()
  593. return out, err
  594. }
  595. const opGetBucketWebsite = "GetBucketWebsite"
  596. // GetBucketWebsiteRequest generates a request for the GetBucketWebsite operation.
  597. func (c *S3) GetBucketWebsiteRequest(input *GetBucketWebsiteInput) (req *request.Request, output *GetBucketWebsiteOutput) {
  598. op := &request.Operation{
  599. Name: opGetBucketWebsite,
  600. HTTPMethod: "GET",
  601. HTTPPath: "/{Bucket}?website",
  602. }
  603. if input == nil {
  604. input = &GetBucketWebsiteInput{}
  605. }
  606. req = c.newRequest(op, input, output)
  607. output = &GetBucketWebsiteOutput{}
  608. req.Data = output
  609. return
  610. }
  611. // Returns the website configuration for a bucket.
  612. func (c *S3) GetBucketWebsite(input *GetBucketWebsiteInput) (*GetBucketWebsiteOutput, error) {
  613. req, out := c.GetBucketWebsiteRequest(input)
  614. err := req.Send()
  615. return out, err
  616. }
  617. const opGetObject = "GetObject"
  618. // GetObjectRequest generates a request for the GetObject operation.
  619. func (c *S3) GetObjectRequest(input *GetObjectInput) (req *request.Request, output *GetObjectOutput) {
  620. op := &request.Operation{
  621. Name: opGetObject,
  622. HTTPMethod: "GET",
  623. HTTPPath: "/{Bucket}/{Key+}",
  624. }
  625. if input == nil {
  626. input = &GetObjectInput{}
  627. }
  628. req = c.newRequest(op, input, output)
  629. output = &GetObjectOutput{}
  630. req.Data = output
  631. return
  632. }
  633. // Retrieves objects from Amazon S3.
  634. func (c *S3) GetObject(input *GetObjectInput) (*GetObjectOutput, error) {
  635. req, out := c.GetObjectRequest(input)
  636. err := req.Send()
  637. return out, err
  638. }
  639. const opGetObjectAcl = "GetObjectAcl"
  640. // GetObjectAclRequest generates a request for the GetObjectAcl operation.
  641. func (c *S3) GetObjectAclRequest(input *GetObjectAclInput) (req *request.Request, output *GetObjectAclOutput) {
  642. op := &request.Operation{
  643. Name: opGetObjectAcl,
  644. HTTPMethod: "GET",
  645. HTTPPath: "/{Bucket}/{Key+}?acl",
  646. }
  647. if input == nil {
  648. input = &GetObjectAclInput{}
  649. }
  650. req = c.newRequest(op, input, output)
  651. output = &GetObjectAclOutput{}
  652. req.Data = output
  653. return
  654. }
  655. // Returns the access control list (ACL) of an object.
  656. func (c *S3) GetObjectAcl(input *GetObjectAclInput) (*GetObjectAclOutput, error) {
  657. req, out := c.GetObjectAclRequest(input)
  658. err := req.Send()
  659. return out, err
  660. }
  661. const opGetObjectTorrent = "GetObjectTorrent"
  662. // GetObjectTorrentRequest generates a request for the GetObjectTorrent operation.
  663. func (c *S3) GetObjectTorrentRequest(input *GetObjectTorrentInput) (req *request.Request, output *GetObjectTorrentOutput) {
  664. op := &request.Operation{
  665. Name: opGetObjectTorrent,
  666. HTTPMethod: "GET",
  667. HTTPPath: "/{Bucket}/{Key+}?torrent",
  668. }
  669. if input == nil {
  670. input = &GetObjectTorrentInput{}
  671. }
  672. req = c.newRequest(op, input, output)
  673. output = &GetObjectTorrentOutput{}
  674. req.Data = output
  675. return
  676. }
  677. // Return torrent files from a bucket.
  678. func (c *S3) GetObjectTorrent(input *GetObjectTorrentInput) (*GetObjectTorrentOutput, error) {
  679. req, out := c.GetObjectTorrentRequest(input)
  680. err := req.Send()
  681. return out, err
  682. }
  683. const opHeadBucket = "HeadBucket"
  684. // HeadBucketRequest generates a request for the HeadBucket operation.
  685. func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, output *HeadBucketOutput) {
  686. op := &request.Operation{
  687. Name: opHeadBucket,
  688. HTTPMethod: "HEAD",
  689. HTTPPath: "/{Bucket}",
  690. }
  691. if input == nil {
  692. input = &HeadBucketInput{}
  693. }
  694. req = c.newRequest(op, input, output)
  695. output = &HeadBucketOutput{}
  696. req.Data = output
  697. return
  698. }
  699. // This operation is useful to determine if a bucket exists and you have permission
  700. // to access it.
  701. func (c *S3) HeadBucket(input *HeadBucketInput) (*HeadBucketOutput, error) {
  702. req, out := c.HeadBucketRequest(input)
  703. err := req.Send()
  704. return out, err
  705. }
  706. const opHeadObject = "HeadObject"
  707. // HeadObjectRequest generates a request for the HeadObject operation.
  708. func (c *S3) HeadObjectRequest(input *HeadObjectInput) (req *request.Request, output *HeadObjectOutput) {
  709. op := &request.Operation{
  710. Name: opHeadObject,
  711. HTTPMethod: "HEAD",
  712. HTTPPath: "/{Bucket}/{Key+}",
  713. }
  714. if input == nil {
  715. input = &HeadObjectInput{}
  716. }
  717. req = c.newRequest(op, input, output)
  718. output = &HeadObjectOutput{}
  719. req.Data = output
  720. return
  721. }
  722. // The HEAD operation retrieves metadata from an object without returning the
  723. // object itself. This operation is useful if you're only interested in an object's
  724. // metadata. To use HEAD, you must have READ access to the object.
  725. func (c *S3) HeadObject(input *HeadObjectInput) (*HeadObjectOutput, error) {
  726. req, out := c.HeadObjectRequest(input)
  727. err := req.Send()
  728. return out, err
  729. }
  730. const opListBuckets = "ListBuckets"
  731. // ListBucketsRequest generates a request for the ListBuckets operation.
  732. func (c *S3) ListBucketsRequest(input *ListBucketsInput) (req *request.Request, output *ListBucketsOutput) {
  733. op := &request.Operation{
  734. Name: opListBuckets,
  735. HTTPMethod: "GET",
  736. HTTPPath: "/",
  737. }
  738. if input == nil {
  739. input = &ListBucketsInput{}
  740. }
  741. req = c.newRequest(op, input, output)
  742. output = &ListBucketsOutput{}
  743. req.Data = output
  744. return
  745. }
  746. // Returns a list of all buckets owned by the authenticated sender of the request.
  747. func (c *S3) ListBuckets(input *ListBucketsInput) (*ListBucketsOutput, error) {
  748. req, out := c.ListBucketsRequest(input)
  749. err := req.Send()
  750. return out, err
  751. }
  752. const opListMultipartUploads = "ListMultipartUploads"
  753. // ListMultipartUploadsRequest generates a request for the ListMultipartUploads operation.
  754. func (c *S3) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput) {
  755. op := &request.Operation{
  756. Name: opListMultipartUploads,
  757. HTTPMethod: "GET",
  758. HTTPPath: "/{Bucket}?uploads",
  759. Paginator: &request.Paginator{
  760. InputTokens: []string{"KeyMarker", "UploadIdMarker"},
  761. OutputTokens: []string{"NextKeyMarker", "NextUploadIdMarker"},
  762. LimitToken: "MaxUploads",
  763. TruncationToken: "IsTruncated",
  764. },
  765. }
  766. if input == nil {
  767. input = &ListMultipartUploadsInput{}
  768. }
  769. req = c.newRequest(op, input, output)
  770. output = &ListMultipartUploadsOutput{}
  771. req.Data = output
  772. return
  773. }
  774. // This operation lists in-progress multipart uploads.
  775. func (c *S3) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error) {
  776. req, out := c.ListMultipartUploadsRequest(input)
  777. err := req.Send()
  778. return out, err
  779. }
  780. func (c *S3) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(p *ListMultipartUploadsOutput, lastPage bool) (shouldContinue bool)) error {
  781. page, _ := c.ListMultipartUploadsRequest(input)
  782. return page.EachPage(func(p interface{}, lastPage bool) bool {
  783. return fn(p.(*ListMultipartUploadsOutput), lastPage)
  784. })
  785. }
  786. const opListObjectVersions = "ListObjectVersions"
  787. // ListObjectVersionsRequest generates a request for the ListObjectVersions operation.
  788. func (c *S3) ListObjectVersionsRequest(input *ListObjectVersionsInput) (req *request.Request, output *ListObjectVersionsOutput) {
  789. op := &request.Operation{
  790. Name: opListObjectVersions,
  791. HTTPMethod: "GET",
  792. HTTPPath: "/{Bucket}?versions",
  793. Paginator: &request.Paginator{
  794. InputTokens: []string{"KeyMarker", "VersionIdMarker"},
  795. OutputTokens: []string{"NextKeyMarker", "NextVersionIdMarker"},
  796. LimitToken: "MaxKeys",
  797. TruncationToken: "IsTruncated",
  798. },
  799. }
  800. if input == nil {
  801. input = &ListObjectVersionsInput{}
  802. }
  803. req = c.newRequest(op, input, output)
  804. output = &ListObjectVersionsOutput{}
  805. req.Data = output
  806. return
  807. }
  808. // Returns metadata about all of the versions of objects in a bucket.
  809. func (c *S3) ListObjectVersions(input *ListObjectVersionsInput) (*ListObjectVersionsOutput, error) {
  810. req, out := c.ListObjectVersionsRequest(input)
  811. err := req.Send()
  812. return out, err
  813. }
  814. func (c *S3) ListObjectVersionsPages(input *ListObjectVersionsInput, fn func(p *ListObjectVersionsOutput, lastPage bool) (shouldContinue bool)) error {
  815. page, _ := c.ListObjectVersionsRequest(input)
  816. return page.EachPage(func(p interface{}, lastPage bool) bool {
  817. return fn(p.(*ListObjectVersionsOutput), lastPage)
  818. })
  819. }
  820. const opListObjects = "ListObjects"
  821. // ListObjectsRequest generates a request for the ListObjects operation.
  822. func (c *S3) ListObjectsRequest(input *ListObjectsInput) (req *request.Request, output *ListObjectsOutput) {
  823. op := &request.Operation{
  824. Name: opListObjects,
  825. HTTPMethod: "GET",
  826. HTTPPath: "/{Bucket}",
  827. Paginator: &request.Paginator{
  828. InputTokens: []string{"Marker"},
  829. OutputTokens: []string{"NextMarker || Contents[-1].Key"},
  830. LimitToken: "MaxKeys",
  831. TruncationToken: "IsTruncated",
  832. },
  833. }
  834. if input == nil {
  835. input = &ListObjectsInput{}
  836. }
  837. req = c.newRequest(op, input, output)
  838. output = &ListObjectsOutput{}
  839. req.Data = output
  840. return
  841. }
  842. // Returns some or all (up to 1000) of the objects in a bucket. You can use
  843. // the request parameters as selection criteria to return a subset of the objects
  844. // in a bucket.
  845. func (c *S3) ListObjects(input *ListObjectsInput) (*ListObjectsOutput, error) {
  846. req, out := c.ListObjectsRequest(input)
  847. err := req.Send()
  848. return out, err
  849. }
  850. func (c *S3) ListObjectsPages(input *ListObjectsInput, fn func(p *ListObjectsOutput, lastPage bool) (shouldContinue bool)) error {
  851. page, _ := c.ListObjectsRequest(input)
  852. return page.EachPage(func(p interface{}, lastPage bool) bool {
  853. return fn(p.(*ListObjectsOutput), lastPage)
  854. })
  855. }
  856. const opListParts = "ListParts"
  857. // ListPartsRequest generates a request for the ListParts operation.
  858. func (c *S3) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput) {
  859. op := &request.Operation{
  860. Name: opListParts,
  861. HTTPMethod: "GET",
  862. HTTPPath: "/{Bucket}/{Key+}",
  863. Paginator: &request.Paginator{
  864. InputTokens: []string{"PartNumberMarker"},
  865. OutputTokens: []string{"NextPartNumberMarker"},
  866. LimitToken: "MaxParts",
  867. TruncationToken: "IsTruncated",
  868. },
  869. }
  870. if input == nil {
  871. input = &ListPartsInput{}
  872. }
  873. req = c.newRequest(op, input, output)
  874. output = &ListPartsOutput{}
  875. req.Data = output
  876. return
  877. }
  878. // Lists the parts that have been uploaded for a specific multipart upload.
  879. func (c *S3) ListParts(input *ListPartsInput) (*ListPartsOutput, error) {
  880. req, out := c.ListPartsRequest(input)
  881. err := req.Send()
  882. return out, err
  883. }
  884. func (c *S3) ListPartsPages(input *ListPartsInput, fn func(p *ListPartsOutput, lastPage bool) (shouldContinue bool)) error {
  885. page, _ := c.ListPartsRequest(input)
  886. return page.EachPage(func(p interface{}, lastPage bool) bool {
  887. return fn(p.(*ListPartsOutput), lastPage)
  888. })
  889. }
  890. const opPutBucketAcl = "PutBucketAcl"
  891. // PutBucketAclRequest generates a request for the PutBucketAcl operation.
  892. func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request, output *PutBucketAclOutput) {
  893. op := &request.Operation{
  894. Name: opPutBucketAcl,
  895. HTTPMethod: "PUT",
  896. HTTPPath: "/{Bucket}?acl",
  897. }
  898. if input == nil {
  899. input = &PutBucketAclInput{}
  900. }
  901. req = c.newRequest(op, input, output)
  902. output = &PutBucketAclOutput{}
  903. req.Data = output
  904. return
  905. }
  906. // Sets the permissions on a bucket using access control lists (ACL).
  907. func (c *S3) PutBucketAcl(input *PutBucketAclInput) (*PutBucketAclOutput, error) {
  908. req, out := c.PutBucketAclRequest(input)
  909. err := req.Send()
  910. return out, err
  911. }
  912. const opPutBucketCors = "PutBucketCors"
  913. // PutBucketCorsRequest generates a request for the PutBucketCors operation.
  914. func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Request, output *PutBucketCorsOutput) {
  915. op := &request.Operation{
  916. Name: opPutBucketCors,
  917. HTTPMethod: "PUT",
  918. HTTPPath: "/{Bucket}?cors",
  919. }
  920. if input == nil {
  921. input = &PutBucketCorsInput{}
  922. }
  923. req = c.newRequest(op, input, output)
  924. output = &PutBucketCorsOutput{}
  925. req.Data = output
  926. return
  927. }
  928. // Sets the cors configuration for a bucket.
  929. func (c *S3) PutBucketCors(input *PutBucketCorsInput) (*PutBucketCorsOutput, error) {
  930. req, out := c.PutBucketCorsRequest(input)
  931. err := req.Send()
  932. return out, err
  933. }
  934. const opPutBucketLifecycle = "PutBucketLifecycle"
  935. // PutBucketLifecycleRequest generates a request for the PutBucketLifecycle operation.
  936. func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput) {
  937. op := &request.Operation{
  938. Name: opPutBucketLifecycle,
  939. HTTPMethod: "PUT",
  940. HTTPPath: "/{Bucket}?lifecycle",
  941. }
  942. if input == nil {
  943. input = &PutBucketLifecycleInput{}
  944. }
  945. req = c.newRequest(op, input, output)
  946. output = &PutBucketLifecycleOutput{}
  947. req.Data = output
  948. return
  949. }
  950. // Sets lifecycle configuration for your bucket. If a lifecycle configuration
  951. // exists, it replaces it.
  952. func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error) {
  953. req, out := c.PutBucketLifecycleRequest(input)
  954. err := req.Send()
  955. return out, err
  956. }
  957. const opPutBucketLogging = "PutBucketLogging"
  958. // PutBucketLoggingRequest generates a request for the PutBucketLogging operation.
  959. func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request.Request, output *PutBucketLoggingOutput) {
  960. op := &request.Operation{
  961. Name: opPutBucketLogging,
  962. HTTPMethod: "PUT",
  963. HTTPPath: "/{Bucket}?logging",
  964. }
  965. if input == nil {
  966. input = &PutBucketLoggingInput{}
  967. }
  968. req = c.newRequest(op, input, output)
  969. output = &PutBucketLoggingOutput{}
  970. req.Data = output
  971. return
  972. }
  973. // Set the logging parameters for a bucket and to specify permissions for who
  974. // can view and modify the logging parameters. To set the logging status of
  975. // a bucket, you must be the bucket owner.
  976. func (c *S3) PutBucketLogging(input *PutBucketLoggingInput) (*PutBucketLoggingOutput, error) {
  977. req, out := c.PutBucketLoggingRequest(input)
  978. err := req.Send()
  979. return out, err
  980. }
  981. const opPutBucketNotification = "PutBucketNotification"
  982. // PutBucketNotificationRequest generates a request for the PutBucketNotification operation.
  983. func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput) {
  984. op := &request.Operation{
  985. Name: opPutBucketNotification,
  986. HTTPMethod: "PUT",
  987. HTTPPath: "/{Bucket}?notification",
  988. }
  989. if input == nil {
  990. input = &PutBucketNotificationInput{}
  991. }
  992. req = c.newRequest(op, input, output)
  993. output = &PutBucketNotificationOutput{}
  994. req.Data = output
  995. return
  996. }
  997. // Deprecated, see the PutBucketNotificationConfiguraiton operation.
  998. func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error) {
  999. req, out := c.PutBucketNotificationRequest(input)
  1000. err := req.Send()
  1001. return out, err
  1002. }
  1003. const opPutBucketNotificationConfiguration = "PutBucketNotificationConfiguration"
  1004. // PutBucketNotificationConfigurationRequest generates a request for the PutBucketNotificationConfiguration operation.
  1005. func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificationConfigurationInput) (req *request.Request, output *PutBucketNotificationConfigurationOutput) {
  1006. op := &request.Operation{
  1007. Name: opPutBucketNotificationConfiguration,
  1008. HTTPMethod: "PUT",
  1009. HTTPPath: "/{Bucket}?notification",
  1010. }
  1011. if input == nil {
  1012. input = &PutBucketNotificationConfigurationInput{}
  1013. }
  1014. req = c.newRequest(op, input, output)
  1015. output = &PutBucketNotificationConfigurationOutput{}
  1016. req.Data = output
  1017. return
  1018. }
  1019. // Enables notifications of specified events for a bucket.
  1020. func (c *S3) PutBucketNotificationConfiguration(input *PutBucketNotificationConfigurationInput) (*PutBucketNotificationConfigurationOutput, error) {
  1021. req, out := c.PutBucketNotificationConfigurationRequest(input)
  1022. err := req.Send()
  1023. return out, err
  1024. }
  1025. const opPutBucketPolicy = "PutBucketPolicy"
  1026. // PutBucketPolicyRequest generates a request for the PutBucketPolicy operation.
  1027. func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.Request, output *PutBucketPolicyOutput) {
  1028. op := &request.Operation{
  1029. Name: opPutBucketPolicy,
  1030. HTTPMethod: "PUT",
  1031. HTTPPath: "/{Bucket}?policy",
  1032. }
  1033. if input == nil {
  1034. input = &PutBucketPolicyInput{}
  1035. }
  1036. req = c.newRequest(op, input, output)
  1037. output = &PutBucketPolicyOutput{}
  1038. req.Data = output
  1039. return
  1040. }
  1041. // Replaces a policy on a bucket. If the bucket already has a policy, the one
  1042. // in this request completely replaces it.
  1043. func (c *S3) PutBucketPolicy(input *PutBucketPolicyInput) (*PutBucketPolicyOutput, error) {
  1044. req, out := c.PutBucketPolicyRequest(input)
  1045. err := req.Send()
  1046. return out, err
  1047. }
  1048. const opPutBucketReplication = "PutBucketReplication"
  1049. // PutBucketReplicationRequest generates a request for the PutBucketReplication operation.
  1050. func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *request.Request, output *PutBucketReplicationOutput) {
  1051. op := &request.Operation{
  1052. Name: opPutBucketReplication,
  1053. HTTPMethod: "PUT",
  1054. HTTPPath: "/{Bucket}?replication",
  1055. }
  1056. if input == nil {
  1057. input = &PutBucketReplicationInput{}
  1058. }
  1059. req = c.newRequest(op, input, output)
  1060. output = &PutBucketReplicationOutput{}
  1061. req.Data = output
  1062. return
  1063. }
  1064. // Creates a new replication configuration (or replaces an existing one, if
  1065. // present).
  1066. func (c *S3) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error) {
  1067. req, out := c.PutBucketReplicationRequest(input)
  1068. err := req.Send()
  1069. return out, err
  1070. }
  1071. const opPutBucketRequestPayment = "PutBucketRequestPayment"
  1072. // PutBucketRequestPaymentRequest generates a request for the PutBucketRequestPayment operation.
  1073. func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput) (req *request.Request, output *PutBucketRequestPaymentOutput) {
  1074. op := &request.Operation{
  1075. Name: opPutBucketRequestPayment,
  1076. HTTPMethod: "PUT",
  1077. HTTPPath: "/{Bucket}?requestPayment",
  1078. }
  1079. if input == nil {
  1080. input = &PutBucketRequestPaymentInput{}
  1081. }
  1082. req = c.newRequest(op, input, output)
  1083. output = &PutBucketRequestPaymentOutput{}
  1084. req.Data = output
  1085. return
  1086. }
  1087. // Sets the request payment configuration for a bucket. By default, the bucket
  1088. // owner pays for downloads from the bucket. This configuration parameter enables
  1089. // the bucket owner (only) to specify that the person requesting the download
  1090. // will be charged for the download. Documentation on requester pays buckets
  1091. // can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html
  1092. func (c *S3) PutBucketRequestPayment(input *PutBucketRequestPaymentInput) (*PutBucketRequestPaymentOutput, error) {
  1093. req, out := c.PutBucketRequestPaymentRequest(input)
  1094. err := req.Send()
  1095. return out, err
  1096. }
  1097. const opPutBucketTagging = "PutBucketTagging"
  1098. // PutBucketTaggingRequest generates a request for the PutBucketTagging operation.
  1099. func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request.Request, output *PutBucketTaggingOutput) {
  1100. op := &request.Operation{
  1101. Name: opPutBucketTagging,
  1102. HTTPMethod: "PUT",
  1103. HTTPPath: "/{Bucket}?tagging",
  1104. }
  1105. if input == nil {
  1106. input = &PutBucketTaggingInput{}
  1107. }
  1108. req = c.newRequest(op, input, output)
  1109. output = &PutBucketTaggingOutput{}
  1110. req.Data = output
  1111. return
  1112. }
  1113. // Sets the tags for a bucket.
  1114. func (c *S3) PutBucketTagging(input *PutBucketTaggingInput) (*PutBucketTaggingOutput, error) {
  1115. req, out := c.PutBucketTaggingRequest(input)
  1116. err := req.Send()
  1117. return out, err
  1118. }
  1119. const opPutBucketVersioning = "PutBucketVersioning"
  1120. // PutBucketVersioningRequest generates a request for the PutBucketVersioning operation.
  1121. func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *request.Request, output *PutBucketVersioningOutput) {
  1122. op := &request.Operation{
  1123. Name: opPutBucketVersioning,
  1124. HTTPMethod: "PUT",
  1125. HTTPPath: "/{Bucket}?versioning",
  1126. }
  1127. if input == nil {
  1128. input = &PutBucketVersioningInput{}
  1129. }
  1130. req = c.newRequest(op, input, output)
  1131. output = &PutBucketVersioningOutput{}
  1132. req.Data = output
  1133. return
  1134. }
  1135. // Sets the versioning state of an existing bucket. To set the versioning state,
  1136. // you must be the bucket owner.
  1137. func (c *S3) PutBucketVersioning(input *PutBucketVersioningInput) (*PutBucketVersioningOutput, error) {
  1138. req, out := c.PutBucketVersioningRequest(input)
  1139. err := req.Send()
  1140. return out, err
  1141. }
  1142. const opPutBucketWebsite = "PutBucketWebsite"
  1143. // PutBucketWebsiteRequest generates a request for the PutBucketWebsite operation.
  1144. func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request.Request, output *PutBucketWebsiteOutput) {
  1145. op := &request.Operation{
  1146. Name: opPutBucketWebsite,
  1147. HTTPMethod: "PUT",
  1148. HTTPPath: "/{Bucket}?website",
  1149. }
  1150. if input == nil {
  1151. input = &PutBucketWebsiteInput{}
  1152. }
  1153. req = c.newRequest(op, input, output)
  1154. output = &PutBucketWebsiteOutput{}
  1155. req.Data = output
  1156. return
  1157. }
  1158. // Set the website configuration for a bucket.
  1159. func (c *S3) PutBucketWebsite(input *PutBucketWebsiteInput) (*PutBucketWebsiteOutput, error) {
  1160. req, out := c.PutBucketWebsiteRequest(input)
  1161. err := req.Send()
  1162. return out, err
  1163. }
  1164. const opPutObject = "PutObject"
  1165. // PutObjectRequest generates a request for the PutObject operation.
  1166. func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, output *PutObjectOutput) {
  1167. op := &request.Operation{
  1168. Name: opPutObject,
  1169. HTTPMethod: "PUT",
  1170. HTTPPath: "/{Bucket}/{Key+}",
  1171. }
  1172. if input == nil {
  1173. input = &PutObjectInput{}
  1174. }
  1175. req = c.newRequest(op, input, output)
  1176. output = &PutObjectOutput{}
  1177. req.Data = output
  1178. return
  1179. }
  1180. // Adds an object to a bucket.
  1181. func (c *S3) PutObject(input *PutObjectInput) (*PutObjectOutput, error) {
  1182. req, out := c.PutObjectRequest(input)
  1183. err := req.Send()
  1184. return out, err
  1185. }
  1186. const opPutObjectAcl = "PutObjectAcl"
  1187. // PutObjectAclRequest generates a request for the PutObjectAcl operation.
  1188. func (c *S3) PutObjectAclRequest(input *PutObjectAclInput) (req *request.Request, output *PutObjectAclOutput) {
  1189. op := &request.Operation{
  1190. Name: opPutObjectAcl,
  1191. HTTPMethod: "PUT",
  1192. HTTPPath: "/{Bucket}/{Key+}?acl",
  1193. }
  1194. if input == nil {
  1195. input = &PutObjectAclInput{}
  1196. }
  1197. req = c.newRequest(op, input, output)
  1198. output = &PutObjectAclOutput{}
  1199. req.Data = output
  1200. return
  1201. }
  1202. // uses the acl subresource to set the access control list (ACL) permissions
  1203. // for an object that already exists in a bucket
  1204. func (c *S3) PutObjectAcl(input *PutObjectAclInput) (*PutObjectAclOutput, error) {
  1205. req, out := c.PutObjectAclRequest(input)
  1206. err := req.Send()
  1207. return out, err
  1208. }
  1209. const opRestoreObject = "RestoreObject"
  1210. // RestoreObjectRequest generates a request for the RestoreObject operation.
  1211. func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Request, output *RestoreObjectOutput) {
  1212. op := &request.Operation{
  1213. Name: opRestoreObject,
  1214. HTTPMethod: "POST",
  1215. HTTPPath: "/{Bucket}/{Key+}?restore",
  1216. }
  1217. if input == nil {
  1218. input = &RestoreObjectInput{}
  1219. }
  1220. req = c.newRequest(op, input, output)
  1221. output = &RestoreObjectOutput{}
  1222. req.Data = output
  1223. return
  1224. }
  1225. // Restores an archived copy of an object back into Amazon S3
  1226. func (c *S3) RestoreObject(input *RestoreObjectInput) (*RestoreObjectOutput, error) {
  1227. req, out := c.RestoreObjectRequest(input)
  1228. err := req.Send()
  1229. return out, err
  1230. }
  1231. const opUploadPart = "UploadPart"
  1232. // UploadPartRequest generates a request for the UploadPart operation.
  1233. func (c *S3) UploadPartRequest(input *UploadPartInput) (req *request.Request, output *UploadPartOutput) {
  1234. op := &request.Operation{
  1235. Name: opUploadPart,
  1236. HTTPMethod: "PUT",
  1237. HTTPPath: "/{Bucket}/{Key+}",
  1238. }
  1239. if input == nil {
  1240. input = &UploadPartInput{}
  1241. }
  1242. req = c.newRequest(op, input, output)
  1243. output = &UploadPartOutput{}
  1244. req.Data = output
  1245. return
  1246. }
  1247. // Uploads a part in a multipart upload.
  1248. //
  1249. // Note: After you initiate multipart upload and upload one or more parts,
  1250. // you must either complete or abort multipart upload in order to stop getting
  1251. // charged for storage of the uploaded parts. Only after you either complete
  1252. // or abort multipart upload, Amazon S3 frees up the parts storage and stops
  1253. // charging you for the parts storage.
  1254. func (c *S3) UploadPart(input *UploadPartInput) (*UploadPartOutput, error) {
  1255. req, out := c.UploadPartRequest(input)
  1256. err := req.Send()
  1257. return out, err
  1258. }
  1259. const opUploadPartCopy = "UploadPartCopy"
  1260. // UploadPartCopyRequest generates a request for the UploadPartCopy operation.
  1261. func (c *S3) UploadPartCopyRequest(input *UploadPartCopyInput) (req *request.Request, output *UploadPartCopyOutput) {
  1262. op := &request.Operation{
  1263. Name: opUploadPartCopy,
  1264. HTTPMethod: "PUT",
  1265. HTTPPath: "/{Bucket}/{Key+}",
  1266. }
  1267. if input == nil {
  1268. input = &UploadPartCopyInput{}
  1269. }
  1270. req = c.newRequest(op, input, output)
  1271. output = &UploadPartCopyOutput{}
  1272. req.Data = output
  1273. return
  1274. }
  1275. // Uploads a part by copying data from an existing object as data source.
  1276. func (c *S3) UploadPartCopy(input *UploadPartCopyInput) (*UploadPartCopyOutput, error) {
  1277. req, out := c.UploadPartCopyRequest(input)
  1278. err := req.Send()
  1279. return out, err
  1280. }
  1281. type AbortMultipartUploadInput struct {
  1282. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1283. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  1284. // Confirms that the requester knows that she or he will be charged for the
  1285. // request. Bucket owners need not specify this parameter in their requests.
  1286. // Documentation on downloading objects from requester pays buckets can be found
  1287. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  1288. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  1289. UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
  1290. metadataAbortMultipartUploadInput `json:"-" xml:"-"`
  1291. }
  1292. type metadataAbortMultipartUploadInput struct {
  1293. SDKShapeTraits bool `type:"structure"`
  1294. }
  1295. // String returns the string representation
  1296. func (s AbortMultipartUploadInput) String() string {
  1297. return awsutil.Prettify(s)
  1298. }
  1299. // GoString returns the string representation
  1300. func (s AbortMultipartUploadInput) GoString() string {
  1301. return s.String()
  1302. }
  1303. type AbortMultipartUploadOutput struct {
  1304. // If present, indicates that the requester was successfully charged for the
  1305. // request.
  1306. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  1307. metadataAbortMultipartUploadOutput `json:"-" xml:"-"`
  1308. }
  1309. type metadataAbortMultipartUploadOutput struct {
  1310. SDKShapeTraits bool `type:"structure"`
  1311. }
  1312. // String returns the string representation
  1313. func (s AbortMultipartUploadOutput) String() string {
  1314. return awsutil.Prettify(s)
  1315. }
  1316. // GoString returns the string representation
  1317. func (s AbortMultipartUploadOutput) GoString() string {
  1318. return s.String()
  1319. }
  1320. type AccessControlPolicy struct {
  1321. // A list of grants.
  1322. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
  1323. Owner *Owner `type:"structure"`
  1324. metadataAccessControlPolicy `json:"-" xml:"-"`
  1325. }
  1326. type metadataAccessControlPolicy struct {
  1327. SDKShapeTraits bool `type:"structure"`
  1328. }
  1329. // String returns the string representation
  1330. func (s AccessControlPolicy) String() string {
  1331. return awsutil.Prettify(s)
  1332. }
  1333. // GoString returns the string representation
  1334. func (s AccessControlPolicy) GoString() string {
  1335. return s.String()
  1336. }
  1337. type Bucket struct {
  1338. // Date the bucket was created.
  1339. CreationDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1340. // The name of the bucket.
  1341. Name *string `type:"string"`
  1342. metadataBucket `json:"-" xml:"-"`
  1343. }
  1344. type metadataBucket struct {
  1345. SDKShapeTraits bool `type:"structure"`
  1346. }
  1347. // String returns the string representation
  1348. func (s Bucket) String() string {
  1349. return awsutil.Prettify(s)
  1350. }
  1351. // GoString returns the string representation
  1352. func (s Bucket) GoString() string {
  1353. return s.String()
  1354. }
  1355. type BucketLoggingStatus struct {
  1356. LoggingEnabled *LoggingEnabled `type:"structure"`
  1357. metadataBucketLoggingStatus `json:"-" xml:"-"`
  1358. }
  1359. type metadataBucketLoggingStatus struct {
  1360. SDKShapeTraits bool `type:"structure"`
  1361. }
  1362. // String returns the string representation
  1363. func (s BucketLoggingStatus) String() string {
  1364. return awsutil.Prettify(s)
  1365. }
  1366. // GoString returns the string representation
  1367. func (s BucketLoggingStatus) GoString() string {
  1368. return s.String()
  1369. }
  1370. type CORSConfiguration struct {
  1371. CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true"`
  1372. metadataCORSConfiguration `json:"-" xml:"-"`
  1373. }
  1374. type metadataCORSConfiguration struct {
  1375. SDKShapeTraits bool `type:"structure"`
  1376. }
  1377. // String returns the string representation
  1378. func (s CORSConfiguration) String() string {
  1379. return awsutil.Prettify(s)
  1380. }
  1381. // GoString returns the string representation
  1382. func (s CORSConfiguration) GoString() string {
  1383. return s.String()
  1384. }
  1385. type CORSRule struct {
  1386. // Specifies which headers are allowed in a pre-flight OPTIONS request.
  1387. AllowedHeaders []*string `locationName:"AllowedHeader" type:"list" flattened:"true"`
  1388. // Identifies HTTP methods that the domain/origin specified in the rule is allowed
  1389. // to execute.
  1390. AllowedMethods []*string `locationName:"AllowedMethod" type:"list" flattened:"true"`
  1391. // One or more origins you want customers to be able to access the bucket from.
  1392. AllowedOrigins []*string `locationName:"AllowedOrigin" type:"list" flattened:"true"`
  1393. // One or more headers in the response that you want customers to be able to
  1394. // access from their applications (for example, from a JavaScript XMLHttpRequest
  1395. // object).
  1396. ExposeHeaders []*string `locationName:"ExposeHeader" type:"list" flattened:"true"`
  1397. // The time in seconds that your browser is to cache the preflight response
  1398. // for the specified resource.
  1399. MaxAgeSeconds *int64 `type:"integer"`
  1400. metadataCORSRule `json:"-" xml:"-"`
  1401. }
  1402. type metadataCORSRule struct {
  1403. SDKShapeTraits bool `type:"structure"`
  1404. }
  1405. // String returns the string representation
  1406. func (s CORSRule) String() string {
  1407. return awsutil.Prettify(s)
  1408. }
  1409. // GoString returns the string representation
  1410. func (s CORSRule) GoString() string {
  1411. return s.String()
  1412. }
  1413. type CloudFunctionConfiguration struct {
  1414. CloudFunction *string `type:"string"`
  1415. // Bucket event for which to send notifications.
  1416. Event *string `type:"string" enum:"Event"`
  1417. Events []*string `locationName:"Event" type:"list" flattened:"true"`
  1418. // Optional unique identifier for configurations in a notification configuration.
  1419. // If you don't provide one, Amazon S3 will assign an ID.
  1420. Id *string `type:"string"`
  1421. InvocationRole *string `type:"string"`
  1422. metadataCloudFunctionConfiguration `json:"-" xml:"-"`
  1423. }
  1424. type metadataCloudFunctionConfiguration struct {
  1425. SDKShapeTraits bool `type:"structure"`
  1426. }
  1427. // String returns the string representation
  1428. func (s CloudFunctionConfiguration) String() string {
  1429. return awsutil.Prettify(s)
  1430. }
  1431. // GoString returns the string representation
  1432. func (s CloudFunctionConfiguration) GoString() string {
  1433. return s.String()
  1434. }
  1435. type CommonPrefix struct {
  1436. Prefix *string `type:"string"`
  1437. metadataCommonPrefix `json:"-" xml:"-"`
  1438. }
  1439. type metadataCommonPrefix struct {
  1440. SDKShapeTraits bool `type:"structure"`
  1441. }
  1442. // String returns the string representation
  1443. func (s CommonPrefix) String() string {
  1444. return awsutil.Prettify(s)
  1445. }
  1446. // GoString returns the string representation
  1447. func (s CommonPrefix) GoString() string {
  1448. return s.String()
  1449. }
  1450. type CompleteMultipartUploadInput struct {
  1451. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1452. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  1453. MultipartUpload *CompletedMultipartUpload `locationName:"CompleteMultipartUpload" type:"structure"`
  1454. // Confirms that the requester knows that she or he will be charged for the
  1455. // request. Bucket owners need not specify this parameter in their requests.
  1456. // Documentation on downloading objects from requester pays buckets can be found
  1457. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  1458. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  1459. UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
  1460. metadataCompleteMultipartUploadInput `json:"-" xml:"-"`
  1461. }
  1462. type metadataCompleteMultipartUploadInput struct {
  1463. SDKShapeTraits bool `type:"structure" payload:"MultipartUpload"`
  1464. }
  1465. // String returns the string representation
  1466. func (s CompleteMultipartUploadInput) String() string {
  1467. return awsutil.Prettify(s)
  1468. }
  1469. // GoString returns the string representation
  1470. func (s CompleteMultipartUploadInput) GoString() string {
  1471. return s.String()
  1472. }
  1473. type CompleteMultipartUploadOutput struct {
  1474. Bucket *string `type:"string"`
  1475. // Entity tag of the object.
  1476. ETag *string `type:"string"`
  1477. // If the object expiration is configured, this will contain the expiration
  1478. // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.
  1479. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
  1480. Key *string `type:"string"`
  1481. Location *string `type:"string"`
  1482. // If present, indicates that the requester was successfully charged for the
  1483. // request.
  1484. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  1485. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  1486. // encryption key that was used for the object.
  1487. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  1488. // The Server-side encryption algorithm used when storing this object in S3
  1489. // (e.g., AES256, aws:kms).
  1490. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  1491. // Version of the object.
  1492. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
  1493. metadataCompleteMultipartUploadOutput `json:"-" xml:"-"`
  1494. }
  1495. type metadataCompleteMultipartUploadOutput struct {
  1496. SDKShapeTraits bool `type:"structure"`
  1497. }
  1498. // String returns the string representation
  1499. func (s CompleteMultipartUploadOutput) String() string {
  1500. return awsutil.Prettify(s)
  1501. }
  1502. // GoString returns the string representation
  1503. func (s CompleteMultipartUploadOutput) GoString() string {
  1504. return s.String()
  1505. }
  1506. type CompletedMultipartUpload struct {
  1507. Parts []*CompletedPart `locationName:"Part" type:"list" flattened:"true"`
  1508. metadataCompletedMultipartUpload `json:"-" xml:"-"`
  1509. }
  1510. type metadataCompletedMultipartUpload struct {
  1511. SDKShapeTraits bool `type:"structure"`
  1512. }
  1513. // String returns the string representation
  1514. func (s CompletedMultipartUpload) String() string {
  1515. return awsutil.Prettify(s)
  1516. }
  1517. // GoString returns the string representation
  1518. func (s CompletedMultipartUpload) GoString() string {
  1519. return s.String()
  1520. }
  1521. type CompletedPart struct {
  1522. // Entity tag returned when the part was uploaded.
  1523. ETag *string `type:"string"`
  1524. // Part number that identifies the part. This is a positive integer between
  1525. // 1 and 10,000.
  1526. PartNumber *int64 `type:"integer"`
  1527. metadataCompletedPart `json:"-" xml:"-"`
  1528. }
  1529. type metadataCompletedPart struct {
  1530. SDKShapeTraits bool `type:"structure"`
  1531. }
  1532. // String returns the string representation
  1533. func (s CompletedPart) String() string {
  1534. return awsutil.Prettify(s)
  1535. }
  1536. // GoString returns the string representation
  1537. func (s CompletedPart) GoString() string {
  1538. return s.String()
  1539. }
  1540. type Condition struct {
  1541. // The HTTP error code when the redirect is applied. In the event of an error,
  1542. // if the error code equals this value, then the specified redirect is applied.
  1543. // Required when parent element Condition is specified and sibling KeyPrefixEquals
  1544. // is not specified. If both are specified, then both must be true for the redirect
  1545. // to be applied.
  1546. HttpErrorCodeReturnedEquals *string `type:"string"`
  1547. // The object key name prefix when the redirect is applied. For example, to
  1548. // redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html.
  1549. // To redirect request for all pages with the prefix docs/, the key prefix will
  1550. // be /docs, which identifies all objects in the docs/ folder. Required when
  1551. // the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals
  1552. // is not specified. If both conditions are specified, both must be true for
  1553. // the redirect to be applied.
  1554. KeyPrefixEquals *string `type:"string"`
  1555. metadataCondition `json:"-" xml:"-"`
  1556. }
  1557. type metadataCondition struct {
  1558. SDKShapeTraits bool `type:"structure"`
  1559. }
  1560. // String returns the string representation
  1561. func (s Condition) String() string {
  1562. return awsutil.Prettify(s)
  1563. }
  1564. // GoString returns the string representation
  1565. func (s Condition) GoString() string {
  1566. return s.String()
  1567. }
  1568. type CopyObjectInput struct {
  1569. // The canned ACL to apply to the object.
  1570. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
  1571. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1572. // Specifies caching behavior along the request/reply chain.
  1573. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
  1574. // Specifies presentational information for the object.
  1575. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
  1576. // Specifies what content encodings have been applied to the object and thus
  1577. // what decoding mechanisms must be applied to obtain the media-type referenced
  1578. // by the Content-Type header field.
  1579. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
  1580. // The language the content is in.
  1581. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
  1582. // A standard MIME type describing the format of the object data.
  1583. ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
  1584. // The name of the source bucket and key name of the source object, separated
  1585. // by a slash (/). Must be URL-encoded.
  1586. CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`
  1587. // Copies the object if its entity tag (ETag) matches the specified tag.
  1588. CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`
  1589. // Copies the object if it has been modified since the specified time.
  1590. CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"`
  1591. // Copies the object if its entity tag (ETag) is different than the specified
  1592. // ETag.
  1593. CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`
  1594. // Copies the object if it hasn't been modified since the specified time.
  1595. CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"`
  1596. // Specifies the algorithm to use when decrypting the source object (e.g., AES256).
  1597. CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`
  1598. // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
  1599. // the source object. The encryption key provided in this header must be one
  1600. // that was used when the source object was created.
  1601. CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"`
  1602. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  1603. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  1604. // key was transmitted without error.
  1605. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`
  1606. // The date and time at which the object is no longer cacheable.
  1607. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`
  1608. // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
  1609. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  1610. // Allows grantee to read the object data and its metadata.
  1611. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  1612. // Allows grantee to read the object ACL.
  1613. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  1614. // Allows grantee to write the ACL for the applicable object.
  1615. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  1616. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  1617. // A map of metadata to store with the object in S3.
  1618. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
  1619. // Specifies whether the metadata is copied from the source object or replaced
  1620. // with metadata provided in the request.
  1621. MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"`
  1622. // Confirms that the requester knows that she or he will be charged for the
  1623. // request. Bucket owners need not specify this parameter in their requests.
  1624. // Documentation on downloading objects from requester pays buckets can be found
  1625. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  1626. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  1627. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  1628. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  1629. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  1630. // data. This value is used to store the object and then it is discarded; Amazon
  1631. // does not store the encryption key. The key must be appropriate for use with
  1632. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  1633. // header.
  1634. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  1635. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  1636. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  1637. // key was transmitted without error.
  1638. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  1639. // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
  1640. // requests for an object protected by AWS KMS will fail if not made via SSL
  1641. // or using SigV4. Documentation on configuring any of the officially supported
  1642. // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
  1643. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  1644. // The Server-side encryption algorithm used when storing this object in S3
  1645. // (e.g., AES256, aws:kms).
  1646. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  1647. // The type of storage to use for the object. Defaults to 'STANDARD'.
  1648. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
  1649. // If the bucket is configured as a website, redirects requests for this object
  1650. // to another object in the same bucket or to an external URL. Amazon S3 stores
  1651. // the value of this header in the object metadata.
  1652. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
  1653. metadataCopyObjectInput `json:"-" xml:"-"`
  1654. }
  1655. type metadataCopyObjectInput struct {
  1656. SDKShapeTraits bool `type:"structure"`
  1657. }
  1658. // String returns the string representation
  1659. func (s CopyObjectInput) String() string {
  1660. return awsutil.Prettify(s)
  1661. }
  1662. // GoString returns the string representation
  1663. func (s CopyObjectInput) GoString() string {
  1664. return s.String()
  1665. }
  1666. type CopyObjectOutput struct {
  1667. CopyObjectResult *CopyObjectResult `type:"structure"`
  1668. CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`
  1669. // If the object expiration is configured, the response includes this header.
  1670. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
  1671. // If present, indicates that the requester was successfully charged for the
  1672. // request.
  1673. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  1674. // If server-side encryption with a customer-provided encryption key was requested,
  1675. // the response will include this header confirming the encryption algorithm
  1676. // used.
  1677. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  1678. // If server-side encryption with a customer-provided encryption key was requested,
  1679. // the response will include this header to provide round trip message integrity
  1680. // verification of the customer-provided encryption key.
  1681. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  1682. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  1683. // encryption key that was used for the object.
  1684. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  1685. // The Server-side encryption algorithm used when storing this object in S3
  1686. // (e.g., AES256, aws:kms).
  1687. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  1688. metadataCopyObjectOutput `json:"-" xml:"-"`
  1689. }
  1690. type metadataCopyObjectOutput struct {
  1691. SDKShapeTraits bool `type:"structure" payload:"CopyObjectResult"`
  1692. }
  1693. // String returns the string representation
  1694. func (s CopyObjectOutput) String() string {
  1695. return awsutil.Prettify(s)
  1696. }
  1697. // GoString returns the string representation
  1698. func (s CopyObjectOutput) GoString() string {
  1699. return s.String()
  1700. }
  1701. type CopyObjectResult struct {
  1702. ETag *string `type:"string"`
  1703. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1704. metadataCopyObjectResult `json:"-" xml:"-"`
  1705. }
  1706. type metadataCopyObjectResult struct {
  1707. SDKShapeTraits bool `type:"structure"`
  1708. }
  1709. // String returns the string representation
  1710. func (s CopyObjectResult) String() string {
  1711. return awsutil.Prettify(s)
  1712. }
  1713. // GoString returns the string representation
  1714. func (s CopyObjectResult) GoString() string {
  1715. return s.String()
  1716. }
  1717. type CopyPartResult struct {
  1718. // Entity tag of the object.
  1719. ETag *string `type:"string"`
  1720. // Date and time at which the object was uploaded.
  1721. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  1722. metadataCopyPartResult `json:"-" xml:"-"`
  1723. }
  1724. type metadataCopyPartResult struct {
  1725. SDKShapeTraits bool `type:"structure"`
  1726. }
  1727. // String returns the string representation
  1728. func (s CopyPartResult) String() string {
  1729. return awsutil.Prettify(s)
  1730. }
  1731. // GoString returns the string representation
  1732. func (s CopyPartResult) GoString() string {
  1733. return s.String()
  1734. }
  1735. type CreateBucketConfiguration struct {
  1736. // Specifies the region where the bucket will be created. If you don't specify
  1737. // a region, the bucket will be created in US Standard.
  1738. LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
  1739. metadataCreateBucketConfiguration `json:"-" xml:"-"`
  1740. }
  1741. type metadataCreateBucketConfiguration struct {
  1742. SDKShapeTraits bool `type:"structure"`
  1743. }
  1744. // String returns the string representation
  1745. func (s CreateBucketConfiguration) String() string {
  1746. return awsutil.Prettify(s)
  1747. }
  1748. // GoString returns the string representation
  1749. func (s CreateBucketConfiguration) GoString() string {
  1750. return s.String()
  1751. }
  1752. type CreateBucketInput struct {
  1753. // The canned ACL to apply to the bucket.
  1754. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`
  1755. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1756. CreateBucketConfiguration *CreateBucketConfiguration `locationName:"CreateBucketConfiguration" type:"structure"`
  1757. // Allows grantee the read, write, read ACP, and write ACP permissions on the
  1758. // bucket.
  1759. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  1760. // Allows grantee to list the objects in the bucket.
  1761. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  1762. // Allows grantee to read the bucket ACL.
  1763. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  1764. // Allows grantee to create, overwrite, and delete any object in the bucket.
  1765. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
  1766. // Allows grantee to write the ACL for the applicable bucket.
  1767. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  1768. metadataCreateBucketInput `json:"-" xml:"-"`
  1769. }
  1770. type metadataCreateBucketInput struct {
  1771. SDKShapeTraits bool `type:"structure" payload:"CreateBucketConfiguration"`
  1772. }
  1773. // String returns the string representation
  1774. func (s CreateBucketInput) String() string {
  1775. return awsutil.Prettify(s)
  1776. }
  1777. // GoString returns the string representation
  1778. func (s CreateBucketInput) GoString() string {
  1779. return s.String()
  1780. }
  1781. type CreateBucketOutput struct {
  1782. Location *string `location:"header" locationName:"Location" type:"string"`
  1783. metadataCreateBucketOutput `json:"-" xml:"-"`
  1784. }
  1785. type metadataCreateBucketOutput struct {
  1786. SDKShapeTraits bool `type:"structure"`
  1787. }
  1788. // String returns the string representation
  1789. func (s CreateBucketOutput) String() string {
  1790. return awsutil.Prettify(s)
  1791. }
  1792. // GoString returns the string representation
  1793. func (s CreateBucketOutput) GoString() string {
  1794. return s.String()
  1795. }
  1796. type CreateMultipartUploadInput struct {
  1797. // The canned ACL to apply to the object.
  1798. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
  1799. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1800. // Specifies caching behavior along the request/reply chain.
  1801. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
  1802. // Specifies presentational information for the object.
  1803. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
  1804. // Specifies what content encodings have been applied to the object and thus
  1805. // what decoding mechanisms must be applied to obtain the media-type referenced
  1806. // by the Content-Type header field.
  1807. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
  1808. // The language the content is in.
  1809. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
  1810. // A standard MIME type describing the format of the object data.
  1811. ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
  1812. // The date and time at which the object is no longer cacheable.
  1813. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`
  1814. // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
  1815. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  1816. // Allows grantee to read the object data and its metadata.
  1817. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  1818. // Allows grantee to read the object ACL.
  1819. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  1820. // Allows grantee to write the ACL for the applicable object.
  1821. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  1822. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  1823. // A map of metadata to store with the object in S3.
  1824. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
  1825. // Confirms that the requester knows that she or he will be charged for the
  1826. // request. Bucket owners need not specify this parameter in their requests.
  1827. // Documentation on downloading objects from requester pays buckets can be found
  1828. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  1829. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  1830. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  1831. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  1832. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  1833. // data. This value is used to store the object and then it is discarded; Amazon
  1834. // does not store the encryption key. The key must be appropriate for use with
  1835. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  1836. // header.
  1837. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  1838. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  1839. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  1840. // key was transmitted without error.
  1841. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  1842. // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
  1843. // requests for an object protected by AWS KMS will fail if not made via SSL
  1844. // or using SigV4. Documentation on configuring any of the officially supported
  1845. // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
  1846. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  1847. // The Server-side encryption algorithm used when storing this object in S3
  1848. // (e.g., AES256, aws:kms).
  1849. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  1850. // The type of storage to use for the object. Defaults to 'STANDARD'.
  1851. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
  1852. // If the bucket is configured as a website, redirects requests for this object
  1853. // to another object in the same bucket or to an external URL. Amazon S3 stores
  1854. // the value of this header in the object metadata.
  1855. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
  1856. metadataCreateMultipartUploadInput `json:"-" xml:"-"`
  1857. }
  1858. type metadataCreateMultipartUploadInput struct {
  1859. SDKShapeTraits bool `type:"structure"`
  1860. }
  1861. // String returns the string representation
  1862. func (s CreateMultipartUploadInput) String() string {
  1863. return awsutil.Prettify(s)
  1864. }
  1865. // GoString returns the string representation
  1866. func (s CreateMultipartUploadInput) GoString() string {
  1867. return s.String()
  1868. }
  1869. type CreateMultipartUploadOutput struct {
  1870. // Name of the bucket to which the multipart upload was initiated.
  1871. Bucket *string `locationName:"Bucket" type:"string"`
  1872. // Object key for which the multipart upload was initiated.
  1873. Key *string `type:"string"`
  1874. // If present, indicates that the requester was successfully charged for the
  1875. // request.
  1876. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  1877. // If server-side encryption with a customer-provided encryption key was requested,
  1878. // the response will include this header confirming the encryption algorithm
  1879. // used.
  1880. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  1881. // If server-side encryption with a customer-provided encryption key was requested,
  1882. // the response will include this header to provide round trip message integrity
  1883. // verification of the customer-provided encryption key.
  1884. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  1885. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  1886. // encryption key that was used for the object.
  1887. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  1888. // The Server-side encryption algorithm used when storing this object in S3
  1889. // (e.g., AES256, aws:kms).
  1890. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  1891. // ID for the initiated multipart upload.
  1892. UploadId *string `type:"string"`
  1893. metadataCreateMultipartUploadOutput `json:"-" xml:"-"`
  1894. }
  1895. type metadataCreateMultipartUploadOutput struct {
  1896. SDKShapeTraits bool `type:"structure"`
  1897. }
  1898. // String returns the string representation
  1899. func (s CreateMultipartUploadOutput) String() string {
  1900. return awsutil.Prettify(s)
  1901. }
  1902. // GoString returns the string representation
  1903. func (s CreateMultipartUploadOutput) GoString() string {
  1904. return s.String()
  1905. }
  1906. type Delete struct {
  1907. Objects []*ObjectIdentifier `locationName:"Object" type:"list" flattened:"true" required:"true"`
  1908. // Element to enable quiet mode for the request. When you add this element,
  1909. // you must set its value to true.
  1910. Quiet *bool `type:"boolean"`
  1911. metadataDelete `json:"-" xml:"-"`
  1912. }
  1913. type metadataDelete struct {
  1914. SDKShapeTraits bool `type:"structure"`
  1915. }
  1916. // String returns the string representation
  1917. func (s Delete) String() string {
  1918. return awsutil.Prettify(s)
  1919. }
  1920. // GoString returns the string representation
  1921. func (s Delete) GoString() string {
  1922. return s.String()
  1923. }
  1924. type DeleteBucketCorsInput struct {
  1925. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1926. metadataDeleteBucketCorsInput `json:"-" xml:"-"`
  1927. }
  1928. type metadataDeleteBucketCorsInput struct {
  1929. SDKShapeTraits bool `type:"structure"`
  1930. }
  1931. // String returns the string representation
  1932. func (s DeleteBucketCorsInput) String() string {
  1933. return awsutil.Prettify(s)
  1934. }
  1935. // GoString returns the string representation
  1936. func (s DeleteBucketCorsInput) GoString() string {
  1937. return s.String()
  1938. }
  1939. type DeleteBucketCorsOutput struct {
  1940. metadataDeleteBucketCorsOutput `json:"-" xml:"-"`
  1941. }
  1942. type metadataDeleteBucketCorsOutput struct {
  1943. SDKShapeTraits bool `type:"structure"`
  1944. }
  1945. // String returns the string representation
  1946. func (s DeleteBucketCorsOutput) String() string {
  1947. return awsutil.Prettify(s)
  1948. }
  1949. // GoString returns the string representation
  1950. func (s DeleteBucketCorsOutput) GoString() string {
  1951. return s.String()
  1952. }
  1953. type DeleteBucketInput struct {
  1954. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1955. metadataDeleteBucketInput `json:"-" xml:"-"`
  1956. }
  1957. type metadataDeleteBucketInput struct {
  1958. SDKShapeTraits bool `type:"structure"`
  1959. }
  1960. // String returns the string representation
  1961. func (s DeleteBucketInput) String() string {
  1962. return awsutil.Prettify(s)
  1963. }
  1964. // GoString returns the string representation
  1965. func (s DeleteBucketInput) GoString() string {
  1966. return s.String()
  1967. }
  1968. type DeleteBucketLifecycleInput struct {
  1969. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  1970. metadataDeleteBucketLifecycleInput `json:"-" xml:"-"`
  1971. }
  1972. type metadataDeleteBucketLifecycleInput struct {
  1973. SDKShapeTraits bool `type:"structure"`
  1974. }
  1975. // String returns the string representation
  1976. func (s DeleteBucketLifecycleInput) String() string {
  1977. return awsutil.Prettify(s)
  1978. }
  1979. // GoString returns the string representation
  1980. func (s DeleteBucketLifecycleInput) GoString() string {
  1981. return s.String()
  1982. }
  1983. type DeleteBucketLifecycleOutput struct {
  1984. metadataDeleteBucketLifecycleOutput `json:"-" xml:"-"`
  1985. }
  1986. type metadataDeleteBucketLifecycleOutput struct {
  1987. SDKShapeTraits bool `type:"structure"`
  1988. }
  1989. // String returns the string representation
  1990. func (s DeleteBucketLifecycleOutput) String() string {
  1991. return awsutil.Prettify(s)
  1992. }
  1993. // GoString returns the string representation
  1994. func (s DeleteBucketLifecycleOutput) GoString() string {
  1995. return s.String()
  1996. }
  1997. type DeleteBucketOutput struct {
  1998. metadataDeleteBucketOutput `json:"-" xml:"-"`
  1999. }
  2000. type metadataDeleteBucketOutput struct {
  2001. SDKShapeTraits bool `type:"structure"`
  2002. }
  2003. // String returns the string representation
  2004. func (s DeleteBucketOutput) String() string {
  2005. return awsutil.Prettify(s)
  2006. }
  2007. // GoString returns the string representation
  2008. func (s DeleteBucketOutput) GoString() string {
  2009. return s.String()
  2010. }
  2011. type DeleteBucketPolicyInput struct {
  2012. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2013. metadataDeleteBucketPolicyInput `json:"-" xml:"-"`
  2014. }
  2015. type metadataDeleteBucketPolicyInput struct {
  2016. SDKShapeTraits bool `type:"structure"`
  2017. }
  2018. // String returns the string representation
  2019. func (s DeleteBucketPolicyInput) String() string {
  2020. return awsutil.Prettify(s)
  2021. }
  2022. // GoString returns the string representation
  2023. func (s DeleteBucketPolicyInput) GoString() string {
  2024. return s.String()
  2025. }
  2026. type DeleteBucketPolicyOutput struct {
  2027. metadataDeleteBucketPolicyOutput `json:"-" xml:"-"`
  2028. }
  2029. type metadataDeleteBucketPolicyOutput struct {
  2030. SDKShapeTraits bool `type:"structure"`
  2031. }
  2032. // String returns the string representation
  2033. func (s DeleteBucketPolicyOutput) String() string {
  2034. return awsutil.Prettify(s)
  2035. }
  2036. // GoString returns the string representation
  2037. func (s DeleteBucketPolicyOutput) GoString() string {
  2038. return s.String()
  2039. }
  2040. type DeleteBucketReplicationInput struct {
  2041. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2042. metadataDeleteBucketReplicationInput `json:"-" xml:"-"`
  2043. }
  2044. type metadataDeleteBucketReplicationInput struct {
  2045. SDKShapeTraits bool `type:"structure"`
  2046. }
  2047. // String returns the string representation
  2048. func (s DeleteBucketReplicationInput) String() string {
  2049. return awsutil.Prettify(s)
  2050. }
  2051. // GoString returns the string representation
  2052. func (s DeleteBucketReplicationInput) GoString() string {
  2053. return s.String()
  2054. }
  2055. type DeleteBucketReplicationOutput struct {
  2056. metadataDeleteBucketReplicationOutput `json:"-" xml:"-"`
  2057. }
  2058. type metadataDeleteBucketReplicationOutput struct {
  2059. SDKShapeTraits bool `type:"structure"`
  2060. }
  2061. // String returns the string representation
  2062. func (s DeleteBucketReplicationOutput) String() string {
  2063. return awsutil.Prettify(s)
  2064. }
  2065. // GoString returns the string representation
  2066. func (s DeleteBucketReplicationOutput) GoString() string {
  2067. return s.String()
  2068. }
  2069. type DeleteBucketTaggingInput struct {
  2070. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2071. metadataDeleteBucketTaggingInput `json:"-" xml:"-"`
  2072. }
  2073. type metadataDeleteBucketTaggingInput struct {
  2074. SDKShapeTraits bool `type:"structure"`
  2075. }
  2076. // String returns the string representation
  2077. func (s DeleteBucketTaggingInput) String() string {
  2078. return awsutil.Prettify(s)
  2079. }
  2080. // GoString returns the string representation
  2081. func (s DeleteBucketTaggingInput) GoString() string {
  2082. return s.String()
  2083. }
  2084. type DeleteBucketTaggingOutput struct {
  2085. metadataDeleteBucketTaggingOutput `json:"-" xml:"-"`
  2086. }
  2087. type metadataDeleteBucketTaggingOutput struct {
  2088. SDKShapeTraits bool `type:"structure"`
  2089. }
  2090. // String returns the string representation
  2091. func (s DeleteBucketTaggingOutput) String() string {
  2092. return awsutil.Prettify(s)
  2093. }
  2094. // GoString returns the string representation
  2095. func (s DeleteBucketTaggingOutput) GoString() string {
  2096. return s.String()
  2097. }
  2098. type DeleteBucketWebsiteInput struct {
  2099. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2100. metadataDeleteBucketWebsiteInput `json:"-" xml:"-"`
  2101. }
  2102. type metadataDeleteBucketWebsiteInput struct {
  2103. SDKShapeTraits bool `type:"structure"`
  2104. }
  2105. // String returns the string representation
  2106. func (s DeleteBucketWebsiteInput) String() string {
  2107. return awsutil.Prettify(s)
  2108. }
  2109. // GoString returns the string representation
  2110. func (s DeleteBucketWebsiteInput) GoString() string {
  2111. return s.String()
  2112. }
  2113. type DeleteBucketWebsiteOutput struct {
  2114. metadataDeleteBucketWebsiteOutput `json:"-" xml:"-"`
  2115. }
  2116. type metadataDeleteBucketWebsiteOutput struct {
  2117. SDKShapeTraits bool `type:"structure"`
  2118. }
  2119. // String returns the string representation
  2120. func (s DeleteBucketWebsiteOutput) String() string {
  2121. return awsutil.Prettify(s)
  2122. }
  2123. // GoString returns the string representation
  2124. func (s DeleteBucketWebsiteOutput) GoString() string {
  2125. return s.String()
  2126. }
  2127. type DeleteMarkerEntry struct {
  2128. // Specifies whether the object is (true) or is not (false) the latest version
  2129. // of an object.
  2130. IsLatest *bool `type:"boolean"`
  2131. // The object key.
  2132. Key *string `type:"string"`
  2133. // Date and time the object was last modified.
  2134. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  2135. Owner *Owner `type:"structure"`
  2136. // Version ID of an object.
  2137. VersionId *string `type:"string"`
  2138. metadataDeleteMarkerEntry `json:"-" xml:"-"`
  2139. }
  2140. type metadataDeleteMarkerEntry struct {
  2141. SDKShapeTraits bool `type:"structure"`
  2142. }
  2143. // String returns the string representation
  2144. func (s DeleteMarkerEntry) String() string {
  2145. return awsutil.Prettify(s)
  2146. }
  2147. // GoString returns the string representation
  2148. func (s DeleteMarkerEntry) GoString() string {
  2149. return s.String()
  2150. }
  2151. type DeleteObjectInput struct {
  2152. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2153. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  2154. // The concatenation of the authentication device's serial number, a space,
  2155. // and the value that is displayed on your authentication device.
  2156. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
  2157. // Confirms that the requester knows that she or he will be charged for the
  2158. // request. Bucket owners need not specify this parameter in their requests.
  2159. // Documentation on downloading objects from requester pays buckets can be found
  2160. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  2161. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  2162. // VersionId used to reference a specific version of the object.
  2163. VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
  2164. metadataDeleteObjectInput `json:"-" xml:"-"`
  2165. }
  2166. type metadataDeleteObjectInput struct {
  2167. SDKShapeTraits bool `type:"structure"`
  2168. }
  2169. // String returns the string representation
  2170. func (s DeleteObjectInput) String() string {
  2171. return awsutil.Prettify(s)
  2172. }
  2173. // GoString returns the string representation
  2174. func (s DeleteObjectInput) GoString() string {
  2175. return s.String()
  2176. }
  2177. type DeleteObjectOutput struct {
  2178. // Specifies whether the versioned object that was permanently deleted was (true)
  2179. // or was not (false) a delete marker.
  2180. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
  2181. // If present, indicates that the requester was successfully charged for the
  2182. // request.
  2183. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  2184. // Returns the version ID of the delete marker created as a result of the DELETE
  2185. // operation.
  2186. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
  2187. metadataDeleteObjectOutput `json:"-" xml:"-"`
  2188. }
  2189. type metadataDeleteObjectOutput struct {
  2190. SDKShapeTraits bool `type:"structure"`
  2191. }
  2192. // String returns the string representation
  2193. func (s DeleteObjectOutput) String() string {
  2194. return awsutil.Prettify(s)
  2195. }
  2196. // GoString returns the string representation
  2197. func (s DeleteObjectOutput) GoString() string {
  2198. return s.String()
  2199. }
  2200. type DeleteObjectsInput struct {
  2201. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2202. Delete *Delete `locationName:"Delete" type:"structure" required:"true"`
  2203. // The concatenation of the authentication device's serial number, a space,
  2204. // and the value that is displayed on your authentication device.
  2205. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
  2206. // Confirms that the requester knows that she or he will be charged for the
  2207. // request. Bucket owners need not specify this parameter in their requests.
  2208. // Documentation on downloading objects from requester pays buckets can be found
  2209. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  2210. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  2211. metadataDeleteObjectsInput `json:"-" xml:"-"`
  2212. }
  2213. type metadataDeleteObjectsInput struct {
  2214. SDKShapeTraits bool `type:"structure" payload:"Delete"`
  2215. }
  2216. // String returns the string representation
  2217. func (s DeleteObjectsInput) String() string {
  2218. return awsutil.Prettify(s)
  2219. }
  2220. // GoString returns the string representation
  2221. func (s DeleteObjectsInput) GoString() string {
  2222. return s.String()
  2223. }
  2224. type DeleteObjectsOutput struct {
  2225. Deleted []*DeletedObject `type:"list" flattened:"true"`
  2226. Errors []*Error `locationName:"Error" type:"list" flattened:"true"`
  2227. // If present, indicates that the requester was successfully charged for the
  2228. // request.
  2229. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  2230. metadataDeleteObjectsOutput `json:"-" xml:"-"`
  2231. }
  2232. type metadataDeleteObjectsOutput struct {
  2233. SDKShapeTraits bool `type:"structure"`
  2234. }
  2235. // String returns the string representation
  2236. func (s DeleteObjectsOutput) String() string {
  2237. return awsutil.Prettify(s)
  2238. }
  2239. // GoString returns the string representation
  2240. func (s DeleteObjectsOutput) GoString() string {
  2241. return s.String()
  2242. }
  2243. type DeletedObject struct {
  2244. DeleteMarker *bool `type:"boolean"`
  2245. DeleteMarkerVersionId *string `type:"string"`
  2246. Key *string `type:"string"`
  2247. VersionId *string `type:"string"`
  2248. metadataDeletedObject `json:"-" xml:"-"`
  2249. }
  2250. type metadataDeletedObject struct {
  2251. SDKShapeTraits bool `type:"structure"`
  2252. }
  2253. // String returns the string representation
  2254. func (s DeletedObject) String() string {
  2255. return awsutil.Prettify(s)
  2256. }
  2257. // GoString returns the string representation
  2258. func (s DeletedObject) GoString() string {
  2259. return s.String()
  2260. }
  2261. type Destination struct {
  2262. // Amazon resource name (ARN) of the bucket where you want Amazon S3 to store
  2263. // replicas of the object identified by the rule.
  2264. Bucket *string `type:"string" required:"true"`
  2265. metadataDestination `json:"-" xml:"-"`
  2266. }
  2267. type metadataDestination struct {
  2268. SDKShapeTraits bool `type:"structure"`
  2269. }
  2270. // String returns the string representation
  2271. func (s Destination) String() string {
  2272. return awsutil.Prettify(s)
  2273. }
  2274. // GoString returns the string representation
  2275. func (s Destination) GoString() string {
  2276. return s.String()
  2277. }
  2278. type Error struct {
  2279. Code *string `type:"string"`
  2280. Key *string `type:"string"`
  2281. Message *string `type:"string"`
  2282. VersionId *string `type:"string"`
  2283. metadataError `json:"-" xml:"-"`
  2284. }
  2285. type metadataError struct {
  2286. SDKShapeTraits bool `type:"structure"`
  2287. }
  2288. // String returns the string representation
  2289. func (s Error) String() string {
  2290. return awsutil.Prettify(s)
  2291. }
  2292. // GoString returns the string representation
  2293. func (s Error) GoString() string {
  2294. return s.String()
  2295. }
  2296. type ErrorDocument struct {
  2297. // The object key name to use when a 4XX class error occurs.
  2298. Key *string `type:"string" required:"true"`
  2299. metadataErrorDocument `json:"-" xml:"-"`
  2300. }
  2301. type metadataErrorDocument struct {
  2302. SDKShapeTraits bool `type:"structure"`
  2303. }
  2304. // String returns the string representation
  2305. func (s ErrorDocument) String() string {
  2306. return awsutil.Prettify(s)
  2307. }
  2308. // GoString returns the string representation
  2309. func (s ErrorDocument) GoString() string {
  2310. return s.String()
  2311. }
  2312. // Container for key value pair that defines the criteria for the filter rule.
  2313. type FilterRule struct {
  2314. // Object key name prefix or suffix identifying one or more objects to which
  2315. // the filtering rule applies. Maximum prefix length can be up to 1,024 characters.
  2316. // Overlapping prefixes and suffixes are not supported. For more information,
  2317. // go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
  2318. // in the Amazon Simple Storage Service Developer Guide.
  2319. Name *string `type:"string" enum:"FilterRuleName"`
  2320. Value *string `type:"string"`
  2321. metadataFilterRule `json:"-" xml:"-"`
  2322. }
  2323. type metadataFilterRule struct {
  2324. SDKShapeTraits bool `type:"structure"`
  2325. }
  2326. // String returns the string representation
  2327. func (s FilterRule) String() string {
  2328. return awsutil.Prettify(s)
  2329. }
  2330. // GoString returns the string representation
  2331. func (s FilterRule) GoString() string {
  2332. return s.String()
  2333. }
  2334. type GetBucketAclInput struct {
  2335. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2336. metadataGetBucketAclInput `json:"-" xml:"-"`
  2337. }
  2338. type metadataGetBucketAclInput struct {
  2339. SDKShapeTraits bool `type:"structure"`
  2340. }
  2341. // String returns the string representation
  2342. func (s GetBucketAclInput) String() string {
  2343. return awsutil.Prettify(s)
  2344. }
  2345. // GoString returns the string representation
  2346. func (s GetBucketAclInput) GoString() string {
  2347. return s.String()
  2348. }
  2349. type GetBucketAclOutput struct {
  2350. // A list of grants.
  2351. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
  2352. Owner *Owner `type:"structure"`
  2353. metadataGetBucketAclOutput `json:"-" xml:"-"`
  2354. }
  2355. type metadataGetBucketAclOutput struct {
  2356. SDKShapeTraits bool `type:"structure"`
  2357. }
  2358. // String returns the string representation
  2359. func (s GetBucketAclOutput) String() string {
  2360. return awsutil.Prettify(s)
  2361. }
  2362. // GoString returns the string representation
  2363. func (s GetBucketAclOutput) GoString() string {
  2364. return s.String()
  2365. }
  2366. type GetBucketCorsInput struct {
  2367. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2368. metadataGetBucketCorsInput `json:"-" xml:"-"`
  2369. }
  2370. type metadataGetBucketCorsInput struct {
  2371. SDKShapeTraits bool `type:"structure"`
  2372. }
  2373. // String returns the string representation
  2374. func (s GetBucketCorsInput) String() string {
  2375. return awsutil.Prettify(s)
  2376. }
  2377. // GoString returns the string representation
  2378. func (s GetBucketCorsInput) GoString() string {
  2379. return s.String()
  2380. }
  2381. type GetBucketCorsOutput struct {
  2382. CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true"`
  2383. metadataGetBucketCorsOutput `json:"-" xml:"-"`
  2384. }
  2385. type metadataGetBucketCorsOutput struct {
  2386. SDKShapeTraits bool `type:"structure"`
  2387. }
  2388. // String returns the string representation
  2389. func (s GetBucketCorsOutput) String() string {
  2390. return awsutil.Prettify(s)
  2391. }
  2392. // GoString returns the string representation
  2393. func (s GetBucketCorsOutput) GoString() string {
  2394. return s.String()
  2395. }
  2396. type GetBucketLifecycleInput struct {
  2397. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2398. metadataGetBucketLifecycleInput `json:"-" xml:"-"`
  2399. }
  2400. type metadataGetBucketLifecycleInput struct {
  2401. SDKShapeTraits bool `type:"structure"`
  2402. }
  2403. // String returns the string representation
  2404. func (s GetBucketLifecycleInput) String() string {
  2405. return awsutil.Prettify(s)
  2406. }
  2407. // GoString returns the string representation
  2408. func (s GetBucketLifecycleInput) GoString() string {
  2409. return s.String()
  2410. }
  2411. type GetBucketLifecycleOutput struct {
  2412. Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true"`
  2413. metadataGetBucketLifecycleOutput `json:"-" xml:"-"`
  2414. }
  2415. type metadataGetBucketLifecycleOutput struct {
  2416. SDKShapeTraits bool `type:"structure"`
  2417. }
  2418. // String returns the string representation
  2419. func (s GetBucketLifecycleOutput) String() string {
  2420. return awsutil.Prettify(s)
  2421. }
  2422. // GoString returns the string representation
  2423. func (s GetBucketLifecycleOutput) GoString() string {
  2424. return s.String()
  2425. }
  2426. type GetBucketLocationInput struct {
  2427. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2428. metadataGetBucketLocationInput `json:"-" xml:"-"`
  2429. }
  2430. type metadataGetBucketLocationInput struct {
  2431. SDKShapeTraits bool `type:"structure"`
  2432. }
  2433. // String returns the string representation
  2434. func (s GetBucketLocationInput) String() string {
  2435. return awsutil.Prettify(s)
  2436. }
  2437. // GoString returns the string representation
  2438. func (s GetBucketLocationInput) GoString() string {
  2439. return s.String()
  2440. }
  2441. type GetBucketLocationOutput struct {
  2442. LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
  2443. metadataGetBucketLocationOutput `json:"-" xml:"-"`
  2444. }
  2445. type metadataGetBucketLocationOutput struct {
  2446. SDKShapeTraits bool `type:"structure"`
  2447. }
  2448. // String returns the string representation
  2449. func (s GetBucketLocationOutput) String() string {
  2450. return awsutil.Prettify(s)
  2451. }
  2452. // GoString returns the string representation
  2453. func (s GetBucketLocationOutput) GoString() string {
  2454. return s.String()
  2455. }
  2456. type GetBucketLoggingInput struct {
  2457. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2458. metadataGetBucketLoggingInput `json:"-" xml:"-"`
  2459. }
  2460. type metadataGetBucketLoggingInput struct {
  2461. SDKShapeTraits bool `type:"structure"`
  2462. }
  2463. // String returns the string representation
  2464. func (s GetBucketLoggingInput) String() string {
  2465. return awsutil.Prettify(s)
  2466. }
  2467. // GoString returns the string representation
  2468. func (s GetBucketLoggingInput) GoString() string {
  2469. return s.String()
  2470. }
  2471. type GetBucketLoggingOutput struct {
  2472. LoggingEnabled *LoggingEnabled `type:"structure"`
  2473. metadataGetBucketLoggingOutput `json:"-" xml:"-"`
  2474. }
  2475. type metadataGetBucketLoggingOutput struct {
  2476. SDKShapeTraits bool `type:"structure"`
  2477. }
  2478. // String returns the string representation
  2479. func (s GetBucketLoggingOutput) String() string {
  2480. return awsutil.Prettify(s)
  2481. }
  2482. // GoString returns the string representation
  2483. func (s GetBucketLoggingOutput) GoString() string {
  2484. return s.String()
  2485. }
  2486. type GetBucketNotificationConfigurationRequest struct {
  2487. // Name of the buket to get the notification configuration for.
  2488. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2489. metadataGetBucketNotificationConfigurationRequest `json:"-" xml:"-"`
  2490. }
  2491. type metadataGetBucketNotificationConfigurationRequest struct {
  2492. SDKShapeTraits bool `type:"structure"`
  2493. }
  2494. // String returns the string representation
  2495. func (s GetBucketNotificationConfigurationRequest) String() string {
  2496. return awsutil.Prettify(s)
  2497. }
  2498. // GoString returns the string representation
  2499. func (s GetBucketNotificationConfigurationRequest) GoString() string {
  2500. return s.String()
  2501. }
  2502. type GetBucketPolicyInput struct {
  2503. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2504. metadataGetBucketPolicyInput `json:"-" xml:"-"`
  2505. }
  2506. type metadataGetBucketPolicyInput struct {
  2507. SDKShapeTraits bool `type:"structure"`
  2508. }
  2509. // String returns the string representation
  2510. func (s GetBucketPolicyInput) String() string {
  2511. return awsutil.Prettify(s)
  2512. }
  2513. // GoString returns the string representation
  2514. func (s GetBucketPolicyInput) GoString() string {
  2515. return s.String()
  2516. }
  2517. type GetBucketPolicyOutput struct {
  2518. // The bucket policy as a JSON document.
  2519. Policy *string `type:"string"`
  2520. metadataGetBucketPolicyOutput `json:"-" xml:"-"`
  2521. }
  2522. type metadataGetBucketPolicyOutput struct {
  2523. SDKShapeTraits bool `type:"structure" payload:"Policy"`
  2524. }
  2525. // String returns the string representation
  2526. func (s GetBucketPolicyOutput) String() string {
  2527. return awsutil.Prettify(s)
  2528. }
  2529. // GoString returns the string representation
  2530. func (s GetBucketPolicyOutput) GoString() string {
  2531. return s.String()
  2532. }
  2533. type GetBucketReplicationInput struct {
  2534. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2535. metadataGetBucketReplicationInput `json:"-" xml:"-"`
  2536. }
  2537. type metadataGetBucketReplicationInput struct {
  2538. SDKShapeTraits bool `type:"structure"`
  2539. }
  2540. // String returns the string representation
  2541. func (s GetBucketReplicationInput) String() string {
  2542. return awsutil.Prettify(s)
  2543. }
  2544. // GoString returns the string representation
  2545. func (s GetBucketReplicationInput) GoString() string {
  2546. return s.String()
  2547. }
  2548. type GetBucketReplicationOutput struct {
  2549. // Container for replication rules. You can add as many as 1,000 rules. Total
  2550. // replication configuration size can be up to 2 MB.
  2551. ReplicationConfiguration *ReplicationConfiguration `type:"structure"`
  2552. metadataGetBucketReplicationOutput `json:"-" xml:"-"`
  2553. }
  2554. type metadataGetBucketReplicationOutput struct {
  2555. SDKShapeTraits bool `type:"structure" payload:"ReplicationConfiguration"`
  2556. }
  2557. // String returns the string representation
  2558. func (s GetBucketReplicationOutput) String() string {
  2559. return awsutil.Prettify(s)
  2560. }
  2561. // GoString returns the string representation
  2562. func (s GetBucketReplicationOutput) GoString() string {
  2563. return s.String()
  2564. }
  2565. type GetBucketRequestPaymentInput struct {
  2566. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2567. metadataGetBucketRequestPaymentInput `json:"-" xml:"-"`
  2568. }
  2569. type metadataGetBucketRequestPaymentInput struct {
  2570. SDKShapeTraits bool `type:"structure"`
  2571. }
  2572. // String returns the string representation
  2573. func (s GetBucketRequestPaymentInput) String() string {
  2574. return awsutil.Prettify(s)
  2575. }
  2576. // GoString returns the string representation
  2577. func (s GetBucketRequestPaymentInput) GoString() string {
  2578. return s.String()
  2579. }
  2580. type GetBucketRequestPaymentOutput struct {
  2581. // Specifies who pays for the download and request fees.
  2582. Payer *string `type:"string" enum:"Payer"`
  2583. metadataGetBucketRequestPaymentOutput `json:"-" xml:"-"`
  2584. }
  2585. type metadataGetBucketRequestPaymentOutput struct {
  2586. SDKShapeTraits bool `type:"structure"`
  2587. }
  2588. // String returns the string representation
  2589. func (s GetBucketRequestPaymentOutput) String() string {
  2590. return awsutil.Prettify(s)
  2591. }
  2592. // GoString returns the string representation
  2593. func (s GetBucketRequestPaymentOutput) GoString() string {
  2594. return s.String()
  2595. }
  2596. type GetBucketTaggingInput struct {
  2597. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2598. metadataGetBucketTaggingInput `json:"-" xml:"-"`
  2599. }
  2600. type metadataGetBucketTaggingInput struct {
  2601. SDKShapeTraits bool `type:"structure"`
  2602. }
  2603. // String returns the string representation
  2604. func (s GetBucketTaggingInput) String() string {
  2605. return awsutil.Prettify(s)
  2606. }
  2607. // GoString returns the string representation
  2608. func (s GetBucketTaggingInput) GoString() string {
  2609. return s.String()
  2610. }
  2611. type GetBucketTaggingOutput struct {
  2612. TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
  2613. metadataGetBucketTaggingOutput `json:"-" xml:"-"`
  2614. }
  2615. type metadataGetBucketTaggingOutput struct {
  2616. SDKShapeTraits bool `type:"structure"`
  2617. }
  2618. // String returns the string representation
  2619. func (s GetBucketTaggingOutput) String() string {
  2620. return awsutil.Prettify(s)
  2621. }
  2622. // GoString returns the string representation
  2623. func (s GetBucketTaggingOutput) GoString() string {
  2624. return s.String()
  2625. }
  2626. type GetBucketVersioningInput struct {
  2627. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2628. metadataGetBucketVersioningInput `json:"-" xml:"-"`
  2629. }
  2630. type metadataGetBucketVersioningInput struct {
  2631. SDKShapeTraits bool `type:"structure"`
  2632. }
  2633. // String returns the string representation
  2634. func (s GetBucketVersioningInput) String() string {
  2635. return awsutil.Prettify(s)
  2636. }
  2637. // GoString returns the string representation
  2638. func (s GetBucketVersioningInput) GoString() string {
  2639. return s.String()
  2640. }
  2641. type GetBucketVersioningOutput struct {
  2642. // Specifies whether MFA delete is enabled in the bucket versioning configuration.
  2643. // This element is only returned if the bucket has been configured with MFA
  2644. // delete. If the bucket has never been so configured, this element is not returned.
  2645. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADeleteStatus"`
  2646. // The versioning state of the bucket.
  2647. Status *string `type:"string" enum:"BucketVersioningStatus"`
  2648. metadataGetBucketVersioningOutput `json:"-" xml:"-"`
  2649. }
  2650. type metadataGetBucketVersioningOutput struct {
  2651. SDKShapeTraits bool `type:"structure"`
  2652. }
  2653. // String returns the string representation
  2654. func (s GetBucketVersioningOutput) String() string {
  2655. return awsutil.Prettify(s)
  2656. }
  2657. // GoString returns the string representation
  2658. func (s GetBucketVersioningOutput) GoString() string {
  2659. return s.String()
  2660. }
  2661. type GetBucketWebsiteInput struct {
  2662. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2663. metadataGetBucketWebsiteInput `json:"-" xml:"-"`
  2664. }
  2665. type metadataGetBucketWebsiteInput struct {
  2666. SDKShapeTraits bool `type:"structure"`
  2667. }
  2668. // String returns the string representation
  2669. func (s GetBucketWebsiteInput) String() string {
  2670. return awsutil.Prettify(s)
  2671. }
  2672. // GoString returns the string representation
  2673. func (s GetBucketWebsiteInput) GoString() string {
  2674. return s.String()
  2675. }
  2676. type GetBucketWebsiteOutput struct {
  2677. ErrorDocument *ErrorDocument `type:"structure"`
  2678. IndexDocument *IndexDocument `type:"structure"`
  2679. RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`
  2680. RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
  2681. metadataGetBucketWebsiteOutput `json:"-" xml:"-"`
  2682. }
  2683. type metadataGetBucketWebsiteOutput struct {
  2684. SDKShapeTraits bool `type:"structure"`
  2685. }
  2686. // String returns the string representation
  2687. func (s GetBucketWebsiteOutput) String() string {
  2688. return awsutil.Prettify(s)
  2689. }
  2690. // GoString returns the string representation
  2691. func (s GetBucketWebsiteOutput) GoString() string {
  2692. return s.String()
  2693. }
  2694. type GetObjectAclInput struct {
  2695. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2696. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  2697. // Confirms that the requester knows that she or he will be charged for the
  2698. // request. Bucket owners need not specify this parameter in their requests.
  2699. // Documentation on downloading objects from requester pays buckets can be found
  2700. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  2701. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  2702. // VersionId used to reference a specific version of the object.
  2703. VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
  2704. metadataGetObjectAclInput `json:"-" xml:"-"`
  2705. }
  2706. type metadataGetObjectAclInput struct {
  2707. SDKShapeTraits bool `type:"structure"`
  2708. }
  2709. // String returns the string representation
  2710. func (s GetObjectAclInput) String() string {
  2711. return awsutil.Prettify(s)
  2712. }
  2713. // GoString returns the string representation
  2714. func (s GetObjectAclInput) GoString() string {
  2715. return s.String()
  2716. }
  2717. type GetObjectAclOutput struct {
  2718. // A list of grants.
  2719. Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`
  2720. Owner *Owner `type:"structure"`
  2721. // If present, indicates that the requester was successfully charged for the
  2722. // request.
  2723. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  2724. metadataGetObjectAclOutput `json:"-" xml:"-"`
  2725. }
  2726. type metadataGetObjectAclOutput struct {
  2727. SDKShapeTraits bool `type:"structure"`
  2728. }
  2729. // String returns the string representation
  2730. func (s GetObjectAclOutput) String() string {
  2731. return awsutil.Prettify(s)
  2732. }
  2733. // GoString returns the string representation
  2734. func (s GetObjectAclOutput) GoString() string {
  2735. return s.String()
  2736. }
  2737. type GetObjectInput struct {
  2738. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2739. // Return the object only if its entity tag (ETag) is the same as the one specified,
  2740. // otherwise return a 412 (precondition failed).
  2741. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  2742. // Return the object only if it has been modified since the specified time,
  2743. // otherwise return a 304 (not modified).
  2744. IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"`
  2745. // Return the object only if its entity tag (ETag) is different from the one
  2746. // specified, otherwise return a 304 (not modified).
  2747. IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`
  2748. // Return the object only if it has not been modified since the specified time,
  2749. // otherwise return a 412 (precondition failed).
  2750. IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"`
  2751. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  2752. // Downloads the specified range bytes of an object. For more information about
  2753. // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
  2754. Range *string `location:"header" locationName:"Range" type:"string"`
  2755. // Confirms that the requester knows that she or he will be charged for the
  2756. // request. Bucket owners need not specify this parameter in their requests.
  2757. // Documentation on downloading objects from requester pays buckets can be found
  2758. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  2759. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  2760. // Sets the Cache-Control header of the response.
  2761. ResponseCacheControl *string `location:"querystring" locationName:"response-cache-control" type:"string"`
  2762. // Sets the Content-Disposition header of the response
  2763. ResponseContentDisposition *string `location:"querystring" locationName:"response-content-disposition" type:"string"`
  2764. // Sets the Content-Encoding header of the response.
  2765. ResponseContentEncoding *string `location:"querystring" locationName:"response-content-encoding" type:"string"`
  2766. // Sets the Content-Language header of the response.
  2767. ResponseContentLanguage *string `location:"querystring" locationName:"response-content-language" type:"string"`
  2768. // Sets the Content-Type header of the response.
  2769. ResponseContentType *string `location:"querystring" locationName:"response-content-type" type:"string"`
  2770. // Sets the Expires header of the response.
  2771. ResponseExpires *time.Time `location:"querystring" locationName:"response-expires" type:"timestamp" timestampFormat:"iso8601"`
  2772. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  2773. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  2774. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  2775. // data. This value is used to store the object and then it is discarded; Amazon
  2776. // does not store the encryption key. The key must be appropriate for use with
  2777. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  2778. // header.
  2779. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  2780. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  2781. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  2782. // key was transmitted without error.
  2783. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  2784. // VersionId used to reference a specific version of the object.
  2785. VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
  2786. metadataGetObjectInput `json:"-" xml:"-"`
  2787. }
  2788. type metadataGetObjectInput struct {
  2789. SDKShapeTraits bool `type:"structure"`
  2790. }
  2791. // String returns the string representation
  2792. func (s GetObjectInput) String() string {
  2793. return awsutil.Prettify(s)
  2794. }
  2795. // GoString returns the string representation
  2796. func (s GetObjectInput) GoString() string {
  2797. return s.String()
  2798. }
  2799. type GetObjectOutput struct {
  2800. AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`
  2801. // Object data.
  2802. Body io.ReadCloser `type:"blob"`
  2803. // Specifies caching behavior along the request/reply chain.
  2804. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
  2805. // Specifies presentational information for the object.
  2806. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
  2807. // Specifies what content encodings have been applied to the object and thus
  2808. // what decoding mechanisms must be applied to obtain the media-type referenced
  2809. // by the Content-Type header field.
  2810. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
  2811. // The language the content is in.
  2812. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
  2813. // Size of the body in bytes.
  2814. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`
  2815. // The portion of the object returned in the response.
  2816. ContentRange *string `location:"header" locationName:"Content-Range" type:"string"`
  2817. // A standard MIME type describing the format of the object data.
  2818. ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
  2819. // Specifies whether the object retrieved was (true) or was not (false) a Delete
  2820. // Marker. If false, this response header does not appear in the response.
  2821. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
  2822. // An ETag is an opaque identifier assigned by a web server to a specific version
  2823. // of a resource found at a URL
  2824. ETag *string `location:"header" locationName:"ETag" type:"string"`
  2825. // If the object expiration is configured (see PUT Bucket lifecycle), the response
  2826. // includes this header. It includes the expiry-date and rule-id key value pairs
  2827. // providing object expiration information. The value of the rule-id is URL
  2828. // encoded.
  2829. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
  2830. // The date and time at which the object is no longer cacheable.
  2831. Expires *string `location:"header" locationName:"Expires" type:"string"`
  2832. // Last modified date of the object
  2833. LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`
  2834. // A map of metadata to store with the object in S3.
  2835. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
  2836. // This is set to the number of metadata entries not returned in x-amz-meta
  2837. // headers. This can happen if you create metadata using an API like SOAP that
  2838. // supports more flexible metadata than the REST API. For example, using SOAP,
  2839. // you can create metadata whose values are not legal HTTP headers.
  2840. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
  2841. ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`
  2842. // If present, indicates that the requester was successfully charged for the
  2843. // request.
  2844. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  2845. // Provides information about object restoration operation and expiration time
  2846. // of the restored object copy.
  2847. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`
  2848. // If server-side encryption with a customer-provided encryption key was requested,
  2849. // the response will include this header confirming the encryption algorithm
  2850. // used.
  2851. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  2852. // If server-side encryption with a customer-provided encryption key was requested,
  2853. // the response will include this header to provide round trip message integrity
  2854. // verification of the customer-provided encryption key.
  2855. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  2856. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  2857. // encryption key that was used for the object.
  2858. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  2859. // The Server-side encryption algorithm used when storing this object in S3
  2860. // (e.g., AES256, aws:kms).
  2861. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  2862. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
  2863. // Version of the object.
  2864. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
  2865. // If the bucket is configured as a website, redirects requests for this object
  2866. // to another object in the same bucket or to an external URL. Amazon S3 stores
  2867. // the value of this header in the object metadata.
  2868. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
  2869. metadataGetObjectOutput `json:"-" xml:"-"`
  2870. }
  2871. type metadataGetObjectOutput struct {
  2872. SDKShapeTraits bool `type:"structure" payload:"Body"`
  2873. }
  2874. // String returns the string representation
  2875. func (s GetObjectOutput) String() string {
  2876. return awsutil.Prettify(s)
  2877. }
  2878. // GoString returns the string representation
  2879. func (s GetObjectOutput) GoString() string {
  2880. return s.String()
  2881. }
  2882. type GetObjectTorrentInput struct {
  2883. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2884. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  2885. // Confirms that the requester knows that she or he will be charged for the
  2886. // request. Bucket owners need not specify this parameter in their requests.
  2887. // Documentation on downloading objects from requester pays buckets can be found
  2888. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  2889. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  2890. metadataGetObjectTorrentInput `json:"-" xml:"-"`
  2891. }
  2892. type metadataGetObjectTorrentInput struct {
  2893. SDKShapeTraits bool `type:"structure"`
  2894. }
  2895. // String returns the string representation
  2896. func (s GetObjectTorrentInput) String() string {
  2897. return awsutil.Prettify(s)
  2898. }
  2899. // GoString returns the string representation
  2900. func (s GetObjectTorrentInput) GoString() string {
  2901. return s.String()
  2902. }
  2903. type GetObjectTorrentOutput struct {
  2904. Body io.ReadCloser `type:"blob"`
  2905. // If present, indicates that the requester was successfully charged for the
  2906. // request.
  2907. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  2908. metadataGetObjectTorrentOutput `json:"-" xml:"-"`
  2909. }
  2910. type metadataGetObjectTorrentOutput struct {
  2911. SDKShapeTraits bool `type:"structure" payload:"Body"`
  2912. }
  2913. // String returns the string representation
  2914. func (s GetObjectTorrentOutput) String() string {
  2915. return awsutil.Prettify(s)
  2916. }
  2917. // GoString returns the string representation
  2918. func (s GetObjectTorrentOutput) GoString() string {
  2919. return s.String()
  2920. }
  2921. type Grant struct {
  2922. Grantee *Grantee `type:"structure"`
  2923. // Specifies the permission given to the grantee.
  2924. Permission *string `type:"string" enum:"Permission"`
  2925. metadataGrant `json:"-" xml:"-"`
  2926. }
  2927. type metadataGrant struct {
  2928. SDKShapeTraits bool `type:"structure"`
  2929. }
  2930. // String returns the string representation
  2931. func (s Grant) String() string {
  2932. return awsutil.Prettify(s)
  2933. }
  2934. // GoString returns the string representation
  2935. func (s Grant) GoString() string {
  2936. return s.String()
  2937. }
  2938. type Grantee struct {
  2939. // Screen name of the grantee.
  2940. DisplayName *string `type:"string"`
  2941. // Email address of the grantee.
  2942. EmailAddress *string `type:"string"`
  2943. // The canonical user ID of the grantee.
  2944. ID *string `type:"string"`
  2945. // Type of grantee
  2946. Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true" required:"true" enum:"Type"`
  2947. // URI of the grantee group.
  2948. URI *string `type:"string"`
  2949. metadataGrantee `json:"-" xml:"-"`
  2950. }
  2951. type metadataGrantee struct {
  2952. SDKShapeTraits bool `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
  2953. }
  2954. // String returns the string representation
  2955. func (s Grantee) String() string {
  2956. return awsutil.Prettify(s)
  2957. }
  2958. // GoString returns the string representation
  2959. func (s Grantee) GoString() string {
  2960. return s.String()
  2961. }
  2962. type HeadBucketInput struct {
  2963. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2964. metadataHeadBucketInput `json:"-" xml:"-"`
  2965. }
  2966. type metadataHeadBucketInput struct {
  2967. SDKShapeTraits bool `type:"structure"`
  2968. }
  2969. // String returns the string representation
  2970. func (s HeadBucketInput) String() string {
  2971. return awsutil.Prettify(s)
  2972. }
  2973. // GoString returns the string representation
  2974. func (s HeadBucketInput) GoString() string {
  2975. return s.String()
  2976. }
  2977. type HeadBucketOutput struct {
  2978. metadataHeadBucketOutput `json:"-" xml:"-"`
  2979. }
  2980. type metadataHeadBucketOutput struct {
  2981. SDKShapeTraits bool `type:"structure"`
  2982. }
  2983. // String returns the string representation
  2984. func (s HeadBucketOutput) String() string {
  2985. return awsutil.Prettify(s)
  2986. }
  2987. // GoString returns the string representation
  2988. func (s HeadBucketOutput) GoString() string {
  2989. return s.String()
  2990. }
  2991. type HeadObjectInput struct {
  2992. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  2993. // Return the object only if its entity tag (ETag) is the same as the one specified,
  2994. // otherwise return a 412 (precondition failed).
  2995. IfMatch *string `location:"header" locationName:"If-Match" type:"string"`
  2996. // Return the object only if it has been modified since the specified time,
  2997. // otherwise return a 304 (not modified).
  2998. IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"`
  2999. // Return the object only if its entity tag (ETag) is different from the one
  3000. // specified, otherwise return a 304 (not modified).
  3001. IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`
  3002. // Return the object only if it has not been modified since the specified time,
  3003. // otherwise return a 412 (precondition failed).
  3004. IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"`
  3005. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  3006. // Downloads the specified range bytes of an object. For more information about
  3007. // the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
  3008. Range *string `location:"header" locationName:"Range" type:"string"`
  3009. // Confirms that the requester knows that she or he will be charged for the
  3010. // request. Bucket owners need not specify this parameter in their requests.
  3011. // Documentation on downloading objects from requester pays buckets can be found
  3012. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  3013. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  3014. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  3015. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  3016. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  3017. // data. This value is used to store the object and then it is discarded; Amazon
  3018. // does not store the encryption key. The key must be appropriate for use with
  3019. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  3020. // header.
  3021. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  3022. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  3023. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  3024. // key was transmitted without error.
  3025. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  3026. // VersionId used to reference a specific version of the object.
  3027. VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
  3028. metadataHeadObjectInput `json:"-" xml:"-"`
  3029. }
  3030. type metadataHeadObjectInput struct {
  3031. SDKShapeTraits bool `type:"structure"`
  3032. }
  3033. // String returns the string representation
  3034. func (s HeadObjectInput) String() string {
  3035. return awsutil.Prettify(s)
  3036. }
  3037. // GoString returns the string representation
  3038. func (s HeadObjectInput) GoString() string {
  3039. return s.String()
  3040. }
  3041. type HeadObjectOutput struct {
  3042. AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`
  3043. // Specifies caching behavior along the request/reply chain.
  3044. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
  3045. // Specifies presentational information for the object.
  3046. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
  3047. // Specifies what content encodings have been applied to the object and thus
  3048. // what decoding mechanisms must be applied to obtain the media-type referenced
  3049. // by the Content-Type header field.
  3050. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
  3051. // The language the content is in.
  3052. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
  3053. // Size of the body in bytes.
  3054. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`
  3055. // A standard MIME type describing the format of the object data.
  3056. ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
  3057. // Specifies whether the object retrieved was (true) or was not (false) a Delete
  3058. // Marker. If false, this response header does not appear in the response.
  3059. DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`
  3060. // An ETag is an opaque identifier assigned by a web server to a specific version
  3061. // of a resource found at a URL
  3062. ETag *string `location:"header" locationName:"ETag" type:"string"`
  3063. // If the object expiration is configured (see PUT Bucket lifecycle), the response
  3064. // includes this header. It includes the expiry-date and rule-id key value pairs
  3065. // providing object expiration information. The value of the rule-id is URL
  3066. // encoded.
  3067. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
  3068. // The date and time at which the object is no longer cacheable.
  3069. Expires *string `location:"header" locationName:"Expires" type:"string"`
  3070. // Last modified date of the object
  3071. LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`
  3072. // A map of metadata to store with the object in S3.
  3073. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
  3074. // This is set to the number of metadata entries not returned in x-amz-meta
  3075. // headers. This can happen if you create metadata using an API like SOAP that
  3076. // supports more flexible metadata than the REST API. For example, using SOAP,
  3077. // you can create metadata whose values are not legal HTTP headers.
  3078. MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`
  3079. ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`
  3080. // If present, indicates that the requester was successfully charged for the
  3081. // request.
  3082. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  3083. // Provides information about object restoration operation and expiration time
  3084. // of the restored object copy.
  3085. Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`
  3086. // If server-side encryption with a customer-provided encryption key was requested,
  3087. // the response will include this header confirming the encryption algorithm
  3088. // used.
  3089. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  3090. // If server-side encryption with a customer-provided encryption key was requested,
  3091. // the response will include this header to provide round trip message integrity
  3092. // verification of the customer-provided encryption key.
  3093. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  3094. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  3095. // encryption key that was used for the object.
  3096. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  3097. // The Server-side encryption algorithm used when storing this object in S3
  3098. // (e.g., AES256, aws:kms).
  3099. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  3100. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
  3101. // Version of the object.
  3102. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
  3103. // If the bucket is configured as a website, redirects requests for this object
  3104. // to another object in the same bucket or to an external URL. Amazon S3 stores
  3105. // the value of this header in the object metadata.
  3106. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
  3107. metadataHeadObjectOutput `json:"-" xml:"-"`
  3108. }
  3109. type metadataHeadObjectOutput struct {
  3110. SDKShapeTraits bool `type:"structure"`
  3111. }
  3112. // String returns the string representation
  3113. func (s HeadObjectOutput) String() string {
  3114. return awsutil.Prettify(s)
  3115. }
  3116. // GoString returns the string representation
  3117. func (s HeadObjectOutput) GoString() string {
  3118. return s.String()
  3119. }
  3120. type IndexDocument struct {
  3121. // A suffix that is appended to a request that is for a directory on the website
  3122. // endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/
  3123. // the data that is returned will be for the object with the key name images/index.html)
  3124. // The suffix must not be empty and must not include a slash character.
  3125. Suffix *string `type:"string" required:"true"`
  3126. metadataIndexDocument `json:"-" xml:"-"`
  3127. }
  3128. type metadataIndexDocument struct {
  3129. SDKShapeTraits bool `type:"structure"`
  3130. }
  3131. // String returns the string representation
  3132. func (s IndexDocument) String() string {
  3133. return awsutil.Prettify(s)
  3134. }
  3135. // GoString returns the string representation
  3136. func (s IndexDocument) GoString() string {
  3137. return s.String()
  3138. }
  3139. type Initiator struct {
  3140. // Name of the Principal.
  3141. DisplayName *string `type:"string"`
  3142. // If the principal is an AWS account, it provides the Canonical User ID. If
  3143. // the principal is an IAM User, it provides a user ARN value.
  3144. ID *string `type:"string"`
  3145. metadataInitiator `json:"-" xml:"-"`
  3146. }
  3147. type metadataInitiator struct {
  3148. SDKShapeTraits bool `type:"structure"`
  3149. }
  3150. // String returns the string representation
  3151. func (s Initiator) String() string {
  3152. return awsutil.Prettify(s)
  3153. }
  3154. // GoString returns the string representation
  3155. func (s Initiator) GoString() string {
  3156. return s.String()
  3157. }
  3158. // Container for object key name prefix and suffix filtering rules.
  3159. type KeyFilter struct {
  3160. // A list of containers for key value pair that defines the criteria for the
  3161. // filter rule.
  3162. FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"`
  3163. metadataKeyFilter `json:"-" xml:"-"`
  3164. }
  3165. type metadataKeyFilter struct {
  3166. SDKShapeTraits bool `type:"structure"`
  3167. }
  3168. // String returns the string representation
  3169. func (s KeyFilter) String() string {
  3170. return awsutil.Prettify(s)
  3171. }
  3172. // GoString returns the string representation
  3173. func (s KeyFilter) GoString() string {
  3174. return s.String()
  3175. }
  3176. // Container for specifying the AWS Lambda notification configuration.
  3177. type LambdaFunctionConfiguration struct {
  3178. Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
  3179. // Container for object key name filtering rules. For information about key
  3180. // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
  3181. // in the Amazon Simple Storage Service Developer Guide.
  3182. Filter *NotificationConfigurationFilter `type:"structure"`
  3183. // Optional unique identifier for configurations in a notification configuration.
  3184. // If you don't provide one, Amazon S3 will assign an ID.
  3185. Id *string `type:"string"`
  3186. // Lambda cloud function ARN that Amazon S3 can invoke when it detects events
  3187. // of the specified type.
  3188. LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"`
  3189. metadataLambdaFunctionConfiguration `json:"-" xml:"-"`
  3190. }
  3191. type metadataLambdaFunctionConfiguration struct {
  3192. SDKShapeTraits bool `type:"structure"`
  3193. }
  3194. // String returns the string representation
  3195. func (s LambdaFunctionConfiguration) String() string {
  3196. return awsutil.Prettify(s)
  3197. }
  3198. // GoString returns the string representation
  3199. func (s LambdaFunctionConfiguration) GoString() string {
  3200. return s.String()
  3201. }
  3202. type LifecycleConfiguration struct {
  3203. Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
  3204. metadataLifecycleConfiguration `json:"-" xml:"-"`
  3205. }
  3206. type metadataLifecycleConfiguration struct {
  3207. SDKShapeTraits bool `type:"structure"`
  3208. }
  3209. // String returns the string representation
  3210. func (s LifecycleConfiguration) String() string {
  3211. return awsutil.Prettify(s)
  3212. }
  3213. // GoString returns the string representation
  3214. func (s LifecycleConfiguration) GoString() string {
  3215. return s.String()
  3216. }
  3217. type LifecycleExpiration struct {
  3218. // Indicates at what date the object is to be moved or deleted. Should be in
  3219. // GMT ISO 8601 Format.
  3220. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3221. // Indicates the lifetime, in days, of the objects that are subject to the rule.
  3222. // The value must be a non-zero positive integer.
  3223. Days *int64 `type:"integer"`
  3224. metadataLifecycleExpiration `json:"-" xml:"-"`
  3225. }
  3226. type metadataLifecycleExpiration struct {
  3227. SDKShapeTraits bool `type:"structure"`
  3228. }
  3229. // String returns the string representation
  3230. func (s LifecycleExpiration) String() string {
  3231. return awsutil.Prettify(s)
  3232. }
  3233. // GoString returns the string representation
  3234. func (s LifecycleExpiration) GoString() string {
  3235. return s.String()
  3236. }
  3237. type LifecycleRule struct {
  3238. Expiration *LifecycleExpiration `type:"structure"`
  3239. // Unique identifier for the rule. The value cannot be longer than 255 characters.
  3240. ID *string `type:"string"`
  3241. // Specifies when noncurrent object versions expire. Upon expiration, Amazon
  3242. // S3 permanently deletes the noncurrent object versions. You set this lifecycle
  3243. // configuration action on a bucket that has versioning enabled (or suspended)
  3244. // to request that Amazon S3 delete noncurrent object versions at a specific
  3245. // period in the object's lifetime.
  3246. NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`
  3247. // Container for the transition rule that describes when noncurrent objects
  3248. // transition to the GLACIER storage class. If your bucket is versioning-enabled
  3249. // (or versioning is suspended), you can set this action to request that Amazon
  3250. // S3 transition noncurrent object versions to the GLACIER storage class at
  3251. // a specific period in the object's lifetime.
  3252. NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"`
  3253. // Prefix identifying one or more objects to which the rule applies.
  3254. Prefix *string `type:"string" required:"true"`
  3255. // If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
  3256. // is not currently being applied.
  3257. Status *string `type:"string" required:"true" enum:"ExpirationStatus"`
  3258. Transition *Transition `type:"structure"`
  3259. metadataLifecycleRule `json:"-" xml:"-"`
  3260. }
  3261. type metadataLifecycleRule struct {
  3262. SDKShapeTraits bool `type:"structure"`
  3263. }
  3264. // String returns the string representation
  3265. func (s LifecycleRule) String() string {
  3266. return awsutil.Prettify(s)
  3267. }
  3268. // GoString returns the string representation
  3269. func (s LifecycleRule) GoString() string {
  3270. return s.String()
  3271. }
  3272. type ListBucketsInput struct {
  3273. metadataListBucketsInput `json:"-" xml:"-"`
  3274. }
  3275. type metadataListBucketsInput struct {
  3276. SDKShapeTraits bool `type:"structure"`
  3277. }
  3278. // String returns the string representation
  3279. func (s ListBucketsInput) String() string {
  3280. return awsutil.Prettify(s)
  3281. }
  3282. // GoString returns the string representation
  3283. func (s ListBucketsInput) GoString() string {
  3284. return s.String()
  3285. }
  3286. type ListBucketsOutput struct {
  3287. Buckets []*Bucket `locationNameList:"Bucket" type:"list"`
  3288. Owner *Owner `type:"structure"`
  3289. metadataListBucketsOutput `json:"-" xml:"-"`
  3290. }
  3291. type metadataListBucketsOutput struct {
  3292. SDKShapeTraits bool `type:"structure"`
  3293. }
  3294. // String returns the string representation
  3295. func (s ListBucketsOutput) String() string {
  3296. return awsutil.Prettify(s)
  3297. }
  3298. // GoString returns the string representation
  3299. func (s ListBucketsOutput) GoString() string {
  3300. return s.String()
  3301. }
  3302. type ListMultipartUploadsInput struct {
  3303. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3304. // Character you use to group keys.
  3305. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
  3306. // Requests Amazon S3 to encode the object keys in the response and specifies
  3307. // the encoding method to use. An object key may contain any Unicode character;
  3308. // however, XML 1.0 parser cannot parse some characters, such as characters
  3309. // with an ASCII value from 0 to 10. For characters that are not supported in
  3310. // XML 1.0, you can add this parameter to request that Amazon S3 encode the
  3311. // keys in the response.
  3312. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
  3313. // Together with upload-id-marker, this parameter specifies the multipart upload
  3314. // after which listing should begin.
  3315. KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`
  3316. // Sets the maximum number of multipart uploads, from 1 to 1,000, to return
  3317. // in the response body. 1,000 is the maximum number of uploads that can be
  3318. // returned in a response.
  3319. MaxUploads *int64 `location:"querystring" locationName:"max-uploads" type:"integer"`
  3320. // Lists in-progress uploads only for those keys that begin with the specified
  3321. // prefix.
  3322. Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
  3323. // Together with key-marker, specifies the multipart upload after which listing
  3324. // should begin. If key-marker is not specified, the upload-id-marker parameter
  3325. // is ignored.
  3326. UploadIdMarker *string `location:"querystring" locationName:"upload-id-marker" type:"string"`
  3327. metadataListMultipartUploadsInput `json:"-" xml:"-"`
  3328. }
  3329. type metadataListMultipartUploadsInput struct {
  3330. SDKShapeTraits bool `type:"structure"`
  3331. }
  3332. // String returns the string representation
  3333. func (s ListMultipartUploadsInput) String() string {
  3334. return awsutil.Prettify(s)
  3335. }
  3336. // GoString returns the string representation
  3337. func (s ListMultipartUploadsInput) GoString() string {
  3338. return s.String()
  3339. }
  3340. type ListMultipartUploadsOutput struct {
  3341. // Name of the bucket to which the multipart upload was initiated.
  3342. Bucket *string `type:"string"`
  3343. CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
  3344. Delimiter *string `type:"string"`
  3345. // Encoding type used by Amazon S3 to encode object keys in the response.
  3346. EncodingType *string `type:"string" enum:"EncodingType"`
  3347. // Indicates whether the returned list of multipart uploads is truncated. A
  3348. // value of true indicates that the list was truncated. The list can be truncated
  3349. // if the number of multipart uploads exceeds the limit allowed or specified
  3350. // by max uploads.
  3351. IsTruncated *bool `type:"boolean"`
  3352. // The key at or after which the listing began.
  3353. KeyMarker *string `type:"string"`
  3354. // Maximum number of multipart uploads that could have been included in the
  3355. // response.
  3356. MaxUploads *int64 `type:"integer"`
  3357. // When a list is truncated, this element specifies the value that should be
  3358. // used for the key-marker request parameter in a subsequent request.
  3359. NextKeyMarker *string `type:"string"`
  3360. // When a list is truncated, this element specifies the value that should be
  3361. // used for the upload-id-marker request parameter in a subsequent request.
  3362. NextUploadIdMarker *string `type:"string"`
  3363. // When a prefix is provided in the request, this field contains the specified
  3364. // prefix. The result contains only keys starting with the specified prefix.
  3365. Prefix *string `type:"string"`
  3366. // Upload ID after which listing began.
  3367. UploadIdMarker *string `type:"string"`
  3368. Uploads []*MultipartUpload `locationName:"Upload" type:"list" flattened:"true"`
  3369. metadataListMultipartUploadsOutput `json:"-" xml:"-"`
  3370. }
  3371. type metadataListMultipartUploadsOutput struct {
  3372. SDKShapeTraits bool `type:"structure"`
  3373. }
  3374. // String returns the string representation
  3375. func (s ListMultipartUploadsOutput) String() string {
  3376. return awsutil.Prettify(s)
  3377. }
  3378. // GoString returns the string representation
  3379. func (s ListMultipartUploadsOutput) GoString() string {
  3380. return s.String()
  3381. }
  3382. type ListObjectVersionsInput struct {
  3383. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3384. // A delimiter is a character you use to group keys.
  3385. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
  3386. // Requests Amazon S3 to encode the object keys in the response and specifies
  3387. // the encoding method to use. An object key may contain any Unicode character;
  3388. // however, XML 1.0 parser cannot parse some characters, such as characters
  3389. // with an ASCII value from 0 to 10. For characters that are not supported in
  3390. // XML 1.0, you can add this parameter to request that Amazon S3 encode the
  3391. // keys in the response.
  3392. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
  3393. // Specifies the key to start with when listing objects in a bucket.
  3394. KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`
  3395. // Sets the maximum number of keys returned in the response. The response might
  3396. // contain fewer keys but will never contain more.
  3397. MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`
  3398. // Limits the response to keys that begin with the specified prefix.
  3399. Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
  3400. // Specifies the object version you want to start listing from.
  3401. VersionIdMarker *string `location:"querystring" locationName:"version-id-marker" type:"string"`
  3402. metadataListObjectVersionsInput `json:"-" xml:"-"`
  3403. }
  3404. type metadataListObjectVersionsInput struct {
  3405. SDKShapeTraits bool `type:"structure"`
  3406. }
  3407. // String returns the string representation
  3408. func (s ListObjectVersionsInput) String() string {
  3409. return awsutil.Prettify(s)
  3410. }
  3411. // GoString returns the string representation
  3412. func (s ListObjectVersionsInput) GoString() string {
  3413. return s.String()
  3414. }
  3415. type ListObjectVersionsOutput struct {
  3416. CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
  3417. DeleteMarkers []*DeleteMarkerEntry `locationName:"DeleteMarker" type:"list" flattened:"true"`
  3418. Delimiter *string `type:"string"`
  3419. // Encoding type used by Amazon S3 to encode object keys in the response.
  3420. EncodingType *string `type:"string" enum:"EncodingType"`
  3421. // A flag that indicates whether or not Amazon S3 returned all of the results
  3422. // that satisfied the search criteria. If your results were truncated, you can
  3423. // make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker
  3424. // response parameters as a starting place in another request to return the
  3425. // rest of the results.
  3426. IsTruncated *bool `type:"boolean"`
  3427. // Marks the last Key returned in a truncated response.
  3428. KeyMarker *string `type:"string"`
  3429. MaxKeys *int64 `type:"integer"`
  3430. Name *string `type:"string"`
  3431. // Use this value for the key marker request parameter in a subsequent request.
  3432. NextKeyMarker *string `type:"string"`
  3433. // Use this value for the next version id marker parameter in a subsequent request.
  3434. NextVersionIdMarker *string `type:"string"`
  3435. Prefix *string `type:"string"`
  3436. VersionIdMarker *string `type:"string"`
  3437. Versions []*ObjectVersion `locationName:"Version" type:"list" flattened:"true"`
  3438. metadataListObjectVersionsOutput `json:"-" xml:"-"`
  3439. }
  3440. type metadataListObjectVersionsOutput struct {
  3441. SDKShapeTraits bool `type:"structure"`
  3442. }
  3443. // String returns the string representation
  3444. func (s ListObjectVersionsOutput) String() string {
  3445. return awsutil.Prettify(s)
  3446. }
  3447. // GoString returns the string representation
  3448. func (s ListObjectVersionsOutput) GoString() string {
  3449. return s.String()
  3450. }
  3451. type ListObjectsInput struct {
  3452. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3453. // A delimiter is a character you use to group keys.
  3454. Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`
  3455. // Requests Amazon S3 to encode the object keys in the response and specifies
  3456. // the encoding method to use. An object key may contain any Unicode character;
  3457. // however, XML 1.0 parser cannot parse some characters, such as characters
  3458. // with an ASCII value from 0 to 10. For characters that are not supported in
  3459. // XML 1.0, you can add this parameter to request that Amazon S3 encode the
  3460. // keys in the response.
  3461. EncodingType *string `location:"querystring" locationName:"encoding-type" type:"string" enum:"EncodingType"`
  3462. // Specifies the key to start with when listing objects in a bucket.
  3463. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  3464. // Sets the maximum number of keys returned in the response. The response might
  3465. // contain fewer keys but will never contain more.
  3466. MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`
  3467. // Limits the response to keys that begin with the specified prefix.
  3468. Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
  3469. metadataListObjectsInput `json:"-" xml:"-"`
  3470. }
  3471. type metadataListObjectsInput struct {
  3472. SDKShapeTraits bool `type:"structure"`
  3473. }
  3474. // String returns the string representation
  3475. func (s ListObjectsInput) String() string {
  3476. return awsutil.Prettify(s)
  3477. }
  3478. // GoString returns the string representation
  3479. func (s ListObjectsInput) GoString() string {
  3480. return s.String()
  3481. }
  3482. type ListObjectsOutput struct {
  3483. CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`
  3484. Contents []*Object `type:"list" flattened:"true"`
  3485. Delimiter *string `type:"string"`
  3486. // Encoding type used by Amazon S3 to encode object keys in the response.
  3487. EncodingType *string `type:"string" enum:"EncodingType"`
  3488. // A flag that indicates whether or not Amazon S3 returned all of the results
  3489. // that satisfied the search criteria.
  3490. IsTruncated *bool `type:"boolean"`
  3491. Marker *string `type:"string"`
  3492. MaxKeys *int64 `type:"integer"`
  3493. Name *string `type:"string"`
  3494. // When response is truncated (the IsTruncated element value in the response
  3495. // is true), you can use the key name in this field as marker in the subsequent
  3496. // request to get next set of objects. Amazon S3 lists objects in alphabetical
  3497. // order Note: This element is returned only if you have delimiter request parameter
  3498. // specified. If response does not include the NextMaker and it is truncated,
  3499. // you can use the value of the last Key in the response as the marker in the
  3500. // subsequent request to get the next set of object keys.
  3501. NextMarker *string `type:"string"`
  3502. Prefix *string `type:"string"`
  3503. metadataListObjectsOutput `json:"-" xml:"-"`
  3504. }
  3505. type metadataListObjectsOutput struct {
  3506. SDKShapeTraits bool `type:"structure"`
  3507. }
  3508. // String returns the string representation
  3509. func (s ListObjectsOutput) String() string {
  3510. return awsutil.Prettify(s)
  3511. }
  3512. // GoString returns the string representation
  3513. func (s ListObjectsOutput) GoString() string {
  3514. return s.String()
  3515. }
  3516. type ListPartsInput struct {
  3517. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3518. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  3519. // Sets the maximum number of parts to return.
  3520. MaxParts *int64 `location:"querystring" locationName:"max-parts" type:"integer"`
  3521. // Specifies the part after which listing should begin. Only parts with higher
  3522. // part numbers will be listed.
  3523. PartNumberMarker *int64 `location:"querystring" locationName:"part-number-marker" type:"integer"`
  3524. // Confirms that the requester knows that she or he will be charged for the
  3525. // request. Bucket owners need not specify this parameter in their requests.
  3526. // Documentation on downloading objects from requester pays buckets can be found
  3527. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  3528. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  3529. // Upload ID identifying the multipart upload whose parts are being listed.
  3530. UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
  3531. metadataListPartsInput `json:"-" xml:"-"`
  3532. }
  3533. type metadataListPartsInput struct {
  3534. SDKShapeTraits bool `type:"structure"`
  3535. }
  3536. // String returns the string representation
  3537. func (s ListPartsInput) String() string {
  3538. return awsutil.Prettify(s)
  3539. }
  3540. // GoString returns the string representation
  3541. func (s ListPartsInput) GoString() string {
  3542. return s.String()
  3543. }
  3544. type ListPartsOutput struct {
  3545. // Name of the bucket to which the multipart upload was initiated.
  3546. Bucket *string `type:"string"`
  3547. // Identifies who initiated the multipart upload.
  3548. Initiator *Initiator `type:"structure"`
  3549. // Indicates whether the returned list of parts is truncated.
  3550. IsTruncated *bool `type:"boolean"`
  3551. // Object key for which the multipart upload was initiated.
  3552. Key *string `type:"string"`
  3553. // Maximum number of parts that were allowed in the response.
  3554. MaxParts *int64 `type:"integer"`
  3555. // When a list is truncated, this element specifies the last part in the list,
  3556. // as well as the value to use for the part-number-marker request parameter
  3557. // in a subsequent request.
  3558. NextPartNumberMarker *int64 `type:"integer"`
  3559. Owner *Owner `type:"structure"`
  3560. // Part number after which listing begins.
  3561. PartNumberMarker *int64 `type:"integer"`
  3562. Parts []*Part `locationName:"Part" type:"list" flattened:"true"`
  3563. // If present, indicates that the requester was successfully charged for the
  3564. // request.
  3565. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  3566. // The class of storage used to store the object.
  3567. StorageClass *string `type:"string" enum:"StorageClass"`
  3568. // Upload ID identifying the multipart upload whose parts are being listed.
  3569. UploadId *string `type:"string"`
  3570. metadataListPartsOutput `json:"-" xml:"-"`
  3571. }
  3572. type metadataListPartsOutput struct {
  3573. SDKShapeTraits bool `type:"structure"`
  3574. }
  3575. // String returns the string representation
  3576. func (s ListPartsOutput) String() string {
  3577. return awsutil.Prettify(s)
  3578. }
  3579. // GoString returns the string representation
  3580. func (s ListPartsOutput) GoString() string {
  3581. return s.String()
  3582. }
  3583. type LoggingEnabled struct {
  3584. // Specifies the bucket where you want Amazon S3 to store server access logs.
  3585. // You can have your logs delivered to any bucket that you own, including the
  3586. // same bucket that is being logged. You can also configure multiple buckets
  3587. // to deliver their logs to the same target bucket. In this case you should
  3588. // choose a different TargetPrefix for each source bucket so that the delivered
  3589. // log files can be distinguished by key.
  3590. TargetBucket *string `type:"string"`
  3591. TargetGrants []*TargetGrant `locationNameList:"Grant" type:"list"`
  3592. // This element lets you specify a prefix for the keys that the log files will
  3593. // be stored under.
  3594. TargetPrefix *string `type:"string"`
  3595. metadataLoggingEnabled `json:"-" xml:"-"`
  3596. }
  3597. type metadataLoggingEnabled struct {
  3598. SDKShapeTraits bool `type:"structure"`
  3599. }
  3600. // String returns the string representation
  3601. func (s LoggingEnabled) String() string {
  3602. return awsutil.Prettify(s)
  3603. }
  3604. // GoString returns the string representation
  3605. func (s LoggingEnabled) GoString() string {
  3606. return s.String()
  3607. }
  3608. type MultipartUpload struct {
  3609. // Date and time at which the multipart upload was initiated.
  3610. Initiated *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3611. // Identifies who initiated the multipart upload.
  3612. Initiator *Initiator `type:"structure"`
  3613. // Key of the object for which the multipart upload was initiated.
  3614. Key *string `type:"string"`
  3615. Owner *Owner `type:"structure"`
  3616. // The class of storage used to store the object.
  3617. StorageClass *string `type:"string" enum:"StorageClass"`
  3618. // Upload ID that identifies the multipart upload.
  3619. UploadId *string `type:"string"`
  3620. metadataMultipartUpload `json:"-" xml:"-"`
  3621. }
  3622. type metadataMultipartUpload struct {
  3623. SDKShapeTraits bool `type:"structure"`
  3624. }
  3625. // String returns the string representation
  3626. func (s MultipartUpload) String() string {
  3627. return awsutil.Prettify(s)
  3628. }
  3629. // GoString returns the string representation
  3630. func (s MultipartUpload) GoString() string {
  3631. return s.String()
  3632. }
  3633. // Specifies when noncurrent object versions expire. Upon expiration, Amazon
  3634. // S3 permanently deletes the noncurrent object versions. You set this lifecycle
  3635. // configuration action on a bucket that has versioning enabled (or suspended)
  3636. // to request that Amazon S3 delete noncurrent object versions at a specific
  3637. // period in the object's lifetime.
  3638. type NoncurrentVersionExpiration struct {
  3639. // Specifies the number of days an object is noncurrent before Amazon S3 can
  3640. // perform the associated action. For information about the noncurrent days
  3641. // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
  3642. // (/AmazonS3/latest/dev/s3-access-control.html) in the Amazon Simple Storage
  3643. // Service Developer Guide.
  3644. NoncurrentDays *int64 `type:"integer"`
  3645. metadataNoncurrentVersionExpiration `json:"-" xml:"-"`
  3646. }
  3647. type metadataNoncurrentVersionExpiration struct {
  3648. SDKShapeTraits bool `type:"structure"`
  3649. }
  3650. // String returns the string representation
  3651. func (s NoncurrentVersionExpiration) String() string {
  3652. return awsutil.Prettify(s)
  3653. }
  3654. // GoString returns the string representation
  3655. func (s NoncurrentVersionExpiration) GoString() string {
  3656. return s.String()
  3657. }
  3658. // Container for the transition rule that describes when noncurrent objects
  3659. // transition to the GLACIER storage class. If your bucket is versioning-enabled
  3660. // (or versioning is suspended), you can set this action to request that Amazon
  3661. // S3 transition noncurrent object versions to the GLACIER storage class at
  3662. // a specific period in the object's lifetime.
  3663. type NoncurrentVersionTransition struct {
  3664. // Specifies the number of days an object is noncurrent before Amazon S3 can
  3665. // perform the associated action. For information about the noncurrent days
  3666. // calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
  3667. // (/AmazonS3/latest/dev/s3-access-control.html) in the Amazon Simple Storage
  3668. // Service Developer Guide.
  3669. NoncurrentDays *int64 `type:"integer"`
  3670. // The class of storage used to store the object.
  3671. StorageClass *string `type:"string" enum:"TransitionStorageClass"`
  3672. metadataNoncurrentVersionTransition `json:"-" xml:"-"`
  3673. }
  3674. type metadataNoncurrentVersionTransition struct {
  3675. SDKShapeTraits bool `type:"structure"`
  3676. }
  3677. // String returns the string representation
  3678. func (s NoncurrentVersionTransition) String() string {
  3679. return awsutil.Prettify(s)
  3680. }
  3681. // GoString returns the string representation
  3682. func (s NoncurrentVersionTransition) GoString() string {
  3683. return s.String()
  3684. }
  3685. // Container for specifying the notification configuration of the bucket. If
  3686. // this element is empty, notifications are turned off on the bucket.
  3687. type NotificationConfiguration struct {
  3688. LambdaFunctionConfigurations []*LambdaFunctionConfiguration `locationName:"CloudFunctionConfiguration" type:"list" flattened:"true"`
  3689. QueueConfigurations []*QueueConfiguration `locationName:"QueueConfiguration" type:"list" flattened:"true"`
  3690. TopicConfigurations []*TopicConfiguration `locationName:"TopicConfiguration" type:"list" flattened:"true"`
  3691. metadataNotificationConfiguration `json:"-" xml:"-"`
  3692. }
  3693. type metadataNotificationConfiguration struct {
  3694. SDKShapeTraits bool `type:"structure"`
  3695. }
  3696. // String returns the string representation
  3697. func (s NotificationConfiguration) String() string {
  3698. return awsutil.Prettify(s)
  3699. }
  3700. // GoString returns the string representation
  3701. func (s NotificationConfiguration) GoString() string {
  3702. return s.String()
  3703. }
  3704. type NotificationConfigurationDeprecated struct {
  3705. CloudFunctionConfiguration *CloudFunctionConfiguration `type:"structure"`
  3706. QueueConfiguration *QueueConfigurationDeprecated `type:"structure"`
  3707. TopicConfiguration *TopicConfigurationDeprecated `type:"structure"`
  3708. metadataNotificationConfigurationDeprecated `json:"-" xml:"-"`
  3709. }
  3710. type metadataNotificationConfigurationDeprecated struct {
  3711. SDKShapeTraits bool `type:"structure"`
  3712. }
  3713. // String returns the string representation
  3714. func (s NotificationConfigurationDeprecated) String() string {
  3715. return awsutil.Prettify(s)
  3716. }
  3717. // GoString returns the string representation
  3718. func (s NotificationConfigurationDeprecated) GoString() string {
  3719. return s.String()
  3720. }
  3721. // Container for object key name filtering rules. For information about key
  3722. // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
  3723. // in the Amazon Simple Storage Service Developer Guide.
  3724. type NotificationConfigurationFilter struct {
  3725. // Container for object key name prefix and suffix filtering rules.
  3726. Key *KeyFilter `locationName:"S3Key" type:"structure"`
  3727. metadataNotificationConfigurationFilter `json:"-" xml:"-"`
  3728. }
  3729. type metadataNotificationConfigurationFilter struct {
  3730. SDKShapeTraits bool `type:"structure"`
  3731. }
  3732. // String returns the string representation
  3733. func (s NotificationConfigurationFilter) String() string {
  3734. return awsutil.Prettify(s)
  3735. }
  3736. // GoString returns the string representation
  3737. func (s NotificationConfigurationFilter) GoString() string {
  3738. return s.String()
  3739. }
  3740. type Object struct {
  3741. ETag *string `type:"string"`
  3742. Key *string `type:"string"`
  3743. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3744. Owner *Owner `type:"structure"`
  3745. Size *int64 `type:"integer"`
  3746. // The class of storage used to store the object.
  3747. StorageClass *string `type:"string" enum:"ObjectStorageClass"`
  3748. metadataObject `json:"-" xml:"-"`
  3749. }
  3750. type metadataObject struct {
  3751. SDKShapeTraits bool `type:"structure"`
  3752. }
  3753. // String returns the string representation
  3754. func (s Object) String() string {
  3755. return awsutil.Prettify(s)
  3756. }
  3757. // GoString returns the string representation
  3758. func (s Object) GoString() string {
  3759. return s.String()
  3760. }
  3761. type ObjectIdentifier struct {
  3762. // Key name of the object to delete.
  3763. Key *string `type:"string" required:"true"`
  3764. // VersionId for the specific version of the object to delete.
  3765. VersionId *string `type:"string"`
  3766. metadataObjectIdentifier `json:"-" xml:"-"`
  3767. }
  3768. type metadataObjectIdentifier struct {
  3769. SDKShapeTraits bool `type:"structure"`
  3770. }
  3771. // String returns the string representation
  3772. func (s ObjectIdentifier) String() string {
  3773. return awsutil.Prettify(s)
  3774. }
  3775. // GoString returns the string representation
  3776. func (s ObjectIdentifier) GoString() string {
  3777. return s.String()
  3778. }
  3779. type ObjectVersion struct {
  3780. ETag *string `type:"string"`
  3781. // Specifies whether the object is (true) or is not (false) the latest version
  3782. // of an object.
  3783. IsLatest *bool `type:"boolean"`
  3784. // The object key.
  3785. Key *string `type:"string"`
  3786. // Date and time the object was last modified.
  3787. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3788. Owner *Owner `type:"structure"`
  3789. // Size in bytes of the object.
  3790. Size *int64 `type:"integer"`
  3791. // The class of storage used to store the object.
  3792. StorageClass *string `type:"string" enum:"ObjectVersionStorageClass"`
  3793. // Version ID of an object.
  3794. VersionId *string `type:"string"`
  3795. metadataObjectVersion `json:"-" xml:"-"`
  3796. }
  3797. type metadataObjectVersion struct {
  3798. SDKShapeTraits bool `type:"structure"`
  3799. }
  3800. // String returns the string representation
  3801. func (s ObjectVersion) String() string {
  3802. return awsutil.Prettify(s)
  3803. }
  3804. // GoString returns the string representation
  3805. func (s ObjectVersion) GoString() string {
  3806. return s.String()
  3807. }
  3808. type Owner struct {
  3809. DisplayName *string `type:"string"`
  3810. ID *string `type:"string"`
  3811. metadataOwner `json:"-" xml:"-"`
  3812. }
  3813. type metadataOwner struct {
  3814. SDKShapeTraits bool `type:"structure"`
  3815. }
  3816. // String returns the string representation
  3817. func (s Owner) String() string {
  3818. return awsutil.Prettify(s)
  3819. }
  3820. // GoString returns the string representation
  3821. func (s Owner) GoString() string {
  3822. return s.String()
  3823. }
  3824. type Part struct {
  3825. // Entity tag returned when the part was uploaded.
  3826. ETag *string `type:"string"`
  3827. // Date and time at which the part was uploaded.
  3828. LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  3829. // Part number identifying the part. This is a positive integer between 1 and
  3830. // 10,000.
  3831. PartNumber *int64 `type:"integer"`
  3832. // Size of the uploaded part data.
  3833. Size *int64 `type:"integer"`
  3834. metadataPart `json:"-" xml:"-"`
  3835. }
  3836. type metadataPart struct {
  3837. SDKShapeTraits bool `type:"structure"`
  3838. }
  3839. // String returns the string representation
  3840. func (s Part) String() string {
  3841. return awsutil.Prettify(s)
  3842. }
  3843. // GoString returns the string representation
  3844. func (s Part) GoString() string {
  3845. return s.String()
  3846. }
  3847. type PutBucketAclInput struct {
  3848. // The canned ACL to apply to the bucket.
  3849. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`
  3850. AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"`
  3851. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3852. // Allows grantee the read, write, read ACP, and write ACP permissions on the
  3853. // bucket.
  3854. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  3855. // Allows grantee to list the objects in the bucket.
  3856. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  3857. // Allows grantee to read the bucket ACL.
  3858. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  3859. // Allows grantee to create, overwrite, and delete any object in the bucket.
  3860. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
  3861. // Allows grantee to write the ACL for the applicable bucket.
  3862. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  3863. metadataPutBucketAclInput `json:"-" xml:"-"`
  3864. }
  3865. type metadataPutBucketAclInput struct {
  3866. SDKShapeTraits bool `type:"structure" payload:"AccessControlPolicy"`
  3867. }
  3868. // String returns the string representation
  3869. func (s PutBucketAclInput) String() string {
  3870. return awsutil.Prettify(s)
  3871. }
  3872. // GoString returns the string representation
  3873. func (s PutBucketAclInput) GoString() string {
  3874. return s.String()
  3875. }
  3876. type PutBucketAclOutput struct {
  3877. metadataPutBucketAclOutput `json:"-" xml:"-"`
  3878. }
  3879. type metadataPutBucketAclOutput struct {
  3880. SDKShapeTraits bool `type:"structure"`
  3881. }
  3882. // String returns the string representation
  3883. func (s PutBucketAclOutput) String() string {
  3884. return awsutil.Prettify(s)
  3885. }
  3886. // GoString returns the string representation
  3887. func (s PutBucketAclOutput) GoString() string {
  3888. return s.String()
  3889. }
  3890. type PutBucketCorsInput struct {
  3891. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3892. CORSConfiguration *CORSConfiguration `locationName:"CORSConfiguration" type:"structure"`
  3893. metadataPutBucketCorsInput `json:"-" xml:"-"`
  3894. }
  3895. type metadataPutBucketCorsInput struct {
  3896. SDKShapeTraits bool `type:"structure" payload:"CORSConfiguration"`
  3897. }
  3898. // String returns the string representation
  3899. func (s PutBucketCorsInput) String() string {
  3900. return awsutil.Prettify(s)
  3901. }
  3902. // GoString returns the string representation
  3903. func (s PutBucketCorsInput) GoString() string {
  3904. return s.String()
  3905. }
  3906. type PutBucketCorsOutput struct {
  3907. metadataPutBucketCorsOutput `json:"-" xml:"-"`
  3908. }
  3909. type metadataPutBucketCorsOutput struct {
  3910. SDKShapeTraits bool `type:"structure"`
  3911. }
  3912. // String returns the string representation
  3913. func (s PutBucketCorsOutput) String() string {
  3914. return awsutil.Prettify(s)
  3915. }
  3916. // GoString returns the string representation
  3917. func (s PutBucketCorsOutput) GoString() string {
  3918. return s.String()
  3919. }
  3920. type PutBucketLifecycleInput struct {
  3921. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3922. LifecycleConfiguration *LifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure"`
  3923. metadataPutBucketLifecycleInput `json:"-" xml:"-"`
  3924. }
  3925. type metadataPutBucketLifecycleInput struct {
  3926. SDKShapeTraits bool `type:"structure" payload:"LifecycleConfiguration"`
  3927. }
  3928. // String returns the string representation
  3929. func (s PutBucketLifecycleInput) String() string {
  3930. return awsutil.Prettify(s)
  3931. }
  3932. // GoString returns the string representation
  3933. func (s PutBucketLifecycleInput) GoString() string {
  3934. return s.String()
  3935. }
  3936. type PutBucketLifecycleOutput struct {
  3937. metadataPutBucketLifecycleOutput `json:"-" xml:"-"`
  3938. }
  3939. type metadataPutBucketLifecycleOutput struct {
  3940. SDKShapeTraits bool `type:"structure"`
  3941. }
  3942. // String returns the string representation
  3943. func (s PutBucketLifecycleOutput) String() string {
  3944. return awsutil.Prettify(s)
  3945. }
  3946. // GoString returns the string representation
  3947. func (s PutBucketLifecycleOutput) GoString() string {
  3948. return s.String()
  3949. }
  3950. type PutBucketLoggingInput struct {
  3951. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3952. BucketLoggingStatus *BucketLoggingStatus `locationName:"BucketLoggingStatus" type:"structure" required:"true"`
  3953. metadataPutBucketLoggingInput `json:"-" xml:"-"`
  3954. }
  3955. type metadataPutBucketLoggingInput struct {
  3956. SDKShapeTraits bool `type:"structure" payload:"BucketLoggingStatus"`
  3957. }
  3958. // String returns the string representation
  3959. func (s PutBucketLoggingInput) String() string {
  3960. return awsutil.Prettify(s)
  3961. }
  3962. // GoString returns the string representation
  3963. func (s PutBucketLoggingInput) GoString() string {
  3964. return s.String()
  3965. }
  3966. type PutBucketLoggingOutput struct {
  3967. metadataPutBucketLoggingOutput `json:"-" xml:"-"`
  3968. }
  3969. type metadataPutBucketLoggingOutput struct {
  3970. SDKShapeTraits bool `type:"structure"`
  3971. }
  3972. // String returns the string representation
  3973. func (s PutBucketLoggingOutput) String() string {
  3974. return awsutil.Prettify(s)
  3975. }
  3976. // GoString returns the string representation
  3977. func (s PutBucketLoggingOutput) GoString() string {
  3978. return s.String()
  3979. }
  3980. type PutBucketNotificationConfigurationInput struct {
  3981. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  3982. // Container for specifying the notification configuration of the bucket. If
  3983. // this element is empty, notifications are turned off on the bucket.
  3984. NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true"`
  3985. metadataPutBucketNotificationConfigurationInput `json:"-" xml:"-"`
  3986. }
  3987. type metadataPutBucketNotificationConfigurationInput struct {
  3988. SDKShapeTraits bool `type:"structure" payload:"NotificationConfiguration"`
  3989. }
  3990. // String returns the string representation
  3991. func (s PutBucketNotificationConfigurationInput) String() string {
  3992. return awsutil.Prettify(s)
  3993. }
  3994. // GoString returns the string representation
  3995. func (s PutBucketNotificationConfigurationInput) GoString() string {
  3996. return s.String()
  3997. }
  3998. type PutBucketNotificationConfigurationOutput struct {
  3999. metadataPutBucketNotificationConfigurationOutput `json:"-" xml:"-"`
  4000. }
  4001. type metadataPutBucketNotificationConfigurationOutput struct {
  4002. SDKShapeTraits bool `type:"structure"`
  4003. }
  4004. // String returns the string representation
  4005. func (s PutBucketNotificationConfigurationOutput) String() string {
  4006. return awsutil.Prettify(s)
  4007. }
  4008. // GoString returns the string representation
  4009. func (s PutBucketNotificationConfigurationOutput) GoString() string {
  4010. return s.String()
  4011. }
  4012. type PutBucketNotificationInput struct {
  4013. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4014. NotificationConfiguration *NotificationConfigurationDeprecated `locationName:"NotificationConfiguration" type:"structure" required:"true"`
  4015. metadataPutBucketNotificationInput `json:"-" xml:"-"`
  4016. }
  4017. type metadataPutBucketNotificationInput struct {
  4018. SDKShapeTraits bool `type:"structure" payload:"NotificationConfiguration"`
  4019. }
  4020. // String returns the string representation
  4021. func (s PutBucketNotificationInput) String() string {
  4022. return awsutil.Prettify(s)
  4023. }
  4024. // GoString returns the string representation
  4025. func (s PutBucketNotificationInput) GoString() string {
  4026. return s.String()
  4027. }
  4028. type PutBucketNotificationOutput struct {
  4029. metadataPutBucketNotificationOutput `json:"-" xml:"-"`
  4030. }
  4031. type metadataPutBucketNotificationOutput struct {
  4032. SDKShapeTraits bool `type:"structure"`
  4033. }
  4034. // String returns the string representation
  4035. func (s PutBucketNotificationOutput) String() string {
  4036. return awsutil.Prettify(s)
  4037. }
  4038. // GoString returns the string representation
  4039. func (s PutBucketNotificationOutput) GoString() string {
  4040. return s.String()
  4041. }
  4042. type PutBucketPolicyInput struct {
  4043. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4044. // The bucket policy as a JSON document.
  4045. Policy *string `type:"string" required:"true"`
  4046. metadataPutBucketPolicyInput `json:"-" xml:"-"`
  4047. }
  4048. type metadataPutBucketPolicyInput struct {
  4049. SDKShapeTraits bool `type:"structure" payload:"Policy"`
  4050. }
  4051. // String returns the string representation
  4052. func (s PutBucketPolicyInput) String() string {
  4053. return awsutil.Prettify(s)
  4054. }
  4055. // GoString returns the string representation
  4056. func (s PutBucketPolicyInput) GoString() string {
  4057. return s.String()
  4058. }
  4059. type PutBucketPolicyOutput struct {
  4060. metadataPutBucketPolicyOutput `json:"-" xml:"-"`
  4061. }
  4062. type metadataPutBucketPolicyOutput struct {
  4063. SDKShapeTraits bool `type:"structure"`
  4064. }
  4065. // String returns the string representation
  4066. func (s PutBucketPolicyOutput) String() string {
  4067. return awsutil.Prettify(s)
  4068. }
  4069. // GoString returns the string representation
  4070. func (s PutBucketPolicyOutput) GoString() string {
  4071. return s.String()
  4072. }
  4073. type PutBucketReplicationInput struct {
  4074. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4075. // Container for replication rules. You can add as many as 1,000 rules. Total
  4076. // replication configuration size can be up to 2 MB.
  4077. ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true"`
  4078. metadataPutBucketReplicationInput `json:"-" xml:"-"`
  4079. }
  4080. type metadataPutBucketReplicationInput struct {
  4081. SDKShapeTraits bool `type:"structure" payload:"ReplicationConfiguration"`
  4082. }
  4083. // String returns the string representation
  4084. func (s PutBucketReplicationInput) String() string {
  4085. return awsutil.Prettify(s)
  4086. }
  4087. // GoString returns the string representation
  4088. func (s PutBucketReplicationInput) GoString() string {
  4089. return s.String()
  4090. }
  4091. type PutBucketReplicationOutput struct {
  4092. metadataPutBucketReplicationOutput `json:"-" xml:"-"`
  4093. }
  4094. type metadataPutBucketReplicationOutput struct {
  4095. SDKShapeTraits bool `type:"structure"`
  4096. }
  4097. // String returns the string representation
  4098. func (s PutBucketReplicationOutput) String() string {
  4099. return awsutil.Prettify(s)
  4100. }
  4101. // GoString returns the string representation
  4102. func (s PutBucketReplicationOutput) GoString() string {
  4103. return s.String()
  4104. }
  4105. type PutBucketRequestPaymentInput struct {
  4106. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4107. RequestPaymentConfiguration *RequestPaymentConfiguration `locationName:"RequestPaymentConfiguration" type:"structure" required:"true"`
  4108. metadataPutBucketRequestPaymentInput `json:"-" xml:"-"`
  4109. }
  4110. type metadataPutBucketRequestPaymentInput struct {
  4111. SDKShapeTraits bool `type:"structure" payload:"RequestPaymentConfiguration"`
  4112. }
  4113. // String returns the string representation
  4114. func (s PutBucketRequestPaymentInput) String() string {
  4115. return awsutil.Prettify(s)
  4116. }
  4117. // GoString returns the string representation
  4118. func (s PutBucketRequestPaymentInput) GoString() string {
  4119. return s.String()
  4120. }
  4121. type PutBucketRequestPaymentOutput struct {
  4122. metadataPutBucketRequestPaymentOutput `json:"-" xml:"-"`
  4123. }
  4124. type metadataPutBucketRequestPaymentOutput struct {
  4125. SDKShapeTraits bool `type:"structure"`
  4126. }
  4127. // String returns the string representation
  4128. func (s PutBucketRequestPaymentOutput) String() string {
  4129. return awsutil.Prettify(s)
  4130. }
  4131. // GoString returns the string representation
  4132. func (s PutBucketRequestPaymentOutput) GoString() string {
  4133. return s.String()
  4134. }
  4135. type PutBucketTaggingInput struct {
  4136. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4137. Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true"`
  4138. metadataPutBucketTaggingInput `json:"-" xml:"-"`
  4139. }
  4140. type metadataPutBucketTaggingInput struct {
  4141. SDKShapeTraits bool `type:"structure" payload:"Tagging"`
  4142. }
  4143. // String returns the string representation
  4144. func (s PutBucketTaggingInput) String() string {
  4145. return awsutil.Prettify(s)
  4146. }
  4147. // GoString returns the string representation
  4148. func (s PutBucketTaggingInput) GoString() string {
  4149. return s.String()
  4150. }
  4151. type PutBucketTaggingOutput struct {
  4152. metadataPutBucketTaggingOutput `json:"-" xml:"-"`
  4153. }
  4154. type metadataPutBucketTaggingOutput struct {
  4155. SDKShapeTraits bool `type:"structure"`
  4156. }
  4157. // String returns the string representation
  4158. func (s PutBucketTaggingOutput) String() string {
  4159. return awsutil.Prettify(s)
  4160. }
  4161. // GoString returns the string representation
  4162. func (s PutBucketTaggingOutput) GoString() string {
  4163. return s.String()
  4164. }
  4165. type PutBucketVersioningInput struct {
  4166. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4167. // The concatenation of the authentication device's serial number, a space,
  4168. // and the value that is displayed on your authentication device.
  4169. MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`
  4170. VersioningConfiguration *VersioningConfiguration `locationName:"VersioningConfiguration" type:"structure" required:"true"`
  4171. metadataPutBucketVersioningInput `json:"-" xml:"-"`
  4172. }
  4173. type metadataPutBucketVersioningInput struct {
  4174. SDKShapeTraits bool `type:"structure" payload:"VersioningConfiguration"`
  4175. }
  4176. // String returns the string representation
  4177. func (s PutBucketVersioningInput) String() string {
  4178. return awsutil.Prettify(s)
  4179. }
  4180. // GoString returns the string representation
  4181. func (s PutBucketVersioningInput) GoString() string {
  4182. return s.String()
  4183. }
  4184. type PutBucketVersioningOutput struct {
  4185. metadataPutBucketVersioningOutput `json:"-" xml:"-"`
  4186. }
  4187. type metadataPutBucketVersioningOutput struct {
  4188. SDKShapeTraits bool `type:"structure"`
  4189. }
  4190. // String returns the string representation
  4191. func (s PutBucketVersioningOutput) String() string {
  4192. return awsutil.Prettify(s)
  4193. }
  4194. // GoString returns the string representation
  4195. func (s PutBucketVersioningOutput) GoString() string {
  4196. return s.String()
  4197. }
  4198. type PutBucketWebsiteInput struct {
  4199. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4200. WebsiteConfiguration *WebsiteConfiguration `locationName:"WebsiteConfiguration" type:"structure" required:"true"`
  4201. metadataPutBucketWebsiteInput `json:"-" xml:"-"`
  4202. }
  4203. type metadataPutBucketWebsiteInput struct {
  4204. SDKShapeTraits bool `type:"structure" payload:"WebsiteConfiguration"`
  4205. }
  4206. // String returns the string representation
  4207. func (s PutBucketWebsiteInput) String() string {
  4208. return awsutil.Prettify(s)
  4209. }
  4210. // GoString returns the string representation
  4211. func (s PutBucketWebsiteInput) GoString() string {
  4212. return s.String()
  4213. }
  4214. type PutBucketWebsiteOutput struct {
  4215. metadataPutBucketWebsiteOutput `json:"-" xml:"-"`
  4216. }
  4217. type metadataPutBucketWebsiteOutput struct {
  4218. SDKShapeTraits bool `type:"structure"`
  4219. }
  4220. // String returns the string representation
  4221. func (s PutBucketWebsiteOutput) String() string {
  4222. return awsutil.Prettify(s)
  4223. }
  4224. // GoString returns the string representation
  4225. func (s PutBucketWebsiteOutput) GoString() string {
  4226. return s.String()
  4227. }
  4228. type PutObjectAclInput struct {
  4229. // The canned ACL to apply to the object.
  4230. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
  4231. AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"`
  4232. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4233. // Allows grantee the read, write, read ACP, and write ACP permissions on the
  4234. // bucket.
  4235. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  4236. // Allows grantee to list the objects in the bucket.
  4237. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  4238. // Allows grantee to read the bucket ACL.
  4239. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  4240. // Allows grantee to create, overwrite, and delete any object in the bucket.
  4241. GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`
  4242. // Allows grantee to write the ACL for the applicable bucket.
  4243. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  4244. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  4245. // Confirms that the requester knows that she or he will be charged for the
  4246. // request. Bucket owners need not specify this parameter in their requests.
  4247. // Documentation on downloading objects from requester pays buckets can be found
  4248. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  4249. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  4250. metadataPutObjectAclInput `json:"-" xml:"-"`
  4251. }
  4252. type metadataPutObjectAclInput struct {
  4253. SDKShapeTraits bool `type:"structure" payload:"AccessControlPolicy"`
  4254. }
  4255. // String returns the string representation
  4256. func (s PutObjectAclInput) String() string {
  4257. return awsutil.Prettify(s)
  4258. }
  4259. // GoString returns the string representation
  4260. func (s PutObjectAclInput) GoString() string {
  4261. return s.String()
  4262. }
  4263. type PutObjectAclOutput struct {
  4264. // If present, indicates that the requester was successfully charged for the
  4265. // request.
  4266. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  4267. metadataPutObjectAclOutput `json:"-" xml:"-"`
  4268. }
  4269. type metadataPutObjectAclOutput struct {
  4270. SDKShapeTraits bool `type:"structure"`
  4271. }
  4272. // String returns the string representation
  4273. func (s PutObjectAclOutput) String() string {
  4274. return awsutil.Prettify(s)
  4275. }
  4276. // GoString returns the string representation
  4277. func (s PutObjectAclOutput) GoString() string {
  4278. return s.String()
  4279. }
  4280. type PutObjectInput struct {
  4281. // The canned ACL to apply to the object.
  4282. ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`
  4283. // Object data.
  4284. Body io.ReadSeeker `type:"blob"`
  4285. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4286. // Specifies caching behavior along the request/reply chain.
  4287. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`
  4288. // Specifies presentational information for the object.
  4289. ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`
  4290. // Specifies what content encodings have been applied to the object and thus
  4291. // what decoding mechanisms must be applied to obtain the media-type referenced
  4292. // by the Content-Type header field.
  4293. ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`
  4294. // The language the content is in.
  4295. ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`
  4296. // Size of the body in bytes. This parameter is useful when the size of the
  4297. // body cannot be determined automatically.
  4298. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`
  4299. // A standard MIME type describing the format of the object data.
  4300. ContentType *string `location:"header" locationName:"Content-Type" type:"string"`
  4301. // The date and time at which the object is no longer cacheable.
  4302. Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`
  4303. // Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
  4304. GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`
  4305. // Allows grantee to read the object data and its metadata.
  4306. GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`
  4307. // Allows grantee to read the object ACL.
  4308. GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`
  4309. // Allows grantee to write the ACL for the applicable object.
  4310. GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
  4311. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  4312. // A map of metadata to store with the object in S3.
  4313. Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`
  4314. // Confirms that the requester knows that she or he will be charged for the
  4315. // request. Bucket owners need not specify this parameter in their requests.
  4316. // Documentation on downloading objects from requester pays buckets can be found
  4317. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  4318. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  4319. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  4320. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4321. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  4322. // data. This value is used to store the object and then it is discarded; Amazon
  4323. // does not store the encryption key. The key must be appropriate for use with
  4324. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  4325. // header.
  4326. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  4327. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  4328. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  4329. // key was transmitted without error.
  4330. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4331. // Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
  4332. // requests for an object protected by AWS KMS will fail if not made via SSL
  4333. // or using SigV4. Documentation on configuring any of the officially supported
  4334. // AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
  4335. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  4336. // The Server-side encryption algorithm used when storing this object in S3
  4337. // (e.g., AES256, aws:kms).
  4338. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  4339. // The type of storage to use for the object. Defaults to 'STANDARD'.
  4340. StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`
  4341. // If the bucket is configured as a website, redirects requests for this object
  4342. // to another object in the same bucket or to an external URL. Amazon S3 stores
  4343. // the value of this header in the object metadata.
  4344. WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
  4345. metadataPutObjectInput `json:"-" xml:"-"`
  4346. }
  4347. type metadataPutObjectInput struct {
  4348. SDKShapeTraits bool `type:"structure" payload:"Body"`
  4349. }
  4350. // String returns the string representation
  4351. func (s PutObjectInput) String() string {
  4352. return awsutil.Prettify(s)
  4353. }
  4354. // GoString returns the string representation
  4355. func (s PutObjectInput) GoString() string {
  4356. return s.String()
  4357. }
  4358. type PutObjectOutput struct {
  4359. // Entity tag for the uploaded object.
  4360. ETag *string `location:"header" locationName:"ETag" type:"string"`
  4361. // If the object expiration is configured, this will contain the expiration
  4362. // date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.
  4363. Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`
  4364. // If present, indicates that the requester was successfully charged for the
  4365. // request.
  4366. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  4367. // If server-side encryption with a customer-provided encryption key was requested,
  4368. // the response will include this header confirming the encryption algorithm
  4369. // used.
  4370. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4371. // If server-side encryption with a customer-provided encryption key was requested,
  4372. // the response will include this header to provide round trip message integrity
  4373. // verification of the customer-provided encryption key.
  4374. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4375. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  4376. // encryption key that was used for the object.
  4377. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  4378. // The Server-side encryption algorithm used when storing this object in S3
  4379. // (e.g., AES256, aws:kms).
  4380. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  4381. // Version of the object.
  4382. VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
  4383. metadataPutObjectOutput `json:"-" xml:"-"`
  4384. }
  4385. type metadataPutObjectOutput struct {
  4386. SDKShapeTraits bool `type:"structure"`
  4387. }
  4388. // String returns the string representation
  4389. func (s PutObjectOutput) String() string {
  4390. return awsutil.Prettify(s)
  4391. }
  4392. // GoString returns the string representation
  4393. func (s PutObjectOutput) GoString() string {
  4394. return s.String()
  4395. }
  4396. // Container for specifying an configuration when you want Amazon S3 to publish
  4397. // events to an Amazon Simple Queue Service (Amazon SQS) queue.
  4398. type QueueConfiguration struct {
  4399. Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
  4400. // Container for object key name filtering rules. For information about key
  4401. // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
  4402. // in the Amazon Simple Storage Service Developer Guide.
  4403. Filter *NotificationConfigurationFilter `type:"structure"`
  4404. // Optional unique identifier for configurations in a notification configuration.
  4405. // If you don't provide one, Amazon S3 will assign an ID.
  4406. Id *string `type:"string"`
  4407. // Amazon SQS queue ARN to which Amazon S3 will publish a message when it detects
  4408. // events of specified type.
  4409. QueueArn *string `locationName:"Queue" type:"string" required:"true"`
  4410. metadataQueueConfiguration `json:"-" xml:"-"`
  4411. }
  4412. type metadataQueueConfiguration struct {
  4413. SDKShapeTraits bool `type:"structure"`
  4414. }
  4415. // String returns the string representation
  4416. func (s QueueConfiguration) String() string {
  4417. return awsutil.Prettify(s)
  4418. }
  4419. // GoString returns the string representation
  4420. func (s QueueConfiguration) GoString() string {
  4421. return s.String()
  4422. }
  4423. type QueueConfigurationDeprecated struct {
  4424. // Bucket event for which to send notifications.
  4425. Event *string `type:"string" enum:"Event"`
  4426. Events []*string `locationName:"Event" type:"list" flattened:"true"`
  4427. // Optional unique identifier for configurations in a notification configuration.
  4428. // If you don't provide one, Amazon S3 will assign an ID.
  4429. Id *string `type:"string"`
  4430. Queue *string `type:"string"`
  4431. metadataQueueConfigurationDeprecated `json:"-" xml:"-"`
  4432. }
  4433. type metadataQueueConfigurationDeprecated struct {
  4434. SDKShapeTraits bool `type:"structure"`
  4435. }
  4436. // String returns the string representation
  4437. func (s QueueConfigurationDeprecated) String() string {
  4438. return awsutil.Prettify(s)
  4439. }
  4440. // GoString returns the string representation
  4441. func (s QueueConfigurationDeprecated) GoString() string {
  4442. return s.String()
  4443. }
  4444. type Redirect struct {
  4445. // The host name to use in the redirect request.
  4446. HostName *string `type:"string"`
  4447. // The HTTP redirect code to use on the response. Not required if one of the
  4448. // siblings is present.
  4449. HttpRedirectCode *string `type:"string"`
  4450. // Protocol to use (http, https) when redirecting requests. The default is the
  4451. // protocol that is used in the original request.
  4452. Protocol *string `type:"string" enum:"Protocol"`
  4453. // The object key prefix to use in the redirect request. For example, to redirect
  4454. // requests for all pages with prefix docs/ (objects in the docs/ folder) to
  4455. // documents/, you can set a condition block with KeyPrefixEquals set to docs/
  4456. // and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required
  4457. // if one of the siblings is present. Can be present only if ReplaceKeyWith
  4458. // is not provided.
  4459. ReplaceKeyPrefixWith *string `type:"string"`
  4460. // The specific object key to use in the redirect request. For example, redirect
  4461. // request to error.html. Not required if one of the sibling is present. Can
  4462. // be present only if ReplaceKeyPrefixWith is not provided.
  4463. ReplaceKeyWith *string `type:"string"`
  4464. metadataRedirect `json:"-" xml:"-"`
  4465. }
  4466. type metadataRedirect struct {
  4467. SDKShapeTraits bool `type:"structure"`
  4468. }
  4469. // String returns the string representation
  4470. func (s Redirect) String() string {
  4471. return awsutil.Prettify(s)
  4472. }
  4473. // GoString returns the string representation
  4474. func (s Redirect) GoString() string {
  4475. return s.String()
  4476. }
  4477. type RedirectAllRequestsTo struct {
  4478. // Name of the host where requests will be redirected.
  4479. HostName *string `type:"string" required:"true"`
  4480. // Protocol to use (http, https) when redirecting requests. The default is the
  4481. // protocol that is used in the original request.
  4482. Protocol *string `type:"string" enum:"Protocol"`
  4483. metadataRedirectAllRequestsTo `json:"-" xml:"-"`
  4484. }
  4485. type metadataRedirectAllRequestsTo struct {
  4486. SDKShapeTraits bool `type:"structure"`
  4487. }
  4488. // String returns the string representation
  4489. func (s RedirectAllRequestsTo) String() string {
  4490. return awsutil.Prettify(s)
  4491. }
  4492. // GoString returns the string representation
  4493. func (s RedirectAllRequestsTo) GoString() string {
  4494. return s.String()
  4495. }
  4496. // Container for replication rules. You can add as many as 1,000 rules. Total
  4497. // replication configuration size can be up to 2 MB.
  4498. type ReplicationConfiguration struct {
  4499. // Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume when replicating
  4500. // the objects.
  4501. Role *string `type:"string" required:"true"`
  4502. // Container for information about a particular replication rule. Replication
  4503. // configuration must have at least one rule and can contain up to 1,000 rules.
  4504. Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
  4505. metadataReplicationConfiguration `json:"-" xml:"-"`
  4506. }
  4507. type metadataReplicationConfiguration struct {
  4508. SDKShapeTraits bool `type:"structure"`
  4509. }
  4510. // String returns the string representation
  4511. func (s ReplicationConfiguration) String() string {
  4512. return awsutil.Prettify(s)
  4513. }
  4514. // GoString returns the string representation
  4515. func (s ReplicationConfiguration) GoString() string {
  4516. return s.String()
  4517. }
  4518. type ReplicationRule struct {
  4519. Destination *Destination `type:"structure" required:"true"`
  4520. // Unique identifier for the rule. The value cannot be longer than 255 characters.
  4521. ID *string `type:"string"`
  4522. // Object keyname prefix identifying one or more objects to which the rule applies.
  4523. // Maximum prefix length can be up to 1,024 characters. Overlapping prefixes
  4524. // are not supported.
  4525. Prefix *string `type:"string" required:"true"`
  4526. // The rule is ignored if status is not Enabled.
  4527. Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"`
  4528. metadataReplicationRule `json:"-" xml:"-"`
  4529. }
  4530. type metadataReplicationRule struct {
  4531. SDKShapeTraits bool `type:"structure"`
  4532. }
  4533. // String returns the string representation
  4534. func (s ReplicationRule) String() string {
  4535. return awsutil.Prettify(s)
  4536. }
  4537. // GoString returns the string representation
  4538. func (s ReplicationRule) GoString() string {
  4539. return s.String()
  4540. }
  4541. type RequestPaymentConfiguration struct {
  4542. // Specifies who pays for the download and request fees.
  4543. Payer *string `type:"string" required:"true" enum:"Payer"`
  4544. metadataRequestPaymentConfiguration `json:"-" xml:"-"`
  4545. }
  4546. type metadataRequestPaymentConfiguration struct {
  4547. SDKShapeTraits bool `type:"structure"`
  4548. }
  4549. // String returns the string representation
  4550. func (s RequestPaymentConfiguration) String() string {
  4551. return awsutil.Prettify(s)
  4552. }
  4553. // GoString returns the string representation
  4554. func (s RequestPaymentConfiguration) GoString() string {
  4555. return s.String()
  4556. }
  4557. type RestoreObjectInput struct {
  4558. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4559. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  4560. // Confirms that the requester knows that she or he will be charged for the
  4561. // request. Bucket owners need not specify this parameter in their requests.
  4562. // Documentation on downloading objects from requester pays buckets can be found
  4563. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  4564. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  4565. RestoreRequest *RestoreRequest `locationName:"RestoreRequest" type:"structure"`
  4566. VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
  4567. metadataRestoreObjectInput `json:"-" xml:"-"`
  4568. }
  4569. type metadataRestoreObjectInput struct {
  4570. SDKShapeTraits bool `type:"structure" payload:"RestoreRequest"`
  4571. }
  4572. // String returns the string representation
  4573. func (s RestoreObjectInput) String() string {
  4574. return awsutil.Prettify(s)
  4575. }
  4576. // GoString returns the string representation
  4577. func (s RestoreObjectInput) GoString() string {
  4578. return s.String()
  4579. }
  4580. type RestoreObjectOutput struct {
  4581. // If present, indicates that the requester was successfully charged for the
  4582. // request.
  4583. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  4584. metadataRestoreObjectOutput `json:"-" xml:"-"`
  4585. }
  4586. type metadataRestoreObjectOutput struct {
  4587. SDKShapeTraits bool `type:"structure"`
  4588. }
  4589. // String returns the string representation
  4590. func (s RestoreObjectOutput) String() string {
  4591. return awsutil.Prettify(s)
  4592. }
  4593. // GoString returns the string representation
  4594. func (s RestoreObjectOutput) GoString() string {
  4595. return s.String()
  4596. }
  4597. type RestoreRequest struct {
  4598. // Lifetime of the active copy in days
  4599. Days *int64 `type:"integer" required:"true"`
  4600. metadataRestoreRequest `json:"-" xml:"-"`
  4601. }
  4602. type metadataRestoreRequest struct {
  4603. SDKShapeTraits bool `type:"structure"`
  4604. }
  4605. // String returns the string representation
  4606. func (s RestoreRequest) String() string {
  4607. return awsutil.Prettify(s)
  4608. }
  4609. // GoString returns the string representation
  4610. func (s RestoreRequest) GoString() string {
  4611. return s.String()
  4612. }
  4613. type RoutingRule struct {
  4614. // A container for describing a condition that must be met for the specified
  4615. // redirect to apply. For example, 1. If request is for pages in the /docs folder,
  4616. // redirect to the /documents folder. 2. If request results in HTTP error 4xx,
  4617. // redirect request to another host where you might process the error.
  4618. Condition *Condition `type:"structure"`
  4619. // Container for redirect information. You can redirect requests to another
  4620. // host, to another page, or with another protocol. In the event of an error,
  4621. // you can can specify a different error code to return.
  4622. Redirect *Redirect `type:"structure" required:"true"`
  4623. metadataRoutingRule `json:"-" xml:"-"`
  4624. }
  4625. type metadataRoutingRule struct {
  4626. SDKShapeTraits bool `type:"structure"`
  4627. }
  4628. // String returns the string representation
  4629. func (s RoutingRule) String() string {
  4630. return awsutil.Prettify(s)
  4631. }
  4632. // GoString returns the string representation
  4633. func (s RoutingRule) GoString() string {
  4634. return s.String()
  4635. }
  4636. type Tag struct {
  4637. // Name of the tag.
  4638. Key *string `type:"string" required:"true"`
  4639. // Value of the tag.
  4640. Value *string `type:"string" required:"true"`
  4641. metadataTag `json:"-" xml:"-"`
  4642. }
  4643. type metadataTag struct {
  4644. SDKShapeTraits bool `type:"structure"`
  4645. }
  4646. // String returns the string representation
  4647. func (s Tag) String() string {
  4648. return awsutil.Prettify(s)
  4649. }
  4650. // GoString returns the string representation
  4651. func (s Tag) GoString() string {
  4652. return s.String()
  4653. }
  4654. type Tagging struct {
  4655. TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
  4656. metadataTagging `json:"-" xml:"-"`
  4657. }
  4658. type metadataTagging struct {
  4659. SDKShapeTraits bool `type:"structure"`
  4660. }
  4661. // String returns the string representation
  4662. func (s Tagging) String() string {
  4663. return awsutil.Prettify(s)
  4664. }
  4665. // GoString returns the string representation
  4666. func (s Tagging) GoString() string {
  4667. return s.String()
  4668. }
  4669. type TargetGrant struct {
  4670. Grantee *Grantee `type:"structure"`
  4671. // Logging permissions assigned to the Grantee for the bucket.
  4672. Permission *string `type:"string" enum:"BucketLogsPermission"`
  4673. metadataTargetGrant `json:"-" xml:"-"`
  4674. }
  4675. type metadataTargetGrant struct {
  4676. SDKShapeTraits bool `type:"structure"`
  4677. }
  4678. // String returns the string representation
  4679. func (s TargetGrant) String() string {
  4680. return awsutil.Prettify(s)
  4681. }
  4682. // GoString returns the string representation
  4683. func (s TargetGrant) GoString() string {
  4684. return s.String()
  4685. }
  4686. // Container for specifying the configuration when you want Amazon S3 to publish
  4687. // events to an Amazon Simple Notification Service (Amazon SNS) topic.
  4688. type TopicConfiguration struct {
  4689. Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`
  4690. // Container for object key name filtering rules. For information about key
  4691. // name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
  4692. // in the Amazon Simple Storage Service Developer Guide.
  4693. Filter *NotificationConfigurationFilter `type:"structure"`
  4694. // Optional unique identifier for configurations in a notification configuration.
  4695. // If you don't provide one, Amazon S3 will assign an ID.
  4696. Id *string `type:"string"`
  4697. // Amazon SNS topic ARN to which Amazon S3 will publish a message when it detects
  4698. // events of specified type.
  4699. TopicArn *string `locationName:"Topic" type:"string" required:"true"`
  4700. metadataTopicConfiguration `json:"-" xml:"-"`
  4701. }
  4702. type metadataTopicConfiguration struct {
  4703. SDKShapeTraits bool `type:"structure"`
  4704. }
  4705. // String returns the string representation
  4706. func (s TopicConfiguration) String() string {
  4707. return awsutil.Prettify(s)
  4708. }
  4709. // GoString returns the string representation
  4710. func (s TopicConfiguration) GoString() string {
  4711. return s.String()
  4712. }
  4713. type TopicConfigurationDeprecated struct {
  4714. // Bucket event for which to send notifications.
  4715. Event *string `type:"string" enum:"Event"`
  4716. Events []*string `locationName:"Event" type:"list" flattened:"true"`
  4717. // Optional unique identifier for configurations in a notification configuration.
  4718. // If you don't provide one, Amazon S3 will assign an ID.
  4719. Id *string `type:"string"`
  4720. // Amazon SNS topic to which Amazon S3 will publish a message to report the
  4721. // specified events for the bucket.
  4722. Topic *string `type:"string"`
  4723. metadataTopicConfigurationDeprecated `json:"-" xml:"-"`
  4724. }
  4725. type metadataTopicConfigurationDeprecated struct {
  4726. SDKShapeTraits bool `type:"structure"`
  4727. }
  4728. // String returns the string representation
  4729. func (s TopicConfigurationDeprecated) String() string {
  4730. return awsutil.Prettify(s)
  4731. }
  4732. // GoString returns the string representation
  4733. func (s TopicConfigurationDeprecated) GoString() string {
  4734. return s.String()
  4735. }
  4736. type Transition struct {
  4737. // Indicates at what date the object is to be moved or deleted. Should be in
  4738. // GMT ISO 8601 Format.
  4739. Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4740. // Indicates the lifetime, in days, of the objects that are subject to the rule.
  4741. // The value must be a non-zero positive integer.
  4742. Days *int64 `type:"integer"`
  4743. // The class of storage used to store the object.
  4744. StorageClass *string `type:"string" enum:"TransitionStorageClass"`
  4745. metadataTransition `json:"-" xml:"-"`
  4746. }
  4747. type metadataTransition struct {
  4748. SDKShapeTraits bool `type:"structure"`
  4749. }
  4750. // String returns the string representation
  4751. func (s Transition) String() string {
  4752. return awsutil.Prettify(s)
  4753. }
  4754. // GoString returns the string representation
  4755. func (s Transition) GoString() string {
  4756. return s.String()
  4757. }
  4758. type UploadPartCopyInput struct {
  4759. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4760. // The name of the source bucket and key name of the source object, separated
  4761. // by a slash (/). Must be URL-encoded.
  4762. CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`
  4763. // Copies the object if its entity tag (ETag) matches the specified tag.
  4764. CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`
  4765. // Copies the object if it has been modified since the specified time.
  4766. CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"`
  4767. // Copies the object if its entity tag (ETag) is different than the specified
  4768. // ETag.
  4769. CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`
  4770. // Copies the object if it hasn't been modified since the specified time.
  4771. CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"`
  4772. // The range of bytes to copy from the source object. The range value must use
  4773. // the form bytes=first-last, where the first and last are the zero-based byte
  4774. // offsets to copy. For example, bytes=0-9 indicates that you want to copy the
  4775. // first ten bytes of the source. You can copy a range only if the source object
  4776. // is greater than 5 GB.
  4777. CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"`
  4778. // Specifies the algorithm to use when decrypting the source object (e.g., AES256).
  4779. CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`
  4780. // Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
  4781. // the source object. The encryption key provided in this header must be one
  4782. // that was used when the source object was created.
  4783. CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"`
  4784. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  4785. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  4786. // key was transmitted without error.
  4787. CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`
  4788. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  4789. // Part number of part being copied. This is a positive integer between 1 and
  4790. // 10,000.
  4791. PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`
  4792. // Confirms that the requester knows that she or he will be charged for the
  4793. // request. Bucket owners need not specify this parameter in their requests.
  4794. // Documentation on downloading objects from requester pays buckets can be found
  4795. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  4796. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  4797. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  4798. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4799. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  4800. // data. This value is used to store the object and then it is discarded; Amazon
  4801. // does not store the encryption key. The key must be appropriate for use with
  4802. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  4803. // header. This must be the same encryption key specified in the initiate multipart
  4804. // upload request.
  4805. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  4806. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  4807. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  4808. // key was transmitted without error.
  4809. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4810. // Upload ID identifying the multipart upload whose part is being copied.
  4811. UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
  4812. metadataUploadPartCopyInput `json:"-" xml:"-"`
  4813. }
  4814. type metadataUploadPartCopyInput struct {
  4815. SDKShapeTraits bool `type:"structure"`
  4816. }
  4817. // String returns the string representation
  4818. func (s UploadPartCopyInput) String() string {
  4819. return awsutil.Prettify(s)
  4820. }
  4821. // GoString returns the string representation
  4822. func (s UploadPartCopyInput) GoString() string {
  4823. return s.String()
  4824. }
  4825. type UploadPartCopyOutput struct {
  4826. CopyPartResult *CopyPartResult `type:"structure"`
  4827. // The version of the source object that was copied, if you have enabled versioning
  4828. // on the source bucket.
  4829. CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`
  4830. // If present, indicates that the requester was successfully charged for the
  4831. // request.
  4832. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  4833. // If server-side encryption with a customer-provided encryption key was requested,
  4834. // the response will include this header confirming the encryption algorithm
  4835. // used.
  4836. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4837. // If server-side encryption with a customer-provided encryption key was requested,
  4838. // the response will include this header to provide round trip message integrity
  4839. // verification of the customer-provided encryption key.
  4840. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4841. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  4842. // encryption key that was used for the object.
  4843. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  4844. // The Server-side encryption algorithm used when storing this object in S3
  4845. // (e.g., AES256, aws:kms).
  4846. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  4847. metadataUploadPartCopyOutput `json:"-" xml:"-"`
  4848. }
  4849. type metadataUploadPartCopyOutput struct {
  4850. SDKShapeTraits bool `type:"structure" payload:"CopyPartResult"`
  4851. }
  4852. // String returns the string representation
  4853. func (s UploadPartCopyOutput) String() string {
  4854. return awsutil.Prettify(s)
  4855. }
  4856. // GoString returns the string representation
  4857. func (s UploadPartCopyOutput) GoString() string {
  4858. return s.String()
  4859. }
  4860. type UploadPartInput struct {
  4861. Body io.ReadSeeker `type:"blob"`
  4862. Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
  4863. // Size of the body in bytes. This parameter is useful when the size of the
  4864. // body cannot be determined automatically.
  4865. ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`
  4866. Key *string `location:"uri" locationName:"Key" type:"string" required:"true"`
  4867. // Part number of part being uploaded. This is a positive integer between 1
  4868. // and 10,000.
  4869. PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`
  4870. // Confirms that the requester knows that she or he will be charged for the
  4871. // request. Bucket owners need not specify this parameter in their requests.
  4872. // Documentation on downloading objects from requester pays buckets can be found
  4873. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  4874. RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
  4875. // Specifies the algorithm to use to when encrypting the object (e.g., AES256).
  4876. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4877. // Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
  4878. // data. This value is used to store the object and then it is discarded; Amazon
  4879. // does not store the encryption key. The key must be appropriate for use with
  4880. // the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
  4881. // header. This must be the same encryption key specified in the initiate multipart
  4882. // upload request.
  4883. SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`
  4884. // Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
  4885. // Amazon S3 uses this header for a message integrity check to ensure the encryption
  4886. // key was transmitted without error.
  4887. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4888. // Upload ID identifying the multipart upload whose part is being uploaded.
  4889. UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
  4890. metadataUploadPartInput `json:"-" xml:"-"`
  4891. }
  4892. type metadataUploadPartInput struct {
  4893. SDKShapeTraits bool `type:"structure" payload:"Body"`
  4894. }
  4895. // String returns the string representation
  4896. func (s UploadPartInput) String() string {
  4897. return awsutil.Prettify(s)
  4898. }
  4899. // GoString returns the string representation
  4900. func (s UploadPartInput) GoString() string {
  4901. return s.String()
  4902. }
  4903. type UploadPartOutput struct {
  4904. // Entity tag for the uploaded object.
  4905. ETag *string `location:"header" locationName:"ETag" type:"string"`
  4906. // If present, indicates that the requester was successfully charged for the
  4907. // request.
  4908. RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
  4909. // If server-side encryption with a customer-provided encryption key was requested,
  4910. // the response will include this header confirming the encryption algorithm
  4911. // used.
  4912. SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`
  4913. // If server-side encryption with a customer-provided encryption key was requested,
  4914. // the response will include this header to provide round trip message integrity
  4915. // verification of the customer-provided encryption key.
  4916. SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`
  4917. // If present, specifies the ID of the AWS Key Management Service (KMS) master
  4918. // encryption key that was used for the object.
  4919. SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`
  4920. // The Server-side encryption algorithm used when storing this object in S3
  4921. // (e.g., AES256, aws:kms).
  4922. ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
  4923. metadataUploadPartOutput `json:"-" xml:"-"`
  4924. }
  4925. type metadataUploadPartOutput struct {
  4926. SDKShapeTraits bool `type:"structure"`
  4927. }
  4928. // String returns the string representation
  4929. func (s UploadPartOutput) String() string {
  4930. return awsutil.Prettify(s)
  4931. }
  4932. // GoString returns the string representation
  4933. func (s UploadPartOutput) GoString() string {
  4934. return s.String()
  4935. }
  4936. type VersioningConfiguration struct {
  4937. // Specifies whether MFA delete is enabled in the bucket versioning configuration.
  4938. // This element is only returned if the bucket has been configured with MFA
  4939. // delete. If the bucket has never been so configured, this element is not returned.
  4940. MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADelete"`
  4941. // The versioning state of the bucket.
  4942. Status *string `type:"string" enum:"BucketVersioningStatus"`
  4943. metadataVersioningConfiguration `json:"-" xml:"-"`
  4944. }
  4945. type metadataVersioningConfiguration struct {
  4946. SDKShapeTraits bool `type:"structure"`
  4947. }
  4948. // String returns the string representation
  4949. func (s VersioningConfiguration) String() string {
  4950. return awsutil.Prettify(s)
  4951. }
  4952. // GoString returns the string representation
  4953. func (s VersioningConfiguration) GoString() string {
  4954. return s.String()
  4955. }
  4956. type WebsiteConfiguration struct {
  4957. ErrorDocument *ErrorDocument `type:"structure"`
  4958. IndexDocument *IndexDocument `type:"structure"`
  4959. RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`
  4960. RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
  4961. metadataWebsiteConfiguration `json:"-" xml:"-"`
  4962. }
  4963. type metadataWebsiteConfiguration struct {
  4964. SDKShapeTraits bool `type:"structure"`
  4965. }
  4966. // String returns the string representation
  4967. func (s WebsiteConfiguration) String() string {
  4968. return awsutil.Prettify(s)
  4969. }
  4970. // GoString returns the string representation
  4971. func (s WebsiteConfiguration) GoString() string {
  4972. return s.String()
  4973. }
  4974. const (
  4975. // @enum BucketCannedACL
  4976. BucketCannedACLPrivate = "private"
  4977. // @enum BucketCannedACL
  4978. BucketCannedACLPublicRead = "public-read"
  4979. // @enum BucketCannedACL
  4980. BucketCannedACLPublicReadWrite = "public-read-write"
  4981. // @enum BucketCannedACL
  4982. BucketCannedACLAuthenticatedRead = "authenticated-read"
  4983. )
  4984. const (
  4985. // @enum BucketLocationConstraint
  4986. BucketLocationConstraintEu = "EU"
  4987. // @enum BucketLocationConstraint
  4988. BucketLocationConstraintEuWest1 = "eu-west-1"
  4989. // @enum BucketLocationConstraint
  4990. BucketLocationConstraintUsWest1 = "us-west-1"
  4991. // @enum BucketLocationConstraint
  4992. BucketLocationConstraintUsWest2 = "us-west-2"
  4993. // @enum BucketLocationConstraint
  4994. BucketLocationConstraintApSoutheast1 = "ap-southeast-1"
  4995. // @enum BucketLocationConstraint
  4996. BucketLocationConstraintApSoutheast2 = "ap-southeast-2"
  4997. // @enum BucketLocationConstraint
  4998. BucketLocationConstraintApNortheast1 = "ap-northeast-1"
  4999. // @enum BucketLocationConstraint
  5000. BucketLocationConstraintSaEast1 = "sa-east-1"
  5001. // @enum BucketLocationConstraint
  5002. BucketLocationConstraintCnNorth1 = "cn-north-1"
  5003. // @enum BucketLocationConstraint
  5004. BucketLocationConstraintEuCentral1 = "eu-central-1"
  5005. )
  5006. const (
  5007. // @enum BucketLogsPermission
  5008. BucketLogsPermissionFullControl = "FULL_CONTROL"
  5009. // @enum BucketLogsPermission
  5010. BucketLogsPermissionRead = "READ"
  5011. // @enum BucketLogsPermission
  5012. BucketLogsPermissionWrite = "WRITE"
  5013. )
  5014. const (
  5015. // @enum BucketVersioningStatus
  5016. BucketVersioningStatusEnabled = "Enabled"
  5017. // @enum BucketVersioningStatus
  5018. BucketVersioningStatusSuspended = "Suspended"
  5019. )
  5020. // Requests Amazon S3 to encode the object keys in the response and specifies
  5021. // the encoding method to use. An object key may contain any Unicode character;
  5022. // however, XML 1.0 parser cannot parse some characters, such as characters
  5023. // with an ASCII value from 0 to 10. For characters that are not supported in
  5024. // XML 1.0, you can add this parameter to request that Amazon S3 encode the
  5025. // keys in the response.
  5026. const (
  5027. // @enum EncodingType
  5028. EncodingTypeUrl = "url"
  5029. )
  5030. // Bucket event for which to send notifications.
  5031. const (
  5032. // @enum Event
  5033. EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"
  5034. // @enum Event
  5035. EventS3ObjectCreated = "s3:ObjectCreated:*"
  5036. // @enum Event
  5037. EventS3ObjectCreatedPut = "s3:ObjectCreated:Put"
  5038. // @enum Event
  5039. EventS3ObjectCreatedPost = "s3:ObjectCreated:Post"
  5040. // @enum Event
  5041. EventS3ObjectCreatedCopy = "s3:ObjectCreated:Copy"
  5042. // @enum Event
  5043. EventS3ObjectCreatedCompleteMultipartUpload = "s3:ObjectCreated:CompleteMultipartUpload"
  5044. // @enum Event
  5045. EventS3ObjectRemoved = "s3:ObjectRemoved:*"
  5046. // @enum Event
  5047. EventS3ObjectRemovedDelete = "s3:ObjectRemoved:Delete"
  5048. // @enum Event
  5049. EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated"
  5050. )
  5051. const (
  5052. // @enum ExpirationStatus
  5053. ExpirationStatusEnabled = "Enabled"
  5054. // @enum ExpirationStatus
  5055. ExpirationStatusDisabled = "Disabled"
  5056. )
  5057. const (
  5058. // @enum FilterRuleName
  5059. FilterRuleNamePrefix = "prefix"
  5060. // @enum FilterRuleName
  5061. FilterRuleNameSuffix = "suffix"
  5062. )
  5063. const (
  5064. // @enum MFADelete
  5065. MFADeleteEnabled = "Enabled"
  5066. // @enum MFADelete
  5067. MFADeleteDisabled = "Disabled"
  5068. )
  5069. const (
  5070. // @enum MFADeleteStatus
  5071. MFADeleteStatusEnabled = "Enabled"
  5072. // @enum MFADeleteStatus
  5073. MFADeleteStatusDisabled = "Disabled"
  5074. )
  5075. const (
  5076. // @enum MetadataDirective
  5077. MetadataDirectiveCopy = "COPY"
  5078. // @enum MetadataDirective
  5079. MetadataDirectiveReplace = "REPLACE"
  5080. )
  5081. const (
  5082. // @enum ObjectCannedACL
  5083. ObjectCannedACLPrivate = "private"
  5084. // @enum ObjectCannedACL
  5085. ObjectCannedACLPublicRead = "public-read"
  5086. // @enum ObjectCannedACL
  5087. ObjectCannedACLPublicReadWrite = "public-read-write"
  5088. // @enum ObjectCannedACL
  5089. ObjectCannedACLAuthenticatedRead = "authenticated-read"
  5090. // @enum ObjectCannedACL
  5091. ObjectCannedACLBucketOwnerRead = "bucket-owner-read"
  5092. // @enum ObjectCannedACL
  5093. ObjectCannedACLBucketOwnerFullControl = "bucket-owner-full-control"
  5094. )
  5095. const (
  5096. // @enum ObjectStorageClass
  5097. ObjectStorageClassStandard = "STANDARD"
  5098. // @enum ObjectStorageClass
  5099. ObjectStorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
  5100. // @enum ObjectStorageClass
  5101. ObjectStorageClassGlacier = "GLACIER"
  5102. )
  5103. const (
  5104. // @enum ObjectVersionStorageClass
  5105. ObjectVersionStorageClassStandard = "STANDARD"
  5106. )
  5107. const (
  5108. // @enum Payer
  5109. PayerRequester = "Requester"
  5110. // @enum Payer
  5111. PayerBucketOwner = "BucketOwner"
  5112. )
  5113. const (
  5114. // @enum Permission
  5115. PermissionFullControl = "FULL_CONTROL"
  5116. // @enum Permission
  5117. PermissionWrite = "WRITE"
  5118. // @enum Permission
  5119. PermissionWriteAcp = "WRITE_ACP"
  5120. // @enum Permission
  5121. PermissionRead = "READ"
  5122. // @enum Permission
  5123. PermissionReadAcp = "READ_ACP"
  5124. )
  5125. const (
  5126. // @enum Protocol
  5127. ProtocolHttp = "http"
  5128. // @enum Protocol
  5129. ProtocolHttps = "https"
  5130. )
  5131. const (
  5132. // @enum ReplicationRuleStatus
  5133. ReplicationRuleStatusEnabled = "Enabled"
  5134. // @enum ReplicationRuleStatus
  5135. ReplicationRuleStatusDisabled = "Disabled"
  5136. )
  5137. const (
  5138. // @enum ReplicationStatus
  5139. ReplicationStatusComplete = "COMPLETE"
  5140. // @enum ReplicationStatus
  5141. ReplicationStatusPending = "PENDING"
  5142. // @enum ReplicationStatus
  5143. ReplicationStatusFailed = "FAILED"
  5144. // @enum ReplicationStatus
  5145. ReplicationStatusReplica = "REPLICA"
  5146. )
  5147. // If present, indicates that the requester was successfully charged for the
  5148. // request.
  5149. const (
  5150. // @enum RequestCharged
  5151. RequestChargedRequester = "requester"
  5152. )
  5153. // Confirms that the requester knows that she or he will be charged for the
  5154. // request. Bucket owners need not specify this parameter in their requests.
  5155. // Documentation on downloading objects from requester pays buckets can be found
  5156. // at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
  5157. const (
  5158. // @enum RequestPayer
  5159. RequestPayerRequester = "requester"
  5160. )
  5161. const (
  5162. // @enum ServerSideEncryption
  5163. ServerSideEncryptionAes256 = "AES256"
  5164. // @enum ServerSideEncryption
  5165. ServerSideEncryptionAwsKms = "aws:kms"
  5166. )
  5167. const (
  5168. // @enum StorageClass
  5169. StorageClassStandard = "STANDARD"
  5170. // @enum StorageClass
  5171. StorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
  5172. )
  5173. const (
  5174. // @enum TransitionStorageClass
  5175. TransitionStorageClassGlacier = "GLACIER"
  5176. )
  5177. const (
  5178. // @enum Type
  5179. TypeCanonicalUser = "CanonicalUser"
  5180. // @enum Type
  5181. TypeAmazonCustomerByEmail = "AmazonCustomerByEmail"
  5182. // @enum Type
  5183. TypeGroup = "Group"
  5184. )