api.go 255 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140
  1. // THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
  2. // Package ses provides a client for Amazon Simple Email Service.
  3. package ses
  4. import (
  5. "fmt"
  6. "time"
  7. "github.com/aws/aws-sdk-go/aws/awsutil"
  8. "github.com/aws/aws-sdk-go/aws/request"
  9. "github.com/aws/aws-sdk-go/private/protocol"
  10. "github.com/aws/aws-sdk-go/private/protocol/query"
  11. )
  12. const opCloneReceiptRuleSet = "CloneReceiptRuleSet"
  13. // CloneReceiptRuleSetRequest generates a "aws/request.Request" representing the
  14. // client's request for the CloneReceiptRuleSet operation. The "output" return
  15. // value can be used to capture response data after the request's "Send" method
  16. // is called.
  17. //
  18. // See CloneReceiptRuleSet for usage and error information.
  19. //
  20. // Creating a request object using this method should be used when you want to inject
  21. // custom logic into the request's lifecycle using a custom handler, or if you want to
  22. // access properties on the request object before or after sending the request. If
  23. // you just want the service response, call the CloneReceiptRuleSet method directly
  24. // instead.
  25. //
  26. // Note: You must call the "Send" method on the returned request object in order
  27. // to execute the request.
  28. //
  29. // // Example sending a request using the CloneReceiptRuleSetRequest method.
  30. // req, resp := client.CloneReceiptRuleSetRequest(params)
  31. //
  32. // err := req.Send()
  33. // if err == nil { // resp is now filled
  34. // fmt.Println(resp)
  35. // }
  36. //
  37. func (c *SES) CloneReceiptRuleSetRequest(input *CloneReceiptRuleSetInput) (req *request.Request, output *CloneReceiptRuleSetOutput) {
  38. op := &request.Operation{
  39. Name: opCloneReceiptRuleSet,
  40. HTTPMethod: "POST",
  41. HTTPPath: "/",
  42. }
  43. if input == nil {
  44. input = &CloneReceiptRuleSetInput{}
  45. }
  46. req = c.newRequest(op, input, output)
  47. output = &CloneReceiptRuleSetOutput{}
  48. req.Data = output
  49. return
  50. }
  51. // CloneReceiptRuleSet API operation for Amazon Simple Email Service.
  52. //
  53. // Creates a receipt rule set by cloning an existing one. All receipt rules
  54. // and configurations are copied to the new receipt rule set and are completely
  55. // independent of the source rule set.
  56. //
  57. // For information about setting up rule sets, see the Amazon SES Developer
  58. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html).
  59. //
  60. // This action is throttled at one request per second.
  61. //
  62. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  63. // with awserr.Error's Code and Message methods to get detailed information about
  64. // the error.
  65. //
  66. // See the AWS API reference guide for Amazon Simple Email Service's
  67. // API operation CloneReceiptRuleSet for usage and error information.
  68. //
  69. // Returned Error Codes:
  70. // * RuleSetDoesNotExist
  71. // Indicates that the provided receipt rule set does not exist.
  72. //
  73. // * AlreadyExists
  74. // Indicates that a resource could not be created due to a naming conflict.
  75. //
  76. // * LimitExceeded
  77. // Indicates that a resource could not be created due to service limits. For
  78. // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html).
  79. //
  80. func (c *SES) CloneReceiptRuleSet(input *CloneReceiptRuleSetInput) (*CloneReceiptRuleSetOutput, error) {
  81. req, out := c.CloneReceiptRuleSetRequest(input)
  82. err := req.Send()
  83. return out, err
  84. }
  85. const opCreateReceiptFilter = "CreateReceiptFilter"
  86. // CreateReceiptFilterRequest generates a "aws/request.Request" representing the
  87. // client's request for the CreateReceiptFilter operation. The "output" return
  88. // value can be used to capture response data after the request's "Send" method
  89. // is called.
  90. //
  91. // See CreateReceiptFilter for usage and error information.
  92. //
  93. // Creating a request object using this method should be used when you want to inject
  94. // custom logic into the request's lifecycle using a custom handler, or if you want to
  95. // access properties on the request object before or after sending the request. If
  96. // you just want the service response, call the CreateReceiptFilter method directly
  97. // instead.
  98. //
  99. // Note: You must call the "Send" method on the returned request object in order
  100. // to execute the request.
  101. //
  102. // // Example sending a request using the CreateReceiptFilterRequest method.
  103. // req, resp := client.CreateReceiptFilterRequest(params)
  104. //
  105. // err := req.Send()
  106. // if err == nil { // resp is now filled
  107. // fmt.Println(resp)
  108. // }
  109. //
  110. func (c *SES) CreateReceiptFilterRequest(input *CreateReceiptFilterInput) (req *request.Request, output *CreateReceiptFilterOutput) {
  111. op := &request.Operation{
  112. Name: opCreateReceiptFilter,
  113. HTTPMethod: "POST",
  114. HTTPPath: "/",
  115. }
  116. if input == nil {
  117. input = &CreateReceiptFilterInput{}
  118. }
  119. req = c.newRequest(op, input, output)
  120. output = &CreateReceiptFilterOutput{}
  121. req.Data = output
  122. return
  123. }
  124. // CreateReceiptFilter API operation for Amazon Simple Email Service.
  125. //
  126. // Creates a new IP address filter.
  127. //
  128. // For information about setting up IP address filters, see the Amazon SES Developer
  129. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html).
  130. //
  131. // This action is throttled at one request per second.
  132. //
  133. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  134. // with awserr.Error's Code and Message methods to get detailed information about
  135. // the error.
  136. //
  137. // See the AWS API reference guide for Amazon Simple Email Service's
  138. // API operation CreateReceiptFilter for usage and error information.
  139. //
  140. // Returned Error Codes:
  141. // * LimitExceeded
  142. // Indicates that a resource could not be created due to service limits. For
  143. // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html).
  144. //
  145. // * AlreadyExists
  146. // Indicates that a resource could not be created due to a naming conflict.
  147. //
  148. func (c *SES) CreateReceiptFilter(input *CreateReceiptFilterInput) (*CreateReceiptFilterOutput, error) {
  149. req, out := c.CreateReceiptFilterRequest(input)
  150. err := req.Send()
  151. return out, err
  152. }
  153. const opCreateReceiptRule = "CreateReceiptRule"
  154. // CreateReceiptRuleRequest generates a "aws/request.Request" representing the
  155. // client's request for the CreateReceiptRule operation. The "output" return
  156. // value can be used to capture response data after the request's "Send" method
  157. // is called.
  158. //
  159. // See CreateReceiptRule for usage and error information.
  160. //
  161. // Creating a request object using this method should be used when you want to inject
  162. // custom logic into the request's lifecycle using a custom handler, or if you want to
  163. // access properties on the request object before or after sending the request. If
  164. // you just want the service response, call the CreateReceiptRule method directly
  165. // instead.
  166. //
  167. // Note: You must call the "Send" method on the returned request object in order
  168. // to execute the request.
  169. //
  170. // // Example sending a request using the CreateReceiptRuleRequest method.
  171. // req, resp := client.CreateReceiptRuleRequest(params)
  172. //
  173. // err := req.Send()
  174. // if err == nil { // resp is now filled
  175. // fmt.Println(resp)
  176. // }
  177. //
  178. func (c *SES) CreateReceiptRuleRequest(input *CreateReceiptRuleInput) (req *request.Request, output *CreateReceiptRuleOutput) {
  179. op := &request.Operation{
  180. Name: opCreateReceiptRule,
  181. HTTPMethod: "POST",
  182. HTTPPath: "/",
  183. }
  184. if input == nil {
  185. input = &CreateReceiptRuleInput{}
  186. }
  187. req = c.newRequest(op, input, output)
  188. output = &CreateReceiptRuleOutput{}
  189. req.Data = output
  190. return
  191. }
  192. // CreateReceiptRule API operation for Amazon Simple Email Service.
  193. //
  194. // Creates a receipt rule.
  195. //
  196. // For information about setting up receipt rules, see the Amazon SES Developer
  197. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html).
  198. //
  199. // This action is throttled at one request per second.
  200. //
  201. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  202. // with awserr.Error's Code and Message methods to get detailed information about
  203. // the error.
  204. //
  205. // See the AWS API reference guide for Amazon Simple Email Service's
  206. // API operation CreateReceiptRule for usage and error information.
  207. //
  208. // Returned Error Codes:
  209. // * InvalidSnsTopic
  210. // Indicates that the provided Amazon SNS topic is invalid, or that Amazon SES
  211. // could not publish to the topic, possibly due to permissions issues. For information
  212. // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  213. //
  214. // * InvalidS3Configuration
  215. // Indicates that the provided Amazon S3 bucket or AWS KMS encryption key is
  216. // invalid, or that Amazon SES could not publish to the bucket, possibly due
  217. // to permissions issues. For information about giving permissions, see the
  218. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  219. //
  220. // * InvalidLambdaFunction
  221. // Indicates that the provided AWS Lambda function is invalid, or that Amazon
  222. // SES could not execute the provided function, possibly due to permissions
  223. // issues. For information about giving permissions, see the Amazon SES Developer
  224. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  225. //
  226. // * AlreadyExists
  227. // Indicates that a resource could not be created due to a naming conflict.
  228. //
  229. // * RuleDoesNotExist
  230. // Indicates that the provided receipt rule does not exist.
  231. //
  232. // * RuleSetDoesNotExist
  233. // Indicates that the provided receipt rule set does not exist.
  234. //
  235. // * LimitExceeded
  236. // Indicates that a resource could not be created due to service limits. For
  237. // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html).
  238. //
  239. func (c *SES) CreateReceiptRule(input *CreateReceiptRuleInput) (*CreateReceiptRuleOutput, error) {
  240. req, out := c.CreateReceiptRuleRequest(input)
  241. err := req.Send()
  242. return out, err
  243. }
  244. const opCreateReceiptRuleSet = "CreateReceiptRuleSet"
  245. // CreateReceiptRuleSetRequest generates a "aws/request.Request" representing the
  246. // client's request for the CreateReceiptRuleSet operation. The "output" return
  247. // value can be used to capture response data after the request's "Send" method
  248. // is called.
  249. //
  250. // See CreateReceiptRuleSet for usage and error information.
  251. //
  252. // Creating a request object using this method should be used when you want to inject
  253. // custom logic into the request's lifecycle using a custom handler, or if you want to
  254. // access properties on the request object before or after sending the request. If
  255. // you just want the service response, call the CreateReceiptRuleSet method directly
  256. // instead.
  257. //
  258. // Note: You must call the "Send" method on the returned request object in order
  259. // to execute the request.
  260. //
  261. // // Example sending a request using the CreateReceiptRuleSetRequest method.
  262. // req, resp := client.CreateReceiptRuleSetRequest(params)
  263. //
  264. // err := req.Send()
  265. // if err == nil { // resp is now filled
  266. // fmt.Println(resp)
  267. // }
  268. //
  269. func (c *SES) CreateReceiptRuleSetRequest(input *CreateReceiptRuleSetInput) (req *request.Request, output *CreateReceiptRuleSetOutput) {
  270. op := &request.Operation{
  271. Name: opCreateReceiptRuleSet,
  272. HTTPMethod: "POST",
  273. HTTPPath: "/",
  274. }
  275. if input == nil {
  276. input = &CreateReceiptRuleSetInput{}
  277. }
  278. req = c.newRequest(op, input, output)
  279. output = &CreateReceiptRuleSetOutput{}
  280. req.Data = output
  281. return
  282. }
  283. // CreateReceiptRuleSet API operation for Amazon Simple Email Service.
  284. //
  285. // Creates an empty receipt rule set.
  286. //
  287. // For information about setting up receipt rule sets, see the Amazon SES Developer
  288. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html).
  289. //
  290. // This action is throttled at one request per second.
  291. //
  292. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  293. // with awserr.Error's Code and Message methods to get detailed information about
  294. // the error.
  295. //
  296. // See the AWS API reference guide for Amazon Simple Email Service's
  297. // API operation CreateReceiptRuleSet for usage and error information.
  298. //
  299. // Returned Error Codes:
  300. // * AlreadyExists
  301. // Indicates that a resource could not be created due to a naming conflict.
  302. //
  303. // * LimitExceeded
  304. // Indicates that a resource could not be created due to service limits. For
  305. // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html).
  306. //
  307. func (c *SES) CreateReceiptRuleSet(input *CreateReceiptRuleSetInput) (*CreateReceiptRuleSetOutput, error) {
  308. req, out := c.CreateReceiptRuleSetRequest(input)
  309. err := req.Send()
  310. return out, err
  311. }
  312. const opDeleteIdentity = "DeleteIdentity"
  313. // DeleteIdentityRequest generates a "aws/request.Request" representing the
  314. // client's request for the DeleteIdentity operation. The "output" return
  315. // value can be used to capture response data after the request's "Send" method
  316. // is called.
  317. //
  318. // See DeleteIdentity for usage and error information.
  319. //
  320. // Creating a request object using this method should be used when you want to inject
  321. // custom logic into the request's lifecycle using a custom handler, or if you want to
  322. // access properties on the request object before or after sending the request. If
  323. // you just want the service response, call the DeleteIdentity method directly
  324. // instead.
  325. //
  326. // Note: You must call the "Send" method on the returned request object in order
  327. // to execute the request.
  328. //
  329. // // Example sending a request using the DeleteIdentityRequest method.
  330. // req, resp := client.DeleteIdentityRequest(params)
  331. //
  332. // err := req.Send()
  333. // if err == nil { // resp is now filled
  334. // fmt.Println(resp)
  335. // }
  336. //
  337. func (c *SES) DeleteIdentityRequest(input *DeleteIdentityInput) (req *request.Request, output *DeleteIdentityOutput) {
  338. op := &request.Operation{
  339. Name: opDeleteIdentity,
  340. HTTPMethod: "POST",
  341. HTTPPath: "/",
  342. }
  343. if input == nil {
  344. input = &DeleteIdentityInput{}
  345. }
  346. req = c.newRequest(op, input, output)
  347. output = &DeleteIdentityOutput{}
  348. req.Data = output
  349. return
  350. }
  351. // DeleteIdentity API operation for Amazon Simple Email Service.
  352. //
  353. // Deletes the specified identity (an email address or a domain) from the list
  354. // of verified identities.
  355. //
  356. // This action is throttled at one request per second.
  357. //
  358. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  359. // with awserr.Error's Code and Message methods to get detailed information about
  360. // the error.
  361. //
  362. // See the AWS API reference guide for Amazon Simple Email Service's
  363. // API operation DeleteIdentity for usage and error information.
  364. func (c *SES) DeleteIdentity(input *DeleteIdentityInput) (*DeleteIdentityOutput, error) {
  365. req, out := c.DeleteIdentityRequest(input)
  366. err := req.Send()
  367. return out, err
  368. }
  369. const opDeleteIdentityPolicy = "DeleteIdentityPolicy"
  370. // DeleteIdentityPolicyRequest generates a "aws/request.Request" representing the
  371. // client's request for the DeleteIdentityPolicy operation. The "output" return
  372. // value can be used to capture response data after the request's "Send" method
  373. // is called.
  374. //
  375. // See DeleteIdentityPolicy for usage and error information.
  376. //
  377. // Creating a request object using this method should be used when you want to inject
  378. // custom logic into the request's lifecycle using a custom handler, or if you want to
  379. // access properties on the request object before or after sending the request. If
  380. // you just want the service response, call the DeleteIdentityPolicy method directly
  381. // instead.
  382. //
  383. // Note: You must call the "Send" method on the returned request object in order
  384. // to execute the request.
  385. //
  386. // // Example sending a request using the DeleteIdentityPolicyRequest method.
  387. // req, resp := client.DeleteIdentityPolicyRequest(params)
  388. //
  389. // err := req.Send()
  390. // if err == nil { // resp is now filled
  391. // fmt.Println(resp)
  392. // }
  393. //
  394. func (c *SES) DeleteIdentityPolicyRequest(input *DeleteIdentityPolicyInput) (req *request.Request, output *DeleteIdentityPolicyOutput) {
  395. op := &request.Operation{
  396. Name: opDeleteIdentityPolicy,
  397. HTTPMethod: "POST",
  398. HTTPPath: "/",
  399. }
  400. if input == nil {
  401. input = &DeleteIdentityPolicyInput{}
  402. }
  403. req = c.newRequest(op, input, output)
  404. output = &DeleteIdentityPolicyOutput{}
  405. req.Data = output
  406. return
  407. }
  408. // DeleteIdentityPolicy API operation for Amazon Simple Email Service.
  409. //
  410. // Deletes the specified sending authorization policy for the given identity
  411. // (an email address or a domain). This API returns successfully even if a policy
  412. // with the specified name does not exist.
  413. //
  414. // This API is for the identity owner only. If you have not verified the identity,
  415. // this API will return an error.
  416. //
  417. // Sending authorization is a feature that enables an identity owner to authorize
  418. // other senders to use its identities. For information about using sending
  419. // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  420. //
  421. // This action is throttled at one request per second.
  422. //
  423. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  424. // with awserr.Error's Code and Message methods to get detailed information about
  425. // the error.
  426. //
  427. // See the AWS API reference guide for Amazon Simple Email Service's
  428. // API operation DeleteIdentityPolicy for usage and error information.
  429. func (c *SES) DeleteIdentityPolicy(input *DeleteIdentityPolicyInput) (*DeleteIdentityPolicyOutput, error) {
  430. req, out := c.DeleteIdentityPolicyRequest(input)
  431. err := req.Send()
  432. return out, err
  433. }
  434. const opDeleteReceiptFilter = "DeleteReceiptFilter"
  435. // DeleteReceiptFilterRequest generates a "aws/request.Request" representing the
  436. // client's request for the DeleteReceiptFilter operation. The "output" return
  437. // value can be used to capture response data after the request's "Send" method
  438. // is called.
  439. //
  440. // See DeleteReceiptFilter for usage and error information.
  441. //
  442. // Creating a request object using this method should be used when you want to inject
  443. // custom logic into the request's lifecycle using a custom handler, or if you want to
  444. // access properties on the request object before or after sending the request. If
  445. // you just want the service response, call the DeleteReceiptFilter method directly
  446. // instead.
  447. //
  448. // Note: You must call the "Send" method on the returned request object in order
  449. // to execute the request.
  450. //
  451. // // Example sending a request using the DeleteReceiptFilterRequest method.
  452. // req, resp := client.DeleteReceiptFilterRequest(params)
  453. //
  454. // err := req.Send()
  455. // if err == nil { // resp is now filled
  456. // fmt.Println(resp)
  457. // }
  458. //
  459. func (c *SES) DeleteReceiptFilterRequest(input *DeleteReceiptFilterInput) (req *request.Request, output *DeleteReceiptFilterOutput) {
  460. op := &request.Operation{
  461. Name: opDeleteReceiptFilter,
  462. HTTPMethod: "POST",
  463. HTTPPath: "/",
  464. }
  465. if input == nil {
  466. input = &DeleteReceiptFilterInput{}
  467. }
  468. req = c.newRequest(op, input, output)
  469. output = &DeleteReceiptFilterOutput{}
  470. req.Data = output
  471. return
  472. }
  473. // DeleteReceiptFilter API operation for Amazon Simple Email Service.
  474. //
  475. // Deletes the specified IP address filter.
  476. //
  477. // For information about managing IP address filters, see the Amazon SES Developer
  478. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-ip-filters.html).
  479. //
  480. // This action is throttled at one request per second.
  481. //
  482. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  483. // with awserr.Error's Code and Message methods to get detailed information about
  484. // the error.
  485. //
  486. // See the AWS API reference guide for Amazon Simple Email Service's
  487. // API operation DeleteReceiptFilter for usage and error information.
  488. func (c *SES) DeleteReceiptFilter(input *DeleteReceiptFilterInput) (*DeleteReceiptFilterOutput, error) {
  489. req, out := c.DeleteReceiptFilterRequest(input)
  490. err := req.Send()
  491. return out, err
  492. }
  493. const opDeleteReceiptRule = "DeleteReceiptRule"
  494. // DeleteReceiptRuleRequest generates a "aws/request.Request" representing the
  495. // client's request for the DeleteReceiptRule operation. The "output" return
  496. // value can be used to capture response data after the request's "Send" method
  497. // is called.
  498. //
  499. // See DeleteReceiptRule for usage and error information.
  500. //
  501. // Creating a request object using this method should be used when you want to inject
  502. // custom logic into the request's lifecycle using a custom handler, or if you want to
  503. // access properties on the request object before or after sending the request. If
  504. // you just want the service response, call the DeleteReceiptRule method directly
  505. // instead.
  506. //
  507. // Note: You must call the "Send" method on the returned request object in order
  508. // to execute the request.
  509. //
  510. // // Example sending a request using the DeleteReceiptRuleRequest method.
  511. // req, resp := client.DeleteReceiptRuleRequest(params)
  512. //
  513. // err := req.Send()
  514. // if err == nil { // resp is now filled
  515. // fmt.Println(resp)
  516. // }
  517. //
  518. func (c *SES) DeleteReceiptRuleRequest(input *DeleteReceiptRuleInput) (req *request.Request, output *DeleteReceiptRuleOutput) {
  519. op := &request.Operation{
  520. Name: opDeleteReceiptRule,
  521. HTTPMethod: "POST",
  522. HTTPPath: "/",
  523. }
  524. if input == nil {
  525. input = &DeleteReceiptRuleInput{}
  526. }
  527. req = c.newRequest(op, input, output)
  528. output = &DeleteReceiptRuleOutput{}
  529. req.Data = output
  530. return
  531. }
  532. // DeleteReceiptRule API operation for Amazon Simple Email Service.
  533. //
  534. // Deletes the specified receipt rule.
  535. //
  536. // For information about managing receipt rules, see the Amazon SES Developer
  537. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html).
  538. //
  539. // This action is throttled at one request per second.
  540. //
  541. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  542. // with awserr.Error's Code and Message methods to get detailed information about
  543. // the error.
  544. //
  545. // See the AWS API reference guide for Amazon Simple Email Service's
  546. // API operation DeleteReceiptRule for usage and error information.
  547. //
  548. // Returned Error Codes:
  549. // * RuleSetDoesNotExist
  550. // Indicates that the provided receipt rule set does not exist.
  551. //
  552. func (c *SES) DeleteReceiptRule(input *DeleteReceiptRuleInput) (*DeleteReceiptRuleOutput, error) {
  553. req, out := c.DeleteReceiptRuleRequest(input)
  554. err := req.Send()
  555. return out, err
  556. }
  557. const opDeleteReceiptRuleSet = "DeleteReceiptRuleSet"
  558. // DeleteReceiptRuleSetRequest generates a "aws/request.Request" representing the
  559. // client's request for the DeleteReceiptRuleSet operation. The "output" return
  560. // value can be used to capture response data after the request's "Send" method
  561. // is called.
  562. //
  563. // See DeleteReceiptRuleSet for usage and error information.
  564. //
  565. // Creating a request object using this method should be used when you want to inject
  566. // custom logic into the request's lifecycle using a custom handler, or if you want to
  567. // access properties on the request object before or after sending the request. If
  568. // you just want the service response, call the DeleteReceiptRuleSet method directly
  569. // instead.
  570. //
  571. // Note: You must call the "Send" method on the returned request object in order
  572. // to execute the request.
  573. //
  574. // // Example sending a request using the DeleteReceiptRuleSetRequest method.
  575. // req, resp := client.DeleteReceiptRuleSetRequest(params)
  576. //
  577. // err := req.Send()
  578. // if err == nil { // resp is now filled
  579. // fmt.Println(resp)
  580. // }
  581. //
  582. func (c *SES) DeleteReceiptRuleSetRequest(input *DeleteReceiptRuleSetInput) (req *request.Request, output *DeleteReceiptRuleSetOutput) {
  583. op := &request.Operation{
  584. Name: opDeleteReceiptRuleSet,
  585. HTTPMethod: "POST",
  586. HTTPPath: "/",
  587. }
  588. if input == nil {
  589. input = &DeleteReceiptRuleSetInput{}
  590. }
  591. req = c.newRequest(op, input, output)
  592. output = &DeleteReceiptRuleSetOutput{}
  593. req.Data = output
  594. return
  595. }
  596. // DeleteReceiptRuleSet API operation for Amazon Simple Email Service.
  597. //
  598. // Deletes the specified receipt rule set and all of the receipt rules it contains.
  599. //
  600. // The currently active rule set cannot be deleted.
  601. //
  602. // For information about managing receipt rule sets, see the Amazon SES Developer
  603. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html).
  604. //
  605. // This action is throttled at one request per second.
  606. //
  607. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  608. // with awserr.Error's Code and Message methods to get detailed information about
  609. // the error.
  610. //
  611. // See the AWS API reference guide for Amazon Simple Email Service's
  612. // API operation DeleteReceiptRuleSet for usage and error information.
  613. //
  614. // Returned Error Codes:
  615. // * CannotDelete
  616. // Indicates that the delete operation could not be completed.
  617. //
  618. func (c *SES) DeleteReceiptRuleSet(input *DeleteReceiptRuleSetInput) (*DeleteReceiptRuleSetOutput, error) {
  619. req, out := c.DeleteReceiptRuleSetRequest(input)
  620. err := req.Send()
  621. return out, err
  622. }
  623. const opDeleteVerifiedEmailAddress = "DeleteVerifiedEmailAddress"
  624. // DeleteVerifiedEmailAddressRequest generates a "aws/request.Request" representing the
  625. // client's request for the DeleteVerifiedEmailAddress operation. The "output" return
  626. // value can be used to capture response data after the request's "Send" method
  627. // is called.
  628. //
  629. // See DeleteVerifiedEmailAddress for usage and error information.
  630. //
  631. // Creating a request object using this method should be used when you want to inject
  632. // custom logic into the request's lifecycle using a custom handler, or if you want to
  633. // access properties on the request object before or after sending the request. If
  634. // you just want the service response, call the DeleteVerifiedEmailAddress method directly
  635. // instead.
  636. //
  637. // Note: You must call the "Send" method on the returned request object in order
  638. // to execute the request.
  639. //
  640. // // Example sending a request using the DeleteVerifiedEmailAddressRequest method.
  641. // req, resp := client.DeleteVerifiedEmailAddressRequest(params)
  642. //
  643. // err := req.Send()
  644. // if err == nil { // resp is now filled
  645. // fmt.Println(resp)
  646. // }
  647. //
  648. func (c *SES) DeleteVerifiedEmailAddressRequest(input *DeleteVerifiedEmailAddressInput) (req *request.Request, output *DeleteVerifiedEmailAddressOutput) {
  649. op := &request.Operation{
  650. Name: opDeleteVerifiedEmailAddress,
  651. HTTPMethod: "POST",
  652. HTTPPath: "/",
  653. }
  654. if input == nil {
  655. input = &DeleteVerifiedEmailAddressInput{}
  656. }
  657. req = c.newRequest(op, input, output)
  658. req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
  659. req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
  660. output = &DeleteVerifiedEmailAddressOutput{}
  661. req.Data = output
  662. return
  663. }
  664. // DeleteVerifiedEmailAddress API operation for Amazon Simple Email Service.
  665. //
  666. // Deletes the specified email address from the list of verified addresses.
  667. //
  668. // The DeleteVerifiedEmailAddress action is deprecated as of the May 15, 2012
  669. // release of Domain Verification. The DeleteIdentity action is now preferred.
  670. //
  671. // This action is throttled at one request per second.
  672. //
  673. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  674. // with awserr.Error's Code and Message methods to get detailed information about
  675. // the error.
  676. //
  677. // See the AWS API reference guide for Amazon Simple Email Service's
  678. // API operation DeleteVerifiedEmailAddress for usage and error information.
  679. func (c *SES) DeleteVerifiedEmailAddress(input *DeleteVerifiedEmailAddressInput) (*DeleteVerifiedEmailAddressOutput, error) {
  680. req, out := c.DeleteVerifiedEmailAddressRequest(input)
  681. err := req.Send()
  682. return out, err
  683. }
  684. const opDescribeActiveReceiptRuleSet = "DescribeActiveReceiptRuleSet"
  685. // DescribeActiveReceiptRuleSetRequest generates a "aws/request.Request" representing the
  686. // client's request for the DescribeActiveReceiptRuleSet operation. The "output" return
  687. // value can be used to capture response data after the request's "Send" method
  688. // is called.
  689. //
  690. // See DescribeActiveReceiptRuleSet for usage and error information.
  691. //
  692. // Creating a request object using this method should be used when you want to inject
  693. // custom logic into the request's lifecycle using a custom handler, or if you want to
  694. // access properties on the request object before or after sending the request. If
  695. // you just want the service response, call the DescribeActiveReceiptRuleSet method directly
  696. // instead.
  697. //
  698. // Note: You must call the "Send" method on the returned request object in order
  699. // to execute the request.
  700. //
  701. // // Example sending a request using the DescribeActiveReceiptRuleSetRequest method.
  702. // req, resp := client.DescribeActiveReceiptRuleSetRequest(params)
  703. //
  704. // err := req.Send()
  705. // if err == nil { // resp is now filled
  706. // fmt.Println(resp)
  707. // }
  708. //
  709. func (c *SES) DescribeActiveReceiptRuleSetRequest(input *DescribeActiveReceiptRuleSetInput) (req *request.Request, output *DescribeActiveReceiptRuleSetOutput) {
  710. op := &request.Operation{
  711. Name: opDescribeActiveReceiptRuleSet,
  712. HTTPMethod: "POST",
  713. HTTPPath: "/",
  714. }
  715. if input == nil {
  716. input = &DescribeActiveReceiptRuleSetInput{}
  717. }
  718. req = c.newRequest(op, input, output)
  719. output = &DescribeActiveReceiptRuleSetOutput{}
  720. req.Data = output
  721. return
  722. }
  723. // DescribeActiveReceiptRuleSet API operation for Amazon Simple Email Service.
  724. //
  725. // Returns the metadata and receipt rules for the receipt rule set that is currently
  726. // active.
  727. //
  728. // For information about setting up receipt rule sets, see the Amazon SES Developer
  729. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html).
  730. //
  731. // This action is throttled at one request per second.
  732. //
  733. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  734. // with awserr.Error's Code and Message methods to get detailed information about
  735. // the error.
  736. //
  737. // See the AWS API reference guide for Amazon Simple Email Service's
  738. // API operation DescribeActiveReceiptRuleSet for usage and error information.
  739. func (c *SES) DescribeActiveReceiptRuleSet(input *DescribeActiveReceiptRuleSetInput) (*DescribeActiveReceiptRuleSetOutput, error) {
  740. req, out := c.DescribeActiveReceiptRuleSetRequest(input)
  741. err := req.Send()
  742. return out, err
  743. }
  744. const opDescribeReceiptRule = "DescribeReceiptRule"
  745. // DescribeReceiptRuleRequest generates a "aws/request.Request" representing the
  746. // client's request for the DescribeReceiptRule operation. The "output" return
  747. // value can be used to capture response data after the request's "Send" method
  748. // is called.
  749. //
  750. // See DescribeReceiptRule for usage and error information.
  751. //
  752. // Creating a request object using this method should be used when you want to inject
  753. // custom logic into the request's lifecycle using a custom handler, or if you want to
  754. // access properties on the request object before or after sending the request. If
  755. // you just want the service response, call the DescribeReceiptRule method directly
  756. // instead.
  757. //
  758. // Note: You must call the "Send" method on the returned request object in order
  759. // to execute the request.
  760. //
  761. // // Example sending a request using the DescribeReceiptRuleRequest method.
  762. // req, resp := client.DescribeReceiptRuleRequest(params)
  763. //
  764. // err := req.Send()
  765. // if err == nil { // resp is now filled
  766. // fmt.Println(resp)
  767. // }
  768. //
  769. func (c *SES) DescribeReceiptRuleRequest(input *DescribeReceiptRuleInput) (req *request.Request, output *DescribeReceiptRuleOutput) {
  770. op := &request.Operation{
  771. Name: opDescribeReceiptRule,
  772. HTTPMethod: "POST",
  773. HTTPPath: "/",
  774. }
  775. if input == nil {
  776. input = &DescribeReceiptRuleInput{}
  777. }
  778. req = c.newRequest(op, input, output)
  779. output = &DescribeReceiptRuleOutput{}
  780. req.Data = output
  781. return
  782. }
  783. // DescribeReceiptRule API operation for Amazon Simple Email Service.
  784. //
  785. // Returns the details of the specified receipt rule.
  786. //
  787. // For information about setting up receipt rules, see the Amazon SES Developer
  788. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html).
  789. //
  790. // This action is throttled at one request per second.
  791. //
  792. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  793. // with awserr.Error's Code and Message methods to get detailed information about
  794. // the error.
  795. //
  796. // See the AWS API reference guide for Amazon Simple Email Service's
  797. // API operation DescribeReceiptRule for usage and error information.
  798. //
  799. // Returned Error Codes:
  800. // * RuleDoesNotExist
  801. // Indicates that the provided receipt rule does not exist.
  802. //
  803. // * RuleSetDoesNotExist
  804. // Indicates that the provided receipt rule set does not exist.
  805. //
  806. func (c *SES) DescribeReceiptRule(input *DescribeReceiptRuleInput) (*DescribeReceiptRuleOutput, error) {
  807. req, out := c.DescribeReceiptRuleRequest(input)
  808. err := req.Send()
  809. return out, err
  810. }
  811. const opDescribeReceiptRuleSet = "DescribeReceiptRuleSet"
  812. // DescribeReceiptRuleSetRequest generates a "aws/request.Request" representing the
  813. // client's request for the DescribeReceiptRuleSet operation. The "output" return
  814. // value can be used to capture response data after the request's "Send" method
  815. // is called.
  816. //
  817. // See DescribeReceiptRuleSet for usage and error information.
  818. //
  819. // Creating a request object using this method should be used when you want to inject
  820. // custom logic into the request's lifecycle using a custom handler, or if you want to
  821. // access properties on the request object before or after sending the request. If
  822. // you just want the service response, call the DescribeReceiptRuleSet method directly
  823. // instead.
  824. //
  825. // Note: You must call the "Send" method on the returned request object in order
  826. // to execute the request.
  827. //
  828. // // Example sending a request using the DescribeReceiptRuleSetRequest method.
  829. // req, resp := client.DescribeReceiptRuleSetRequest(params)
  830. //
  831. // err := req.Send()
  832. // if err == nil { // resp is now filled
  833. // fmt.Println(resp)
  834. // }
  835. //
  836. func (c *SES) DescribeReceiptRuleSetRequest(input *DescribeReceiptRuleSetInput) (req *request.Request, output *DescribeReceiptRuleSetOutput) {
  837. op := &request.Operation{
  838. Name: opDescribeReceiptRuleSet,
  839. HTTPMethod: "POST",
  840. HTTPPath: "/",
  841. }
  842. if input == nil {
  843. input = &DescribeReceiptRuleSetInput{}
  844. }
  845. req = c.newRequest(op, input, output)
  846. output = &DescribeReceiptRuleSetOutput{}
  847. req.Data = output
  848. return
  849. }
  850. // DescribeReceiptRuleSet API operation for Amazon Simple Email Service.
  851. //
  852. // Returns the details of the specified receipt rule set.
  853. //
  854. // For information about managing receipt rule sets, see the Amazon SES Developer
  855. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html).
  856. //
  857. // This action is throttled at one request per second.
  858. //
  859. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  860. // with awserr.Error's Code and Message methods to get detailed information about
  861. // the error.
  862. //
  863. // See the AWS API reference guide for Amazon Simple Email Service's
  864. // API operation DescribeReceiptRuleSet for usage and error information.
  865. //
  866. // Returned Error Codes:
  867. // * RuleSetDoesNotExist
  868. // Indicates that the provided receipt rule set does not exist.
  869. //
  870. func (c *SES) DescribeReceiptRuleSet(input *DescribeReceiptRuleSetInput) (*DescribeReceiptRuleSetOutput, error) {
  871. req, out := c.DescribeReceiptRuleSetRequest(input)
  872. err := req.Send()
  873. return out, err
  874. }
  875. const opGetIdentityDkimAttributes = "GetIdentityDkimAttributes"
  876. // GetIdentityDkimAttributesRequest generates a "aws/request.Request" representing the
  877. // client's request for the GetIdentityDkimAttributes operation. The "output" return
  878. // value can be used to capture response data after the request's "Send" method
  879. // is called.
  880. //
  881. // See GetIdentityDkimAttributes for usage and error information.
  882. //
  883. // Creating a request object using this method should be used when you want to inject
  884. // custom logic into the request's lifecycle using a custom handler, or if you want to
  885. // access properties on the request object before or after sending the request. If
  886. // you just want the service response, call the GetIdentityDkimAttributes method directly
  887. // instead.
  888. //
  889. // Note: You must call the "Send" method on the returned request object in order
  890. // to execute the request.
  891. //
  892. // // Example sending a request using the GetIdentityDkimAttributesRequest method.
  893. // req, resp := client.GetIdentityDkimAttributesRequest(params)
  894. //
  895. // err := req.Send()
  896. // if err == nil { // resp is now filled
  897. // fmt.Println(resp)
  898. // }
  899. //
  900. func (c *SES) GetIdentityDkimAttributesRequest(input *GetIdentityDkimAttributesInput) (req *request.Request, output *GetIdentityDkimAttributesOutput) {
  901. op := &request.Operation{
  902. Name: opGetIdentityDkimAttributes,
  903. HTTPMethod: "POST",
  904. HTTPPath: "/",
  905. }
  906. if input == nil {
  907. input = &GetIdentityDkimAttributesInput{}
  908. }
  909. req = c.newRequest(op, input, output)
  910. output = &GetIdentityDkimAttributesOutput{}
  911. req.Data = output
  912. return
  913. }
  914. // GetIdentityDkimAttributes API operation for Amazon Simple Email Service.
  915. //
  916. // Returns the current status of Easy DKIM signing for an entity. For domain
  917. // name identities, this action also returns the DKIM tokens that are required
  918. // for Easy DKIM signing, and whether Amazon SES has successfully verified that
  919. // these tokens have been published.
  920. //
  921. // This action takes a list of identities as input and returns the following
  922. // information for each:
  923. //
  924. // * Whether Easy DKIM signing is enabled or disabled.
  925. //
  926. // * A set of DKIM tokens that represent the identity. If the identity is
  927. // an email address, the tokens represent the domain of that address.
  928. //
  929. // * Whether Amazon SES has successfully verified the DKIM tokens published
  930. // in the domain's DNS. This information is only returned for domain name
  931. // identities, not for email addresses.
  932. //
  933. // This action is throttled at one request per second and can only get DKIM
  934. // attributes for up to 100 identities at a time.
  935. //
  936. // For more information about creating DNS records using DKIM tokens, go to
  937. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html).
  938. //
  939. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  940. // with awserr.Error's Code and Message methods to get detailed information about
  941. // the error.
  942. //
  943. // See the AWS API reference guide for Amazon Simple Email Service's
  944. // API operation GetIdentityDkimAttributes for usage and error information.
  945. func (c *SES) GetIdentityDkimAttributes(input *GetIdentityDkimAttributesInput) (*GetIdentityDkimAttributesOutput, error) {
  946. req, out := c.GetIdentityDkimAttributesRequest(input)
  947. err := req.Send()
  948. return out, err
  949. }
  950. const opGetIdentityMailFromDomainAttributes = "GetIdentityMailFromDomainAttributes"
  951. // GetIdentityMailFromDomainAttributesRequest generates a "aws/request.Request" representing the
  952. // client's request for the GetIdentityMailFromDomainAttributes operation. The "output" return
  953. // value can be used to capture response data after the request's "Send" method
  954. // is called.
  955. //
  956. // See GetIdentityMailFromDomainAttributes for usage and error information.
  957. //
  958. // Creating a request object using this method should be used when you want to inject
  959. // custom logic into the request's lifecycle using a custom handler, or if you want to
  960. // access properties on the request object before or after sending the request. If
  961. // you just want the service response, call the GetIdentityMailFromDomainAttributes method directly
  962. // instead.
  963. //
  964. // Note: You must call the "Send" method on the returned request object in order
  965. // to execute the request.
  966. //
  967. // // Example sending a request using the GetIdentityMailFromDomainAttributesRequest method.
  968. // req, resp := client.GetIdentityMailFromDomainAttributesRequest(params)
  969. //
  970. // err := req.Send()
  971. // if err == nil { // resp is now filled
  972. // fmt.Println(resp)
  973. // }
  974. //
  975. func (c *SES) GetIdentityMailFromDomainAttributesRequest(input *GetIdentityMailFromDomainAttributesInput) (req *request.Request, output *GetIdentityMailFromDomainAttributesOutput) {
  976. op := &request.Operation{
  977. Name: opGetIdentityMailFromDomainAttributes,
  978. HTTPMethod: "POST",
  979. HTTPPath: "/",
  980. }
  981. if input == nil {
  982. input = &GetIdentityMailFromDomainAttributesInput{}
  983. }
  984. req = c.newRequest(op, input, output)
  985. output = &GetIdentityMailFromDomainAttributesOutput{}
  986. req.Data = output
  987. return
  988. }
  989. // GetIdentityMailFromDomainAttributes API operation for Amazon Simple Email Service.
  990. //
  991. // Returns the custom MAIL FROM attributes for a list of identities (email addresses
  992. // and/or domains).
  993. //
  994. // This action is throttled at one request per second and can only get custom
  995. // MAIL FROM attributes for up to 100 identities at a time.
  996. //
  997. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  998. // with awserr.Error's Code and Message methods to get detailed information about
  999. // the error.
  1000. //
  1001. // See the AWS API reference guide for Amazon Simple Email Service's
  1002. // API operation GetIdentityMailFromDomainAttributes for usage and error information.
  1003. func (c *SES) GetIdentityMailFromDomainAttributes(input *GetIdentityMailFromDomainAttributesInput) (*GetIdentityMailFromDomainAttributesOutput, error) {
  1004. req, out := c.GetIdentityMailFromDomainAttributesRequest(input)
  1005. err := req.Send()
  1006. return out, err
  1007. }
  1008. const opGetIdentityNotificationAttributes = "GetIdentityNotificationAttributes"
  1009. // GetIdentityNotificationAttributesRequest generates a "aws/request.Request" representing the
  1010. // client's request for the GetIdentityNotificationAttributes operation. The "output" return
  1011. // value can be used to capture response data after the request's "Send" method
  1012. // is called.
  1013. //
  1014. // See GetIdentityNotificationAttributes for usage and error information.
  1015. //
  1016. // Creating a request object using this method should be used when you want to inject
  1017. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1018. // access properties on the request object before or after sending the request. If
  1019. // you just want the service response, call the GetIdentityNotificationAttributes method directly
  1020. // instead.
  1021. //
  1022. // Note: You must call the "Send" method on the returned request object in order
  1023. // to execute the request.
  1024. //
  1025. // // Example sending a request using the GetIdentityNotificationAttributesRequest method.
  1026. // req, resp := client.GetIdentityNotificationAttributesRequest(params)
  1027. //
  1028. // err := req.Send()
  1029. // if err == nil { // resp is now filled
  1030. // fmt.Println(resp)
  1031. // }
  1032. //
  1033. func (c *SES) GetIdentityNotificationAttributesRequest(input *GetIdentityNotificationAttributesInput) (req *request.Request, output *GetIdentityNotificationAttributesOutput) {
  1034. op := &request.Operation{
  1035. Name: opGetIdentityNotificationAttributes,
  1036. HTTPMethod: "POST",
  1037. HTTPPath: "/",
  1038. }
  1039. if input == nil {
  1040. input = &GetIdentityNotificationAttributesInput{}
  1041. }
  1042. req = c.newRequest(op, input, output)
  1043. output = &GetIdentityNotificationAttributesOutput{}
  1044. req.Data = output
  1045. return
  1046. }
  1047. // GetIdentityNotificationAttributes API operation for Amazon Simple Email Service.
  1048. //
  1049. // Given a list of verified identities (email addresses and/or domains), returns
  1050. // a structure describing identity notification attributes.
  1051. //
  1052. // This action is throttled at one request per second and can only get notification
  1053. // attributes for up to 100 identities at a time.
  1054. //
  1055. // For more information about using notifications with Amazon SES, see the Amazon
  1056. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html).
  1057. //
  1058. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1059. // with awserr.Error's Code and Message methods to get detailed information about
  1060. // the error.
  1061. //
  1062. // See the AWS API reference guide for Amazon Simple Email Service's
  1063. // API operation GetIdentityNotificationAttributes for usage and error information.
  1064. func (c *SES) GetIdentityNotificationAttributes(input *GetIdentityNotificationAttributesInput) (*GetIdentityNotificationAttributesOutput, error) {
  1065. req, out := c.GetIdentityNotificationAttributesRequest(input)
  1066. err := req.Send()
  1067. return out, err
  1068. }
  1069. const opGetIdentityPolicies = "GetIdentityPolicies"
  1070. // GetIdentityPoliciesRequest generates a "aws/request.Request" representing the
  1071. // client's request for the GetIdentityPolicies operation. The "output" return
  1072. // value can be used to capture response data after the request's "Send" method
  1073. // is called.
  1074. //
  1075. // See GetIdentityPolicies for usage and error information.
  1076. //
  1077. // Creating a request object using this method should be used when you want to inject
  1078. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1079. // access properties on the request object before or after sending the request. If
  1080. // you just want the service response, call the GetIdentityPolicies method directly
  1081. // instead.
  1082. //
  1083. // Note: You must call the "Send" method on the returned request object in order
  1084. // to execute the request.
  1085. //
  1086. // // Example sending a request using the GetIdentityPoliciesRequest method.
  1087. // req, resp := client.GetIdentityPoliciesRequest(params)
  1088. //
  1089. // err := req.Send()
  1090. // if err == nil { // resp is now filled
  1091. // fmt.Println(resp)
  1092. // }
  1093. //
  1094. func (c *SES) GetIdentityPoliciesRequest(input *GetIdentityPoliciesInput) (req *request.Request, output *GetIdentityPoliciesOutput) {
  1095. op := &request.Operation{
  1096. Name: opGetIdentityPolicies,
  1097. HTTPMethod: "POST",
  1098. HTTPPath: "/",
  1099. }
  1100. if input == nil {
  1101. input = &GetIdentityPoliciesInput{}
  1102. }
  1103. req = c.newRequest(op, input, output)
  1104. output = &GetIdentityPoliciesOutput{}
  1105. req.Data = output
  1106. return
  1107. }
  1108. // GetIdentityPolicies API operation for Amazon Simple Email Service.
  1109. //
  1110. // Returns the requested sending authorization policies for the given identity
  1111. // (an email address or a domain). The policies are returned as a map of policy
  1112. // names to policy contents. You can retrieve a maximum of 20 policies at a
  1113. // time.
  1114. //
  1115. // This API is for the identity owner only. If you have not verified the identity,
  1116. // this API will return an error.
  1117. //
  1118. // Sending authorization is a feature that enables an identity owner to authorize
  1119. // other senders to use its identities. For information about using sending
  1120. // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  1121. //
  1122. // This action is throttled at one request per second.
  1123. //
  1124. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1125. // with awserr.Error's Code and Message methods to get detailed information about
  1126. // the error.
  1127. //
  1128. // See the AWS API reference guide for Amazon Simple Email Service's
  1129. // API operation GetIdentityPolicies for usage and error information.
  1130. func (c *SES) GetIdentityPolicies(input *GetIdentityPoliciesInput) (*GetIdentityPoliciesOutput, error) {
  1131. req, out := c.GetIdentityPoliciesRequest(input)
  1132. err := req.Send()
  1133. return out, err
  1134. }
  1135. const opGetIdentityVerificationAttributes = "GetIdentityVerificationAttributes"
  1136. // GetIdentityVerificationAttributesRequest generates a "aws/request.Request" representing the
  1137. // client's request for the GetIdentityVerificationAttributes operation. The "output" return
  1138. // value can be used to capture response data after the request's "Send" method
  1139. // is called.
  1140. //
  1141. // See GetIdentityVerificationAttributes for usage and error information.
  1142. //
  1143. // Creating a request object using this method should be used when you want to inject
  1144. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1145. // access properties on the request object before or after sending the request. If
  1146. // you just want the service response, call the GetIdentityVerificationAttributes method directly
  1147. // instead.
  1148. //
  1149. // Note: You must call the "Send" method on the returned request object in order
  1150. // to execute the request.
  1151. //
  1152. // // Example sending a request using the GetIdentityVerificationAttributesRequest method.
  1153. // req, resp := client.GetIdentityVerificationAttributesRequest(params)
  1154. //
  1155. // err := req.Send()
  1156. // if err == nil { // resp is now filled
  1157. // fmt.Println(resp)
  1158. // }
  1159. //
  1160. func (c *SES) GetIdentityVerificationAttributesRequest(input *GetIdentityVerificationAttributesInput) (req *request.Request, output *GetIdentityVerificationAttributesOutput) {
  1161. op := &request.Operation{
  1162. Name: opGetIdentityVerificationAttributes,
  1163. HTTPMethod: "POST",
  1164. HTTPPath: "/",
  1165. }
  1166. if input == nil {
  1167. input = &GetIdentityVerificationAttributesInput{}
  1168. }
  1169. req = c.newRequest(op, input, output)
  1170. output = &GetIdentityVerificationAttributesOutput{}
  1171. req.Data = output
  1172. return
  1173. }
  1174. // GetIdentityVerificationAttributes API operation for Amazon Simple Email Service.
  1175. //
  1176. // Given a list of identities (email addresses and/or domains), returns the
  1177. // verification status and (for domain identities) the verification token for
  1178. // each identity.
  1179. //
  1180. // This action is throttled at one request per second and can only get verification
  1181. // attributes for up to 100 identities at a time.
  1182. //
  1183. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1184. // with awserr.Error's Code and Message methods to get detailed information about
  1185. // the error.
  1186. //
  1187. // See the AWS API reference guide for Amazon Simple Email Service's
  1188. // API operation GetIdentityVerificationAttributes for usage and error information.
  1189. func (c *SES) GetIdentityVerificationAttributes(input *GetIdentityVerificationAttributesInput) (*GetIdentityVerificationAttributesOutput, error) {
  1190. req, out := c.GetIdentityVerificationAttributesRequest(input)
  1191. err := req.Send()
  1192. return out, err
  1193. }
  1194. const opGetSendQuota = "GetSendQuota"
  1195. // GetSendQuotaRequest generates a "aws/request.Request" representing the
  1196. // client's request for the GetSendQuota operation. The "output" return
  1197. // value can be used to capture response data after the request's "Send" method
  1198. // is called.
  1199. //
  1200. // See GetSendQuota for usage and error information.
  1201. //
  1202. // Creating a request object using this method should be used when you want to inject
  1203. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1204. // access properties on the request object before or after sending the request. If
  1205. // you just want the service response, call the GetSendQuota method directly
  1206. // instead.
  1207. //
  1208. // Note: You must call the "Send" method on the returned request object in order
  1209. // to execute the request.
  1210. //
  1211. // // Example sending a request using the GetSendQuotaRequest method.
  1212. // req, resp := client.GetSendQuotaRequest(params)
  1213. //
  1214. // err := req.Send()
  1215. // if err == nil { // resp is now filled
  1216. // fmt.Println(resp)
  1217. // }
  1218. //
  1219. func (c *SES) GetSendQuotaRequest(input *GetSendQuotaInput) (req *request.Request, output *GetSendQuotaOutput) {
  1220. op := &request.Operation{
  1221. Name: opGetSendQuota,
  1222. HTTPMethod: "POST",
  1223. HTTPPath: "/",
  1224. }
  1225. if input == nil {
  1226. input = &GetSendQuotaInput{}
  1227. }
  1228. req = c.newRequest(op, input, output)
  1229. output = &GetSendQuotaOutput{}
  1230. req.Data = output
  1231. return
  1232. }
  1233. // GetSendQuota API operation for Amazon Simple Email Service.
  1234. //
  1235. // Returns the user's current sending limits.
  1236. //
  1237. // This action is throttled at one request per second.
  1238. //
  1239. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1240. // with awserr.Error's Code and Message methods to get detailed information about
  1241. // the error.
  1242. //
  1243. // See the AWS API reference guide for Amazon Simple Email Service's
  1244. // API operation GetSendQuota for usage and error information.
  1245. func (c *SES) GetSendQuota(input *GetSendQuotaInput) (*GetSendQuotaOutput, error) {
  1246. req, out := c.GetSendQuotaRequest(input)
  1247. err := req.Send()
  1248. return out, err
  1249. }
  1250. const opGetSendStatistics = "GetSendStatistics"
  1251. // GetSendStatisticsRequest generates a "aws/request.Request" representing the
  1252. // client's request for the GetSendStatistics operation. The "output" return
  1253. // value can be used to capture response data after the request's "Send" method
  1254. // is called.
  1255. //
  1256. // See GetSendStatistics for usage and error information.
  1257. //
  1258. // Creating a request object using this method should be used when you want to inject
  1259. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1260. // access properties on the request object before or after sending the request. If
  1261. // you just want the service response, call the GetSendStatistics method directly
  1262. // instead.
  1263. //
  1264. // Note: You must call the "Send" method on the returned request object in order
  1265. // to execute the request.
  1266. //
  1267. // // Example sending a request using the GetSendStatisticsRequest method.
  1268. // req, resp := client.GetSendStatisticsRequest(params)
  1269. //
  1270. // err := req.Send()
  1271. // if err == nil { // resp is now filled
  1272. // fmt.Println(resp)
  1273. // }
  1274. //
  1275. func (c *SES) GetSendStatisticsRequest(input *GetSendStatisticsInput) (req *request.Request, output *GetSendStatisticsOutput) {
  1276. op := &request.Operation{
  1277. Name: opGetSendStatistics,
  1278. HTTPMethod: "POST",
  1279. HTTPPath: "/",
  1280. }
  1281. if input == nil {
  1282. input = &GetSendStatisticsInput{}
  1283. }
  1284. req = c.newRequest(op, input, output)
  1285. output = &GetSendStatisticsOutput{}
  1286. req.Data = output
  1287. return
  1288. }
  1289. // GetSendStatistics API operation for Amazon Simple Email Service.
  1290. //
  1291. // Returns the user's sending statistics. The result is a list of data points,
  1292. // representing the last two weeks of sending activity.
  1293. //
  1294. // Each data point in the list contains statistics for a 15-minute interval.
  1295. //
  1296. // This action is throttled at one request per second.
  1297. //
  1298. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1299. // with awserr.Error's Code and Message methods to get detailed information about
  1300. // the error.
  1301. //
  1302. // See the AWS API reference guide for Amazon Simple Email Service's
  1303. // API operation GetSendStatistics for usage and error information.
  1304. func (c *SES) GetSendStatistics(input *GetSendStatisticsInput) (*GetSendStatisticsOutput, error) {
  1305. req, out := c.GetSendStatisticsRequest(input)
  1306. err := req.Send()
  1307. return out, err
  1308. }
  1309. const opListIdentities = "ListIdentities"
  1310. // ListIdentitiesRequest generates a "aws/request.Request" representing the
  1311. // client's request for the ListIdentities operation. The "output" return
  1312. // value can be used to capture response data after the request's "Send" method
  1313. // is called.
  1314. //
  1315. // See ListIdentities for usage and error information.
  1316. //
  1317. // Creating a request object using this method should be used when you want to inject
  1318. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1319. // access properties on the request object before or after sending the request. If
  1320. // you just want the service response, call the ListIdentities method directly
  1321. // instead.
  1322. //
  1323. // Note: You must call the "Send" method on the returned request object in order
  1324. // to execute the request.
  1325. //
  1326. // // Example sending a request using the ListIdentitiesRequest method.
  1327. // req, resp := client.ListIdentitiesRequest(params)
  1328. //
  1329. // err := req.Send()
  1330. // if err == nil { // resp is now filled
  1331. // fmt.Println(resp)
  1332. // }
  1333. //
  1334. func (c *SES) ListIdentitiesRequest(input *ListIdentitiesInput) (req *request.Request, output *ListIdentitiesOutput) {
  1335. op := &request.Operation{
  1336. Name: opListIdentities,
  1337. HTTPMethod: "POST",
  1338. HTTPPath: "/",
  1339. Paginator: &request.Paginator{
  1340. InputTokens: []string{"NextToken"},
  1341. OutputTokens: []string{"NextToken"},
  1342. LimitToken: "MaxItems",
  1343. TruncationToken: "",
  1344. },
  1345. }
  1346. if input == nil {
  1347. input = &ListIdentitiesInput{}
  1348. }
  1349. req = c.newRequest(op, input, output)
  1350. output = &ListIdentitiesOutput{}
  1351. req.Data = output
  1352. return
  1353. }
  1354. // ListIdentities API operation for Amazon Simple Email Service.
  1355. //
  1356. // Returns a list containing all of the identities (email addresses and domains)
  1357. // for your AWS account, regardless of verification status.
  1358. //
  1359. // This action is throttled at one request per second.
  1360. //
  1361. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1362. // with awserr.Error's Code and Message methods to get detailed information about
  1363. // the error.
  1364. //
  1365. // See the AWS API reference guide for Amazon Simple Email Service's
  1366. // API operation ListIdentities for usage and error information.
  1367. func (c *SES) ListIdentities(input *ListIdentitiesInput) (*ListIdentitiesOutput, error) {
  1368. req, out := c.ListIdentitiesRequest(input)
  1369. err := req.Send()
  1370. return out, err
  1371. }
  1372. // ListIdentitiesPages iterates over the pages of a ListIdentities operation,
  1373. // calling the "fn" function with the response data for each page. To stop
  1374. // iterating, return false from the fn function.
  1375. //
  1376. // See ListIdentities method for more information on how to use this operation.
  1377. //
  1378. // Note: This operation can generate multiple requests to a service.
  1379. //
  1380. // // Example iterating over at most 3 pages of a ListIdentities operation.
  1381. // pageNum := 0
  1382. // err := client.ListIdentitiesPages(params,
  1383. // func(page *ListIdentitiesOutput, lastPage bool) bool {
  1384. // pageNum++
  1385. // fmt.Println(page)
  1386. // return pageNum <= 3
  1387. // })
  1388. //
  1389. func (c *SES) ListIdentitiesPages(input *ListIdentitiesInput, fn func(p *ListIdentitiesOutput, lastPage bool) (shouldContinue bool)) error {
  1390. page, _ := c.ListIdentitiesRequest(input)
  1391. page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator"))
  1392. return page.EachPage(func(p interface{}, lastPage bool) bool {
  1393. return fn(p.(*ListIdentitiesOutput), lastPage)
  1394. })
  1395. }
  1396. const opListIdentityPolicies = "ListIdentityPolicies"
  1397. // ListIdentityPoliciesRequest generates a "aws/request.Request" representing the
  1398. // client's request for the ListIdentityPolicies operation. The "output" return
  1399. // value can be used to capture response data after the request's "Send" method
  1400. // is called.
  1401. //
  1402. // See ListIdentityPolicies for usage and error information.
  1403. //
  1404. // Creating a request object using this method should be used when you want to inject
  1405. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1406. // access properties on the request object before or after sending the request. If
  1407. // you just want the service response, call the ListIdentityPolicies method directly
  1408. // instead.
  1409. //
  1410. // Note: You must call the "Send" method on the returned request object in order
  1411. // to execute the request.
  1412. //
  1413. // // Example sending a request using the ListIdentityPoliciesRequest method.
  1414. // req, resp := client.ListIdentityPoliciesRequest(params)
  1415. //
  1416. // err := req.Send()
  1417. // if err == nil { // resp is now filled
  1418. // fmt.Println(resp)
  1419. // }
  1420. //
  1421. func (c *SES) ListIdentityPoliciesRequest(input *ListIdentityPoliciesInput) (req *request.Request, output *ListIdentityPoliciesOutput) {
  1422. op := &request.Operation{
  1423. Name: opListIdentityPolicies,
  1424. HTTPMethod: "POST",
  1425. HTTPPath: "/",
  1426. }
  1427. if input == nil {
  1428. input = &ListIdentityPoliciesInput{}
  1429. }
  1430. req = c.newRequest(op, input, output)
  1431. output = &ListIdentityPoliciesOutput{}
  1432. req.Data = output
  1433. return
  1434. }
  1435. // ListIdentityPolicies API operation for Amazon Simple Email Service.
  1436. //
  1437. // Returns a list of sending authorization policies that are attached to the
  1438. // given identity (an email address or a domain). This API returns only a list.
  1439. // If you want the actual policy content, you can use GetIdentityPolicies.
  1440. //
  1441. // This API is for the identity owner only. If you have not verified the identity,
  1442. // this API will return an error.
  1443. //
  1444. // Sending authorization is a feature that enables an identity owner to authorize
  1445. // other senders to use its identities. For information about using sending
  1446. // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  1447. //
  1448. // This action is throttled at one request per second.
  1449. //
  1450. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1451. // with awserr.Error's Code and Message methods to get detailed information about
  1452. // the error.
  1453. //
  1454. // See the AWS API reference guide for Amazon Simple Email Service's
  1455. // API operation ListIdentityPolicies for usage and error information.
  1456. func (c *SES) ListIdentityPolicies(input *ListIdentityPoliciesInput) (*ListIdentityPoliciesOutput, error) {
  1457. req, out := c.ListIdentityPoliciesRequest(input)
  1458. err := req.Send()
  1459. return out, err
  1460. }
  1461. const opListReceiptFilters = "ListReceiptFilters"
  1462. // ListReceiptFiltersRequest generates a "aws/request.Request" representing the
  1463. // client's request for the ListReceiptFilters operation. The "output" return
  1464. // value can be used to capture response data after the request's "Send" method
  1465. // is called.
  1466. //
  1467. // See ListReceiptFilters for usage and error information.
  1468. //
  1469. // Creating a request object using this method should be used when you want to inject
  1470. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1471. // access properties on the request object before or after sending the request. If
  1472. // you just want the service response, call the ListReceiptFilters method directly
  1473. // instead.
  1474. //
  1475. // Note: You must call the "Send" method on the returned request object in order
  1476. // to execute the request.
  1477. //
  1478. // // Example sending a request using the ListReceiptFiltersRequest method.
  1479. // req, resp := client.ListReceiptFiltersRequest(params)
  1480. //
  1481. // err := req.Send()
  1482. // if err == nil { // resp is now filled
  1483. // fmt.Println(resp)
  1484. // }
  1485. //
  1486. func (c *SES) ListReceiptFiltersRequest(input *ListReceiptFiltersInput) (req *request.Request, output *ListReceiptFiltersOutput) {
  1487. op := &request.Operation{
  1488. Name: opListReceiptFilters,
  1489. HTTPMethod: "POST",
  1490. HTTPPath: "/",
  1491. }
  1492. if input == nil {
  1493. input = &ListReceiptFiltersInput{}
  1494. }
  1495. req = c.newRequest(op, input, output)
  1496. output = &ListReceiptFiltersOutput{}
  1497. req.Data = output
  1498. return
  1499. }
  1500. // ListReceiptFilters API operation for Amazon Simple Email Service.
  1501. //
  1502. // Lists the IP address filters associated with your AWS account.
  1503. //
  1504. // For information about managing IP address filters, see the Amazon SES Developer
  1505. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-ip-filters.html).
  1506. //
  1507. // This action is throttled at one request per second.
  1508. //
  1509. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1510. // with awserr.Error's Code and Message methods to get detailed information about
  1511. // the error.
  1512. //
  1513. // See the AWS API reference guide for Amazon Simple Email Service's
  1514. // API operation ListReceiptFilters for usage and error information.
  1515. func (c *SES) ListReceiptFilters(input *ListReceiptFiltersInput) (*ListReceiptFiltersOutput, error) {
  1516. req, out := c.ListReceiptFiltersRequest(input)
  1517. err := req.Send()
  1518. return out, err
  1519. }
  1520. const opListReceiptRuleSets = "ListReceiptRuleSets"
  1521. // ListReceiptRuleSetsRequest generates a "aws/request.Request" representing the
  1522. // client's request for the ListReceiptRuleSets operation. The "output" return
  1523. // value can be used to capture response data after the request's "Send" method
  1524. // is called.
  1525. //
  1526. // See ListReceiptRuleSets for usage and error information.
  1527. //
  1528. // Creating a request object using this method should be used when you want to inject
  1529. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1530. // access properties on the request object before or after sending the request. If
  1531. // you just want the service response, call the ListReceiptRuleSets method directly
  1532. // instead.
  1533. //
  1534. // Note: You must call the "Send" method on the returned request object in order
  1535. // to execute the request.
  1536. //
  1537. // // Example sending a request using the ListReceiptRuleSetsRequest method.
  1538. // req, resp := client.ListReceiptRuleSetsRequest(params)
  1539. //
  1540. // err := req.Send()
  1541. // if err == nil { // resp is now filled
  1542. // fmt.Println(resp)
  1543. // }
  1544. //
  1545. func (c *SES) ListReceiptRuleSetsRequest(input *ListReceiptRuleSetsInput) (req *request.Request, output *ListReceiptRuleSetsOutput) {
  1546. op := &request.Operation{
  1547. Name: opListReceiptRuleSets,
  1548. HTTPMethod: "POST",
  1549. HTTPPath: "/",
  1550. }
  1551. if input == nil {
  1552. input = &ListReceiptRuleSetsInput{}
  1553. }
  1554. req = c.newRequest(op, input, output)
  1555. output = &ListReceiptRuleSetsOutput{}
  1556. req.Data = output
  1557. return
  1558. }
  1559. // ListReceiptRuleSets API operation for Amazon Simple Email Service.
  1560. //
  1561. // Lists the receipt rule sets that exist under your AWS account. If there are
  1562. // additional receipt rule sets to be retrieved, you will receive a NextToken
  1563. // that you can provide to the next call to ListReceiptRuleSets to retrieve
  1564. // the additional entries.
  1565. //
  1566. // For information about managing receipt rule sets, see the Amazon SES Developer
  1567. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html).
  1568. //
  1569. // This action is throttled at one request per second.
  1570. //
  1571. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1572. // with awserr.Error's Code and Message methods to get detailed information about
  1573. // the error.
  1574. //
  1575. // See the AWS API reference guide for Amazon Simple Email Service's
  1576. // API operation ListReceiptRuleSets for usage and error information.
  1577. func (c *SES) ListReceiptRuleSets(input *ListReceiptRuleSetsInput) (*ListReceiptRuleSetsOutput, error) {
  1578. req, out := c.ListReceiptRuleSetsRequest(input)
  1579. err := req.Send()
  1580. return out, err
  1581. }
  1582. const opListVerifiedEmailAddresses = "ListVerifiedEmailAddresses"
  1583. // ListVerifiedEmailAddressesRequest generates a "aws/request.Request" representing the
  1584. // client's request for the ListVerifiedEmailAddresses operation. The "output" return
  1585. // value can be used to capture response data after the request's "Send" method
  1586. // is called.
  1587. //
  1588. // See ListVerifiedEmailAddresses for usage and error information.
  1589. //
  1590. // Creating a request object using this method should be used when you want to inject
  1591. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1592. // access properties on the request object before or after sending the request. If
  1593. // you just want the service response, call the ListVerifiedEmailAddresses method directly
  1594. // instead.
  1595. //
  1596. // Note: You must call the "Send" method on the returned request object in order
  1597. // to execute the request.
  1598. //
  1599. // // Example sending a request using the ListVerifiedEmailAddressesRequest method.
  1600. // req, resp := client.ListVerifiedEmailAddressesRequest(params)
  1601. //
  1602. // err := req.Send()
  1603. // if err == nil { // resp is now filled
  1604. // fmt.Println(resp)
  1605. // }
  1606. //
  1607. func (c *SES) ListVerifiedEmailAddressesRequest(input *ListVerifiedEmailAddressesInput) (req *request.Request, output *ListVerifiedEmailAddressesOutput) {
  1608. op := &request.Operation{
  1609. Name: opListVerifiedEmailAddresses,
  1610. HTTPMethod: "POST",
  1611. HTTPPath: "/",
  1612. }
  1613. if input == nil {
  1614. input = &ListVerifiedEmailAddressesInput{}
  1615. }
  1616. req = c.newRequest(op, input, output)
  1617. output = &ListVerifiedEmailAddressesOutput{}
  1618. req.Data = output
  1619. return
  1620. }
  1621. // ListVerifiedEmailAddresses API operation for Amazon Simple Email Service.
  1622. //
  1623. // Returns a list containing all of the email addresses that have been verified.
  1624. //
  1625. // The ListVerifiedEmailAddresses action is deprecated as of the May 15, 2012
  1626. // release of Domain Verification. The ListIdentities action is now preferred.
  1627. //
  1628. // This action is throttled at one request per second.
  1629. //
  1630. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1631. // with awserr.Error's Code and Message methods to get detailed information about
  1632. // the error.
  1633. //
  1634. // See the AWS API reference guide for Amazon Simple Email Service's
  1635. // API operation ListVerifiedEmailAddresses for usage and error information.
  1636. func (c *SES) ListVerifiedEmailAddresses(input *ListVerifiedEmailAddressesInput) (*ListVerifiedEmailAddressesOutput, error) {
  1637. req, out := c.ListVerifiedEmailAddressesRequest(input)
  1638. err := req.Send()
  1639. return out, err
  1640. }
  1641. const opPutIdentityPolicy = "PutIdentityPolicy"
  1642. // PutIdentityPolicyRequest generates a "aws/request.Request" representing the
  1643. // client's request for the PutIdentityPolicy operation. The "output" return
  1644. // value can be used to capture response data after the request's "Send" method
  1645. // is called.
  1646. //
  1647. // See PutIdentityPolicy for usage and error information.
  1648. //
  1649. // Creating a request object using this method should be used when you want to inject
  1650. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1651. // access properties on the request object before or after sending the request. If
  1652. // you just want the service response, call the PutIdentityPolicy method directly
  1653. // instead.
  1654. //
  1655. // Note: You must call the "Send" method on the returned request object in order
  1656. // to execute the request.
  1657. //
  1658. // // Example sending a request using the PutIdentityPolicyRequest method.
  1659. // req, resp := client.PutIdentityPolicyRequest(params)
  1660. //
  1661. // err := req.Send()
  1662. // if err == nil { // resp is now filled
  1663. // fmt.Println(resp)
  1664. // }
  1665. //
  1666. func (c *SES) PutIdentityPolicyRequest(input *PutIdentityPolicyInput) (req *request.Request, output *PutIdentityPolicyOutput) {
  1667. op := &request.Operation{
  1668. Name: opPutIdentityPolicy,
  1669. HTTPMethod: "POST",
  1670. HTTPPath: "/",
  1671. }
  1672. if input == nil {
  1673. input = &PutIdentityPolicyInput{}
  1674. }
  1675. req = c.newRequest(op, input, output)
  1676. output = &PutIdentityPolicyOutput{}
  1677. req.Data = output
  1678. return
  1679. }
  1680. // PutIdentityPolicy API operation for Amazon Simple Email Service.
  1681. //
  1682. // Adds or updates a sending authorization policy for the specified identity
  1683. // (an email address or a domain).
  1684. //
  1685. // This API is for the identity owner only. If you have not verified the identity,
  1686. // this API will return an error.
  1687. //
  1688. // Sending authorization is a feature that enables an identity owner to authorize
  1689. // other senders to use its identities. For information about using sending
  1690. // authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  1691. //
  1692. // This action is throttled at one request per second.
  1693. //
  1694. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1695. // with awserr.Error's Code and Message methods to get detailed information about
  1696. // the error.
  1697. //
  1698. // See the AWS API reference guide for Amazon Simple Email Service's
  1699. // API operation PutIdentityPolicy for usage and error information.
  1700. //
  1701. // Returned Error Codes:
  1702. // * InvalidPolicy
  1703. // Indicates that the provided policy is invalid. Check the error stack for
  1704. // more information about what caused the error.
  1705. //
  1706. func (c *SES) PutIdentityPolicy(input *PutIdentityPolicyInput) (*PutIdentityPolicyOutput, error) {
  1707. req, out := c.PutIdentityPolicyRequest(input)
  1708. err := req.Send()
  1709. return out, err
  1710. }
  1711. const opReorderReceiptRuleSet = "ReorderReceiptRuleSet"
  1712. // ReorderReceiptRuleSetRequest generates a "aws/request.Request" representing the
  1713. // client's request for the ReorderReceiptRuleSet operation. The "output" return
  1714. // value can be used to capture response data after the request's "Send" method
  1715. // is called.
  1716. //
  1717. // See ReorderReceiptRuleSet for usage and error information.
  1718. //
  1719. // Creating a request object using this method should be used when you want to inject
  1720. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1721. // access properties on the request object before or after sending the request. If
  1722. // you just want the service response, call the ReorderReceiptRuleSet method directly
  1723. // instead.
  1724. //
  1725. // Note: You must call the "Send" method on the returned request object in order
  1726. // to execute the request.
  1727. //
  1728. // // Example sending a request using the ReorderReceiptRuleSetRequest method.
  1729. // req, resp := client.ReorderReceiptRuleSetRequest(params)
  1730. //
  1731. // err := req.Send()
  1732. // if err == nil { // resp is now filled
  1733. // fmt.Println(resp)
  1734. // }
  1735. //
  1736. func (c *SES) ReorderReceiptRuleSetRequest(input *ReorderReceiptRuleSetInput) (req *request.Request, output *ReorderReceiptRuleSetOutput) {
  1737. op := &request.Operation{
  1738. Name: opReorderReceiptRuleSet,
  1739. HTTPMethod: "POST",
  1740. HTTPPath: "/",
  1741. }
  1742. if input == nil {
  1743. input = &ReorderReceiptRuleSetInput{}
  1744. }
  1745. req = c.newRequest(op, input, output)
  1746. output = &ReorderReceiptRuleSetOutput{}
  1747. req.Data = output
  1748. return
  1749. }
  1750. // ReorderReceiptRuleSet API operation for Amazon Simple Email Service.
  1751. //
  1752. // Reorders the receipt rules within a receipt rule set.
  1753. //
  1754. // All of the rules in the rule set must be represented in this request. That
  1755. // is, this API will return an error if the reorder request doesn't explicitly
  1756. // position all of the rules.
  1757. //
  1758. // For information about managing receipt rule sets, see the Amazon SES Developer
  1759. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html).
  1760. //
  1761. // This action is throttled at one request per second.
  1762. //
  1763. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1764. // with awserr.Error's Code and Message methods to get detailed information about
  1765. // the error.
  1766. //
  1767. // See the AWS API reference guide for Amazon Simple Email Service's
  1768. // API operation ReorderReceiptRuleSet for usage and error information.
  1769. //
  1770. // Returned Error Codes:
  1771. // * RuleSetDoesNotExist
  1772. // Indicates that the provided receipt rule set does not exist.
  1773. //
  1774. // * RuleDoesNotExist
  1775. // Indicates that the provided receipt rule does not exist.
  1776. //
  1777. func (c *SES) ReorderReceiptRuleSet(input *ReorderReceiptRuleSetInput) (*ReorderReceiptRuleSetOutput, error) {
  1778. req, out := c.ReorderReceiptRuleSetRequest(input)
  1779. err := req.Send()
  1780. return out, err
  1781. }
  1782. const opSendBounce = "SendBounce"
  1783. // SendBounceRequest generates a "aws/request.Request" representing the
  1784. // client's request for the SendBounce operation. The "output" return
  1785. // value can be used to capture response data after the request's "Send" method
  1786. // is called.
  1787. //
  1788. // See SendBounce for usage and error information.
  1789. //
  1790. // Creating a request object using this method should be used when you want to inject
  1791. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1792. // access properties on the request object before or after sending the request. If
  1793. // you just want the service response, call the SendBounce method directly
  1794. // instead.
  1795. //
  1796. // Note: You must call the "Send" method on the returned request object in order
  1797. // to execute the request.
  1798. //
  1799. // // Example sending a request using the SendBounceRequest method.
  1800. // req, resp := client.SendBounceRequest(params)
  1801. //
  1802. // err := req.Send()
  1803. // if err == nil { // resp is now filled
  1804. // fmt.Println(resp)
  1805. // }
  1806. //
  1807. func (c *SES) SendBounceRequest(input *SendBounceInput) (req *request.Request, output *SendBounceOutput) {
  1808. op := &request.Operation{
  1809. Name: opSendBounce,
  1810. HTTPMethod: "POST",
  1811. HTTPPath: "/",
  1812. }
  1813. if input == nil {
  1814. input = &SendBounceInput{}
  1815. }
  1816. req = c.newRequest(op, input, output)
  1817. output = &SendBounceOutput{}
  1818. req.Data = output
  1819. return
  1820. }
  1821. // SendBounce API operation for Amazon Simple Email Service.
  1822. //
  1823. // Generates and sends a bounce message to the sender of an email you received
  1824. // through Amazon SES. You can only use this API on an email up to 24 hours
  1825. // after you receive it.
  1826. //
  1827. // You cannot use this API to send generic bounces for mail that was not received
  1828. // by Amazon SES.
  1829. //
  1830. // For information about receiving email through Amazon SES, see the Amazon
  1831. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html).
  1832. //
  1833. // This action is throttled at one request per second.
  1834. //
  1835. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1836. // with awserr.Error's Code and Message methods to get detailed information about
  1837. // the error.
  1838. //
  1839. // See the AWS API reference guide for Amazon Simple Email Service's
  1840. // API operation SendBounce for usage and error information.
  1841. //
  1842. // Returned Error Codes:
  1843. // * MessageRejected
  1844. // Indicates that the action failed, and the message could not be sent. Check
  1845. // the error stack for more information about what caused the error.
  1846. //
  1847. func (c *SES) SendBounce(input *SendBounceInput) (*SendBounceOutput, error) {
  1848. req, out := c.SendBounceRequest(input)
  1849. err := req.Send()
  1850. return out, err
  1851. }
  1852. const opSendEmail = "SendEmail"
  1853. // SendEmailRequest generates a "aws/request.Request" representing the
  1854. // client's request for the SendEmail operation. The "output" return
  1855. // value can be used to capture response data after the request's "Send" method
  1856. // is called.
  1857. //
  1858. // See SendEmail for usage and error information.
  1859. //
  1860. // Creating a request object using this method should be used when you want to inject
  1861. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1862. // access properties on the request object before or after sending the request. If
  1863. // you just want the service response, call the SendEmail method directly
  1864. // instead.
  1865. //
  1866. // Note: You must call the "Send" method on the returned request object in order
  1867. // to execute the request.
  1868. //
  1869. // // Example sending a request using the SendEmailRequest method.
  1870. // req, resp := client.SendEmailRequest(params)
  1871. //
  1872. // err := req.Send()
  1873. // if err == nil { // resp is now filled
  1874. // fmt.Println(resp)
  1875. // }
  1876. //
  1877. func (c *SES) SendEmailRequest(input *SendEmailInput) (req *request.Request, output *SendEmailOutput) {
  1878. op := &request.Operation{
  1879. Name: opSendEmail,
  1880. HTTPMethod: "POST",
  1881. HTTPPath: "/",
  1882. }
  1883. if input == nil {
  1884. input = &SendEmailInput{}
  1885. }
  1886. req = c.newRequest(op, input, output)
  1887. output = &SendEmailOutput{}
  1888. req.Data = output
  1889. return
  1890. }
  1891. // SendEmail API operation for Amazon Simple Email Service.
  1892. //
  1893. // Composes an email message based on input data, and then immediately queues
  1894. // the message for sending.
  1895. //
  1896. // There are several important points to know about SendEmail:
  1897. //
  1898. // * You can only send email from verified email addresses and domains; otherwise,
  1899. // you will get an "Email address not verified" error. If your account is
  1900. // still in the Amazon SES sandbox, you must also verify every recipient
  1901. // email address except for the recipients provided by the Amazon SES mailbox
  1902. // simulator. For more information, go to the Amazon SES Developer Guide
  1903. // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html).
  1904. //
  1905. // * The total size of the message cannot exceed 10 MB. This includes any
  1906. // attachments that are part of the message.
  1907. //
  1908. // * Amazon SES has a limit on the total number of recipients per message.
  1909. // The combined number of To:, CC: and BCC: email addresses cannot exceed
  1910. // 50. If you need to send an email message to a larger audience, you can
  1911. // divide your recipient list into groups of 50 or fewer, and then call Amazon
  1912. // SES repeatedly to send the message to each group.
  1913. //
  1914. // * For every message that you send, the total number of recipients (To:,
  1915. // CC: and BCC:) is counted against your sending quota - the maximum number
  1916. // of emails you can send in a 24-hour period. For information about your
  1917. // sending quota, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html).
  1918. //
  1919. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1920. // with awserr.Error's Code and Message methods to get detailed information about
  1921. // the error.
  1922. //
  1923. // See the AWS API reference guide for Amazon Simple Email Service's
  1924. // API operation SendEmail for usage and error information.
  1925. //
  1926. // Returned Error Codes:
  1927. // * MessageRejected
  1928. // Indicates that the action failed, and the message could not be sent. Check
  1929. // the error stack for more information about what caused the error.
  1930. //
  1931. // * MailFromDomainNotVerifiedException
  1932. // Indicates that the message could not be sent because Amazon SES could not
  1933. // read the MX record required to use the specified MAIL FROM domain. For information
  1934. // about editing the custom MAIL FROM domain settings for an identity, see the
  1935. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-edit.html).
  1936. //
  1937. func (c *SES) SendEmail(input *SendEmailInput) (*SendEmailOutput, error) {
  1938. req, out := c.SendEmailRequest(input)
  1939. err := req.Send()
  1940. return out, err
  1941. }
  1942. const opSendRawEmail = "SendRawEmail"
  1943. // SendRawEmailRequest generates a "aws/request.Request" representing the
  1944. // client's request for the SendRawEmail operation. The "output" return
  1945. // value can be used to capture response data after the request's "Send" method
  1946. // is called.
  1947. //
  1948. // See SendRawEmail for usage and error information.
  1949. //
  1950. // Creating a request object using this method should be used when you want to inject
  1951. // custom logic into the request's lifecycle using a custom handler, or if you want to
  1952. // access properties on the request object before or after sending the request. If
  1953. // you just want the service response, call the SendRawEmail method directly
  1954. // instead.
  1955. //
  1956. // Note: You must call the "Send" method on the returned request object in order
  1957. // to execute the request.
  1958. //
  1959. // // Example sending a request using the SendRawEmailRequest method.
  1960. // req, resp := client.SendRawEmailRequest(params)
  1961. //
  1962. // err := req.Send()
  1963. // if err == nil { // resp is now filled
  1964. // fmt.Println(resp)
  1965. // }
  1966. //
  1967. func (c *SES) SendRawEmailRequest(input *SendRawEmailInput) (req *request.Request, output *SendRawEmailOutput) {
  1968. op := &request.Operation{
  1969. Name: opSendRawEmail,
  1970. HTTPMethod: "POST",
  1971. HTTPPath: "/",
  1972. }
  1973. if input == nil {
  1974. input = &SendRawEmailInput{}
  1975. }
  1976. req = c.newRequest(op, input, output)
  1977. output = &SendRawEmailOutput{}
  1978. req.Data = output
  1979. return
  1980. }
  1981. // SendRawEmail API operation for Amazon Simple Email Service.
  1982. //
  1983. // Sends an email message, with header and content specified by the client.
  1984. // The SendRawEmail action is useful for sending multipart MIME emails. The
  1985. // raw text of the message must comply with Internet email standards; otherwise,
  1986. // the message cannot be sent.
  1987. //
  1988. // There are several important points to know about SendRawEmail:
  1989. //
  1990. // * You can only send email from verified email addresses and domains; otherwise,
  1991. // you will get an "Email address not verified" error. If your account is
  1992. // still in the Amazon SES sandbox, you must also verify every recipient
  1993. // email address except for the recipients provided by the Amazon SES mailbox
  1994. // simulator. For more information, go to the Amazon SES Developer Guide
  1995. // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html).
  1996. //
  1997. // * The total size of the message cannot exceed 10 MB. This includes any
  1998. // attachments that are part of the message.
  1999. //
  2000. // * Amazon SES has a limit on the total number of recipients per message.
  2001. // The combined number of To:, CC: and BCC: email addresses cannot exceed
  2002. // 50. If you need to send an email message to a larger audience, you can
  2003. // divide your recipient list into groups of 50 or fewer, and then call Amazon
  2004. // SES repeatedly to send the message to each group.
  2005. //
  2006. // * The To:, CC:, and BCC: headers in the raw message can contain a group
  2007. // list. Note that each recipient in a group list counts towards the 50-recipient
  2008. // limit.
  2009. //
  2010. // * Amazon SES overrides any Message-ID and Date headers you provide.
  2011. //
  2012. // * For every message that you send, the total number of recipients (To:,
  2013. // CC: and BCC:) is counted against your sending quota - the maximum number
  2014. // of emails you can send in a 24-hour period. For information about your
  2015. // sending quota, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html).
  2016. //
  2017. // * If you are using sending authorization to send on behalf of another
  2018. // user, SendRawEmail enables you to specify the cross-account identity for
  2019. // the email's "Source," "From," and "Return-Path" parameters in one of two
  2020. // ways: you can pass optional parameters SourceArn, FromArn, and/or ReturnPathArn
  2021. // to the API, or you can include the following X-headers in the header of
  2022. // your raw email:
  2023. //
  2024. // X-SES-SOURCE-ARN
  2025. //
  2026. // X-SES-FROM-ARN
  2027. //
  2028. // X-SES-RETURN-PATH-ARN
  2029. //
  2030. // Do not include these X-headers in the DKIM signature, because they are removed
  2031. // by Amazon SES before sending the email.
  2032. //
  2033. // For the most common sending authorization use case, we recommend that you
  2034. // specify the SourceIdentityArn and do not specify either the FromIdentityArn
  2035. // or ReturnPathIdentityArn. (The same note applies to the corresponding
  2036. // X-headers.) If you only specify the SourceIdentityArn, Amazon SES will
  2037. // simply set the "From" address and the "Return Path" address to the identity
  2038. // specified in SourceIdentityArn. For more information about sending authorization,
  2039. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  2040. //
  2041. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2042. // with awserr.Error's Code and Message methods to get detailed information about
  2043. // the error.
  2044. //
  2045. // See the AWS API reference guide for Amazon Simple Email Service's
  2046. // API operation SendRawEmail for usage and error information.
  2047. //
  2048. // Returned Error Codes:
  2049. // * MessageRejected
  2050. // Indicates that the action failed, and the message could not be sent. Check
  2051. // the error stack for more information about what caused the error.
  2052. //
  2053. // * MailFromDomainNotVerifiedException
  2054. // Indicates that the message could not be sent because Amazon SES could not
  2055. // read the MX record required to use the specified MAIL FROM domain. For information
  2056. // about editing the custom MAIL FROM domain settings for an identity, see the
  2057. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-edit.html).
  2058. //
  2059. func (c *SES) SendRawEmail(input *SendRawEmailInput) (*SendRawEmailOutput, error) {
  2060. req, out := c.SendRawEmailRequest(input)
  2061. err := req.Send()
  2062. return out, err
  2063. }
  2064. const opSetActiveReceiptRuleSet = "SetActiveReceiptRuleSet"
  2065. // SetActiveReceiptRuleSetRequest generates a "aws/request.Request" representing the
  2066. // client's request for the SetActiveReceiptRuleSet operation. The "output" return
  2067. // value can be used to capture response data after the request's "Send" method
  2068. // is called.
  2069. //
  2070. // See SetActiveReceiptRuleSet for usage and error information.
  2071. //
  2072. // Creating a request object using this method should be used when you want to inject
  2073. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2074. // access properties on the request object before or after sending the request. If
  2075. // you just want the service response, call the SetActiveReceiptRuleSet method directly
  2076. // instead.
  2077. //
  2078. // Note: You must call the "Send" method on the returned request object in order
  2079. // to execute the request.
  2080. //
  2081. // // Example sending a request using the SetActiveReceiptRuleSetRequest method.
  2082. // req, resp := client.SetActiveReceiptRuleSetRequest(params)
  2083. //
  2084. // err := req.Send()
  2085. // if err == nil { // resp is now filled
  2086. // fmt.Println(resp)
  2087. // }
  2088. //
  2089. func (c *SES) SetActiveReceiptRuleSetRequest(input *SetActiveReceiptRuleSetInput) (req *request.Request, output *SetActiveReceiptRuleSetOutput) {
  2090. op := &request.Operation{
  2091. Name: opSetActiveReceiptRuleSet,
  2092. HTTPMethod: "POST",
  2093. HTTPPath: "/",
  2094. }
  2095. if input == nil {
  2096. input = &SetActiveReceiptRuleSetInput{}
  2097. }
  2098. req = c.newRequest(op, input, output)
  2099. output = &SetActiveReceiptRuleSetOutput{}
  2100. req.Data = output
  2101. return
  2102. }
  2103. // SetActiveReceiptRuleSet API operation for Amazon Simple Email Service.
  2104. //
  2105. // Sets the specified receipt rule set as the active receipt rule set.
  2106. //
  2107. // To disable your email-receiving through Amazon SES completely, you can call
  2108. // this API with RuleSetName set to null.
  2109. //
  2110. // For information about managing receipt rule sets, see the Amazon SES Developer
  2111. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rule-sets.html).
  2112. //
  2113. // This action is throttled at one request per second.
  2114. //
  2115. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2116. // with awserr.Error's Code and Message methods to get detailed information about
  2117. // the error.
  2118. //
  2119. // See the AWS API reference guide for Amazon Simple Email Service's
  2120. // API operation SetActiveReceiptRuleSet for usage and error information.
  2121. //
  2122. // Returned Error Codes:
  2123. // * RuleSetDoesNotExist
  2124. // Indicates that the provided receipt rule set does not exist.
  2125. //
  2126. func (c *SES) SetActiveReceiptRuleSet(input *SetActiveReceiptRuleSetInput) (*SetActiveReceiptRuleSetOutput, error) {
  2127. req, out := c.SetActiveReceiptRuleSetRequest(input)
  2128. err := req.Send()
  2129. return out, err
  2130. }
  2131. const opSetIdentityDkimEnabled = "SetIdentityDkimEnabled"
  2132. // SetIdentityDkimEnabledRequest generates a "aws/request.Request" representing the
  2133. // client's request for the SetIdentityDkimEnabled operation. The "output" return
  2134. // value can be used to capture response data after the request's "Send" method
  2135. // is called.
  2136. //
  2137. // See SetIdentityDkimEnabled for usage and error information.
  2138. //
  2139. // Creating a request object using this method should be used when you want to inject
  2140. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2141. // access properties on the request object before or after sending the request. If
  2142. // you just want the service response, call the SetIdentityDkimEnabled method directly
  2143. // instead.
  2144. //
  2145. // Note: You must call the "Send" method on the returned request object in order
  2146. // to execute the request.
  2147. //
  2148. // // Example sending a request using the SetIdentityDkimEnabledRequest method.
  2149. // req, resp := client.SetIdentityDkimEnabledRequest(params)
  2150. //
  2151. // err := req.Send()
  2152. // if err == nil { // resp is now filled
  2153. // fmt.Println(resp)
  2154. // }
  2155. //
  2156. func (c *SES) SetIdentityDkimEnabledRequest(input *SetIdentityDkimEnabledInput) (req *request.Request, output *SetIdentityDkimEnabledOutput) {
  2157. op := &request.Operation{
  2158. Name: opSetIdentityDkimEnabled,
  2159. HTTPMethod: "POST",
  2160. HTTPPath: "/",
  2161. }
  2162. if input == nil {
  2163. input = &SetIdentityDkimEnabledInput{}
  2164. }
  2165. req = c.newRequest(op, input, output)
  2166. output = &SetIdentityDkimEnabledOutput{}
  2167. req.Data = output
  2168. return
  2169. }
  2170. // SetIdentityDkimEnabled API operation for Amazon Simple Email Service.
  2171. //
  2172. // Enables or disables Easy DKIM signing of email sent from an identity:
  2173. //
  2174. // * If Easy DKIM signing is enabled for a domain name identity (e.g., example.com),
  2175. // then Amazon SES will DKIM-sign all email sent by addresses under that
  2176. // domain name (e.g., user@example.com).
  2177. //
  2178. // * If Easy DKIM signing is enabled for an email address, then Amazon SES
  2179. // will DKIM-sign all email sent by that email address.
  2180. //
  2181. // For email addresses (e.g., user@example.com), you can only enable Easy DKIM
  2182. // signing if the corresponding domain (e.g., example.com) has been set up for
  2183. // Easy DKIM using the AWS Console or the VerifyDomainDkim action.
  2184. //
  2185. // This action is throttled at one request per second.
  2186. //
  2187. // For more information about Easy DKIM signing, go to the Amazon SES Developer
  2188. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html).
  2189. //
  2190. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2191. // with awserr.Error's Code and Message methods to get detailed information about
  2192. // the error.
  2193. //
  2194. // See the AWS API reference guide for Amazon Simple Email Service's
  2195. // API operation SetIdentityDkimEnabled for usage and error information.
  2196. func (c *SES) SetIdentityDkimEnabled(input *SetIdentityDkimEnabledInput) (*SetIdentityDkimEnabledOutput, error) {
  2197. req, out := c.SetIdentityDkimEnabledRequest(input)
  2198. err := req.Send()
  2199. return out, err
  2200. }
  2201. const opSetIdentityFeedbackForwardingEnabled = "SetIdentityFeedbackForwardingEnabled"
  2202. // SetIdentityFeedbackForwardingEnabledRequest generates a "aws/request.Request" representing the
  2203. // client's request for the SetIdentityFeedbackForwardingEnabled operation. The "output" return
  2204. // value can be used to capture response data after the request's "Send" method
  2205. // is called.
  2206. //
  2207. // See SetIdentityFeedbackForwardingEnabled for usage and error information.
  2208. //
  2209. // Creating a request object using this method should be used when you want to inject
  2210. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2211. // access properties on the request object before or after sending the request. If
  2212. // you just want the service response, call the SetIdentityFeedbackForwardingEnabled method directly
  2213. // instead.
  2214. //
  2215. // Note: You must call the "Send" method on the returned request object in order
  2216. // to execute the request.
  2217. //
  2218. // // Example sending a request using the SetIdentityFeedbackForwardingEnabledRequest method.
  2219. // req, resp := client.SetIdentityFeedbackForwardingEnabledRequest(params)
  2220. //
  2221. // err := req.Send()
  2222. // if err == nil { // resp is now filled
  2223. // fmt.Println(resp)
  2224. // }
  2225. //
  2226. func (c *SES) SetIdentityFeedbackForwardingEnabledRequest(input *SetIdentityFeedbackForwardingEnabledInput) (req *request.Request, output *SetIdentityFeedbackForwardingEnabledOutput) {
  2227. op := &request.Operation{
  2228. Name: opSetIdentityFeedbackForwardingEnabled,
  2229. HTTPMethod: "POST",
  2230. HTTPPath: "/",
  2231. }
  2232. if input == nil {
  2233. input = &SetIdentityFeedbackForwardingEnabledInput{}
  2234. }
  2235. req = c.newRequest(op, input, output)
  2236. output = &SetIdentityFeedbackForwardingEnabledOutput{}
  2237. req.Data = output
  2238. return
  2239. }
  2240. // SetIdentityFeedbackForwardingEnabled API operation for Amazon Simple Email Service.
  2241. //
  2242. // Given an identity (an email address or a domain), enables or disables whether
  2243. // Amazon SES forwards bounce and complaint notifications as email. Feedback
  2244. // forwarding can only be disabled when Amazon Simple Notification Service (Amazon
  2245. // SNS) topics are specified for both bounces and complaints.
  2246. //
  2247. // Feedback forwarding does not apply to delivery notifications. Delivery notifications
  2248. // are only available through Amazon SNS.
  2249. //
  2250. // This action is throttled at one request per second.
  2251. //
  2252. // For more information about using notifications with Amazon SES, see the Amazon
  2253. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html).
  2254. //
  2255. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2256. // with awserr.Error's Code and Message methods to get detailed information about
  2257. // the error.
  2258. //
  2259. // See the AWS API reference guide for Amazon Simple Email Service's
  2260. // API operation SetIdentityFeedbackForwardingEnabled for usage and error information.
  2261. func (c *SES) SetIdentityFeedbackForwardingEnabled(input *SetIdentityFeedbackForwardingEnabledInput) (*SetIdentityFeedbackForwardingEnabledOutput, error) {
  2262. req, out := c.SetIdentityFeedbackForwardingEnabledRequest(input)
  2263. err := req.Send()
  2264. return out, err
  2265. }
  2266. const opSetIdentityHeadersInNotificationsEnabled = "SetIdentityHeadersInNotificationsEnabled"
  2267. // SetIdentityHeadersInNotificationsEnabledRequest generates a "aws/request.Request" representing the
  2268. // client's request for the SetIdentityHeadersInNotificationsEnabled operation. The "output" return
  2269. // value can be used to capture response data after the request's "Send" method
  2270. // is called.
  2271. //
  2272. // See SetIdentityHeadersInNotificationsEnabled for usage and error information.
  2273. //
  2274. // Creating a request object using this method should be used when you want to inject
  2275. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2276. // access properties on the request object before or after sending the request. If
  2277. // you just want the service response, call the SetIdentityHeadersInNotificationsEnabled method directly
  2278. // instead.
  2279. //
  2280. // Note: You must call the "Send" method on the returned request object in order
  2281. // to execute the request.
  2282. //
  2283. // // Example sending a request using the SetIdentityHeadersInNotificationsEnabledRequest method.
  2284. // req, resp := client.SetIdentityHeadersInNotificationsEnabledRequest(params)
  2285. //
  2286. // err := req.Send()
  2287. // if err == nil { // resp is now filled
  2288. // fmt.Println(resp)
  2289. // }
  2290. //
  2291. func (c *SES) SetIdentityHeadersInNotificationsEnabledRequest(input *SetIdentityHeadersInNotificationsEnabledInput) (req *request.Request, output *SetIdentityHeadersInNotificationsEnabledOutput) {
  2292. op := &request.Operation{
  2293. Name: opSetIdentityHeadersInNotificationsEnabled,
  2294. HTTPMethod: "POST",
  2295. HTTPPath: "/",
  2296. }
  2297. if input == nil {
  2298. input = &SetIdentityHeadersInNotificationsEnabledInput{}
  2299. }
  2300. req = c.newRequest(op, input, output)
  2301. output = &SetIdentityHeadersInNotificationsEnabledOutput{}
  2302. req.Data = output
  2303. return
  2304. }
  2305. // SetIdentityHeadersInNotificationsEnabled API operation for Amazon Simple Email Service.
  2306. //
  2307. // Given an identity (an email address or a domain), sets whether Amazon SES
  2308. // includes the original email headers in the Amazon Simple Notification Service
  2309. // (Amazon SNS) notifications of a specified type.
  2310. //
  2311. // This action is throttled at one request per second.
  2312. //
  2313. // For more information about using notifications with Amazon SES, see the Amazon
  2314. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html).
  2315. //
  2316. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2317. // with awserr.Error's Code and Message methods to get detailed information about
  2318. // the error.
  2319. //
  2320. // See the AWS API reference guide for Amazon Simple Email Service's
  2321. // API operation SetIdentityHeadersInNotificationsEnabled for usage and error information.
  2322. func (c *SES) SetIdentityHeadersInNotificationsEnabled(input *SetIdentityHeadersInNotificationsEnabledInput) (*SetIdentityHeadersInNotificationsEnabledOutput, error) {
  2323. req, out := c.SetIdentityHeadersInNotificationsEnabledRequest(input)
  2324. err := req.Send()
  2325. return out, err
  2326. }
  2327. const opSetIdentityMailFromDomain = "SetIdentityMailFromDomain"
  2328. // SetIdentityMailFromDomainRequest generates a "aws/request.Request" representing the
  2329. // client's request for the SetIdentityMailFromDomain operation. The "output" return
  2330. // value can be used to capture response data after the request's "Send" method
  2331. // is called.
  2332. //
  2333. // See SetIdentityMailFromDomain for usage and error information.
  2334. //
  2335. // Creating a request object using this method should be used when you want to inject
  2336. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2337. // access properties on the request object before or after sending the request. If
  2338. // you just want the service response, call the SetIdentityMailFromDomain method directly
  2339. // instead.
  2340. //
  2341. // Note: You must call the "Send" method on the returned request object in order
  2342. // to execute the request.
  2343. //
  2344. // // Example sending a request using the SetIdentityMailFromDomainRequest method.
  2345. // req, resp := client.SetIdentityMailFromDomainRequest(params)
  2346. //
  2347. // err := req.Send()
  2348. // if err == nil { // resp is now filled
  2349. // fmt.Println(resp)
  2350. // }
  2351. //
  2352. func (c *SES) SetIdentityMailFromDomainRequest(input *SetIdentityMailFromDomainInput) (req *request.Request, output *SetIdentityMailFromDomainOutput) {
  2353. op := &request.Operation{
  2354. Name: opSetIdentityMailFromDomain,
  2355. HTTPMethod: "POST",
  2356. HTTPPath: "/",
  2357. }
  2358. if input == nil {
  2359. input = &SetIdentityMailFromDomainInput{}
  2360. }
  2361. req = c.newRequest(op, input, output)
  2362. output = &SetIdentityMailFromDomainOutput{}
  2363. req.Data = output
  2364. return
  2365. }
  2366. // SetIdentityMailFromDomain API operation for Amazon Simple Email Service.
  2367. //
  2368. // Enables or disables the custom MAIL FROM domain setup for a verified identity
  2369. // (an email address or a domain).
  2370. //
  2371. // To send emails using the specified MAIL FROM domain, you must add an MX record
  2372. // to your MAIL FROM domain's DNS settings. If you want your emails to pass
  2373. // Sender Policy Framework (SPF) checks, you must also add or update an SPF
  2374. // record. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from-set.html).
  2375. //
  2376. // This action is throttled at one request per second.
  2377. //
  2378. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2379. // with awserr.Error's Code and Message methods to get detailed information about
  2380. // the error.
  2381. //
  2382. // See the AWS API reference guide for Amazon Simple Email Service's
  2383. // API operation SetIdentityMailFromDomain for usage and error information.
  2384. func (c *SES) SetIdentityMailFromDomain(input *SetIdentityMailFromDomainInput) (*SetIdentityMailFromDomainOutput, error) {
  2385. req, out := c.SetIdentityMailFromDomainRequest(input)
  2386. err := req.Send()
  2387. return out, err
  2388. }
  2389. const opSetIdentityNotificationTopic = "SetIdentityNotificationTopic"
  2390. // SetIdentityNotificationTopicRequest generates a "aws/request.Request" representing the
  2391. // client's request for the SetIdentityNotificationTopic operation. The "output" return
  2392. // value can be used to capture response data after the request's "Send" method
  2393. // is called.
  2394. //
  2395. // See SetIdentityNotificationTopic for usage and error information.
  2396. //
  2397. // Creating a request object using this method should be used when you want to inject
  2398. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2399. // access properties on the request object before or after sending the request. If
  2400. // you just want the service response, call the SetIdentityNotificationTopic method directly
  2401. // instead.
  2402. //
  2403. // Note: You must call the "Send" method on the returned request object in order
  2404. // to execute the request.
  2405. //
  2406. // // Example sending a request using the SetIdentityNotificationTopicRequest method.
  2407. // req, resp := client.SetIdentityNotificationTopicRequest(params)
  2408. //
  2409. // err := req.Send()
  2410. // if err == nil { // resp is now filled
  2411. // fmt.Println(resp)
  2412. // }
  2413. //
  2414. func (c *SES) SetIdentityNotificationTopicRequest(input *SetIdentityNotificationTopicInput) (req *request.Request, output *SetIdentityNotificationTopicOutput) {
  2415. op := &request.Operation{
  2416. Name: opSetIdentityNotificationTopic,
  2417. HTTPMethod: "POST",
  2418. HTTPPath: "/",
  2419. }
  2420. if input == nil {
  2421. input = &SetIdentityNotificationTopicInput{}
  2422. }
  2423. req = c.newRequest(op, input, output)
  2424. output = &SetIdentityNotificationTopicOutput{}
  2425. req.Data = output
  2426. return
  2427. }
  2428. // SetIdentityNotificationTopic API operation for Amazon Simple Email Service.
  2429. //
  2430. // Given an identity (an email address or a domain), sets the Amazon Simple
  2431. // Notification Service (Amazon SNS) topic to which Amazon SES will publish
  2432. // bounce, complaint, and/or delivery notifications for emails sent with that
  2433. // identity as the Source.
  2434. //
  2435. // Unless feedback forwarding is enabled, you must specify Amazon SNS topics
  2436. // for bounce and complaint notifications. For more information, see SetIdentityFeedbackForwardingEnabled.
  2437. //
  2438. // This action is throttled at one request per second.
  2439. //
  2440. // For more information about feedback notification, see the Amazon SES Developer
  2441. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html).
  2442. //
  2443. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2444. // with awserr.Error's Code and Message methods to get detailed information about
  2445. // the error.
  2446. //
  2447. // See the AWS API reference guide for Amazon Simple Email Service's
  2448. // API operation SetIdentityNotificationTopic for usage and error information.
  2449. func (c *SES) SetIdentityNotificationTopic(input *SetIdentityNotificationTopicInput) (*SetIdentityNotificationTopicOutput, error) {
  2450. req, out := c.SetIdentityNotificationTopicRequest(input)
  2451. err := req.Send()
  2452. return out, err
  2453. }
  2454. const opSetReceiptRulePosition = "SetReceiptRulePosition"
  2455. // SetReceiptRulePositionRequest generates a "aws/request.Request" representing the
  2456. // client's request for the SetReceiptRulePosition operation. The "output" return
  2457. // value can be used to capture response data after the request's "Send" method
  2458. // is called.
  2459. //
  2460. // See SetReceiptRulePosition for usage and error information.
  2461. //
  2462. // Creating a request object using this method should be used when you want to inject
  2463. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2464. // access properties on the request object before or after sending the request. If
  2465. // you just want the service response, call the SetReceiptRulePosition method directly
  2466. // instead.
  2467. //
  2468. // Note: You must call the "Send" method on the returned request object in order
  2469. // to execute the request.
  2470. //
  2471. // // Example sending a request using the SetReceiptRulePositionRequest method.
  2472. // req, resp := client.SetReceiptRulePositionRequest(params)
  2473. //
  2474. // err := req.Send()
  2475. // if err == nil { // resp is now filled
  2476. // fmt.Println(resp)
  2477. // }
  2478. //
  2479. func (c *SES) SetReceiptRulePositionRequest(input *SetReceiptRulePositionInput) (req *request.Request, output *SetReceiptRulePositionOutput) {
  2480. op := &request.Operation{
  2481. Name: opSetReceiptRulePosition,
  2482. HTTPMethod: "POST",
  2483. HTTPPath: "/",
  2484. }
  2485. if input == nil {
  2486. input = &SetReceiptRulePositionInput{}
  2487. }
  2488. req = c.newRequest(op, input, output)
  2489. output = &SetReceiptRulePositionOutput{}
  2490. req.Data = output
  2491. return
  2492. }
  2493. // SetReceiptRulePosition API operation for Amazon Simple Email Service.
  2494. //
  2495. // Sets the position of the specified receipt rule in the receipt rule set.
  2496. //
  2497. // For information about managing receipt rules, see the Amazon SES Developer
  2498. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html).
  2499. //
  2500. // This action is throttled at one request per second.
  2501. //
  2502. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2503. // with awserr.Error's Code and Message methods to get detailed information about
  2504. // the error.
  2505. //
  2506. // See the AWS API reference guide for Amazon Simple Email Service's
  2507. // API operation SetReceiptRulePosition for usage and error information.
  2508. //
  2509. // Returned Error Codes:
  2510. // * RuleSetDoesNotExist
  2511. // Indicates that the provided receipt rule set does not exist.
  2512. //
  2513. // * RuleDoesNotExist
  2514. // Indicates that the provided receipt rule does not exist.
  2515. //
  2516. func (c *SES) SetReceiptRulePosition(input *SetReceiptRulePositionInput) (*SetReceiptRulePositionOutput, error) {
  2517. req, out := c.SetReceiptRulePositionRequest(input)
  2518. err := req.Send()
  2519. return out, err
  2520. }
  2521. const opUpdateReceiptRule = "UpdateReceiptRule"
  2522. // UpdateReceiptRuleRequest generates a "aws/request.Request" representing the
  2523. // client's request for the UpdateReceiptRule operation. The "output" return
  2524. // value can be used to capture response data after the request's "Send" method
  2525. // is called.
  2526. //
  2527. // See UpdateReceiptRule for usage and error information.
  2528. //
  2529. // Creating a request object using this method should be used when you want to inject
  2530. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2531. // access properties on the request object before or after sending the request. If
  2532. // you just want the service response, call the UpdateReceiptRule method directly
  2533. // instead.
  2534. //
  2535. // Note: You must call the "Send" method on the returned request object in order
  2536. // to execute the request.
  2537. //
  2538. // // Example sending a request using the UpdateReceiptRuleRequest method.
  2539. // req, resp := client.UpdateReceiptRuleRequest(params)
  2540. //
  2541. // err := req.Send()
  2542. // if err == nil { // resp is now filled
  2543. // fmt.Println(resp)
  2544. // }
  2545. //
  2546. func (c *SES) UpdateReceiptRuleRequest(input *UpdateReceiptRuleInput) (req *request.Request, output *UpdateReceiptRuleOutput) {
  2547. op := &request.Operation{
  2548. Name: opUpdateReceiptRule,
  2549. HTTPMethod: "POST",
  2550. HTTPPath: "/",
  2551. }
  2552. if input == nil {
  2553. input = &UpdateReceiptRuleInput{}
  2554. }
  2555. req = c.newRequest(op, input, output)
  2556. output = &UpdateReceiptRuleOutput{}
  2557. req.Data = output
  2558. return
  2559. }
  2560. // UpdateReceiptRule API operation for Amazon Simple Email Service.
  2561. //
  2562. // Updates a receipt rule.
  2563. //
  2564. // For information about managing receipt rules, see the Amazon SES Developer
  2565. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-managing-receipt-rules.html).
  2566. //
  2567. // This action is throttled at one request per second.
  2568. //
  2569. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2570. // with awserr.Error's Code and Message methods to get detailed information about
  2571. // the error.
  2572. //
  2573. // See the AWS API reference guide for Amazon Simple Email Service's
  2574. // API operation UpdateReceiptRule for usage and error information.
  2575. //
  2576. // Returned Error Codes:
  2577. // * InvalidSnsTopic
  2578. // Indicates that the provided Amazon SNS topic is invalid, or that Amazon SES
  2579. // could not publish to the topic, possibly due to permissions issues. For information
  2580. // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  2581. //
  2582. // * InvalidS3Configuration
  2583. // Indicates that the provided Amazon S3 bucket or AWS KMS encryption key is
  2584. // invalid, or that Amazon SES could not publish to the bucket, possibly due
  2585. // to permissions issues. For information about giving permissions, see the
  2586. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  2587. //
  2588. // * InvalidLambdaFunction
  2589. // Indicates that the provided AWS Lambda function is invalid, or that Amazon
  2590. // SES could not execute the provided function, possibly due to permissions
  2591. // issues. For information about giving permissions, see the Amazon SES Developer
  2592. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  2593. //
  2594. // * RuleSetDoesNotExist
  2595. // Indicates that the provided receipt rule set does not exist.
  2596. //
  2597. // * RuleDoesNotExist
  2598. // Indicates that the provided receipt rule does not exist.
  2599. //
  2600. // * LimitExceeded
  2601. // Indicates that a resource could not be created due to service limits. For
  2602. // a list of Amazon SES limits, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/limits.html).
  2603. //
  2604. func (c *SES) UpdateReceiptRule(input *UpdateReceiptRuleInput) (*UpdateReceiptRuleOutput, error) {
  2605. req, out := c.UpdateReceiptRuleRequest(input)
  2606. err := req.Send()
  2607. return out, err
  2608. }
  2609. const opVerifyDomainDkim = "VerifyDomainDkim"
  2610. // VerifyDomainDkimRequest generates a "aws/request.Request" representing the
  2611. // client's request for the VerifyDomainDkim operation. The "output" return
  2612. // value can be used to capture response data after the request's "Send" method
  2613. // is called.
  2614. //
  2615. // See VerifyDomainDkim for usage and error information.
  2616. //
  2617. // Creating a request object using this method should be used when you want to inject
  2618. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2619. // access properties on the request object before or after sending the request. If
  2620. // you just want the service response, call the VerifyDomainDkim method directly
  2621. // instead.
  2622. //
  2623. // Note: You must call the "Send" method on the returned request object in order
  2624. // to execute the request.
  2625. //
  2626. // // Example sending a request using the VerifyDomainDkimRequest method.
  2627. // req, resp := client.VerifyDomainDkimRequest(params)
  2628. //
  2629. // err := req.Send()
  2630. // if err == nil { // resp is now filled
  2631. // fmt.Println(resp)
  2632. // }
  2633. //
  2634. func (c *SES) VerifyDomainDkimRequest(input *VerifyDomainDkimInput) (req *request.Request, output *VerifyDomainDkimOutput) {
  2635. op := &request.Operation{
  2636. Name: opVerifyDomainDkim,
  2637. HTTPMethod: "POST",
  2638. HTTPPath: "/",
  2639. }
  2640. if input == nil {
  2641. input = &VerifyDomainDkimInput{}
  2642. }
  2643. req = c.newRequest(op, input, output)
  2644. output = &VerifyDomainDkimOutput{}
  2645. req.Data = output
  2646. return
  2647. }
  2648. // VerifyDomainDkim API operation for Amazon Simple Email Service.
  2649. //
  2650. // Returns a set of DKIM tokens for a domain. DKIM tokens are character strings
  2651. // that represent your domain's identity. Using these tokens, you will need
  2652. // to create DNS CNAME records that point to DKIM public keys hosted by Amazon
  2653. // SES. Amazon Web Services will eventually detect that you have updated your
  2654. // DNS records; this detection process may take up to 72 hours. Upon successful
  2655. // detection, Amazon SES will be able to DKIM-sign email originating from that
  2656. // domain.
  2657. //
  2658. // This action is throttled at one request per second.
  2659. //
  2660. // To enable or disable Easy DKIM signing for a domain, use the SetIdentityDkimEnabled
  2661. // action.
  2662. //
  2663. // For more information about creating DNS records using DKIM tokens, go to
  2664. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html).
  2665. //
  2666. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2667. // with awserr.Error's Code and Message methods to get detailed information about
  2668. // the error.
  2669. //
  2670. // See the AWS API reference guide for Amazon Simple Email Service's
  2671. // API operation VerifyDomainDkim for usage and error information.
  2672. func (c *SES) VerifyDomainDkim(input *VerifyDomainDkimInput) (*VerifyDomainDkimOutput, error) {
  2673. req, out := c.VerifyDomainDkimRequest(input)
  2674. err := req.Send()
  2675. return out, err
  2676. }
  2677. const opVerifyDomainIdentity = "VerifyDomainIdentity"
  2678. // VerifyDomainIdentityRequest generates a "aws/request.Request" representing the
  2679. // client's request for the VerifyDomainIdentity operation. The "output" return
  2680. // value can be used to capture response data after the request's "Send" method
  2681. // is called.
  2682. //
  2683. // See VerifyDomainIdentity for usage and error information.
  2684. //
  2685. // Creating a request object using this method should be used when you want to inject
  2686. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2687. // access properties on the request object before or after sending the request. If
  2688. // you just want the service response, call the VerifyDomainIdentity method directly
  2689. // instead.
  2690. //
  2691. // Note: You must call the "Send" method on the returned request object in order
  2692. // to execute the request.
  2693. //
  2694. // // Example sending a request using the VerifyDomainIdentityRequest method.
  2695. // req, resp := client.VerifyDomainIdentityRequest(params)
  2696. //
  2697. // err := req.Send()
  2698. // if err == nil { // resp is now filled
  2699. // fmt.Println(resp)
  2700. // }
  2701. //
  2702. func (c *SES) VerifyDomainIdentityRequest(input *VerifyDomainIdentityInput) (req *request.Request, output *VerifyDomainIdentityOutput) {
  2703. op := &request.Operation{
  2704. Name: opVerifyDomainIdentity,
  2705. HTTPMethod: "POST",
  2706. HTTPPath: "/",
  2707. }
  2708. if input == nil {
  2709. input = &VerifyDomainIdentityInput{}
  2710. }
  2711. req = c.newRequest(op, input, output)
  2712. output = &VerifyDomainIdentityOutput{}
  2713. req.Data = output
  2714. return
  2715. }
  2716. // VerifyDomainIdentity API operation for Amazon Simple Email Service.
  2717. //
  2718. // Verifies a domain.
  2719. //
  2720. // This action is throttled at one request per second.
  2721. //
  2722. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2723. // with awserr.Error's Code and Message methods to get detailed information about
  2724. // the error.
  2725. //
  2726. // See the AWS API reference guide for Amazon Simple Email Service's
  2727. // API operation VerifyDomainIdentity for usage and error information.
  2728. func (c *SES) VerifyDomainIdentity(input *VerifyDomainIdentityInput) (*VerifyDomainIdentityOutput, error) {
  2729. req, out := c.VerifyDomainIdentityRequest(input)
  2730. err := req.Send()
  2731. return out, err
  2732. }
  2733. const opVerifyEmailAddress = "VerifyEmailAddress"
  2734. // VerifyEmailAddressRequest generates a "aws/request.Request" representing the
  2735. // client's request for the VerifyEmailAddress operation. The "output" return
  2736. // value can be used to capture response data after the request's "Send" method
  2737. // is called.
  2738. //
  2739. // See VerifyEmailAddress for usage and error information.
  2740. //
  2741. // Creating a request object using this method should be used when you want to inject
  2742. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2743. // access properties on the request object before or after sending the request. If
  2744. // you just want the service response, call the VerifyEmailAddress method directly
  2745. // instead.
  2746. //
  2747. // Note: You must call the "Send" method on the returned request object in order
  2748. // to execute the request.
  2749. //
  2750. // // Example sending a request using the VerifyEmailAddressRequest method.
  2751. // req, resp := client.VerifyEmailAddressRequest(params)
  2752. //
  2753. // err := req.Send()
  2754. // if err == nil { // resp is now filled
  2755. // fmt.Println(resp)
  2756. // }
  2757. //
  2758. func (c *SES) VerifyEmailAddressRequest(input *VerifyEmailAddressInput) (req *request.Request, output *VerifyEmailAddressOutput) {
  2759. op := &request.Operation{
  2760. Name: opVerifyEmailAddress,
  2761. HTTPMethod: "POST",
  2762. HTTPPath: "/",
  2763. }
  2764. if input == nil {
  2765. input = &VerifyEmailAddressInput{}
  2766. }
  2767. req = c.newRequest(op, input, output)
  2768. req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
  2769. req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
  2770. output = &VerifyEmailAddressOutput{}
  2771. req.Data = output
  2772. return
  2773. }
  2774. // VerifyEmailAddress API operation for Amazon Simple Email Service.
  2775. //
  2776. // Verifies an email address. This action causes a confirmation email message
  2777. // to be sent to the specified address.
  2778. //
  2779. // The VerifyEmailAddress action is deprecated as of the May 15, 2012 release
  2780. // of Domain Verification. The VerifyEmailIdentity action is now preferred.
  2781. //
  2782. // This action is throttled at one request per second.
  2783. //
  2784. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2785. // with awserr.Error's Code and Message methods to get detailed information about
  2786. // the error.
  2787. //
  2788. // See the AWS API reference guide for Amazon Simple Email Service's
  2789. // API operation VerifyEmailAddress for usage and error information.
  2790. func (c *SES) VerifyEmailAddress(input *VerifyEmailAddressInput) (*VerifyEmailAddressOutput, error) {
  2791. req, out := c.VerifyEmailAddressRequest(input)
  2792. err := req.Send()
  2793. return out, err
  2794. }
  2795. const opVerifyEmailIdentity = "VerifyEmailIdentity"
  2796. // VerifyEmailIdentityRequest generates a "aws/request.Request" representing the
  2797. // client's request for the VerifyEmailIdentity operation. The "output" return
  2798. // value can be used to capture response data after the request's "Send" method
  2799. // is called.
  2800. //
  2801. // See VerifyEmailIdentity for usage and error information.
  2802. //
  2803. // Creating a request object using this method should be used when you want to inject
  2804. // custom logic into the request's lifecycle using a custom handler, or if you want to
  2805. // access properties on the request object before or after sending the request. If
  2806. // you just want the service response, call the VerifyEmailIdentity method directly
  2807. // instead.
  2808. //
  2809. // Note: You must call the "Send" method on the returned request object in order
  2810. // to execute the request.
  2811. //
  2812. // // Example sending a request using the VerifyEmailIdentityRequest method.
  2813. // req, resp := client.VerifyEmailIdentityRequest(params)
  2814. //
  2815. // err := req.Send()
  2816. // if err == nil { // resp is now filled
  2817. // fmt.Println(resp)
  2818. // }
  2819. //
  2820. func (c *SES) VerifyEmailIdentityRequest(input *VerifyEmailIdentityInput) (req *request.Request, output *VerifyEmailIdentityOutput) {
  2821. op := &request.Operation{
  2822. Name: opVerifyEmailIdentity,
  2823. HTTPMethod: "POST",
  2824. HTTPPath: "/",
  2825. }
  2826. if input == nil {
  2827. input = &VerifyEmailIdentityInput{}
  2828. }
  2829. req = c.newRequest(op, input, output)
  2830. output = &VerifyEmailIdentityOutput{}
  2831. req.Data = output
  2832. return
  2833. }
  2834. // VerifyEmailIdentity API operation for Amazon Simple Email Service.
  2835. //
  2836. // Verifies an email address. This action causes a confirmation email message
  2837. // to be sent to the specified address.
  2838. //
  2839. // This action is throttled at one request per second.
  2840. //
  2841. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2842. // with awserr.Error's Code and Message methods to get detailed information about
  2843. // the error.
  2844. //
  2845. // See the AWS API reference guide for Amazon Simple Email Service's
  2846. // API operation VerifyEmailIdentity for usage and error information.
  2847. func (c *SES) VerifyEmailIdentity(input *VerifyEmailIdentityInput) (*VerifyEmailIdentityOutput, error) {
  2848. req, out := c.VerifyEmailIdentityRequest(input)
  2849. err := req.Send()
  2850. return out, err
  2851. }
  2852. // When included in a receipt rule, this action adds a header to the received
  2853. // email.
  2854. //
  2855. // For information about adding a header using a receipt rule, see the Amazon
  2856. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-add-header.html).
  2857. type AddHeaderAction struct {
  2858. _ struct{} `type:"structure"`
  2859. // The name of the header to add. Must be between 1 and 50 characters, inclusive,
  2860. // and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only.
  2861. //
  2862. // HeaderName is a required field
  2863. HeaderName *string `type:"string" required:"true"`
  2864. // Must be less than 2048 characters, and must not contain newline characters
  2865. // ("\r" or "\n").
  2866. //
  2867. // HeaderValue is a required field
  2868. HeaderValue *string `type:"string" required:"true"`
  2869. }
  2870. // String returns the string representation
  2871. func (s AddHeaderAction) String() string {
  2872. return awsutil.Prettify(s)
  2873. }
  2874. // GoString returns the string representation
  2875. func (s AddHeaderAction) GoString() string {
  2876. return s.String()
  2877. }
  2878. // Validate inspects the fields of the type to determine if they are valid.
  2879. func (s *AddHeaderAction) Validate() error {
  2880. invalidParams := request.ErrInvalidParams{Context: "AddHeaderAction"}
  2881. if s.HeaderName == nil {
  2882. invalidParams.Add(request.NewErrParamRequired("HeaderName"))
  2883. }
  2884. if s.HeaderValue == nil {
  2885. invalidParams.Add(request.NewErrParamRequired("HeaderValue"))
  2886. }
  2887. if invalidParams.Len() > 0 {
  2888. return invalidParams
  2889. }
  2890. return nil
  2891. }
  2892. // Represents the body of the message. You can specify text, HTML, or both.
  2893. // If you use both, then the message should display correctly in the widest
  2894. // variety of email clients.
  2895. type Body struct {
  2896. _ struct{} `type:"structure"`
  2897. // The content of the message, in HTML format. Use this for email clients that
  2898. // can process HTML. You can include clickable links, formatted text, and much
  2899. // more in an HTML message.
  2900. Html *Content `type:"structure"`
  2901. // The content of the message, in text format. Use this for text-based email
  2902. // clients, or clients on high-latency networks (such as mobile devices).
  2903. Text *Content `type:"structure"`
  2904. }
  2905. // String returns the string representation
  2906. func (s Body) String() string {
  2907. return awsutil.Prettify(s)
  2908. }
  2909. // GoString returns the string representation
  2910. func (s Body) GoString() string {
  2911. return s.String()
  2912. }
  2913. // Validate inspects the fields of the type to determine if they are valid.
  2914. func (s *Body) Validate() error {
  2915. invalidParams := request.ErrInvalidParams{Context: "Body"}
  2916. if s.Html != nil {
  2917. if err := s.Html.Validate(); err != nil {
  2918. invalidParams.AddNested("Html", err.(request.ErrInvalidParams))
  2919. }
  2920. }
  2921. if s.Text != nil {
  2922. if err := s.Text.Validate(); err != nil {
  2923. invalidParams.AddNested("Text", err.(request.ErrInvalidParams))
  2924. }
  2925. }
  2926. if invalidParams.Len() > 0 {
  2927. return invalidParams
  2928. }
  2929. return nil
  2930. }
  2931. // When included in a receipt rule, this action rejects the received email by
  2932. // returning a bounce response to the sender and, optionally, publishes a notification
  2933. // to Amazon Simple Notification Service (Amazon SNS).
  2934. //
  2935. // For information about sending a bounce message in response to a received
  2936. // email, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-bounce.html).
  2937. type BounceAction struct {
  2938. _ struct{} `type:"structure"`
  2939. // Human-readable text to include in the bounce message.
  2940. //
  2941. // Message is a required field
  2942. Message *string `type:"string" required:"true"`
  2943. // The email address of the sender of the bounced email. This is the address
  2944. // from which the bounce message will be sent.
  2945. //
  2946. // Sender is a required field
  2947. Sender *string `type:"string" required:"true"`
  2948. // The SMTP reply code, as defined by RFC 5321 (https://tools.ietf.org/html/rfc5321).
  2949. //
  2950. // SmtpReplyCode is a required field
  2951. SmtpReplyCode *string `type:"string" required:"true"`
  2952. // The SMTP enhanced status code, as defined by RFC 3463 (https://tools.ietf.org/html/rfc3463).
  2953. StatusCode *string `type:"string"`
  2954. // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the
  2955. // bounce action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  2956. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  2957. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  2958. TopicArn *string `type:"string"`
  2959. }
  2960. // String returns the string representation
  2961. func (s BounceAction) String() string {
  2962. return awsutil.Prettify(s)
  2963. }
  2964. // GoString returns the string representation
  2965. func (s BounceAction) GoString() string {
  2966. return s.String()
  2967. }
  2968. // Validate inspects the fields of the type to determine if they are valid.
  2969. func (s *BounceAction) Validate() error {
  2970. invalidParams := request.ErrInvalidParams{Context: "BounceAction"}
  2971. if s.Message == nil {
  2972. invalidParams.Add(request.NewErrParamRequired("Message"))
  2973. }
  2974. if s.Sender == nil {
  2975. invalidParams.Add(request.NewErrParamRequired("Sender"))
  2976. }
  2977. if s.SmtpReplyCode == nil {
  2978. invalidParams.Add(request.NewErrParamRequired("SmtpReplyCode"))
  2979. }
  2980. if invalidParams.Len() > 0 {
  2981. return invalidParams
  2982. }
  2983. return nil
  2984. }
  2985. // Recipient-related information to include in the Delivery Status Notification
  2986. // (DSN) when an email that Amazon SES receives on your behalf bounces.
  2987. //
  2988. // For information about receiving email through Amazon SES, see the Amazon
  2989. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html).
  2990. type BouncedRecipientInfo struct {
  2991. _ struct{} `type:"structure"`
  2992. // The reason for the bounce. You must provide either this parameter or RecipientDsnFields.
  2993. BounceType *string `type:"string" enum:"BounceType"`
  2994. // The email address of the recipient of the bounced email.
  2995. //
  2996. // Recipient is a required field
  2997. Recipient *string `type:"string" required:"true"`
  2998. // This parameter is used only for sending authorization. It is the ARN of the
  2999. // identity that is associated with the sending authorization policy that permits
  3000. // you to receive email for the recipient of the bounced email. For more information
  3001. // about sending authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  3002. RecipientArn *string `type:"string"`
  3003. // Recipient-related DSN fields, most of which would normally be filled in automatically
  3004. // when provided with a BounceType. You must provide either this parameter or
  3005. // BounceType.
  3006. RecipientDsnFields *RecipientDsnFields `type:"structure"`
  3007. }
  3008. // String returns the string representation
  3009. func (s BouncedRecipientInfo) String() string {
  3010. return awsutil.Prettify(s)
  3011. }
  3012. // GoString returns the string representation
  3013. func (s BouncedRecipientInfo) GoString() string {
  3014. return s.String()
  3015. }
  3016. // Validate inspects the fields of the type to determine if they are valid.
  3017. func (s *BouncedRecipientInfo) Validate() error {
  3018. invalidParams := request.ErrInvalidParams{Context: "BouncedRecipientInfo"}
  3019. if s.Recipient == nil {
  3020. invalidParams.Add(request.NewErrParamRequired("Recipient"))
  3021. }
  3022. if s.RecipientDsnFields != nil {
  3023. if err := s.RecipientDsnFields.Validate(); err != nil {
  3024. invalidParams.AddNested("RecipientDsnFields", err.(request.ErrInvalidParams))
  3025. }
  3026. }
  3027. if invalidParams.Len() > 0 {
  3028. return invalidParams
  3029. }
  3030. return nil
  3031. }
  3032. // Represents a request to create a receipt rule set by cloning an existing
  3033. // one. You use receipt rule sets to receive email with Amazon SES. For more
  3034. // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3035. type CloneReceiptRuleSetInput struct {
  3036. _ struct{} `type:"structure"`
  3037. // The name of the rule set to clone.
  3038. //
  3039. // OriginalRuleSetName is a required field
  3040. OriginalRuleSetName *string `type:"string" required:"true"`
  3041. // The name of the rule set to create. The name must:
  3042. //
  3043. // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores
  3044. // (_), or dashes (-).
  3045. //
  3046. // * Start and end with a letter or number.
  3047. //
  3048. // * Contain less than 64 characters.
  3049. //
  3050. // RuleSetName is a required field
  3051. RuleSetName *string `type:"string" required:"true"`
  3052. }
  3053. // String returns the string representation
  3054. func (s CloneReceiptRuleSetInput) String() string {
  3055. return awsutil.Prettify(s)
  3056. }
  3057. // GoString returns the string representation
  3058. func (s CloneReceiptRuleSetInput) GoString() string {
  3059. return s.String()
  3060. }
  3061. // Validate inspects the fields of the type to determine if they are valid.
  3062. func (s *CloneReceiptRuleSetInput) Validate() error {
  3063. invalidParams := request.ErrInvalidParams{Context: "CloneReceiptRuleSetInput"}
  3064. if s.OriginalRuleSetName == nil {
  3065. invalidParams.Add(request.NewErrParamRequired("OriginalRuleSetName"))
  3066. }
  3067. if s.RuleSetName == nil {
  3068. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3069. }
  3070. if invalidParams.Len() > 0 {
  3071. return invalidParams
  3072. }
  3073. return nil
  3074. }
  3075. // An empty element returned on a successful request.
  3076. type CloneReceiptRuleSetOutput struct {
  3077. _ struct{} `type:"structure"`
  3078. }
  3079. // String returns the string representation
  3080. func (s CloneReceiptRuleSetOutput) String() string {
  3081. return awsutil.Prettify(s)
  3082. }
  3083. // GoString returns the string representation
  3084. func (s CloneReceiptRuleSetOutput) GoString() string {
  3085. return s.String()
  3086. }
  3087. // Represents textual data, plus an optional character set specification.
  3088. //
  3089. // By default, the text must be 7-bit ASCII, due to the constraints of the SMTP
  3090. // protocol. If the text must contain any other characters, then you must also
  3091. // specify a character set. Examples include UTF-8, ISO-8859-1, and Shift_JIS.
  3092. type Content struct {
  3093. _ struct{} `type:"structure"`
  3094. // The character set of the content.
  3095. Charset *string `type:"string"`
  3096. // The textual data of the content.
  3097. //
  3098. // Data is a required field
  3099. Data *string `type:"string" required:"true"`
  3100. }
  3101. // String returns the string representation
  3102. func (s Content) String() string {
  3103. return awsutil.Prettify(s)
  3104. }
  3105. // GoString returns the string representation
  3106. func (s Content) GoString() string {
  3107. return s.String()
  3108. }
  3109. // Validate inspects the fields of the type to determine if they are valid.
  3110. func (s *Content) Validate() error {
  3111. invalidParams := request.ErrInvalidParams{Context: "Content"}
  3112. if s.Data == nil {
  3113. invalidParams.Add(request.NewErrParamRequired("Data"))
  3114. }
  3115. if invalidParams.Len() > 0 {
  3116. return invalidParams
  3117. }
  3118. return nil
  3119. }
  3120. // Represents a request to create a new IP address filter. You use IP address
  3121. // filters when you receive email with Amazon SES. For more information, see
  3122. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3123. type CreateReceiptFilterInput struct {
  3124. _ struct{} `type:"structure"`
  3125. // A data structure that describes the IP address filter to create, which consists
  3126. // of a name, an IP address range, and whether to allow or block mail from it.
  3127. //
  3128. // Filter is a required field
  3129. Filter *ReceiptFilter `type:"structure" required:"true"`
  3130. }
  3131. // String returns the string representation
  3132. func (s CreateReceiptFilterInput) String() string {
  3133. return awsutil.Prettify(s)
  3134. }
  3135. // GoString returns the string representation
  3136. func (s CreateReceiptFilterInput) GoString() string {
  3137. return s.String()
  3138. }
  3139. // Validate inspects the fields of the type to determine if they are valid.
  3140. func (s *CreateReceiptFilterInput) Validate() error {
  3141. invalidParams := request.ErrInvalidParams{Context: "CreateReceiptFilterInput"}
  3142. if s.Filter == nil {
  3143. invalidParams.Add(request.NewErrParamRequired("Filter"))
  3144. }
  3145. if s.Filter != nil {
  3146. if err := s.Filter.Validate(); err != nil {
  3147. invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
  3148. }
  3149. }
  3150. if invalidParams.Len() > 0 {
  3151. return invalidParams
  3152. }
  3153. return nil
  3154. }
  3155. // An empty element returned on a successful request.
  3156. type CreateReceiptFilterOutput struct {
  3157. _ struct{} `type:"structure"`
  3158. }
  3159. // String returns the string representation
  3160. func (s CreateReceiptFilterOutput) String() string {
  3161. return awsutil.Prettify(s)
  3162. }
  3163. // GoString returns the string representation
  3164. func (s CreateReceiptFilterOutput) GoString() string {
  3165. return s.String()
  3166. }
  3167. // Represents a request to create a receipt rule. You use receipt rules to receive
  3168. // email with Amazon SES. For more information, see the Amazon SES Developer
  3169. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3170. type CreateReceiptRuleInput struct {
  3171. _ struct{} `type:"structure"`
  3172. // The name of an existing rule after which the new rule will be placed. If
  3173. // this parameter is null, the new rule will be inserted at the beginning of
  3174. // the rule list.
  3175. After *string `type:"string"`
  3176. // A data structure that contains the specified rule's name, actions, recipients,
  3177. // domains, enabled status, scan status, and TLS policy.
  3178. //
  3179. // Rule is a required field
  3180. Rule *ReceiptRule `type:"structure" required:"true"`
  3181. // The name of the rule set to which to add the rule.
  3182. //
  3183. // RuleSetName is a required field
  3184. RuleSetName *string `type:"string" required:"true"`
  3185. }
  3186. // String returns the string representation
  3187. func (s CreateReceiptRuleInput) String() string {
  3188. return awsutil.Prettify(s)
  3189. }
  3190. // GoString returns the string representation
  3191. func (s CreateReceiptRuleInput) GoString() string {
  3192. return s.String()
  3193. }
  3194. // Validate inspects the fields of the type to determine if they are valid.
  3195. func (s *CreateReceiptRuleInput) Validate() error {
  3196. invalidParams := request.ErrInvalidParams{Context: "CreateReceiptRuleInput"}
  3197. if s.Rule == nil {
  3198. invalidParams.Add(request.NewErrParamRequired("Rule"))
  3199. }
  3200. if s.RuleSetName == nil {
  3201. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3202. }
  3203. if s.Rule != nil {
  3204. if err := s.Rule.Validate(); err != nil {
  3205. invalidParams.AddNested("Rule", err.(request.ErrInvalidParams))
  3206. }
  3207. }
  3208. if invalidParams.Len() > 0 {
  3209. return invalidParams
  3210. }
  3211. return nil
  3212. }
  3213. // An empty element returned on a successful request.
  3214. type CreateReceiptRuleOutput struct {
  3215. _ struct{} `type:"structure"`
  3216. }
  3217. // String returns the string representation
  3218. func (s CreateReceiptRuleOutput) String() string {
  3219. return awsutil.Prettify(s)
  3220. }
  3221. // GoString returns the string representation
  3222. func (s CreateReceiptRuleOutput) GoString() string {
  3223. return s.String()
  3224. }
  3225. // Represents a request to create an empty receipt rule set. You use receipt
  3226. // rule sets to receive email with Amazon SES. For more information, see the
  3227. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3228. type CreateReceiptRuleSetInput struct {
  3229. _ struct{} `type:"structure"`
  3230. // The name of the rule set to create. The name must:
  3231. //
  3232. // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores
  3233. // (_), or dashes (-).
  3234. //
  3235. // * Start and end with a letter or number.
  3236. //
  3237. // * Contain less than 64 characters.
  3238. //
  3239. // RuleSetName is a required field
  3240. RuleSetName *string `type:"string" required:"true"`
  3241. }
  3242. // String returns the string representation
  3243. func (s CreateReceiptRuleSetInput) String() string {
  3244. return awsutil.Prettify(s)
  3245. }
  3246. // GoString returns the string representation
  3247. func (s CreateReceiptRuleSetInput) GoString() string {
  3248. return s.String()
  3249. }
  3250. // Validate inspects the fields of the type to determine if they are valid.
  3251. func (s *CreateReceiptRuleSetInput) Validate() error {
  3252. invalidParams := request.ErrInvalidParams{Context: "CreateReceiptRuleSetInput"}
  3253. if s.RuleSetName == nil {
  3254. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3255. }
  3256. if invalidParams.Len() > 0 {
  3257. return invalidParams
  3258. }
  3259. return nil
  3260. }
  3261. // An empty element returned on a successful request.
  3262. type CreateReceiptRuleSetOutput struct {
  3263. _ struct{} `type:"structure"`
  3264. }
  3265. // String returns the string representation
  3266. func (s CreateReceiptRuleSetOutput) String() string {
  3267. return awsutil.Prettify(s)
  3268. }
  3269. // GoString returns the string representation
  3270. func (s CreateReceiptRuleSetOutput) GoString() string {
  3271. return s.String()
  3272. }
  3273. // Represents a request to delete one of your Amazon SES identities (an email
  3274. // address or domain).
  3275. type DeleteIdentityInput struct {
  3276. _ struct{} `type:"structure"`
  3277. // The identity to be removed from the list of identities for the AWS Account.
  3278. //
  3279. // Identity is a required field
  3280. Identity *string `type:"string" required:"true"`
  3281. }
  3282. // String returns the string representation
  3283. func (s DeleteIdentityInput) String() string {
  3284. return awsutil.Prettify(s)
  3285. }
  3286. // GoString returns the string representation
  3287. func (s DeleteIdentityInput) GoString() string {
  3288. return s.String()
  3289. }
  3290. // Validate inspects the fields of the type to determine if they are valid.
  3291. func (s *DeleteIdentityInput) Validate() error {
  3292. invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityInput"}
  3293. if s.Identity == nil {
  3294. invalidParams.Add(request.NewErrParamRequired("Identity"))
  3295. }
  3296. if invalidParams.Len() > 0 {
  3297. return invalidParams
  3298. }
  3299. return nil
  3300. }
  3301. // An empty element returned on a successful request.
  3302. type DeleteIdentityOutput struct {
  3303. _ struct{} `type:"structure"`
  3304. }
  3305. // String returns the string representation
  3306. func (s DeleteIdentityOutput) String() string {
  3307. return awsutil.Prettify(s)
  3308. }
  3309. // GoString returns the string representation
  3310. func (s DeleteIdentityOutput) GoString() string {
  3311. return s.String()
  3312. }
  3313. // Represents a request to delete a sending authorization policy for an identity.
  3314. // Sending authorization is an Amazon SES feature that enables you to authorize
  3315. // other senders to use your identities. For information, see the Amazon SES
  3316. // Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  3317. type DeleteIdentityPolicyInput struct {
  3318. _ struct{} `type:"structure"`
  3319. // The identity that is associated with the policy that you want to delete.
  3320. // You can specify the identity by using its name or by using its Amazon Resource
  3321. // Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  3322. //
  3323. // To successfully call this API, you must own the identity.
  3324. //
  3325. // Identity is a required field
  3326. Identity *string `type:"string" required:"true"`
  3327. // The name of the policy to be deleted.
  3328. //
  3329. // PolicyName is a required field
  3330. PolicyName *string `min:"1" type:"string" required:"true"`
  3331. }
  3332. // String returns the string representation
  3333. func (s DeleteIdentityPolicyInput) String() string {
  3334. return awsutil.Prettify(s)
  3335. }
  3336. // GoString returns the string representation
  3337. func (s DeleteIdentityPolicyInput) GoString() string {
  3338. return s.String()
  3339. }
  3340. // Validate inspects the fields of the type to determine if they are valid.
  3341. func (s *DeleteIdentityPolicyInput) Validate() error {
  3342. invalidParams := request.ErrInvalidParams{Context: "DeleteIdentityPolicyInput"}
  3343. if s.Identity == nil {
  3344. invalidParams.Add(request.NewErrParamRequired("Identity"))
  3345. }
  3346. if s.PolicyName == nil {
  3347. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  3348. }
  3349. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  3350. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  3351. }
  3352. if invalidParams.Len() > 0 {
  3353. return invalidParams
  3354. }
  3355. return nil
  3356. }
  3357. // An empty element returned on a successful request.
  3358. type DeleteIdentityPolicyOutput struct {
  3359. _ struct{} `type:"structure"`
  3360. }
  3361. // String returns the string representation
  3362. func (s DeleteIdentityPolicyOutput) String() string {
  3363. return awsutil.Prettify(s)
  3364. }
  3365. // GoString returns the string representation
  3366. func (s DeleteIdentityPolicyOutput) GoString() string {
  3367. return s.String()
  3368. }
  3369. // Represents a request to delete an IP address filter. You use IP address filters
  3370. // when you receive email with Amazon SES. For more information, see the Amazon
  3371. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3372. type DeleteReceiptFilterInput struct {
  3373. _ struct{} `type:"structure"`
  3374. // The name of the IP address filter to delete.
  3375. //
  3376. // FilterName is a required field
  3377. FilterName *string `type:"string" required:"true"`
  3378. }
  3379. // String returns the string representation
  3380. func (s DeleteReceiptFilterInput) String() string {
  3381. return awsutil.Prettify(s)
  3382. }
  3383. // GoString returns the string representation
  3384. func (s DeleteReceiptFilterInput) GoString() string {
  3385. return s.String()
  3386. }
  3387. // Validate inspects the fields of the type to determine if they are valid.
  3388. func (s *DeleteReceiptFilterInput) Validate() error {
  3389. invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptFilterInput"}
  3390. if s.FilterName == nil {
  3391. invalidParams.Add(request.NewErrParamRequired("FilterName"))
  3392. }
  3393. if invalidParams.Len() > 0 {
  3394. return invalidParams
  3395. }
  3396. return nil
  3397. }
  3398. // An empty element returned on a successful request.
  3399. type DeleteReceiptFilterOutput struct {
  3400. _ struct{} `type:"structure"`
  3401. }
  3402. // String returns the string representation
  3403. func (s DeleteReceiptFilterOutput) String() string {
  3404. return awsutil.Prettify(s)
  3405. }
  3406. // GoString returns the string representation
  3407. func (s DeleteReceiptFilterOutput) GoString() string {
  3408. return s.String()
  3409. }
  3410. // Represents a request to delete a receipt rule. You use receipt rules to receive
  3411. // email with Amazon SES. For more information, see the Amazon SES Developer
  3412. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3413. type DeleteReceiptRuleInput struct {
  3414. _ struct{} `type:"structure"`
  3415. // The name of the receipt rule to delete.
  3416. //
  3417. // RuleName is a required field
  3418. RuleName *string `type:"string" required:"true"`
  3419. // The name of the receipt rule set that contains the receipt rule to delete.
  3420. //
  3421. // RuleSetName is a required field
  3422. RuleSetName *string `type:"string" required:"true"`
  3423. }
  3424. // String returns the string representation
  3425. func (s DeleteReceiptRuleInput) String() string {
  3426. return awsutil.Prettify(s)
  3427. }
  3428. // GoString returns the string representation
  3429. func (s DeleteReceiptRuleInput) GoString() string {
  3430. return s.String()
  3431. }
  3432. // Validate inspects the fields of the type to determine if they are valid.
  3433. func (s *DeleteReceiptRuleInput) Validate() error {
  3434. invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptRuleInput"}
  3435. if s.RuleName == nil {
  3436. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  3437. }
  3438. if s.RuleSetName == nil {
  3439. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3440. }
  3441. if invalidParams.Len() > 0 {
  3442. return invalidParams
  3443. }
  3444. return nil
  3445. }
  3446. // An empty element returned on a successful request.
  3447. type DeleteReceiptRuleOutput struct {
  3448. _ struct{} `type:"structure"`
  3449. }
  3450. // String returns the string representation
  3451. func (s DeleteReceiptRuleOutput) String() string {
  3452. return awsutil.Prettify(s)
  3453. }
  3454. // GoString returns the string representation
  3455. func (s DeleteReceiptRuleOutput) GoString() string {
  3456. return s.String()
  3457. }
  3458. // Represents a request to delete a receipt rule set and all of the receipt
  3459. // rules it contains. You use receipt rule sets to receive email with Amazon
  3460. // SES. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3461. type DeleteReceiptRuleSetInput struct {
  3462. _ struct{} `type:"structure"`
  3463. // The name of the receipt rule set to delete.
  3464. //
  3465. // RuleSetName is a required field
  3466. RuleSetName *string `type:"string" required:"true"`
  3467. }
  3468. // String returns the string representation
  3469. func (s DeleteReceiptRuleSetInput) String() string {
  3470. return awsutil.Prettify(s)
  3471. }
  3472. // GoString returns the string representation
  3473. func (s DeleteReceiptRuleSetInput) GoString() string {
  3474. return s.String()
  3475. }
  3476. // Validate inspects the fields of the type to determine if they are valid.
  3477. func (s *DeleteReceiptRuleSetInput) Validate() error {
  3478. invalidParams := request.ErrInvalidParams{Context: "DeleteReceiptRuleSetInput"}
  3479. if s.RuleSetName == nil {
  3480. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3481. }
  3482. if invalidParams.Len() > 0 {
  3483. return invalidParams
  3484. }
  3485. return nil
  3486. }
  3487. // An empty element returned on a successful request.
  3488. type DeleteReceiptRuleSetOutput struct {
  3489. _ struct{} `type:"structure"`
  3490. }
  3491. // String returns the string representation
  3492. func (s DeleteReceiptRuleSetOutput) String() string {
  3493. return awsutil.Prettify(s)
  3494. }
  3495. // GoString returns the string representation
  3496. func (s DeleteReceiptRuleSetOutput) GoString() string {
  3497. return s.String()
  3498. }
  3499. // Represents a request to delete an email address from the list of email addresses
  3500. // you have attempted to verify under your AWS account.
  3501. type DeleteVerifiedEmailAddressInput struct {
  3502. _ struct{} `type:"structure"`
  3503. // An email address to be removed from the list of verified addresses.
  3504. //
  3505. // EmailAddress is a required field
  3506. EmailAddress *string `type:"string" required:"true"`
  3507. }
  3508. // String returns the string representation
  3509. func (s DeleteVerifiedEmailAddressInput) String() string {
  3510. return awsutil.Prettify(s)
  3511. }
  3512. // GoString returns the string representation
  3513. func (s DeleteVerifiedEmailAddressInput) GoString() string {
  3514. return s.String()
  3515. }
  3516. // Validate inspects the fields of the type to determine if they are valid.
  3517. func (s *DeleteVerifiedEmailAddressInput) Validate() error {
  3518. invalidParams := request.ErrInvalidParams{Context: "DeleteVerifiedEmailAddressInput"}
  3519. if s.EmailAddress == nil {
  3520. invalidParams.Add(request.NewErrParamRequired("EmailAddress"))
  3521. }
  3522. if invalidParams.Len() > 0 {
  3523. return invalidParams
  3524. }
  3525. return nil
  3526. }
  3527. type DeleteVerifiedEmailAddressOutput struct {
  3528. _ struct{} `type:"structure"`
  3529. }
  3530. // String returns the string representation
  3531. func (s DeleteVerifiedEmailAddressOutput) String() string {
  3532. return awsutil.Prettify(s)
  3533. }
  3534. // GoString returns the string representation
  3535. func (s DeleteVerifiedEmailAddressOutput) GoString() string {
  3536. return s.String()
  3537. }
  3538. // Represents a request to return the metadata and receipt rules for the receipt
  3539. // rule set that is currently active. You use receipt rule sets to receive email
  3540. // with Amazon SES. For more information, see the Amazon SES Developer Guide
  3541. // (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3542. type DescribeActiveReceiptRuleSetInput struct {
  3543. _ struct{} `type:"structure"`
  3544. }
  3545. // String returns the string representation
  3546. func (s DescribeActiveReceiptRuleSetInput) String() string {
  3547. return awsutil.Prettify(s)
  3548. }
  3549. // GoString returns the string representation
  3550. func (s DescribeActiveReceiptRuleSetInput) GoString() string {
  3551. return s.String()
  3552. }
  3553. // Represents the metadata and receipt rules for the receipt rule set that is
  3554. // currently active.
  3555. type DescribeActiveReceiptRuleSetOutput struct {
  3556. _ struct{} `type:"structure"`
  3557. // The metadata for the currently active receipt rule set. The metadata consists
  3558. // of the rule set name and a timestamp of when the rule set was created.
  3559. Metadata *ReceiptRuleSetMetadata `type:"structure"`
  3560. // The receipt rules that belong to the active rule set.
  3561. Rules []*ReceiptRule `type:"list"`
  3562. }
  3563. // String returns the string representation
  3564. func (s DescribeActiveReceiptRuleSetOutput) String() string {
  3565. return awsutil.Prettify(s)
  3566. }
  3567. // GoString returns the string representation
  3568. func (s DescribeActiveReceiptRuleSetOutput) GoString() string {
  3569. return s.String()
  3570. }
  3571. // Represents a request to return the details of a receipt rule. You use receipt
  3572. // rules to receive email with Amazon SES. For more information, see the Amazon
  3573. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3574. type DescribeReceiptRuleInput struct {
  3575. _ struct{} `type:"structure"`
  3576. // The name of the receipt rule.
  3577. //
  3578. // RuleName is a required field
  3579. RuleName *string `type:"string" required:"true"`
  3580. // The name of the receipt rule set to which the receipt rule belongs.
  3581. //
  3582. // RuleSetName is a required field
  3583. RuleSetName *string `type:"string" required:"true"`
  3584. }
  3585. // String returns the string representation
  3586. func (s DescribeReceiptRuleInput) String() string {
  3587. return awsutil.Prettify(s)
  3588. }
  3589. // GoString returns the string representation
  3590. func (s DescribeReceiptRuleInput) GoString() string {
  3591. return s.String()
  3592. }
  3593. // Validate inspects the fields of the type to determine if they are valid.
  3594. func (s *DescribeReceiptRuleInput) Validate() error {
  3595. invalidParams := request.ErrInvalidParams{Context: "DescribeReceiptRuleInput"}
  3596. if s.RuleName == nil {
  3597. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  3598. }
  3599. if s.RuleSetName == nil {
  3600. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3601. }
  3602. if invalidParams.Len() > 0 {
  3603. return invalidParams
  3604. }
  3605. return nil
  3606. }
  3607. // Represents the details of a receipt rule.
  3608. type DescribeReceiptRuleOutput struct {
  3609. _ struct{} `type:"structure"`
  3610. // A data structure that contains the specified receipt rule's name, actions,
  3611. // recipients, domains, enabled status, scan status, and Transport Layer Security
  3612. // (TLS) policy.
  3613. Rule *ReceiptRule `type:"structure"`
  3614. }
  3615. // String returns the string representation
  3616. func (s DescribeReceiptRuleOutput) String() string {
  3617. return awsutil.Prettify(s)
  3618. }
  3619. // GoString returns the string representation
  3620. func (s DescribeReceiptRuleOutput) GoString() string {
  3621. return s.String()
  3622. }
  3623. // Represents a request to return the details of a receipt rule set. You use
  3624. // receipt rule sets to receive email with Amazon SES. For more information,
  3625. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  3626. type DescribeReceiptRuleSetInput struct {
  3627. _ struct{} `type:"structure"`
  3628. // The name of the receipt rule set to describe.
  3629. //
  3630. // RuleSetName is a required field
  3631. RuleSetName *string `type:"string" required:"true"`
  3632. }
  3633. // String returns the string representation
  3634. func (s DescribeReceiptRuleSetInput) String() string {
  3635. return awsutil.Prettify(s)
  3636. }
  3637. // GoString returns the string representation
  3638. func (s DescribeReceiptRuleSetInput) GoString() string {
  3639. return s.String()
  3640. }
  3641. // Validate inspects the fields of the type to determine if they are valid.
  3642. func (s *DescribeReceiptRuleSetInput) Validate() error {
  3643. invalidParams := request.ErrInvalidParams{Context: "DescribeReceiptRuleSetInput"}
  3644. if s.RuleSetName == nil {
  3645. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  3646. }
  3647. if invalidParams.Len() > 0 {
  3648. return invalidParams
  3649. }
  3650. return nil
  3651. }
  3652. // Represents the details of the specified receipt rule set.
  3653. type DescribeReceiptRuleSetOutput struct {
  3654. _ struct{} `type:"structure"`
  3655. // The metadata for the receipt rule set, which consists of the rule set name
  3656. // and the timestamp of when the rule set was created.
  3657. Metadata *ReceiptRuleSetMetadata `type:"structure"`
  3658. // A list of the receipt rules that belong to the specified receipt rule set.
  3659. Rules []*ReceiptRule `type:"list"`
  3660. }
  3661. // String returns the string representation
  3662. func (s DescribeReceiptRuleSetOutput) String() string {
  3663. return awsutil.Prettify(s)
  3664. }
  3665. // GoString returns the string representation
  3666. func (s DescribeReceiptRuleSetOutput) GoString() string {
  3667. return s.String()
  3668. }
  3669. // Represents the destination of the message, consisting of To:, CC:, and BCC:
  3670. // fields.
  3671. //
  3672. // By default, the string must be 7-bit ASCII. If the text must contain any
  3673. // other characters, then you must use MIME encoded-word syntax (RFC 2047) instead
  3674. // of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=.
  3675. // For more information, see RFC 2047 (http://tools.ietf.org/html/rfc2047).
  3676. type Destination struct {
  3677. _ struct{} `type:"structure"`
  3678. // The BCC: field(s) of the message.
  3679. BccAddresses []*string `type:"list"`
  3680. // The CC: field(s) of the message.
  3681. CcAddresses []*string `type:"list"`
  3682. // The To: field(s) of the message.
  3683. ToAddresses []*string `type:"list"`
  3684. }
  3685. // String returns the string representation
  3686. func (s Destination) String() string {
  3687. return awsutil.Prettify(s)
  3688. }
  3689. // GoString returns the string representation
  3690. func (s Destination) GoString() string {
  3691. return s.String()
  3692. }
  3693. // Additional X-headers to include in the Delivery Status Notification (DSN)
  3694. // when an email that Amazon SES receives on your behalf bounces.
  3695. //
  3696. // For information about receiving email through Amazon SES, see the Amazon
  3697. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html).
  3698. type ExtensionField struct {
  3699. _ struct{} `type:"structure"`
  3700. // The name of the header to add. Must be between 1 and 50 characters, inclusive,
  3701. // and consist of alphanumeric (a-z, A-Z, 0-9) characters and dashes only.
  3702. //
  3703. // Name is a required field
  3704. Name *string `type:"string" required:"true"`
  3705. // The value of the header to add. Must be less than 2048 characters, and must
  3706. // not contain newline characters ("\r" or "\n").
  3707. //
  3708. // Value is a required field
  3709. Value *string `type:"string" required:"true"`
  3710. }
  3711. // String returns the string representation
  3712. func (s ExtensionField) String() string {
  3713. return awsutil.Prettify(s)
  3714. }
  3715. // GoString returns the string representation
  3716. func (s ExtensionField) GoString() string {
  3717. return s.String()
  3718. }
  3719. // Validate inspects the fields of the type to determine if they are valid.
  3720. func (s *ExtensionField) Validate() error {
  3721. invalidParams := request.ErrInvalidParams{Context: "ExtensionField"}
  3722. if s.Name == nil {
  3723. invalidParams.Add(request.NewErrParamRequired("Name"))
  3724. }
  3725. if s.Value == nil {
  3726. invalidParams.Add(request.NewErrParamRequired("Value"))
  3727. }
  3728. if invalidParams.Len() > 0 {
  3729. return invalidParams
  3730. }
  3731. return nil
  3732. }
  3733. // Represents a request for the status of Amazon SES Easy DKIM signing for an
  3734. // identity. For domain identities, this request also returns the DKIM tokens
  3735. // that are required for Easy DKIM signing, and whether Amazon SES successfully
  3736. // verified that these tokens were published. For more information about Easy
  3737. // DKIM, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html).
  3738. type GetIdentityDkimAttributesInput struct {
  3739. _ struct{} `type:"structure"`
  3740. // A list of one or more verified identities - email addresses, domains, or
  3741. // both.
  3742. //
  3743. // Identities is a required field
  3744. Identities []*string `type:"list" required:"true"`
  3745. }
  3746. // String returns the string representation
  3747. func (s GetIdentityDkimAttributesInput) String() string {
  3748. return awsutil.Prettify(s)
  3749. }
  3750. // GoString returns the string representation
  3751. func (s GetIdentityDkimAttributesInput) GoString() string {
  3752. return s.String()
  3753. }
  3754. // Validate inspects the fields of the type to determine if they are valid.
  3755. func (s *GetIdentityDkimAttributesInput) Validate() error {
  3756. invalidParams := request.ErrInvalidParams{Context: "GetIdentityDkimAttributesInput"}
  3757. if s.Identities == nil {
  3758. invalidParams.Add(request.NewErrParamRequired("Identities"))
  3759. }
  3760. if invalidParams.Len() > 0 {
  3761. return invalidParams
  3762. }
  3763. return nil
  3764. }
  3765. // Represents the status of Amazon SES Easy DKIM signing for an identity. For
  3766. // domain identities, this response also contains the DKIM tokens that are required
  3767. // for Easy DKIM signing, and whether Amazon SES successfully verified that
  3768. // these tokens were published.
  3769. type GetIdentityDkimAttributesOutput struct {
  3770. _ struct{} `type:"structure"`
  3771. // The DKIM attributes for an email address or a domain.
  3772. //
  3773. // DkimAttributes is a required field
  3774. DkimAttributes map[string]*IdentityDkimAttributes `type:"map" required:"true"`
  3775. }
  3776. // String returns the string representation
  3777. func (s GetIdentityDkimAttributesOutput) String() string {
  3778. return awsutil.Prettify(s)
  3779. }
  3780. // GoString returns the string representation
  3781. func (s GetIdentityDkimAttributesOutput) GoString() string {
  3782. return s.String()
  3783. }
  3784. // Represents a request to return the Amazon SES custom MAIL FROM attributes
  3785. // for a list of identities. For information about using a custom MAIL FROM
  3786. // domain, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html).
  3787. type GetIdentityMailFromDomainAttributesInput struct {
  3788. _ struct{} `type:"structure"`
  3789. // A list of one or more identities.
  3790. //
  3791. // Identities is a required field
  3792. Identities []*string `type:"list" required:"true"`
  3793. }
  3794. // String returns the string representation
  3795. func (s GetIdentityMailFromDomainAttributesInput) String() string {
  3796. return awsutil.Prettify(s)
  3797. }
  3798. // GoString returns the string representation
  3799. func (s GetIdentityMailFromDomainAttributesInput) GoString() string {
  3800. return s.String()
  3801. }
  3802. // Validate inspects the fields of the type to determine if they are valid.
  3803. func (s *GetIdentityMailFromDomainAttributesInput) Validate() error {
  3804. invalidParams := request.ErrInvalidParams{Context: "GetIdentityMailFromDomainAttributesInput"}
  3805. if s.Identities == nil {
  3806. invalidParams.Add(request.NewErrParamRequired("Identities"))
  3807. }
  3808. if invalidParams.Len() > 0 {
  3809. return invalidParams
  3810. }
  3811. return nil
  3812. }
  3813. // Represents the custom MAIL FROM attributes for a list of identities.
  3814. type GetIdentityMailFromDomainAttributesOutput struct {
  3815. _ struct{} `type:"structure"`
  3816. // A map of identities to custom MAIL FROM attributes.
  3817. //
  3818. // MailFromDomainAttributes is a required field
  3819. MailFromDomainAttributes map[string]*IdentityMailFromDomainAttributes `type:"map" required:"true"`
  3820. }
  3821. // String returns the string representation
  3822. func (s GetIdentityMailFromDomainAttributesOutput) String() string {
  3823. return awsutil.Prettify(s)
  3824. }
  3825. // GoString returns the string representation
  3826. func (s GetIdentityMailFromDomainAttributesOutput) GoString() string {
  3827. return s.String()
  3828. }
  3829. // Represents a request to return the notification attributes for a list of
  3830. // identities you verified with Amazon SES. For information about Amazon SES
  3831. // notifications, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html).
  3832. type GetIdentityNotificationAttributesInput struct {
  3833. _ struct{} `type:"structure"`
  3834. // A list of one or more identities. You can specify an identity by using its
  3835. // name or by using its Amazon Resource Name (ARN). Examples: user@example.com,
  3836. // example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  3837. //
  3838. // Identities is a required field
  3839. Identities []*string `type:"list" required:"true"`
  3840. }
  3841. // String returns the string representation
  3842. func (s GetIdentityNotificationAttributesInput) String() string {
  3843. return awsutil.Prettify(s)
  3844. }
  3845. // GoString returns the string representation
  3846. func (s GetIdentityNotificationAttributesInput) GoString() string {
  3847. return s.String()
  3848. }
  3849. // Validate inspects the fields of the type to determine if they are valid.
  3850. func (s *GetIdentityNotificationAttributesInput) Validate() error {
  3851. invalidParams := request.ErrInvalidParams{Context: "GetIdentityNotificationAttributesInput"}
  3852. if s.Identities == nil {
  3853. invalidParams.Add(request.NewErrParamRequired("Identities"))
  3854. }
  3855. if invalidParams.Len() > 0 {
  3856. return invalidParams
  3857. }
  3858. return nil
  3859. }
  3860. // Represents the notification attributes for a list of identities.
  3861. type GetIdentityNotificationAttributesOutput struct {
  3862. _ struct{} `type:"structure"`
  3863. // A map of Identity to IdentityNotificationAttributes.
  3864. //
  3865. // NotificationAttributes is a required field
  3866. NotificationAttributes map[string]*IdentityNotificationAttributes `type:"map" required:"true"`
  3867. }
  3868. // String returns the string representation
  3869. func (s GetIdentityNotificationAttributesOutput) String() string {
  3870. return awsutil.Prettify(s)
  3871. }
  3872. // GoString returns the string representation
  3873. func (s GetIdentityNotificationAttributesOutput) GoString() string {
  3874. return s.String()
  3875. }
  3876. // Represents a request to return the requested sending authorization policies
  3877. // for an identity. Sending authorization is an Amazon SES feature that enables
  3878. // you to authorize other senders to use your identities. For information, see
  3879. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  3880. type GetIdentityPoliciesInput struct {
  3881. _ struct{} `type:"structure"`
  3882. // The identity for which the policies will be retrieved. You can specify an
  3883. // identity by using its name or by using its Amazon Resource Name (ARN). Examples:
  3884. // user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  3885. //
  3886. // To successfully call this API, you must own the identity.
  3887. //
  3888. // Identity is a required field
  3889. Identity *string `type:"string" required:"true"`
  3890. // A list of the names of policies to be retrieved. You can retrieve a maximum
  3891. // of 20 policies at a time. If you do not know the names of the policies that
  3892. // are attached to the identity, you can use ListIdentityPolicies.
  3893. //
  3894. // PolicyNames is a required field
  3895. PolicyNames []*string `type:"list" required:"true"`
  3896. }
  3897. // String returns the string representation
  3898. func (s GetIdentityPoliciesInput) String() string {
  3899. return awsutil.Prettify(s)
  3900. }
  3901. // GoString returns the string representation
  3902. func (s GetIdentityPoliciesInput) GoString() string {
  3903. return s.String()
  3904. }
  3905. // Validate inspects the fields of the type to determine if they are valid.
  3906. func (s *GetIdentityPoliciesInput) Validate() error {
  3907. invalidParams := request.ErrInvalidParams{Context: "GetIdentityPoliciesInput"}
  3908. if s.Identity == nil {
  3909. invalidParams.Add(request.NewErrParamRequired("Identity"))
  3910. }
  3911. if s.PolicyNames == nil {
  3912. invalidParams.Add(request.NewErrParamRequired("PolicyNames"))
  3913. }
  3914. if invalidParams.Len() > 0 {
  3915. return invalidParams
  3916. }
  3917. return nil
  3918. }
  3919. // Represents the requested sending authorization policies.
  3920. type GetIdentityPoliciesOutput struct {
  3921. _ struct{} `type:"structure"`
  3922. // A map of policy names to policies.
  3923. //
  3924. // Policies is a required field
  3925. Policies map[string]*string `type:"map" required:"true"`
  3926. }
  3927. // String returns the string representation
  3928. func (s GetIdentityPoliciesOutput) String() string {
  3929. return awsutil.Prettify(s)
  3930. }
  3931. // GoString returns the string representation
  3932. func (s GetIdentityPoliciesOutput) GoString() string {
  3933. return s.String()
  3934. }
  3935. // Represents a request to return the Amazon SES verification status of a list
  3936. // of identities. For domain identities, this request also returns the verification
  3937. // token. For information about verifying identities with Amazon SES, see the
  3938. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html).
  3939. type GetIdentityVerificationAttributesInput struct {
  3940. _ struct{} `type:"structure"`
  3941. // A list of identities.
  3942. //
  3943. // Identities is a required field
  3944. Identities []*string `type:"list" required:"true"`
  3945. }
  3946. // String returns the string representation
  3947. func (s GetIdentityVerificationAttributesInput) String() string {
  3948. return awsutil.Prettify(s)
  3949. }
  3950. // GoString returns the string representation
  3951. func (s GetIdentityVerificationAttributesInput) GoString() string {
  3952. return s.String()
  3953. }
  3954. // Validate inspects the fields of the type to determine if they are valid.
  3955. func (s *GetIdentityVerificationAttributesInput) Validate() error {
  3956. invalidParams := request.ErrInvalidParams{Context: "GetIdentityVerificationAttributesInput"}
  3957. if s.Identities == nil {
  3958. invalidParams.Add(request.NewErrParamRequired("Identities"))
  3959. }
  3960. if invalidParams.Len() > 0 {
  3961. return invalidParams
  3962. }
  3963. return nil
  3964. }
  3965. // The Amazon SES verification status of a list of identities. For domain identities,
  3966. // this response also contains the verification token.
  3967. type GetIdentityVerificationAttributesOutput struct {
  3968. _ struct{} `type:"structure"`
  3969. // A map of Identities to IdentityVerificationAttributes objects.
  3970. //
  3971. // VerificationAttributes is a required field
  3972. VerificationAttributes map[string]*IdentityVerificationAttributes `type:"map" required:"true"`
  3973. }
  3974. // String returns the string representation
  3975. func (s GetIdentityVerificationAttributesOutput) String() string {
  3976. return awsutil.Prettify(s)
  3977. }
  3978. // GoString returns the string representation
  3979. func (s GetIdentityVerificationAttributesOutput) GoString() string {
  3980. return s.String()
  3981. }
  3982. type GetSendQuotaInput struct {
  3983. _ struct{} `type:"structure"`
  3984. }
  3985. // String returns the string representation
  3986. func (s GetSendQuotaInput) String() string {
  3987. return awsutil.Prettify(s)
  3988. }
  3989. // GoString returns the string representation
  3990. func (s GetSendQuotaInput) GoString() string {
  3991. return s.String()
  3992. }
  3993. // Represents your Amazon SES daily sending quota, maximum send rate, and the
  3994. // number of emails you have sent in the last 24 hours.
  3995. type GetSendQuotaOutput struct {
  3996. _ struct{} `type:"structure"`
  3997. // The maximum number of emails the user is allowed to send in a 24-hour interval.
  3998. // A value of -1 signifies an unlimited quota.
  3999. Max24HourSend *float64 `type:"double"`
  4000. // The maximum number of emails that Amazon SES can accept from the user's account
  4001. // per second.
  4002. //
  4003. // The rate at which Amazon SES accepts the user's messages might be less than
  4004. // the maximum send rate.
  4005. MaxSendRate *float64 `type:"double"`
  4006. // The number of emails sent during the previous 24 hours.
  4007. SentLast24Hours *float64 `type:"double"`
  4008. }
  4009. // String returns the string representation
  4010. func (s GetSendQuotaOutput) String() string {
  4011. return awsutil.Prettify(s)
  4012. }
  4013. // GoString returns the string representation
  4014. func (s GetSendQuotaOutput) GoString() string {
  4015. return s.String()
  4016. }
  4017. type GetSendStatisticsInput struct {
  4018. _ struct{} `type:"structure"`
  4019. }
  4020. // String returns the string representation
  4021. func (s GetSendStatisticsInput) String() string {
  4022. return awsutil.Prettify(s)
  4023. }
  4024. // GoString returns the string representation
  4025. func (s GetSendStatisticsInput) GoString() string {
  4026. return s.String()
  4027. }
  4028. // Represents a list of data points. This list contains aggregated data from
  4029. // the previous two weeks of your sending activity with Amazon SES.
  4030. type GetSendStatisticsOutput struct {
  4031. _ struct{} `type:"structure"`
  4032. // A list of data points, each of which represents 15 minutes of activity.
  4033. SendDataPoints []*SendDataPoint `type:"list"`
  4034. }
  4035. // String returns the string representation
  4036. func (s GetSendStatisticsOutput) String() string {
  4037. return awsutil.Prettify(s)
  4038. }
  4039. // GoString returns the string representation
  4040. func (s GetSendStatisticsOutput) GoString() string {
  4041. return s.String()
  4042. }
  4043. // Represents the DKIM attributes of a verified email address or a domain.
  4044. type IdentityDkimAttributes struct {
  4045. _ struct{} `type:"structure"`
  4046. // True if DKIM signing is enabled for email sent from the identity; false otherwise.
  4047. //
  4048. // DkimEnabled is a required field
  4049. DkimEnabled *bool `type:"boolean" required:"true"`
  4050. // A set of character strings that represent the domain's identity. Using these
  4051. // tokens, you will need to create DNS CNAME records that point to DKIM public
  4052. // keys hosted by Amazon SES. Amazon Web Services will eventually detect that
  4053. // you have updated your DNS records; this detection process may take up to
  4054. // 72 hours. Upon successful detection, Amazon SES will be able to DKIM-sign
  4055. // email originating from that domain. (This only applies to domain identities,
  4056. // not email address identities.)
  4057. //
  4058. // For more information about creating DNS records using DKIM tokens, go to
  4059. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html).
  4060. DkimTokens []*string `type:"list"`
  4061. // Describes whether Amazon SES has successfully verified the DKIM DNS records
  4062. // (tokens) published in the domain name's DNS. (This only applies to domain
  4063. // identities, not email address identities.)
  4064. //
  4065. // DkimVerificationStatus is a required field
  4066. DkimVerificationStatus *string `type:"string" required:"true" enum:"VerificationStatus"`
  4067. }
  4068. // String returns the string representation
  4069. func (s IdentityDkimAttributes) String() string {
  4070. return awsutil.Prettify(s)
  4071. }
  4072. // GoString returns the string representation
  4073. func (s IdentityDkimAttributes) GoString() string {
  4074. return s.String()
  4075. }
  4076. // Represents the custom MAIL FROM domain attributes of a verified identity
  4077. // (email address or domain).
  4078. type IdentityMailFromDomainAttributes struct {
  4079. _ struct{} `type:"structure"`
  4080. // The action that Amazon SES takes if it cannot successfully read the required
  4081. // MX record when you send an email. A value of UseDefaultValue indicates that
  4082. // if Amazon SES cannot read the required MX record, it uses amazonses.com (or
  4083. // a subdomain of that) as the MAIL FROM domain. A value of RejectMessage indicates
  4084. // that if Amazon SES cannot read the required MX record, Amazon SES returns
  4085. // a MailFromDomainNotVerified error and does not send the email.
  4086. //
  4087. // The custom MAIL FROM setup states that result in this behavior are Pending,
  4088. // Failed, and TemporaryFailure.
  4089. //
  4090. // BehaviorOnMXFailure is a required field
  4091. BehaviorOnMXFailure *string `type:"string" required:"true" enum:"BehaviorOnMXFailure"`
  4092. // The custom MAIL FROM domain that the identity is configured to use.
  4093. //
  4094. // MailFromDomain is a required field
  4095. MailFromDomain *string `type:"string" required:"true"`
  4096. // The state that indicates whether Amazon SES has successfully read the MX
  4097. // record required for custom MAIL FROM domain setup. If the state is Success,
  4098. // Amazon SES uses the specified custom MAIL FROM domain when the verified identity
  4099. // sends an email. All other states indicate that Amazon SES takes the action
  4100. // described by BehaviorOnMXFailure.
  4101. //
  4102. // MailFromDomainStatus is a required field
  4103. MailFromDomainStatus *string `type:"string" required:"true" enum:"CustomMailFromStatus"`
  4104. }
  4105. // String returns the string representation
  4106. func (s IdentityMailFromDomainAttributes) String() string {
  4107. return awsutil.Prettify(s)
  4108. }
  4109. // GoString returns the string representation
  4110. func (s IdentityMailFromDomainAttributes) GoString() string {
  4111. return s.String()
  4112. }
  4113. // Represents the notification attributes of an identity, including whether
  4114. // an identity has Amazon Simple Notification Service (Amazon SNS) topics set
  4115. // for bounce, complaint, and/or delivery notifications, and whether feedback
  4116. // forwarding is enabled for bounce and complaint notifications.
  4117. type IdentityNotificationAttributes struct {
  4118. _ struct{} `type:"structure"`
  4119. // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will
  4120. // publish bounce notifications.
  4121. //
  4122. // BounceTopic is a required field
  4123. BounceTopic *string `type:"string" required:"true"`
  4124. // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will
  4125. // publish complaint notifications.
  4126. //
  4127. // ComplaintTopic is a required field
  4128. ComplaintTopic *string `type:"string" required:"true"`
  4129. // The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will
  4130. // publish delivery notifications.
  4131. //
  4132. // DeliveryTopic is a required field
  4133. DeliveryTopic *string `type:"string" required:"true"`
  4134. // Describes whether Amazon SES will forward bounce and complaint notifications
  4135. // as email. true indicates that Amazon SES will forward bounce and complaint
  4136. // notifications as email, while false indicates that bounce and complaint notifications
  4137. // will be published only to the specified bounce and complaint Amazon SNS topics.
  4138. //
  4139. // ForwardingEnabled is a required field
  4140. ForwardingEnabled *bool `type:"boolean" required:"true"`
  4141. // Describes whether Amazon SES includes the original email headers in Amazon
  4142. // SNS notifications of type Bounce. A value of true specifies that Amazon SES
  4143. // will include headers in bounce notifications, and a value of false specifies
  4144. // that Amazon SES will not include headers in bounce notifications.
  4145. HeadersInBounceNotificationsEnabled *bool `type:"boolean"`
  4146. // Describes whether Amazon SES includes the original email headers in Amazon
  4147. // SNS notifications of type Complaint. A value of true specifies that Amazon
  4148. // SES will include headers in complaint notifications, and a value of false
  4149. // specifies that Amazon SES will not include headers in complaint notifications.
  4150. HeadersInComplaintNotificationsEnabled *bool `type:"boolean"`
  4151. // Describes whether Amazon SES includes the original email headers in Amazon
  4152. // SNS notifications of type Delivery. A value of true specifies that Amazon
  4153. // SES will include headers in delivery notifications, and a value of false
  4154. // specifies that Amazon SES will not include headers in delivery notifications.
  4155. HeadersInDeliveryNotificationsEnabled *bool `type:"boolean"`
  4156. }
  4157. // String returns the string representation
  4158. func (s IdentityNotificationAttributes) String() string {
  4159. return awsutil.Prettify(s)
  4160. }
  4161. // GoString returns the string representation
  4162. func (s IdentityNotificationAttributes) GoString() string {
  4163. return s.String()
  4164. }
  4165. // Represents the verification attributes of a single identity.
  4166. type IdentityVerificationAttributes struct {
  4167. _ struct{} `type:"structure"`
  4168. // The verification status of the identity: "Pending", "Success", "Failed",
  4169. // or "TemporaryFailure".
  4170. //
  4171. // VerificationStatus is a required field
  4172. VerificationStatus *string `type:"string" required:"true" enum:"VerificationStatus"`
  4173. // The verification token for a domain identity. Null for email address identities.
  4174. VerificationToken *string `type:"string"`
  4175. }
  4176. // String returns the string representation
  4177. func (s IdentityVerificationAttributes) String() string {
  4178. return awsutil.Prettify(s)
  4179. }
  4180. // GoString returns the string representation
  4181. func (s IdentityVerificationAttributes) GoString() string {
  4182. return s.String()
  4183. }
  4184. // When included in a receipt rule, this action calls an AWS Lambda function
  4185. // and, optionally, publishes a notification to Amazon Simple Notification Service
  4186. // (Amazon SNS).
  4187. //
  4188. // To enable Amazon SES to call your AWS Lambda function or to publish to an
  4189. // Amazon SNS topic of another account, Amazon SES must have permission to access
  4190. // those resources. For information about giving permissions, see the Amazon
  4191. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  4192. //
  4193. // For information about using AWS Lambda actions in receipt rules, see the
  4194. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-lambda.html).
  4195. type LambdaAction struct {
  4196. _ struct{} `type:"structure"`
  4197. // The Amazon Resource Name (ARN) of the AWS Lambda function. An example of
  4198. // an AWS Lambda function ARN is arn:aws:lambda:us-west-2:account-id:function:MyFunction.
  4199. // For more information about AWS Lambda, see the AWS Lambda Developer Guide
  4200. // (http://docs.aws.amazon.com/lambda/latest/dg/welcome.html).
  4201. //
  4202. // FunctionArn is a required field
  4203. FunctionArn *string `type:"string" required:"true"`
  4204. // The invocation type of the AWS Lambda function. An invocation type of RequestResponse
  4205. // means that the execution of the function will immediately result in a response,
  4206. // and a value of Event means that the function will be invoked asynchronously.
  4207. // The default value is Event. For information about AWS Lambda invocation types,
  4208. // see the AWS Lambda Developer Guide (http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html).
  4209. //
  4210. // There is a 30-second timeout on RequestResponse invocations. You should use
  4211. // Event invocation in most cases. Use RequestResponse only when you want to
  4212. // make a mail flow decision, such as whether to stop the receipt rule or the
  4213. // receipt rule set.
  4214. InvocationType *string `type:"string" enum:"InvocationType"`
  4215. // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the
  4216. // Lambda action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  4217. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  4218. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  4219. TopicArn *string `type:"string"`
  4220. }
  4221. // String returns the string representation
  4222. func (s LambdaAction) String() string {
  4223. return awsutil.Prettify(s)
  4224. }
  4225. // GoString returns the string representation
  4226. func (s LambdaAction) GoString() string {
  4227. return s.String()
  4228. }
  4229. // Validate inspects the fields of the type to determine if they are valid.
  4230. func (s *LambdaAction) Validate() error {
  4231. invalidParams := request.ErrInvalidParams{Context: "LambdaAction"}
  4232. if s.FunctionArn == nil {
  4233. invalidParams.Add(request.NewErrParamRequired("FunctionArn"))
  4234. }
  4235. if invalidParams.Len() > 0 {
  4236. return invalidParams
  4237. }
  4238. return nil
  4239. }
  4240. // Represents a request to return a list of all identities (email addresses
  4241. // and domains) that you have attempted to verify under your AWS account, regardless
  4242. // of verification status.
  4243. type ListIdentitiesInput struct {
  4244. _ struct{} `type:"structure"`
  4245. // The type of the identities to list. Possible values are "EmailAddress" and
  4246. // "Domain". If this parameter is omitted, then all identities will be listed.
  4247. IdentityType *string `type:"string" enum:"IdentityType"`
  4248. // The maximum number of identities per page. Possible values are 1-1000 inclusive.
  4249. MaxItems *int64 `type:"integer"`
  4250. // The token to use for pagination.
  4251. NextToken *string `type:"string"`
  4252. }
  4253. // String returns the string representation
  4254. func (s ListIdentitiesInput) String() string {
  4255. return awsutil.Prettify(s)
  4256. }
  4257. // GoString returns the string representation
  4258. func (s ListIdentitiesInput) GoString() string {
  4259. return s.String()
  4260. }
  4261. // A list of all identities that you have attempted to verify under your AWS
  4262. // account, regardless of verification status.
  4263. type ListIdentitiesOutput struct {
  4264. _ struct{} `type:"structure"`
  4265. // A list of identities.
  4266. //
  4267. // Identities is a required field
  4268. Identities []*string `type:"list" required:"true"`
  4269. // The token used for pagination.
  4270. NextToken *string `type:"string"`
  4271. }
  4272. // String returns the string representation
  4273. func (s ListIdentitiesOutput) String() string {
  4274. return awsutil.Prettify(s)
  4275. }
  4276. // GoString returns the string representation
  4277. func (s ListIdentitiesOutput) GoString() string {
  4278. return s.String()
  4279. }
  4280. // Represents a request to return a list of sending authorization policies that
  4281. // are attached to an identity. Sending authorization is an Amazon SES feature
  4282. // that enables you to authorize other senders to use your identities. For information,
  4283. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  4284. type ListIdentityPoliciesInput struct {
  4285. _ struct{} `type:"structure"`
  4286. // The identity that is associated with the policy for which the policies will
  4287. // be listed. You can specify an identity by using its name or by using its
  4288. // Amazon Resource Name (ARN). Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  4289. //
  4290. // To successfully call this API, you must own the identity.
  4291. //
  4292. // Identity is a required field
  4293. Identity *string `type:"string" required:"true"`
  4294. }
  4295. // String returns the string representation
  4296. func (s ListIdentityPoliciesInput) String() string {
  4297. return awsutil.Prettify(s)
  4298. }
  4299. // GoString returns the string representation
  4300. func (s ListIdentityPoliciesInput) GoString() string {
  4301. return s.String()
  4302. }
  4303. // Validate inspects the fields of the type to determine if they are valid.
  4304. func (s *ListIdentityPoliciesInput) Validate() error {
  4305. invalidParams := request.ErrInvalidParams{Context: "ListIdentityPoliciesInput"}
  4306. if s.Identity == nil {
  4307. invalidParams.Add(request.NewErrParamRequired("Identity"))
  4308. }
  4309. if invalidParams.Len() > 0 {
  4310. return invalidParams
  4311. }
  4312. return nil
  4313. }
  4314. // A list of names of sending authorization policies that apply to an identity.
  4315. type ListIdentityPoliciesOutput struct {
  4316. _ struct{} `type:"structure"`
  4317. // A list of names of policies that apply to the specified identity.
  4318. //
  4319. // PolicyNames is a required field
  4320. PolicyNames []*string `type:"list" required:"true"`
  4321. }
  4322. // String returns the string representation
  4323. func (s ListIdentityPoliciesOutput) String() string {
  4324. return awsutil.Prettify(s)
  4325. }
  4326. // GoString returns the string representation
  4327. func (s ListIdentityPoliciesOutput) GoString() string {
  4328. return s.String()
  4329. }
  4330. // : Represents a request to list the IP address filters that exist under your
  4331. // AWS account. You use IP address filters when you receive email with Amazon
  4332. // SES. For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  4333. type ListReceiptFiltersInput struct {
  4334. _ struct{} `type:"structure"`
  4335. }
  4336. // String returns the string representation
  4337. func (s ListReceiptFiltersInput) String() string {
  4338. return awsutil.Prettify(s)
  4339. }
  4340. // GoString returns the string representation
  4341. func (s ListReceiptFiltersInput) GoString() string {
  4342. return s.String()
  4343. }
  4344. // A list of IP address filters that exist under your AWS account.
  4345. type ListReceiptFiltersOutput struct {
  4346. _ struct{} `type:"structure"`
  4347. // A list of IP address filter data structures, which each consist of a name,
  4348. // an IP address range, and whether to allow or block mail from it.
  4349. Filters []*ReceiptFilter `type:"list"`
  4350. }
  4351. // String returns the string representation
  4352. func (s ListReceiptFiltersOutput) String() string {
  4353. return awsutil.Prettify(s)
  4354. }
  4355. // GoString returns the string representation
  4356. func (s ListReceiptFiltersOutput) GoString() string {
  4357. return s.String()
  4358. }
  4359. // Represents a request to list the receipt rule sets that exist under your
  4360. // AWS account. You use receipt rule sets to receive email with Amazon SES.
  4361. // For more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  4362. type ListReceiptRuleSetsInput struct {
  4363. _ struct{} `type:"structure"`
  4364. // A token returned from a previous call to ListReceiptRuleSets to indicate
  4365. // the position in the receipt rule set list.
  4366. NextToken *string `type:"string"`
  4367. }
  4368. // String returns the string representation
  4369. func (s ListReceiptRuleSetsInput) String() string {
  4370. return awsutil.Prettify(s)
  4371. }
  4372. // GoString returns the string representation
  4373. func (s ListReceiptRuleSetsInput) GoString() string {
  4374. return s.String()
  4375. }
  4376. // A list of receipt rule sets that exist under your AWS account.
  4377. type ListReceiptRuleSetsOutput struct {
  4378. _ struct{} `type:"structure"`
  4379. // A token indicating that there are additional receipt rule sets available
  4380. // to be listed. Pass this token to successive calls of ListReceiptRuleSets
  4381. // to retrieve up to 100 receipt rule sets at a time.
  4382. NextToken *string `type:"string"`
  4383. // The metadata for the currently active receipt rule set. The metadata consists
  4384. // of the rule set name and the timestamp of when the rule set was created.
  4385. RuleSets []*ReceiptRuleSetMetadata `type:"list"`
  4386. }
  4387. // String returns the string representation
  4388. func (s ListReceiptRuleSetsOutput) String() string {
  4389. return awsutil.Prettify(s)
  4390. }
  4391. // GoString returns the string representation
  4392. func (s ListReceiptRuleSetsOutput) GoString() string {
  4393. return s.String()
  4394. }
  4395. type ListVerifiedEmailAddressesInput struct {
  4396. _ struct{} `type:"structure"`
  4397. }
  4398. // String returns the string representation
  4399. func (s ListVerifiedEmailAddressesInput) String() string {
  4400. return awsutil.Prettify(s)
  4401. }
  4402. // GoString returns the string representation
  4403. func (s ListVerifiedEmailAddressesInput) GoString() string {
  4404. return s.String()
  4405. }
  4406. // A list of email addresses that you have verified with Amazon SES under your
  4407. // AWS account.
  4408. type ListVerifiedEmailAddressesOutput struct {
  4409. _ struct{} `type:"structure"`
  4410. // A list of email addresses that have been verified.
  4411. VerifiedEmailAddresses []*string `type:"list"`
  4412. }
  4413. // String returns the string representation
  4414. func (s ListVerifiedEmailAddressesOutput) String() string {
  4415. return awsutil.Prettify(s)
  4416. }
  4417. // GoString returns the string representation
  4418. func (s ListVerifiedEmailAddressesOutput) GoString() string {
  4419. return s.String()
  4420. }
  4421. // Represents the message to be sent, composed of a subject and a body.
  4422. type Message struct {
  4423. _ struct{} `type:"structure"`
  4424. // The message body.
  4425. //
  4426. // Body is a required field
  4427. Body *Body `type:"structure" required:"true"`
  4428. // The subject of the message: A short summary of the content, which will appear
  4429. // in the recipient's inbox.
  4430. //
  4431. // Subject is a required field
  4432. Subject *Content `type:"structure" required:"true"`
  4433. }
  4434. // String returns the string representation
  4435. func (s Message) String() string {
  4436. return awsutil.Prettify(s)
  4437. }
  4438. // GoString returns the string representation
  4439. func (s Message) GoString() string {
  4440. return s.String()
  4441. }
  4442. // Validate inspects the fields of the type to determine if they are valid.
  4443. func (s *Message) Validate() error {
  4444. invalidParams := request.ErrInvalidParams{Context: "Message"}
  4445. if s.Body == nil {
  4446. invalidParams.Add(request.NewErrParamRequired("Body"))
  4447. }
  4448. if s.Subject == nil {
  4449. invalidParams.Add(request.NewErrParamRequired("Subject"))
  4450. }
  4451. if s.Body != nil {
  4452. if err := s.Body.Validate(); err != nil {
  4453. invalidParams.AddNested("Body", err.(request.ErrInvalidParams))
  4454. }
  4455. }
  4456. if s.Subject != nil {
  4457. if err := s.Subject.Validate(); err != nil {
  4458. invalidParams.AddNested("Subject", err.(request.ErrInvalidParams))
  4459. }
  4460. }
  4461. if invalidParams.Len() > 0 {
  4462. return invalidParams
  4463. }
  4464. return nil
  4465. }
  4466. // Message-related information to include in the Delivery Status Notification
  4467. // (DSN) when an email that Amazon SES receives on your behalf bounces.
  4468. //
  4469. // For information about receiving email through Amazon SES, see the Amazon
  4470. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html).
  4471. type MessageDsn struct {
  4472. _ struct{} `type:"structure"`
  4473. // When the message was received by the reporting mail transfer agent (MTA),
  4474. // in RFC 822 (https://www.ietf.org/rfc/rfc0822.txt) date-time format.
  4475. ArrivalDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4476. // Additional X-headers to include in the DSN.
  4477. ExtensionFields []*ExtensionField `type:"list"`
  4478. // The reporting MTA that attempted to deliver the message, formatted as specified
  4479. // in RFC 3464 (https://tools.ietf.org/html/rfc3464) (mta-name-type; mta-name).
  4480. // The default value is dns; inbound-smtp.[region].amazonaws.com.
  4481. //
  4482. // ReportingMta is a required field
  4483. ReportingMta *string `type:"string" required:"true"`
  4484. }
  4485. // String returns the string representation
  4486. func (s MessageDsn) String() string {
  4487. return awsutil.Prettify(s)
  4488. }
  4489. // GoString returns the string representation
  4490. func (s MessageDsn) GoString() string {
  4491. return s.String()
  4492. }
  4493. // Validate inspects the fields of the type to determine if they are valid.
  4494. func (s *MessageDsn) Validate() error {
  4495. invalidParams := request.ErrInvalidParams{Context: "MessageDsn"}
  4496. if s.ReportingMta == nil {
  4497. invalidParams.Add(request.NewErrParamRequired("ReportingMta"))
  4498. }
  4499. if s.ExtensionFields != nil {
  4500. for i, v := range s.ExtensionFields {
  4501. if v == nil {
  4502. continue
  4503. }
  4504. if err := v.Validate(); err != nil {
  4505. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtensionFields", i), err.(request.ErrInvalidParams))
  4506. }
  4507. }
  4508. }
  4509. if invalidParams.Len() > 0 {
  4510. return invalidParams
  4511. }
  4512. return nil
  4513. }
  4514. // Represents a request to add or update a sending authorization policy for
  4515. // an identity. Sending authorization is an Amazon SES feature that enables
  4516. // you to authorize other senders to use your identities. For information, see
  4517. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  4518. type PutIdentityPolicyInput struct {
  4519. _ struct{} `type:"structure"`
  4520. // The identity to which the policy will apply. You can specify an identity
  4521. // by using its name or by using its Amazon Resource Name (ARN). Examples: user@example.com,
  4522. // example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  4523. //
  4524. // To successfully call this API, you must own the identity.
  4525. //
  4526. // Identity is a required field
  4527. Identity *string `type:"string" required:"true"`
  4528. // The text of the policy in JSON format. The policy cannot exceed 4 KB.
  4529. //
  4530. // For information about the syntax of sending authorization policies, see the
  4531. // Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-policies.html).
  4532. //
  4533. // Policy is a required field
  4534. Policy *string `min:"1" type:"string" required:"true"`
  4535. // The name of the policy.
  4536. //
  4537. // The policy name cannot exceed 64 characters and can only include alphanumeric
  4538. // characters, dashes, and underscores.
  4539. //
  4540. // PolicyName is a required field
  4541. PolicyName *string `min:"1" type:"string" required:"true"`
  4542. }
  4543. // String returns the string representation
  4544. func (s PutIdentityPolicyInput) String() string {
  4545. return awsutil.Prettify(s)
  4546. }
  4547. // GoString returns the string representation
  4548. func (s PutIdentityPolicyInput) GoString() string {
  4549. return s.String()
  4550. }
  4551. // Validate inspects the fields of the type to determine if they are valid.
  4552. func (s *PutIdentityPolicyInput) Validate() error {
  4553. invalidParams := request.ErrInvalidParams{Context: "PutIdentityPolicyInput"}
  4554. if s.Identity == nil {
  4555. invalidParams.Add(request.NewErrParamRequired("Identity"))
  4556. }
  4557. if s.Policy == nil {
  4558. invalidParams.Add(request.NewErrParamRequired("Policy"))
  4559. }
  4560. if s.Policy != nil && len(*s.Policy) < 1 {
  4561. invalidParams.Add(request.NewErrParamMinLen("Policy", 1))
  4562. }
  4563. if s.PolicyName == nil {
  4564. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  4565. }
  4566. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  4567. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  4568. }
  4569. if invalidParams.Len() > 0 {
  4570. return invalidParams
  4571. }
  4572. return nil
  4573. }
  4574. // An empty element returned on a successful request.
  4575. type PutIdentityPolicyOutput struct {
  4576. _ struct{} `type:"structure"`
  4577. }
  4578. // String returns the string representation
  4579. func (s PutIdentityPolicyOutput) String() string {
  4580. return awsutil.Prettify(s)
  4581. }
  4582. // GoString returns the string representation
  4583. func (s PutIdentityPolicyOutput) GoString() string {
  4584. return s.String()
  4585. }
  4586. // Represents the raw data of the message.
  4587. type RawMessage struct {
  4588. _ struct{} `type:"structure"`
  4589. // The raw data of the message. The client must ensure that the message format
  4590. // complies with Internet email standards regarding email header fields, MIME
  4591. // types, MIME encoding, and base64 encoding.
  4592. //
  4593. // The To:, CC:, and BCC: headers in the raw message can contain a group list.
  4594. //
  4595. // If you are using SendRawEmail with sending authorization, you can include
  4596. // X-headers in the raw message to specify the "Source," "From," and "Return-Path"
  4597. // addresses. For more information, see the documentation for SendRawEmail.
  4598. //
  4599. // Do not include these X-headers in the DKIM signature, because they are removed
  4600. // by Amazon SES before sending the email.
  4601. //
  4602. // For more information, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html).
  4603. //
  4604. // Data is automatically base64 encoded/decoded by the SDK.
  4605. //
  4606. // Data is a required field
  4607. Data []byte `type:"blob" required:"true"`
  4608. }
  4609. // String returns the string representation
  4610. func (s RawMessage) String() string {
  4611. return awsutil.Prettify(s)
  4612. }
  4613. // GoString returns the string representation
  4614. func (s RawMessage) GoString() string {
  4615. return s.String()
  4616. }
  4617. // Validate inspects the fields of the type to determine if they are valid.
  4618. func (s *RawMessage) Validate() error {
  4619. invalidParams := request.ErrInvalidParams{Context: "RawMessage"}
  4620. if s.Data == nil {
  4621. invalidParams.Add(request.NewErrParamRequired("Data"))
  4622. }
  4623. if invalidParams.Len() > 0 {
  4624. return invalidParams
  4625. }
  4626. return nil
  4627. }
  4628. // An action that Amazon SES can take when it receives an email on behalf of
  4629. // one or more email addresses or domains that you own. An instance of this
  4630. // data type can represent only one action.
  4631. //
  4632. // For information about setting up receipt rules, see the Amazon SES Developer
  4633. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html).
  4634. type ReceiptAction struct {
  4635. _ struct{} `type:"structure"`
  4636. // Adds a header to the received email.
  4637. AddHeaderAction *AddHeaderAction `type:"structure"`
  4638. // Rejects the received email by returning a bounce response to the sender and,
  4639. // optionally, publishes a notification to Amazon Simple Notification Service
  4640. // (Amazon SNS).
  4641. BounceAction *BounceAction `type:"structure"`
  4642. // Calls an AWS Lambda function, and optionally, publishes a notification to
  4643. // Amazon SNS.
  4644. LambdaAction *LambdaAction `type:"structure"`
  4645. // Saves the received message to an Amazon Simple Storage Service (Amazon S3)
  4646. // bucket and, optionally, publishes a notification to Amazon SNS.
  4647. S3Action *S3Action `type:"structure"`
  4648. // Publishes the email content within a notification to Amazon SNS.
  4649. SNSAction *SNSAction `type:"structure"`
  4650. // Terminates the evaluation of the receipt rule set and optionally publishes
  4651. // a notification to Amazon SNS.
  4652. StopAction *StopAction `type:"structure"`
  4653. // Calls Amazon WorkMail and, optionally, publishes a notification to Amazon
  4654. // SNS.
  4655. WorkmailAction *WorkmailAction `type:"structure"`
  4656. }
  4657. // String returns the string representation
  4658. func (s ReceiptAction) String() string {
  4659. return awsutil.Prettify(s)
  4660. }
  4661. // GoString returns the string representation
  4662. func (s ReceiptAction) GoString() string {
  4663. return s.String()
  4664. }
  4665. // Validate inspects the fields of the type to determine if they are valid.
  4666. func (s *ReceiptAction) Validate() error {
  4667. invalidParams := request.ErrInvalidParams{Context: "ReceiptAction"}
  4668. if s.AddHeaderAction != nil {
  4669. if err := s.AddHeaderAction.Validate(); err != nil {
  4670. invalidParams.AddNested("AddHeaderAction", err.(request.ErrInvalidParams))
  4671. }
  4672. }
  4673. if s.BounceAction != nil {
  4674. if err := s.BounceAction.Validate(); err != nil {
  4675. invalidParams.AddNested("BounceAction", err.(request.ErrInvalidParams))
  4676. }
  4677. }
  4678. if s.LambdaAction != nil {
  4679. if err := s.LambdaAction.Validate(); err != nil {
  4680. invalidParams.AddNested("LambdaAction", err.(request.ErrInvalidParams))
  4681. }
  4682. }
  4683. if s.S3Action != nil {
  4684. if err := s.S3Action.Validate(); err != nil {
  4685. invalidParams.AddNested("S3Action", err.(request.ErrInvalidParams))
  4686. }
  4687. }
  4688. if s.SNSAction != nil {
  4689. if err := s.SNSAction.Validate(); err != nil {
  4690. invalidParams.AddNested("SNSAction", err.(request.ErrInvalidParams))
  4691. }
  4692. }
  4693. if s.StopAction != nil {
  4694. if err := s.StopAction.Validate(); err != nil {
  4695. invalidParams.AddNested("StopAction", err.(request.ErrInvalidParams))
  4696. }
  4697. }
  4698. if s.WorkmailAction != nil {
  4699. if err := s.WorkmailAction.Validate(); err != nil {
  4700. invalidParams.AddNested("WorkmailAction", err.(request.ErrInvalidParams))
  4701. }
  4702. }
  4703. if invalidParams.Len() > 0 {
  4704. return invalidParams
  4705. }
  4706. return nil
  4707. }
  4708. // A receipt IP address filter enables you to specify whether to accept or reject
  4709. // mail originating from an IP address or range of IP addresses.
  4710. //
  4711. // For information about setting up IP address filters, see the Amazon SES Developer
  4712. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html).
  4713. type ReceiptFilter struct {
  4714. _ struct{} `type:"structure"`
  4715. // A structure that provides the IP addresses to block or allow, and whether
  4716. // to block or allow incoming mail from them.
  4717. //
  4718. // IpFilter is a required field
  4719. IpFilter *ReceiptIpFilter `type:"structure" required:"true"`
  4720. // The name of the IP address filter. The name must:
  4721. //
  4722. // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores
  4723. // (_), or dashes (-).
  4724. //
  4725. // * Start and end with a letter or number.
  4726. //
  4727. // * Contain less than 64 characters.
  4728. //
  4729. // Name is a required field
  4730. Name *string `type:"string" required:"true"`
  4731. }
  4732. // String returns the string representation
  4733. func (s ReceiptFilter) String() string {
  4734. return awsutil.Prettify(s)
  4735. }
  4736. // GoString returns the string representation
  4737. func (s ReceiptFilter) GoString() string {
  4738. return s.String()
  4739. }
  4740. // Validate inspects the fields of the type to determine if they are valid.
  4741. func (s *ReceiptFilter) Validate() error {
  4742. invalidParams := request.ErrInvalidParams{Context: "ReceiptFilter"}
  4743. if s.IpFilter == nil {
  4744. invalidParams.Add(request.NewErrParamRequired("IpFilter"))
  4745. }
  4746. if s.Name == nil {
  4747. invalidParams.Add(request.NewErrParamRequired("Name"))
  4748. }
  4749. if s.IpFilter != nil {
  4750. if err := s.IpFilter.Validate(); err != nil {
  4751. invalidParams.AddNested("IpFilter", err.(request.ErrInvalidParams))
  4752. }
  4753. }
  4754. if invalidParams.Len() > 0 {
  4755. return invalidParams
  4756. }
  4757. return nil
  4758. }
  4759. // A receipt IP address filter enables you to specify whether to accept or reject
  4760. // mail originating from an IP address or range of IP addresses.
  4761. //
  4762. // For information about setting up IP address filters, see the Amazon SES Developer
  4763. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-ip-filters.html).
  4764. type ReceiptIpFilter struct {
  4765. _ struct{} `type:"structure"`
  4766. // A single IP address or a range of IP addresses that you want to block or
  4767. // allow, specified in Classless Inter-Domain Routing (CIDR) notation. An example
  4768. // of a single email address is 10.0.0.1. An example of a range of IP addresses
  4769. // is 10.0.0.1/24. For more information about CIDR notation, see RFC 2317 (https://tools.ietf.org/html/rfc2317).
  4770. //
  4771. // Cidr is a required field
  4772. Cidr *string `type:"string" required:"true"`
  4773. // Indicates whether to block or allow incoming mail from the specified IP addresses.
  4774. //
  4775. // Policy is a required field
  4776. Policy *string `type:"string" required:"true" enum:"ReceiptFilterPolicy"`
  4777. }
  4778. // String returns the string representation
  4779. func (s ReceiptIpFilter) String() string {
  4780. return awsutil.Prettify(s)
  4781. }
  4782. // GoString returns the string representation
  4783. func (s ReceiptIpFilter) GoString() string {
  4784. return s.String()
  4785. }
  4786. // Validate inspects the fields of the type to determine if they are valid.
  4787. func (s *ReceiptIpFilter) Validate() error {
  4788. invalidParams := request.ErrInvalidParams{Context: "ReceiptIpFilter"}
  4789. if s.Cidr == nil {
  4790. invalidParams.Add(request.NewErrParamRequired("Cidr"))
  4791. }
  4792. if s.Policy == nil {
  4793. invalidParams.Add(request.NewErrParamRequired("Policy"))
  4794. }
  4795. if invalidParams.Len() > 0 {
  4796. return invalidParams
  4797. }
  4798. return nil
  4799. }
  4800. // Receipt rules enable you to specify which actions Amazon SES should take
  4801. // when it receives mail on behalf of one or more email addresses or domains
  4802. // that you own.
  4803. //
  4804. // Each receipt rule defines a set of email addresses or domains to which it
  4805. // applies. If the email addresses or domains match at least one recipient address
  4806. // of the message, Amazon SES executes all of the receipt rule's actions on
  4807. // the message.
  4808. //
  4809. // For information about setting up receipt rules, see the Amazon SES Developer
  4810. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rules.html).
  4811. type ReceiptRule struct {
  4812. _ struct{} `type:"structure"`
  4813. // An ordered list of actions to perform on messages that match at least one
  4814. // of the recipient email addresses or domains specified in the receipt rule.
  4815. Actions []*ReceiptAction `type:"list"`
  4816. // If true, the receipt rule is active. The default value is false.
  4817. Enabled *bool `type:"boolean"`
  4818. // The name of the receipt rule. The name must:
  4819. //
  4820. // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores
  4821. // (_), or dashes (-).
  4822. //
  4823. // * Start and end with a letter or number.
  4824. //
  4825. // * Contain less than 64 characters.
  4826. //
  4827. // Name is a required field
  4828. Name *string `type:"string" required:"true"`
  4829. // The recipient domains and email addresses to which the receipt rule applies.
  4830. // If this field is not specified, this rule will match all recipients under
  4831. // all verified domains.
  4832. Recipients []*string `type:"list"`
  4833. // If true, then messages to which this receipt rule applies are scanned for
  4834. // spam and viruses. The default value is false.
  4835. ScanEnabled *bool `type:"boolean"`
  4836. // Specifies whether Amazon SES should require that incoming email is delivered
  4837. // over a connection encrypted with Transport Layer Security (TLS). If this
  4838. // parameter is set to Require, Amazon SES will bounce emails that are not received
  4839. // over TLS. The default is Optional.
  4840. TlsPolicy *string `type:"string" enum:"TlsPolicy"`
  4841. }
  4842. // String returns the string representation
  4843. func (s ReceiptRule) String() string {
  4844. return awsutil.Prettify(s)
  4845. }
  4846. // GoString returns the string representation
  4847. func (s ReceiptRule) GoString() string {
  4848. return s.String()
  4849. }
  4850. // Validate inspects the fields of the type to determine if they are valid.
  4851. func (s *ReceiptRule) Validate() error {
  4852. invalidParams := request.ErrInvalidParams{Context: "ReceiptRule"}
  4853. if s.Name == nil {
  4854. invalidParams.Add(request.NewErrParamRequired("Name"))
  4855. }
  4856. if s.Actions != nil {
  4857. for i, v := range s.Actions {
  4858. if v == nil {
  4859. continue
  4860. }
  4861. if err := v.Validate(); err != nil {
  4862. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
  4863. }
  4864. }
  4865. }
  4866. if invalidParams.Len() > 0 {
  4867. return invalidParams
  4868. }
  4869. return nil
  4870. }
  4871. // Information about a receipt rule set.
  4872. //
  4873. // A receipt rule set is a collection of rules that specify what Amazon SES
  4874. // should do with mail it receives on behalf of your account's verified domains.
  4875. //
  4876. // For information about setting up receipt rule sets, see the Amazon SES Developer
  4877. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-receipt-rule-set.html).
  4878. type ReceiptRuleSetMetadata struct {
  4879. _ struct{} `type:"structure"`
  4880. // The date and time the receipt rule set was created.
  4881. CreatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4882. // The name of the receipt rule set. The name must:
  4883. //
  4884. // * Contain only ASCII letters (a-z, A-Z), numbers (0-9), periods (.), underscores
  4885. // (_), or dashes (-).
  4886. //
  4887. // * Start and end with a letter or number.
  4888. //
  4889. // * Contain less than 64 characters.
  4890. Name *string `type:"string"`
  4891. }
  4892. // String returns the string representation
  4893. func (s ReceiptRuleSetMetadata) String() string {
  4894. return awsutil.Prettify(s)
  4895. }
  4896. // GoString returns the string representation
  4897. func (s ReceiptRuleSetMetadata) GoString() string {
  4898. return s.String()
  4899. }
  4900. // Recipient-related information to include in the Delivery Status Notification
  4901. // (DSN) when an email that Amazon SES receives on your behalf bounces.
  4902. //
  4903. // For information about receiving email through Amazon SES, see the Amazon
  4904. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email.html).
  4905. type RecipientDsnFields struct {
  4906. _ struct{} `type:"structure"`
  4907. // The action performed by the reporting mail transfer agent (MTA) as a result
  4908. // of its attempt to deliver the message to the recipient address. This is required
  4909. // by RFC 3464 (https://tools.ietf.org/html/rfc3464).
  4910. //
  4911. // Action is a required field
  4912. Action *string `type:"string" required:"true" enum:"DsnAction"`
  4913. // An extended explanation of what went wrong; this is usually an SMTP response.
  4914. // See RFC 3463 (https://tools.ietf.org/html/rfc3463) for the correct formatting
  4915. // of this parameter.
  4916. DiagnosticCode *string `type:"string"`
  4917. // Additional X-headers to include in the DSN.
  4918. ExtensionFields []*ExtensionField `type:"list"`
  4919. // The email address to which the message was ultimately delivered. This corresponds
  4920. // to the Final-Recipient in the DSN. If not specified, FinalRecipient will
  4921. // be set to the Recipient specified in the BouncedRecipientInfo structure.
  4922. // Either FinalRecipient or the recipient in BouncedRecipientInfo must be a
  4923. // recipient of the original bounced message.
  4924. //
  4925. // Do not prepend the FinalRecipient email address with rfc 822;, as described
  4926. // in RFC 3798 (https://tools.ietf.org/html/rfc3798).
  4927. FinalRecipient *string `type:"string"`
  4928. // The time the final delivery attempt was made, in RFC 822 (https://www.ietf.org/rfc/rfc0822.txt)
  4929. // date-time format.
  4930. LastAttemptDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  4931. // The MTA to which the remote MTA attempted to deliver the message, formatted
  4932. // as specified in RFC 3464 (https://tools.ietf.org/html/rfc3464) (mta-name-type;
  4933. // mta-name). This parameter typically applies only to propagating synchronous
  4934. // bounces.
  4935. RemoteMta *string `type:"string"`
  4936. // The status code that indicates what went wrong. This is required by RFC 3464
  4937. // (https://tools.ietf.org/html/rfc3464).
  4938. //
  4939. // Status is a required field
  4940. Status *string `type:"string" required:"true"`
  4941. }
  4942. // String returns the string representation
  4943. func (s RecipientDsnFields) String() string {
  4944. return awsutil.Prettify(s)
  4945. }
  4946. // GoString returns the string representation
  4947. func (s RecipientDsnFields) GoString() string {
  4948. return s.String()
  4949. }
  4950. // Validate inspects the fields of the type to determine if they are valid.
  4951. func (s *RecipientDsnFields) Validate() error {
  4952. invalidParams := request.ErrInvalidParams{Context: "RecipientDsnFields"}
  4953. if s.Action == nil {
  4954. invalidParams.Add(request.NewErrParamRequired("Action"))
  4955. }
  4956. if s.Status == nil {
  4957. invalidParams.Add(request.NewErrParamRequired("Status"))
  4958. }
  4959. if s.ExtensionFields != nil {
  4960. for i, v := range s.ExtensionFields {
  4961. if v == nil {
  4962. continue
  4963. }
  4964. if err := v.Validate(); err != nil {
  4965. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ExtensionFields", i), err.(request.ErrInvalidParams))
  4966. }
  4967. }
  4968. }
  4969. if invalidParams.Len() > 0 {
  4970. return invalidParams
  4971. }
  4972. return nil
  4973. }
  4974. // Represents a request to reorder the receipt rules within a receipt rule set.
  4975. // You use receipt rule sets to receive email with Amazon SES. For more information,
  4976. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  4977. type ReorderReceiptRuleSetInput struct {
  4978. _ struct{} `type:"structure"`
  4979. // A list of the specified receipt rule set's receipt rules in the order that
  4980. // you want to put them.
  4981. //
  4982. // RuleNames is a required field
  4983. RuleNames []*string `type:"list" required:"true"`
  4984. // The name of the receipt rule set to reorder.
  4985. //
  4986. // RuleSetName is a required field
  4987. RuleSetName *string `type:"string" required:"true"`
  4988. }
  4989. // String returns the string representation
  4990. func (s ReorderReceiptRuleSetInput) String() string {
  4991. return awsutil.Prettify(s)
  4992. }
  4993. // GoString returns the string representation
  4994. func (s ReorderReceiptRuleSetInput) GoString() string {
  4995. return s.String()
  4996. }
  4997. // Validate inspects the fields of the type to determine if they are valid.
  4998. func (s *ReorderReceiptRuleSetInput) Validate() error {
  4999. invalidParams := request.ErrInvalidParams{Context: "ReorderReceiptRuleSetInput"}
  5000. if s.RuleNames == nil {
  5001. invalidParams.Add(request.NewErrParamRequired("RuleNames"))
  5002. }
  5003. if s.RuleSetName == nil {
  5004. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  5005. }
  5006. if invalidParams.Len() > 0 {
  5007. return invalidParams
  5008. }
  5009. return nil
  5010. }
  5011. // An empty element returned on a successful request.
  5012. type ReorderReceiptRuleSetOutput struct {
  5013. _ struct{} `type:"structure"`
  5014. }
  5015. // String returns the string representation
  5016. func (s ReorderReceiptRuleSetOutput) String() string {
  5017. return awsutil.Prettify(s)
  5018. }
  5019. // GoString returns the string representation
  5020. func (s ReorderReceiptRuleSetOutput) GoString() string {
  5021. return s.String()
  5022. }
  5023. // When included in a receipt rule, this action saves the received message to
  5024. // an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes
  5025. // a notification to Amazon Simple Notification Service (Amazon SNS).
  5026. //
  5027. // To enable Amazon SES to write emails to your Amazon S3 bucket, use an AWS
  5028. // KMS key to encrypt your emails, or publish to an Amazon SNS topic of another
  5029. // account, Amazon SES must have permission to access those resources. For information
  5030. // about giving permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  5031. //
  5032. // When you save your emails to an Amazon S3 bucket, the maximum email size
  5033. // (including headers) is 30 MB. Emails larger than that will bounce.
  5034. //
  5035. // For information about specifying Amazon S3 actions in receipt rules, see
  5036. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-s3.html).
  5037. type S3Action struct {
  5038. _ struct{} `type:"structure"`
  5039. // The name of the Amazon S3 bucket to which to save the received email.
  5040. //
  5041. // BucketName is a required field
  5042. BucketName *string `type:"string" required:"true"`
  5043. // The customer master key that Amazon SES should use to encrypt your emails
  5044. // before saving them to the Amazon S3 bucket. You can use the default master
  5045. // key or a custom master key you created in AWS KMS as follows:
  5046. //
  5047. // * To use the default master key, provide an ARN in the form of arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses.
  5048. // For example, if your AWS account ID is 123456789012 and you want to use
  5049. // the default master key in the US West (Oregon) region, the ARN of the
  5050. // default master key would be arn:aws:kms:us-west-2:123456789012:alias/aws/ses.
  5051. // If you use the default master key, you don't need to perform any extra
  5052. // steps to give Amazon SES permission to use the key.
  5053. //
  5054. // * To use a custom master key you created in AWS KMS, provide the ARN of
  5055. // the master key and ensure that you add a statement to your key's policy
  5056. // to give Amazon SES permission to use it. For more information about giving
  5057. // permissions, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  5058. //
  5059. // For more information about key policies, see the AWS KMS Developer Guide
  5060. // (http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html). If
  5061. // you do not specify a master key, Amazon SES will not encrypt your emails.
  5062. //
  5063. // Your mail is encrypted by Amazon SES using the Amazon S3 encryption client
  5064. // before the mail is submitted to Amazon S3 for storage. It is not encrypted
  5065. // using Amazon S3 server-side encryption. This means that you must use the
  5066. // Amazon S3 encryption client to decrypt the email after retrieving it from
  5067. // Amazon S3, as the service has no access to use your AWS KMS keys for decryption.
  5068. // This encryption client is currently available with the AWS Java SDK (http://aws.amazon.com/sdk-for-java/)
  5069. // and AWS Ruby SDK (http://aws.amazon.com/sdk-for-ruby/) only. For more information
  5070. // about client-side encryption using AWS KMS master keys, see the Amazon S3
  5071. // Developer Guide (http://alpha-docs-aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html).
  5072. KmsKeyArn *string `type:"string"`
  5073. // The key prefix of the Amazon S3 bucket. The key prefix is similar to a directory
  5074. // name that enables you to store similar data under the same directory in a
  5075. // bucket.
  5076. ObjectKeyPrefix *string `type:"string"`
  5077. // The ARN of the Amazon SNS topic to notify when the message is saved to the
  5078. // Amazon S3 bucket. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  5079. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  5080. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  5081. TopicArn *string `type:"string"`
  5082. }
  5083. // String returns the string representation
  5084. func (s S3Action) String() string {
  5085. return awsutil.Prettify(s)
  5086. }
  5087. // GoString returns the string representation
  5088. func (s S3Action) GoString() string {
  5089. return s.String()
  5090. }
  5091. // Validate inspects the fields of the type to determine if they are valid.
  5092. func (s *S3Action) Validate() error {
  5093. invalidParams := request.ErrInvalidParams{Context: "S3Action"}
  5094. if s.BucketName == nil {
  5095. invalidParams.Add(request.NewErrParamRequired("BucketName"))
  5096. }
  5097. if invalidParams.Len() > 0 {
  5098. return invalidParams
  5099. }
  5100. return nil
  5101. }
  5102. // When included in a receipt rule, this action publishes a notification to
  5103. // Amazon Simple Notification Service (Amazon SNS). This action includes a complete
  5104. // copy of the email content in the Amazon SNS notifications. Amazon SNS notifications
  5105. // for all other actions simply provide information about the email. They do
  5106. // not include the email content itself.
  5107. //
  5108. // If you own the Amazon SNS topic, you don't need to do anything to give Amazon
  5109. // SES permission to publish emails to it. However, if you don't own the Amazon
  5110. // SNS topic, you need to attach a policy to the topic to give Amazon SES permissions
  5111. // to access it. For information about giving permissions, see the Amazon SES
  5112. // Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-permissions.html).
  5113. //
  5114. // You can only publish emails that are 150 KB or less (including the header)
  5115. // to Amazon SNS. Larger emails will bounce. If you anticipate emails larger
  5116. // than 150 KB, use the S3 action instead.
  5117. //
  5118. // For information about using a receipt rule to publish an Amazon SNS notification,
  5119. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-sns.html).
  5120. type SNSAction struct {
  5121. _ struct{} `type:"structure"`
  5122. // The encoding to use for the email within the Amazon SNS notification. UTF-8
  5123. // is easier to use, but may not preserve all special characters when a message
  5124. // was encoded with a different encoding format. Base64 preserves all special
  5125. // characters. The default value is UTF-8.
  5126. Encoding *string `type:"string" enum:"SNSActionEncoding"`
  5127. // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. An example
  5128. // of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  5129. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  5130. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  5131. //
  5132. // TopicArn is a required field
  5133. TopicArn *string `type:"string" required:"true"`
  5134. }
  5135. // String returns the string representation
  5136. func (s SNSAction) String() string {
  5137. return awsutil.Prettify(s)
  5138. }
  5139. // GoString returns the string representation
  5140. func (s SNSAction) GoString() string {
  5141. return s.String()
  5142. }
  5143. // Validate inspects the fields of the type to determine if they are valid.
  5144. func (s *SNSAction) Validate() error {
  5145. invalidParams := request.ErrInvalidParams{Context: "SNSAction"}
  5146. if s.TopicArn == nil {
  5147. invalidParams.Add(request.NewErrParamRequired("TopicArn"))
  5148. }
  5149. if invalidParams.Len() > 0 {
  5150. return invalidParams
  5151. }
  5152. return nil
  5153. }
  5154. // Represents a request to send a bounce message to the sender of an email you
  5155. // received through Amazon SES.
  5156. type SendBounceInput struct {
  5157. _ struct{} `type:"structure"`
  5158. // The address to use in the "From" header of the bounce message. This must
  5159. // be an identity that you have verified with Amazon SES.
  5160. //
  5161. // BounceSender is a required field
  5162. BounceSender *string `type:"string" required:"true"`
  5163. // This parameter is used only for sending authorization. It is the ARN of the
  5164. // identity that is associated with the sending authorization policy that permits
  5165. // you to use the address in the "From" header of the bounce. For more information
  5166. // about sending authorization, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  5167. BounceSenderArn *string `type:"string"`
  5168. // A list of recipients of the bounced message, including the information required
  5169. // to create the Delivery Status Notifications (DSNs) for the recipients. You
  5170. // must specify at least one BouncedRecipientInfo in the list.
  5171. //
  5172. // BouncedRecipientInfoList is a required field
  5173. BouncedRecipientInfoList []*BouncedRecipientInfo `type:"list" required:"true"`
  5174. // Human-readable text for the bounce message to explain the failure. If not
  5175. // specified, the text will be auto-generated based on the bounced recipient
  5176. // information.
  5177. Explanation *string `type:"string"`
  5178. // Message-related DSN fields. If not specified, Amazon SES will choose the
  5179. // values.
  5180. MessageDsn *MessageDsn `type:"structure"`
  5181. // The message ID of the message to be bounced.
  5182. //
  5183. // OriginalMessageId is a required field
  5184. OriginalMessageId *string `type:"string" required:"true"`
  5185. }
  5186. // String returns the string representation
  5187. func (s SendBounceInput) String() string {
  5188. return awsutil.Prettify(s)
  5189. }
  5190. // GoString returns the string representation
  5191. func (s SendBounceInput) GoString() string {
  5192. return s.String()
  5193. }
  5194. // Validate inspects the fields of the type to determine if they are valid.
  5195. func (s *SendBounceInput) Validate() error {
  5196. invalidParams := request.ErrInvalidParams{Context: "SendBounceInput"}
  5197. if s.BounceSender == nil {
  5198. invalidParams.Add(request.NewErrParamRequired("BounceSender"))
  5199. }
  5200. if s.BouncedRecipientInfoList == nil {
  5201. invalidParams.Add(request.NewErrParamRequired("BouncedRecipientInfoList"))
  5202. }
  5203. if s.OriginalMessageId == nil {
  5204. invalidParams.Add(request.NewErrParamRequired("OriginalMessageId"))
  5205. }
  5206. if s.BouncedRecipientInfoList != nil {
  5207. for i, v := range s.BouncedRecipientInfoList {
  5208. if v == nil {
  5209. continue
  5210. }
  5211. if err := v.Validate(); err != nil {
  5212. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BouncedRecipientInfoList", i), err.(request.ErrInvalidParams))
  5213. }
  5214. }
  5215. }
  5216. if s.MessageDsn != nil {
  5217. if err := s.MessageDsn.Validate(); err != nil {
  5218. invalidParams.AddNested("MessageDsn", err.(request.ErrInvalidParams))
  5219. }
  5220. }
  5221. if invalidParams.Len() > 0 {
  5222. return invalidParams
  5223. }
  5224. return nil
  5225. }
  5226. // Represents a unique message ID.
  5227. type SendBounceOutput struct {
  5228. _ struct{} `type:"structure"`
  5229. // The message ID of the bounce message.
  5230. MessageId *string `type:"string"`
  5231. }
  5232. // String returns the string representation
  5233. func (s SendBounceOutput) String() string {
  5234. return awsutil.Prettify(s)
  5235. }
  5236. // GoString returns the string representation
  5237. func (s SendBounceOutput) GoString() string {
  5238. return s.String()
  5239. }
  5240. // Represents sending statistics data. Each SendDataPoint contains statistics
  5241. // for a 15-minute period of sending activity.
  5242. type SendDataPoint struct {
  5243. _ struct{} `type:"structure"`
  5244. // Number of emails that have bounced.
  5245. Bounces *int64 `type:"long"`
  5246. // Number of unwanted emails that were rejected by recipients.
  5247. Complaints *int64 `type:"long"`
  5248. // Number of emails that have been enqueued for sending.
  5249. DeliveryAttempts *int64 `type:"long"`
  5250. // Number of emails rejected by Amazon SES.
  5251. Rejects *int64 `type:"long"`
  5252. // Time of the data point.
  5253. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"`
  5254. }
  5255. // String returns the string representation
  5256. func (s SendDataPoint) String() string {
  5257. return awsutil.Prettify(s)
  5258. }
  5259. // GoString returns the string representation
  5260. func (s SendDataPoint) GoString() string {
  5261. return s.String()
  5262. }
  5263. // Represents a request to send a single formatted email using Amazon SES. For
  5264. // more information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-formatted.html).
  5265. type SendEmailInput struct {
  5266. _ struct{} `type:"structure"`
  5267. // The destination for this email, composed of To:, CC:, and BCC: fields.
  5268. //
  5269. // Destination is a required field
  5270. Destination *Destination `type:"structure" required:"true"`
  5271. // The message to be sent.
  5272. //
  5273. // Message is a required field
  5274. Message *Message `type:"structure" required:"true"`
  5275. // The reply-to email address(es) for the message. If the recipient replies
  5276. // to the message, each reply-to address will receive the reply.
  5277. ReplyToAddresses []*string `type:"list"`
  5278. // The email address to which bounces and complaints are to be forwarded when
  5279. // feedback forwarding is enabled. If the message cannot be delivered to the
  5280. // recipient, then an error message will be returned from the recipient's ISP;
  5281. // this message will then be forwarded to the email address specified by the
  5282. // ReturnPath parameter. The ReturnPath parameter is never overwritten. This
  5283. // email address must be either individually verified with Amazon SES, or from
  5284. // a domain that has been verified with Amazon SES.
  5285. ReturnPath *string `type:"string"`
  5286. // This parameter is used only for sending authorization. It is the ARN of the
  5287. // identity that is associated with the sending authorization policy that permits
  5288. // you to use the email address specified in the ReturnPath parameter.
  5289. //
  5290. // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com)
  5291. // attaches a policy to it that authorizes you to use feedback@example.com,
  5292. // then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com,
  5293. // and the ReturnPath to be feedback@example.com.
  5294. //
  5295. // For more information about sending authorization, see the Amazon SES Developer
  5296. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  5297. ReturnPathArn *string `type:"string"`
  5298. // The email address that is sending the email. This email address must be either
  5299. // individually verified with Amazon SES, or from a domain that has been verified
  5300. // with Amazon SES. For information about verifying identities, see the Amazon
  5301. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html).
  5302. //
  5303. // If you are sending on behalf of another user and have been permitted to do
  5304. // so by a sending authorization policy, then you must also specify the SourceArn
  5305. // parameter. For more information about sending authorization, see the Amazon
  5306. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  5307. //
  5308. // In all cases, the email address must be 7-bit ASCII. If the text must contain
  5309. // any other characters, then you must use MIME encoded-word syntax (RFC 2047)
  5310. // instead of a literal string. MIME encoded-word syntax uses the following
  5311. // form: =?charset?encoding?encoded-text?=. For more information, see RFC 2047
  5312. // (http://tools.ietf.org/html/rfc2047).
  5313. //
  5314. // Source is a required field
  5315. Source *string `type:"string" required:"true"`
  5316. // This parameter is used only for sending authorization. It is the ARN of the
  5317. // identity that is associated with the sending authorization policy that permits
  5318. // you to send for the email address specified in the Source parameter.
  5319. //
  5320. // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com)
  5321. // attaches a policy to it that authorizes you to send from user@example.com,
  5322. // then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com,
  5323. // and the Source to be user@example.com.
  5324. //
  5325. // For more information about sending authorization, see the Amazon SES Developer
  5326. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html).
  5327. SourceArn *string `type:"string"`
  5328. }
  5329. // String returns the string representation
  5330. func (s SendEmailInput) String() string {
  5331. return awsutil.Prettify(s)
  5332. }
  5333. // GoString returns the string representation
  5334. func (s SendEmailInput) GoString() string {
  5335. return s.String()
  5336. }
  5337. // Validate inspects the fields of the type to determine if they are valid.
  5338. func (s *SendEmailInput) Validate() error {
  5339. invalidParams := request.ErrInvalidParams{Context: "SendEmailInput"}
  5340. if s.Destination == nil {
  5341. invalidParams.Add(request.NewErrParamRequired("Destination"))
  5342. }
  5343. if s.Message == nil {
  5344. invalidParams.Add(request.NewErrParamRequired("Message"))
  5345. }
  5346. if s.Source == nil {
  5347. invalidParams.Add(request.NewErrParamRequired("Source"))
  5348. }
  5349. if s.Message != nil {
  5350. if err := s.Message.Validate(); err != nil {
  5351. invalidParams.AddNested("Message", err.(request.ErrInvalidParams))
  5352. }
  5353. }
  5354. if invalidParams.Len() > 0 {
  5355. return invalidParams
  5356. }
  5357. return nil
  5358. }
  5359. // Represents a unique message ID.
  5360. type SendEmailOutput struct {
  5361. _ struct{} `type:"structure"`
  5362. // The unique message identifier returned from the SendEmail action.
  5363. //
  5364. // MessageId is a required field
  5365. MessageId *string `type:"string" required:"true"`
  5366. }
  5367. // String returns the string representation
  5368. func (s SendEmailOutput) String() string {
  5369. return awsutil.Prettify(s)
  5370. }
  5371. // GoString returns the string representation
  5372. func (s SendEmailOutput) GoString() string {
  5373. return s.String()
  5374. }
  5375. // Represents a request to send a single raw email using Amazon SES. For more
  5376. // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html).
  5377. type SendRawEmailInput struct {
  5378. _ struct{} `type:"structure"`
  5379. // A list of destinations for the message, consisting of To:, CC:, and BCC:
  5380. // addresses.
  5381. Destinations []*string `type:"list"`
  5382. // This parameter is used only for sending authorization. It is the ARN of the
  5383. // identity that is associated with the sending authorization policy that permits
  5384. // you to specify a particular "From" address in the header of the raw email.
  5385. //
  5386. // Instead of using this parameter, you can use the X-header X-SES-FROM-ARN
  5387. // in the raw message of the email. If you use both the FromArn parameter and
  5388. // the corresponding X-header, Amazon SES uses the value of the FromArn parameter.
  5389. //
  5390. // For information about when to use this parameter, see the description of
  5391. // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html).
  5392. FromArn *string `type:"string"`
  5393. // The raw text of the message. The client is responsible for ensuring the following:
  5394. //
  5395. // * Message must contain a header and a body, separated by a blank line.
  5396. //
  5397. // * All required header fields must be present.
  5398. //
  5399. // * Each part of a multipart MIME message must be formatted properly.
  5400. //
  5401. // * MIME content types must be among those supported by Amazon SES. For
  5402. // more information, go to the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types.html).
  5403. //
  5404. // * Must be base64-encoded.
  5405. //
  5406. // RawMessage is a required field
  5407. RawMessage *RawMessage `type:"structure" required:"true"`
  5408. // This parameter is used only for sending authorization. It is the ARN of the
  5409. // identity that is associated with the sending authorization policy that permits
  5410. // you to use the email address specified in the ReturnPath parameter.
  5411. //
  5412. // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com)
  5413. // attaches a policy to it that authorizes you to use feedback@example.com,
  5414. // then you would specify the ReturnPathArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com,
  5415. // and the ReturnPath to be feedback@example.com.
  5416. //
  5417. // Instead of using this parameter, you can use the X-header X-SES-RETURN-PATH-ARN
  5418. // in the raw message of the email. If you use both the ReturnPathArn parameter
  5419. // and the corresponding X-header, Amazon SES uses the value of the ReturnPathArn
  5420. // parameter.
  5421. //
  5422. // For information about when to use this parameter, see the description of
  5423. // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html).
  5424. ReturnPathArn *string `type:"string"`
  5425. // The identity's email address. If you do not provide a value for this parameter,
  5426. // you must specify a "From" address in the raw text of the message. (You can
  5427. // also specify both.)
  5428. //
  5429. // By default, the string must be 7-bit ASCII. If the text must contain any
  5430. // other characters, then you must use MIME encoded-word syntax (RFC 2047) instead
  5431. // of a literal string. MIME encoded-word syntax uses the following form: =?charset?encoding?encoded-text?=.
  5432. // For more information, see RFC 2047 (http://tools.ietf.org/html/rfc2047).
  5433. //
  5434. // If you specify the Source parameter and have feedback forwarding enabled,
  5435. // then bounces and complaints will be sent to this email address. This takes
  5436. // precedence over any Return-Path header that you might include in the raw
  5437. // text of the message.
  5438. Source *string `type:"string"`
  5439. // This parameter is used only for sending authorization. It is the ARN of the
  5440. // identity that is associated with the sending authorization policy that permits
  5441. // you to send for the email address specified in the Source parameter.
  5442. //
  5443. // For example, if the owner of example.com (which has ARN arn:aws:ses:us-east-1:123456789012:identity/example.com)
  5444. // attaches a policy to it that authorizes you to send from user@example.com,
  5445. // then you would specify the SourceArn to be arn:aws:ses:us-east-1:123456789012:identity/example.com,
  5446. // and the Source to be user@example.com.
  5447. //
  5448. // Instead of using this parameter, you can use the X-header X-SES-SOURCE-ARN
  5449. // in the raw message of the email. If you use both the SourceArn parameter
  5450. // and the corresponding X-header, Amazon SES uses the value of the SourceArn
  5451. // parameter.
  5452. //
  5453. // For information about when to use this parameter, see the description of
  5454. // SendRawEmail in this guide, or see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html).
  5455. SourceArn *string `type:"string"`
  5456. }
  5457. // String returns the string representation
  5458. func (s SendRawEmailInput) String() string {
  5459. return awsutil.Prettify(s)
  5460. }
  5461. // GoString returns the string representation
  5462. func (s SendRawEmailInput) GoString() string {
  5463. return s.String()
  5464. }
  5465. // Validate inspects the fields of the type to determine if they are valid.
  5466. func (s *SendRawEmailInput) Validate() error {
  5467. invalidParams := request.ErrInvalidParams{Context: "SendRawEmailInput"}
  5468. if s.RawMessage == nil {
  5469. invalidParams.Add(request.NewErrParamRequired("RawMessage"))
  5470. }
  5471. if s.RawMessage != nil {
  5472. if err := s.RawMessage.Validate(); err != nil {
  5473. invalidParams.AddNested("RawMessage", err.(request.ErrInvalidParams))
  5474. }
  5475. }
  5476. if invalidParams.Len() > 0 {
  5477. return invalidParams
  5478. }
  5479. return nil
  5480. }
  5481. // Represents a unique message ID.
  5482. type SendRawEmailOutput struct {
  5483. _ struct{} `type:"structure"`
  5484. // The unique message identifier returned from the SendRawEmail action.
  5485. //
  5486. // MessageId is a required field
  5487. MessageId *string `type:"string" required:"true"`
  5488. }
  5489. // String returns the string representation
  5490. func (s SendRawEmailOutput) String() string {
  5491. return awsutil.Prettify(s)
  5492. }
  5493. // GoString returns the string representation
  5494. func (s SendRawEmailOutput) GoString() string {
  5495. return s.String()
  5496. }
  5497. // Represents a request to set a receipt rule set as the active receipt rule
  5498. // set. You use receipt rule sets to receive email with Amazon SES. For more
  5499. // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  5500. type SetActiveReceiptRuleSetInput struct {
  5501. _ struct{} `type:"structure"`
  5502. // The name of the receipt rule set to make active. Setting this value to null
  5503. // disables all email receiving.
  5504. RuleSetName *string `type:"string"`
  5505. }
  5506. // String returns the string representation
  5507. func (s SetActiveReceiptRuleSetInput) String() string {
  5508. return awsutil.Prettify(s)
  5509. }
  5510. // GoString returns the string representation
  5511. func (s SetActiveReceiptRuleSetInput) GoString() string {
  5512. return s.String()
  5513. }
  5514. // An empty element returned on a successful request.
  5515. type SetActiveReceiptRuleSetOutput struct {
  5516. _ struct{} `type:"structure"`
  5517. }
  5518. // String returns the string representation
  5519. func (s SetActiveReceiptRuleSetOutput) String() string {
  5520. return awsutil.Prettify(s)
  5521. }
  5522. // GoString returns the string representation
  5523. func (s SetActiveReceiptRuleSetOutput) GoString() string {
  5524. return s.String()
  5525. }
  5526. // Represents a request to enable or disable Amazon SES Easy DKIM signing for
  5527. // an identity. For more information about setting up Easy DKIM, see the Amazon
  5528. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html).
  5529. type SetIdentityDkimEnabledInput struct {
  5530. _ struct{} `type:"structure"`
  5531. // Sets whether DKIM signing is enabled for an identity. Set to true to enable
  5532. // DKIM signing for this identity; false to disable it.
  5533. //
  5534. // DkimEnabled is a required field
  5535. DkimEnabled *bool `type:"boolean" required:"true"`
  5536. // The identity for which DKIM signing should be enabled or disabled.
  5537. //
  5538. // Identity is a required field
  5539. Identity *string `type:"string" required:"true"`
  5540. }
  5541. // String returns the string representation
  5542. func (s SetIdentityDkimEnabledInput) String() string {
  5543. return awsutil.Prettify(s)
  5544. }
  5545. // GoString returns the string representation
  5546. func (s SetIdentityDkimEnabledInput) GoString() string {
  5547. return s.String()
  5548. }
  5549. // Validate inspects the fields of the type to determine if they are valid.
  5550. func (s *SetIdentityDkimEnabledInput) Validate() error {
  5551. invalidParams := request.ErrInvalidParams{Context: "SetIdentityDkimEnabledInput"}
  5552. if s.DkimEnabled == nil {
  5553. invalidParams.Add(request.NewErrParamRequired("DkimEnabled"))
  5554. }
  5555. if s.Identity == nil {
  5556. invalidParams.Add(request.NewErrParamRequired("Identity"))
  5557. }
  5558. if invalidParams.Len() > 0 {
  5559. return invalidParams
  5560. }
  5561. return nil
  5562. }
  5563. // An empty element returned on a successful request.
  5564. type SetIdentityDkimEnabledOutput struct {
  5565. _ struct{} `type:"structure"`
  5566. }
  5567. // String returns the string representation
  5568. func (s SetIdentityDkimEnabledOutput) String() string {
  5569. return awsutil.Prettify(s)
  5570. }
  5571. // GoString returns the string representation
  5572. func (s SetIdentityDkimEnabledOutput) GoString() string {
  5573. return s.String()
  5574. }
  5575. // Represents a request to enable or disable whether Amazon SES forwards you
  5576. // bounce and complaint notifications through email. For information about email
  5577. // feedback forwarding, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-email.html).
  5578. type SetIdentityFeedbackForwardingEnabledInput struct {
  5579. _ struct{} `type:"structure"`
  5580. // Sets whether Amazon SES will forward bounce and complaint notifications as
  5581. // email. true specifies that Amazon SES will forward bounce and complaint notifications
  5582. // as email, in addition to any Amazon SNS topic publishing otherwise specified.
  5583. // false specifies that Amazon SES will publish bounce and complaint notifications
  5584. // only through Amazon SNS. This value can only be set to false when Amazon
  5585. // SNS topics are set for both Bounce and Complaint notification types.
  5586. //
  5587. // ForwardingEnabled is a required field
  5588. ForwardingEnabled *bool `type:"boolean" required:"true"`
  5589. // The identity for which to set bounce and complaint notification forwarding.
  5590. // Examples: user@example.com, example.com.
  5591. //
  5592. // Identity is a required field
  5593. Identity *string `type:"string" required:"true"`
  5594. }
  5595. // String returns the string representation
  5596. func (s SetIdentityFeedbackForwardingEnabledInput) String() string {
  5597. return awsutil.Prettify(s)
  5598. }
  5599. // GoString returns the string representation
  5600. func (s SetIdentityFeedbackForwardingEnabledInput) GoString() string {
  5601. return s.String()
  5602. }
  5603. // Validate inspects the fields of the type to determine if they are valid.
  5604. func (s *SetIdentityFeedbackForwardingEnabledInput) Validate() error {
  5605. invalidParams := request.ErrInvalidParams{Context: "SetIdentityFeedbackForwardingEnabledInput"}
  5606. if s.ForwardingEnabled == nil {
  5607. invalidParams.Add(request.NewErrParamRequired("ForwardingEnabled"))
  5608. }
  5609. if s.Identity == nil {
  5610. invalidParams.Add(request.NewErrParamRequired("Identity"))
  5611. }
  5612. if invalidParams.Len() > 0 {
  5613. return invalidParams
  5614. }
  5615. return nil
  5616. }
  5617. // An empty element returned on a successful request.
  5618. type SetIdentityFeedbackForwardingEnabledOutput struct {
  5619. _ struct{} `type:"structure"`
  5620. }
  5621. // String returns the string representation
  5622. func (s SetIdentityFeedbackForwardingEnabledOutput) String() string {
  5623. return awsutil.Prettify(s)
  5624. }
  5625. // GoString returns the string representation
  5626. func (s SetIdentityFeedbackForwardingEnabledOutput) GoString() string {
  5627. return s.String()
  5628. }
  5629. // Represents a request to set whether Amazon SES includes the original email
  5630. // headers in the Amazon SNS notifications of a specified type. For information
  5631. // about notifications, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html).
  5632. type SetIdentityHeadersInNotificationsEnabledInput struct {
  5633. _ struct{} `type:"structure"`
  5634. // Sets whether Amazon SES includes the original email headers in Amazon SNS
  5635. // notifications of the specified notification type. A value of true specifies
  5636. // that Amazon SES will include headers in notifications, and a value of false
  5637. // specifies that Amazon SES will not include headers in notifications.
  5638. //
  5639. // This value can only be set when NotificationType is already set to use a
  5640. // particular Amazon SNS topic.
  5641. //
  5642. // Enabled is a required field
  5643. Enabled *bool `type:"boolean" required:"true"`
  5644. // The identity for which to enable or disable headers in notifications. Examples:
  5645. // user@example.com, example.com.
  5646. //
  5647. // Identity is a required field
  5648. Identity *string `type:"string" required:"true"`
  5649. // The notification type for which to enable or disable headers in notifications.
  5650. //
  5651. // NotificationType is a required field
  5652. NotificationType *string `type:"string" required:"true" enum:"NotificationType"`
  5653. }
  5654. // String returns the string representation
  5655. func (s SetIdentityHeadersInNotificationsEnabledInput) String() string {
  5656. return awsutil.Prettify(s)
  5657. }
  5658. // GoString returns the string representation
  5659. func (s SetIdentityHeadersInNotificationsEnabledInput) GoString() string {
  5660. return s.String()
  5661. }
  5662. // Validate inspects the fields of the type to determine if they are valid.
  5663. func (s *SetIdentityHeadersInNotificationsEnabledInput) Validate() error {
  5664. invalidParams := request.ErrInvalidParams{Context: "SetIdentityHeadersInNotificationsEnabledInput"}
  5665. if s.Enabled == nil {
  5666. invalidParams.Add(request.NewErrParamRequired("Enabled"))
  5667. }
  5668. if s.Identity == nil {
  5669. invalidParams.Add(request.NewErrParamRequired("Identity"))
  5670. }
  5671. if s.NotificationType == nil {
  5672. invalidParams.Add(request.NewErrParamRequired("NotificationType"))
  5673. }
  5674. if invalidParams.Len() > 0 {
  5675. return invalidParams
  5676. }
  5677. return nil
  5678. }
  5679. // An empty element returned on a successful request.
  5680. type SetIdentityHeadersInNotificationsEnabledOutput struct {
  5681. _ struct{} `type:"structure"`
  5682. }
  5683. // String returns the string representation
  5684. func (s SetIdentityHeadersInNotificationsEnabledOutput) String() string {
  5685. return awsutil.Prettify(s)
  5686. }
  5687. // GoString returns the string representation
  5688. func (s SetIdentityHeadersInNotificationsEnabledOutput) GoString() string {
  5689. return s.String()
  5690. }
  5691. // Represents a request to enable or disable the Amazon SES custom MAIL FROM
  5692. // domain setup for a verified identity. For information about using a custom
  5693. // MAIL FROM domain, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html).
  5694. type SetIdentityMailFromDomainInput struct {
  5695. _ struct{} `type:"structure"`
  5696. // The action that you want Amazon SES to take if it cannot successfully read
  5697. // the required MX record when you send an email. If you choose UseDefaultValue,
  5698. // Amazon SES will use amazonses.com (or a subdomain of that) as the MAIL FROM
  5699. // domain. If you choose RejectMessage, Amazon SES will return a MailFromDomainNotVerified
  5700. // error and not send the email.
  5701. //
  5702. // The action specified in BehaviorOnMXFailure is taken when the custom MAIL
  5703. // FROM domain setup is in the Pending, Failed, and TemporaryFailure states.
  5704. BehaviorOnMXFailure *string `type:"string" enum:"BehaviorOnMXFailure"`
  5705. // The verified identity for which you want to enable or disable the specified
  5706. // custom MAIL FROM domain.
  5707. //
  5708. // Identity is a required field
  5709. Identity *string `type:"string" required:"true"`
  5710. // The custom MAIL FROM domain that you want the verified identity to use. The
  5711. // MAIL FROM domain must 1) be a subdomain of the verified identity, 2) not
  5712. // be used in a "From" address if the MAIL FROM domain is the destination of
  5713. // email feedback forwarding (for more information, see the Amazon SES Developer
  5714. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mail-from.html)),
  5715. // and 3) not be used to receive emails. A value of null disables the custom
  5716. // MAIL FROM setting for the identity.
  5717. MailFromDomain *string `type:"string"`
  5718. }
  5719. // String returns the string representation
  5720. func (s SetIdentityMailFromDomainInput) String() string {
  5721. return awsutil.Prettify(s)
  5722. }
  5723. // GoString returns the string representation
  5724. func (s SetIdentityMailFromDomainInput) GoString() string {
  5725. return s.String()
  5726. }
  5727. // Validate inspects the fields of the type to determine if they are valid.
  5728. func (s *SetIdentityMailFromDomainInput) Validate() error {
  5729. invalidParams := request.ErrInvalidParams{Context: "SetIdentityMailFromDomainInput"}
  5730. if s.Identity == nil {
  5731. invalidParams.Add(request.NewErrParamRequired("Identity"))
  5732. }
  5733. if invalidParams.Len() > 0 {
  5734. return invalidParams
  5735. }
  5736. return nil
  5737. }
  5738. // An empty element returned on a successful request.
  5739. type SetIdentityMailFromDomainOutput struct {
  5740. _ struct{} `type:"structure"`
  5741. }
  5742. // String returns the string representation
  5743. func (s SetIdentityMailFromDomainOutput) String() string {
  5744. return awsutil.Prettify(s)
  5745. }
  5746. // GoString returns the string representation
  5747. func (s SetIdentityMailFromDomainOutput) GoString() string {
  5748. return s.String()
  5749. }
  5750. // Represents a request to specify the Amazon SNS topic to which Amazon SES
  5751. // will publish bounce, complaint, or delivery notifications for emails sent
  5752. // with that identity as the Source. For information about Amazon SES notifications,
  5753. // see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications-via-sns.html).
  5754. type SetIdentityNotificationTopicInput struct {
  5755. _ struct{} `type:"structure"`
  5756. // The identity for which the Amazon SNS topic will be set. You can specify
  5757. // an identity by using its name or by using its Amazon Resource Name (ARN).
  5758. // Examples: user@example.com, example.com, arn:aws:ses:us-east-1:123456789012:identity/example.com.
  5759. //
  5760. // Identity is a required field
  5761. Identity *string `type:"string" required:"true"`
  5762. // The type of notifications that will be published to the specified Amazon
  5763. // SNS topic.
  5764. //
  5765. // NotificationType is a required field
  5766. NotificationType *string `type:"string" required:"true" enum:"NotificationType"`
  5767. // The Amazon Resource Name (ARN) of the Amazon SNS topic. If the parameter
  5768. // is omitted from the request or a null value is passed, SnsTopic is cleared
  5769. // and publishing is disabled.
  5770. SnsTopic *string `type:"string"`
  5771. }
  5772. // String returns the string representation
  5773. func (s SetIdentityNotificationTopicInput) String() string {
  5774. return awsutil.Prettify(s)
  5775. }
  5776. // GoString returns the string representation
  5777. func (s SetIdentityNotificationTopicInput) GoString() string {
  5778. return s.String()
  5779. }
  5780. // Validate inspects the fields of the type to determine if they are valid.
  5781. func (s *SetIdentityNotificationTopicInput) Validate() error {
  5782. invalidParams := request.ErrInvalidParams{Context: "SetIdentityNotificationTopicInput"}
  5783. if s.Identity == nil {
  5784. invalidParams.Add(request.NewErrParamRequired("Identity"))
  5785. }
  5786. if s.NotificationType == nil {
  5787. invalidParams.Add(request.NewErrParamRequired("NotificationType"))
  5788. }
  5789. if invalidParams.Len() > 0 {
  5790. return invalidParams
  5791. }
  5792. return nil
  5793. }
  5794. // An empty element returned on a successful request.
  5795. type SetIdentityNotificationTopicOutput struct {
  5796. _ struct{} `type:"structure"`
  5797. }
  5798. // String returns the string representation
  5799. func (s SetIdentityNotificationTopicOutput) String() string {
  5800. return awsutil.Prettify(s)
  5801. }
  5802. // GoString returns the string representation
  5803. func (s SetIdentityNotificationTopicOutput) GoString() string {
  5804. return s.String()
  5805. }
  5806. // Represents a request to set the position of a receipt rule in a receipt rule
  5807. // set. You use receipt rule sets to receive email with Amazon SES. For more
  5808. // information, see the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  5809. type SetReceiptRulePositionInput struct {
  5810. _ struct{} `type:"structure"`
  5811. // The name of the receipt rule after which to place the specified receipt rule.
  5812. After *string `type:"string"`
  5813. // The name of the receipt rule to reposition.
  5814. //
  5815. // RuleName is a required field
  5816. RuleName *string `type:"string" required:"true"`
  5817. // The name of the receipt rule set that contains the receipt rule to reposition.
  5818. //
  5819. // RuleSetName is a required field
  5820. RuleSetName *string `type:"string" required:"true"`
  5821. }
  5822. // String returns the string representation
  5823. func (s SetReceiptRulePositionInput) String() string {
  5824. return awsutil.Prettify(s)
  5825. }
  5826. // GoString returns the string representation
  5827. func (s SetReceiptRulePositionInput) GoString() string {
  5828. return s.String()
  5829. }
  5830. // Validate inspects the fields of the type to determine if they are valid.
  5831. func (s *SetReceiptRulePositionInput) Validate() error {
  5832. invalidParams := request.ErrInvalidParams{Context: "SetReceiptRulePositionInput"}
  5833. if s.RuleName == nil {
  5834. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  5835. }
  5836. if s.RuleSetName == nil {
  5837. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  5838. }
  5839. if invalidParams.Len() > 0 {
  5840. return invalidParams
  5841. }
  5842. return nil
  5843. }
  5844. // An empty element returned on a successful request.
  5845. type SetReceiptRulePositionOutput struct {
  5846. _ struct{} `type:"structure"`
  5847. }
  5848. // String returns the string representation
  5849. func (s SetReceiptRulePositionOutput) String() string {
  5850. return awsutil.Prettify(s)
  5851. }
  5852. // GoString returns the string representation
  5853. func (s SetReceiptRulePositionOutput) GoString() string {
  5854. return s.String()
  5855. }
  5856. // When included in a receipt rule, this action terminates the evaluation of
  5857. // the receipt rule set and, optionally, publishes a notification to Amazon
  5858. // Simple Notification Service (Amazon SNS).
  5859. //
  5860. // For information about setting a stop action in a receipt rule, see the Amazon
  5861. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-stop.html).
  5862. type StopAction struct {
  5863. _ struct{} `type:"structure"`
  5864. // The scope to which the Stop action applies. That is, what is being stopped.
  5865. //
  5866. // Scope is a required field
  5867. Scope *string `type:"string" required:"true" enum:"StopScope"`
  5868. // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the
  5869. // stop action is taken. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  5870. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  5871. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  5872. TopicArn *string `type:"string"`
  5873. }
  5874. // String returns the string representation
  5875. func (s StopAction) String() string {
  5876. return awsutil.Prettify(s)
  5877. }
  5878. // GoString returns the string representation
  5879. func (s StopAction) GoString() string {
  5880. return s.String()
  5881. }
  5882. // Validate inspects the fields of the type to determine if they are valid.
  5883. func (s *StopAction) Validate() error {
  5884. invalidParams := request.ErrInvalidParams{Context: "StopAction"}
  5885. if s.Scope == nil {
  5886. invalidParams.Add(request.NewErrParamRequired("Scope"))
  5887. }
  5888. if invalidParams.Len() > 0 {
  5889. return invalidParams
  5890. }
  5891. return nil
  5892. }
  5893. // Represents a request to update a receipt rule. You use receipt rules to receive
  5894. // email with Amazon SES. For more information, see the Amazon SES Developer
  5895. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html).
  5896. type UpdateReceiptRuleInput struct {
  5897. _ struct{} `type:"structure"`
  5898. // A data structure that contains the updated receipt rule information.
  5899. //
  5900. // Rule is a required field
  5901. Rule *ReceiptRule `type:"structure" required:"true"`
  5902. // The name of the receipt rule set to which the receipt rule belongs.
  5903. //
  5904. // RuleSetName is a required field
  5905. RuleSetName *string `type:"string" required:"true"`
  5906. }
  5907. // String returns the string representation
  5908. func (s UpdateReceiptRuleInput) String() string {
  5909. return awsutil.Prettify(s)
  5910. }
  5911. // GoString returns the string representation
  5912. func (s UpdateReceiptRuleInput) GoString() string {
  5913. return s.String()
  5914. }
  5915. // Validate inspects the fields of the type to determine if they are valid.
  5916. func (s *UpdateReceiptRuleInput) Validate() error {
  5917. invalidParams := request.ErrInvalidParams{Context: "UpdateReceiptRuleInput"}
  5918. if s.Rule == nil {
  5919. invalidParams.Add(request.NewErrParamRequired("Rule"))
  5920. }
  5921. if s.RuleSetName == nil {
  5922. invalidParams.Add(request.NewErrParamRequired("RuleSetName"))
  5923. }
  5924. if s.Rule != nil {
  5925. if err := s.Rule.Validate(); err != nil {
  5926. invalidParams.AddNested("Rule", err.(request.ErrInvalidParams))
  5927. }
  5928. }
  5929. if invalidParams.Len() > 0 {
  5930. return invalidParams
  5931. }
  5932. return nil
  5933. }
  5934. // An empty element returned on a successful request.
  5935. type UpdateReceiptRuleOutput struct {
  5936. _ struct{} `type:"structure"`
  5937. }
  5938. // String returns the string representation
  5939. func (s UpdateReceiptRuleOutput) String() string {
  5940. return awsutil.Prettify(s)
  5941. }
  5942. // GoString returns the string representation
  5943. func (s UpdateReceiptRuleOutput) GoString() string {
  5944. return s.String()
  5945. }
  5946. // Represents a request to generate the CNAME records needed to set up Easy
  5947. // DKIM with Amazon SES. For more information about setting up Easy DKIM, see
  5948. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html).
  5949. type VerifyDomainDkimInput struct {
  5950. _ struct{} `type:"structure"`
  5951. // The name of the domain to be verified for Easy DKIM signing.
  5952. //
  5953. // Domain is a required field
  5954. Domain *string `type:"string" required:"true"`
  5955. }
  5956. // String returns the string representation
  5957. func (s VerifyDomainDkimInput) String() string {
  5958. return awsutil.Prettify(s)
  5959. }
  5960. // GoString returns the string representation
  5961. func (s VerifyDomainDkimInput) GoString() string {
  5962. return s.String()
  5963. }
  5964. // Validate inspects the fields of the type to determine if they are valid.
  5965. func (s *VerifyDomainDkimInput) Validate() error {
  5966. invalidParams := request.ErrInvalidParams{Context: "VerifyDomainDkimInput"}
  5967. if s.Domain == nil {
  5968. invalidParams.Add(request.NewErrParamRequired("Domain"))
  5969. }
  5970. if invalidParams.Len() > 0 {
  5971. return invalidParams
  5972. }
  5973. return nil
  5974. }
  5975. // Returns CNAME records that you must publish to the DNS server of your domain
  5976. // to set up Easy DKIM with Amazon SES.
  5977. type VerifyDomainDkimOutput struct {
  5978. _ struct{} `type:"structure"`
  5979. // A set of character strings that represent the domain's identity. If the identity
  5980. // is an email address, the tokens represent the domain of that address.
  5981. //
  5982. // Using these tokens, you will need to create DNS CNAME records that point
  5983. // to DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually
  5984. // detect that you have updated your DNS records; this detection process may
  5985. // take up to 72 hours. Upon successful detection, Amazon SES will be able to
  5986. // DKIM-sign emails originating from that domain.
  5987. //
  5988. // For more information about creating DNS records using DKIM tokens, go to
  5989. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html).
  5990. //
  5991. // DkimTokens is a required field
  5992. DkimTokens []*string `type:"list" required:"true"`
  5993. }
  5994. // String returns the string representation
  5995. func (s VerifyDomainDkimOutput) String() string {
  5996. return awsutil.Prettify(s)
  5997. }
  5998. // GoString returns the string representation
  5999. func (s VerifyDomainDkimOutput) GoString() string {
  6000. return s.String()
  6001. }
  6002. // Represents a request to begin Amazon SES domain verification and to generate
  6003. // the TXT records that you must publish to the DNS server of your domain to
  6004. // complete the verification. For information about domain verification, see
  6005. // the Amazon SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-domains.html).
  6006. type VerifyDomainIdentityInput struct {
  6007. _ struct{} `type:"structure"`
  6008. // The domain to be verified.
  6009. //
  6010. // Domain is a required field
  6011. Domain *string `type:"string" required:"true"`
  6012. }
  6013. // String returns the string representation
  6014. func (s VerifyDomainIdentityInput) String() string {
  6015. return awsutil.Prettify(s)
  6016. }
  6017. // GoString returns the string representation
  6018. func (s VerifyDomainIdentityInput) GoString() string {
  6019. return s.String()
  6020. }
  6021. // Validate inspects the fields of the type to determine if they are valid.
  6022. func (s *VerifyDomainIdentityInput) Validate() error {
  6023. invalidParams := request.ErrInvalidParams{Context: "VerifyDomainIdentityInput"}
  6024. if s.Domain == nil {
  6025. invalidParams.Add(request.NewErrParamRequired("Domain"))
  6026. }
  6027. if invalidParams.Len() > 0 {
  6028. return invalidParams
  6029. }
  6030. return nil
  6031. }
  6032. // Returns a TXT record that you must publish to the DNS server of your domain
  6033. // to complete domain verification with Amazon SES.
  6034. type VerifyDomainIdentityOutput struct {
  6035. _ struct{} `type:"structure"`
  6036. // A TXT record that must be placed in the DNS settings for the domain, in order
  6037. // to complete domain verification.
  6038. //
  6039. // VerificationToken is a required field
  6040. VerificationToken *string `type:"string" required:"true"`
  6041. }
  6042. // String returns the string representation
  6043. func (s VerifyDomainIdentityOutput) String() string {
  6044. return awsutil.Prettify(s)
  6045. }
  6046. // GoString returns the string representation
  6047. func (s VerifyDomainIdentityOutput) GoString() string {
  6048. return s.String()
  6049. }
  6050. // Represents a request to begin email address verification with Amazon SES.
  6051. // For information about email address verification, see the Amazon SES Developer
  6052. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html).
  6053. type VerifyEmailAddressInput struct {
  6054. _ struct{} `type:"structure"`
  6055. // The email address to be verified.
  6056. //
  6057. // EmailAddress is a required field
  6058. EmailAddress *string `type:"string" required:"true"`
  6059. }
  6060. // String returns the string representation
  6061. func (s VerifyEmailAddressInput) String() string {
  6062. return awsutil.Prettify(s)
  6063. }
  6064. // GoString returns the string representation
  6065. func (s VerifyEmailAddressInput) GoString() string {
  6066. return s.String()
  6067. }
  6068. // Validate inspects the fields of the type to determine if they are valid.
  6069. func (s *VerifyEmailAddressInput) Validate() error {
  6070. invalidParams := request.ErrInvalidParams{Context: "VerifyEmailAddressInput"}
  6071. if s.EmailAddress == nil {
  6072. invalidParams.Add(request.NewErrParamRequired("EmailAddress"))
  6073. }
  6074. if invalidParams.Len() > 0 {
  6075. return invalidParams
  6076. }
  6077. return nil
  6078. }
  6079. type VerifyEmailAddressOutput struct {
  6080. _ struct{} `type:"structure"`
  6081. }
  6082. // String returns the string representation
  6083. func (s VerifyEmailAddressOutput) String() string {
  6084. return awsutil.Prettify(s)
  6085. }
  6086. // GoString returns the string representation
  6087. func (s VerifyEmailAddressOutput) GoString() string {
  6088. return s.String()
  6089. }
  6090. // Represents a request to begin email address verification with Amazon SES.
  6091. // For information about email address verification, see the Amazon SES Developer
  6092. // Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-email-addresses.html).
  6093. type VerifyEmailIdentityInput struct {
  6094. _ struct{} `type:"structure"`
  6095. // The email address to be verified.
  6096. //
  6097. // EmailAddress is a required field
  6098. EmailAddress *string `type:"string" required:"true"`
  6099. }
  6100. // String returns the string representation
  6101. func (s VerifyEmailIdentityInput) String() string {
  6102. return awsutil.Prettify(s)
  6103. }
  6104. // GoString returns the string representation
  6105. func (s VerifyEmailIdentityInput) GoString() string {
  6106. return s.String()
  6107. }
  6108. // Validate inspects the fields of the type to determine if they are valid.
  6109. func (s *VerifyEmailIdentityInput) Validate() error {
  6110. invalidParams := request.ErrInvalidParams{Context: "VerifyEmailIdentityInput"}
  6111. if s.EmailAddress == nil {
  6112. invalidParams.Add(request.NewErrParamRequired("EmailAddress"))
  6113. }
  6114. if invalidParams.Len() > 0 {
  6115. return invalidParams
  6116. }
  6117. return nil
  6118. }
  6119. // An empty element returned on a successful request.
  6120. type VerifyEmailIdentityOutput struct {
  6121. _ struct{} `type:"structure"`
  6122. }
  6123. // String returns the string representation
  6124. func (s VerifyEmailIdentityOutput) String() string {
  6125. return awsutil.Prettify(s)
  6126. }
  6127. // GoString returns the string representation
  6128. func (s VerifyEmailIdentityOutput) GoString() string {
  6129. return s.String()
  6130. }
  6131. // When included in a receipt rule, this action calls Amazon WorkMail and, optionally,
  6132. // publishes a notification to Amazon Simple Notification Service (Amazon SNS).
  6133. // You will typically not use this action directly because Amazon WorkMail adds
  6134. // the rule automatically during its setup procedure.
  6135. //
  6136. // For information using a receipt rule to call Amazon WorkMail, see the Amazon
  6137. // SES Developer Guide (http://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-action-workmail.html).
  6138. type WorkmailAction struct {
  6139. _ struct{} `type:"structure"`
  6140. // The ARN of the Amazon WorkMail organization. An example of an Amazon WorkMail
  6141. // organization ARN is arn:aws:workmail:us-west-2:123456789012:organization/m-68755160c4cb4e29a2b2f8fb58f359d7.
  6142. // For information about Amazon WorkMail organizations, see the Amazon WorkMail
  6143. // Administrator Guide (http://docs.aws.amazon.com/workmail/latest/adminguide/organizations_overview.html).
  6144. //
  6145. // OrganizationArn is a required field
  6146. OrganizationArn *string `type:"string" required:"true"`
  6147. // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the
  6148. // WorkMail action is called. An example of an Amazon SNS topic ARN is arn:aws:sns:us-west-2:123456789012:MyTopic.
  6149. // For more information about Amazon SNS topics, see the Amazon SNS Developer
  6150. // Guide (http://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html).
  6151. TopicArn *string `type:"string"`
  6152. }
  6153. // String returns the string representation
  6154. func (s WorkmailAction) String() string {
  6155. return awsutil.Prettify(s)
  6156. }
  6157. // GoString returns the string representation
  6158. func (s WorkmailAction) GoString() string {
  6159. return s.String()
  6160. }
  6161. // Validate inspects the fields of the type to determine if they are valid.
  6162. func (s *WorkmailAction) Validate() error {
  6163. invalidParams := request.ErrInvalidParams{Context: "WorkmailAction"}
  6164. if s.OrganizationArn == nil {
  6165. invalidParams.Add(request.NewErrParamRequired("OrganizationArn"))
  6166. }
  6167. if invalidParams.Len() > 0 {
  6168. return invalidParams
  6169. }
  6170. return nil
  6171. }
  6172. const (
  6173. // BehaviorOnMXFailureUseDefaultValue is a BehaviorOnMXFailure enum value
  6174. BehaviorOnMXFailureUseDefaultValue = "UseDefaultValue"
  6175. // BehaviorOnMXFailureRejectMessage is a BehaviorOnMXFailure enum value
  6176. BehaviorOnMXFailureRejectMessage = "RejectMessage"
  6177. )
  6178. const (
  6179. // BounceTypeDoesNotExist is a BounceType enum value
  6180. BounceTypeDoesNotExist = "DoesNotExist"
  6181. // BounceTypeMessageTooLarge is a BounceType enum value
  6182. BounceTypeMessageTooLarge = "MessageTooLarge"
  6183. // BounceTypeExceededQuota is a BounceType enum value
  6184. BounceTypeExceededQuota = "ExceededQuota"
  6185. // BounceTypeContentRejected is a BounceType enum value
  6186. BounceTypeContentRejected = "ContentRejected"
  6187. // BounceTypeUndefined is a BounceType enum value
  6188. BounceTypeUndefined = "Undefined"
  6189. // BounceTypeTemporaryFailure is a BounceType enum value
  6190. BounceTypeTemporaryFailure = "TemporaryFailure"
  6191. )
  6192. const (
  6193. // CustomMailFromStatusPending is a CustomMailFromStatus enum value
  6194. CustomMailFromStatusPending = "Pending"
  6195. // CustomMailFromStatusSuccess is a CustomMailFromStatus enum value
  6196. CustomMailFromStatusSuccess = "Success"
  6197. // CustomMailFromStatusFailed is a CustomMailFromStatus enum value
  6198. CustomMailFromStatusFailed = "Failed"
  6199. // CustomMailFromStatusTemporaryFailure is a CustomMailFromStatus enum value
  6200. CustomMailFromStatusTemporaryFailure = "TemporaryFailure"
  6201. )
  6202. const (
  6203. // DsnActionFailed is a DsnAction enum value
  6204. DsnActionFailed = "failed"
  6205. // DsnActionDelayed is a DsnAction enum value
  6206. DsnActionDelayed = "delayed"
  6207. // DsnActionDelivered is a DsnAction enum value
  6208. DsnActionDelivered = "delivered"
  6209. // DsnActionRelayed is a DsnAction enum value
  6210. DsnActionRelayed = "relayed"
  6211. // DsnActionExpanded is a DsnAction enum value
  6212. DsnActionExpanded = "expanded"
  6213. )
  6214. const (
  6215. // IdentityTypeEmailAddress is a IdentityType enum value
  6216. IdentityTypeEmailAddress = "EmailAddress"
  6217. // IdentityTypeDomain is a IdentityType enum value
  6218. IdentityTypeDomain = "Domain"
  6219. )
  6220. const (
  6221. // InvocationTypeEvent is a InvocationType enum value
  6222. InvocationTypeEvent = "Event"
  6223. // InvocationTypeRequestResponse is a InvocationType enum value
  6224. InvocationTypeRequestResponse = "RequestResponse"
  6225. )
  6226. const (
  6227. // NotificationTypeBounce is a NotificationType enum value
  6228. NotificationTypeBounce = "Bounce"
  6229. // NotificationTypeComplaint is a NotificationType enum value
  6230. NotificationTypeComplaint = "Complaint"
  6231. // NotificationTypeDelivery is a NotificationType enum value
  6232. NotificationTypeDelivery = "Delivery"
  6233. )
  6234. const (
  6235. // ReceiptFilterPolicyBlock is a ReceiptFilterPolicy enum value
  6236. ReceiptFilterPolicyBlock = "Block"
  6237. // ReceiptFilterPolicyAllow is a ReceiptFilterPolicy enum value
  6238. ReceiptFilterPolicyAllow = "Allow"
  6239. )
  6240. const (
  6241. // SNSActionEncodingUtf8 is a SNSActionEncoding enum value
  6242. SNSActionEncodingUtf8 = "UTF-8"
  6243. // SNSActionEncodingBase64 is a SNSActionEncoding enum value
  6244. SNSActionEncodingBase64 = "Base64"
  6245. )
  6246. const (
  6247. // StopScopeRuleSet is a StopScope enum value
  6248. StopScopeRuleSet = "RuleSet"
  6249. )
  6250. const (
  6251. // TlsPolicyRequire is a TlsPolicy enum value
  6252. TlsPolicyRequire = "Require"
  6253. // TlsPolicyOptional is a TlsPolicy enum value
  6254. TlsPolicyOptional = "Optional"
  6255. )
  6256. const (
  6257. // VerificationStatusPending is a VerificationStatus enum value
  6258. VerificationStatusPending = "Pending"
  6259. // VerificationStatusSuccess is a VerificationStatus enum value
  6260. VerificationStatusSuccess = "Success"
  6261. // VerificationStatusFailed is a VerificationStatus enum value
  6262. VerificationStatusFailed = "Failed"
  6263. // VerificationStatusTemporaryFailure is a VerificationStatus enum value
  6264. VerificationStatusTemporaryFailure = "TemporaryFailure"
  6265. // VerificationStatusNotStarted is a VerificationStatus enum value
  6266. VerificationStatusNotStarted = "NotStarted"
  6267. )