api.go 1.2 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312263132631426315263162631726318263192632026321263222632326324263252632626327263282632926330263312633226333263342633526336263372633826339263402634126342263432634426345263462634726348263492635026351263522635326354263552635626357263582635926360263612636226363263642636526366263672636826369263702637126372263732637426375263762637726378263792638026381263822638326384263852638626387263882638926390263912639226393263942639526396263972639826399264002640126402264032640426405264062640726408264092641026411264122641326414264152641626417264182641926420264212642226423264242642526426264272642826429264302643126432264332643426435264362643726438264392644026441264422644326444264452644626447264482644926450264512645226453264542645526456264572645826459264602646126462264632646426465264662646726468264692647026471264722647326474264752647626477264782647926480264812648226483264842648526486264872648826489264902649126492264932649426495264962649726498264992650026501265022650326504265052650626507265082650926510265112651226513265142651526516265172651826519265202652126522265232652426525265262652726528265292653026531265322653326534265352653626537265382653926540265412654226543265442654526546265472654826549265502655126552265532655426555265562655726558265592656026561265622656326564265652656626567265682656926570265712657226573265742657526576265772657826579265802658126582265832658426585265862658726588265892659026591265922659326594265952659626597265982659926600266012660226603266042660526606266072660826609266102661126612266132661426615266162661726618266192662026621266222662326624266252662626627266282662926630266312663226633266342663526636266372663826639266402664126642266432664426645266462664726648266492665026651266522665326654266552665626657266582665926660266612666226663266642666526666266672666826669266702667126672266732667426675266762667726678266792668026681266822668326684266852668626687266882668926690266912669226693266942669526696266972669826699267002670126702267032670426705267062670726708267092671026711267122671326714267152671626717267182671926720267212672226723267242672526726267272672826729267302673126732267332673426735267362673726738267392674026741267422674326744267452674626747267482674926750267512675226753267542675526756267572675826759267602676126762267632676426765267662676726768267692677026771267722677326774267752677626777267782677926780267812678226783267842678526786267872678826789267902679126792267932679426795267962679726798267992680026801268022680326804268052680626807268082680926810268112681226813268142681526816268172681826819268202682126822268232682426825268262682726828268292683026831268322683326834268352683626837268382683926840268412684226843268442684526846268472684826849268502685126852268532685426855268562685726858268592686026861268622686326864268652686626867268682686926870268712687226873268742687526876268772687826879268802688126882268832688426885268862688726888268892689026891268922689326894268952689626897268982689926900269012690226903269042690526906269072690826909269102691126912269132691426915269162691726918269192692026921269222692326924269252692626927269282692926930269312693226933269342693526936269372693826939269402694126942269432694426945269462694726948269492695026951269522695326954269552695626957269582695926960269612696226963269642696526966269672696826969269702697126972269732697426975269762697726978269792698026981269822698326984269852698626987269882698926990269912699226993269942699526996269972699826999270002700127002270032700427005270062700727008270092701027011270122701327014270152701627017270182701927020270212702227023270242702527026270272702827029270302703127032270332703427035270362703727038270392704027041270422704327044270452704627047270482704927050270512705227053270542705527056270572705827059270602706127062270632706427065270662706727068270692707027071270722707327074270752707627077270782707927080270812708227083270842708527086270872708827089270902709127092270932709427095270962709727098270992710027101271022710327104271052710627107271082710927110271112711227113271142711527116271172711827119271202712127122271232712427125271262712727128271292713027131271322713327134271352713627137271382713927140271412714227143271442714527146271472714827149271502715127152271532715427155271562715727158271592716027161271622716327164271652716627167271682716927170271712717227173271742717527176271772717827179271802718127182271832718427185271862718727188271892719027191271922719327194271952719627197271982719927200272012720227203272042720527206272072720827209272102721127212272132721427215272162721727218272192722027221272222722327224272252722627227272282722927230272312723227233272342723527236272372723827239272402724127242272432724427245272462724727248272492725027251272522725327254272552725627257272582725927260272612726227263272642726527266272672726827269272702727127272272732727427275272762727727278272792728027281272822728327284272852728627287272882728927290272912729227293272942729527296272972729827299273002730127302273032730427305273062730727308273092731027311273122731327314273152731627317273182731927320273212732227323273242732527326273272732827329273302733127332273332733427335273362733727338273392734027341273422734327344273452734627347273482734927350273512735227353273542735527356273572735827359273602736127362273632736427365273662736727368273692737027371273722737327374273752737627377273782737927380273812738227383273842738527386273872738827389273902739127392273932739427395273962739727398273992740027401274022740327404274052740627407274082740927410274112741227413274142741527416274172741827419274202742127422274232742427425274262742727428274292743027431274322743327434274352743627437274382743927440274412744227443274442744527446274472744827449274502745127452274532745427455274562745727458274592746027461274622746327464274652746627467274682746927470274712747227473274742747527476274772747827479274802748127482274832748427485274862748727488274892749027491274922749327494274952749627497274982749927500275012750227503275042750527506275072750827509275102751127512275132751427515275162751727518275192752027521275222752327524275252752627527275282752927530275312753227533275342753527536275372753827539275402754127542275432754427545275462754727548275492755027551275522755327554275552755627557275582755927560275612756227563275642756527566275672756827569275702757127572275732757427575275762757727578275792758027581275822758327584275852758627587275882758927590275912759227593275942759527596275972759827599276002760127602276032760427605276062760727608276092761027611276122761327614276152761627617276182761927620276212762227623276242762527626276272762827629276302763127632276332763427635276362763727638276392764027641276422764327644276452764627647276482764927650276512765227653276542765527656276572765827659276602766127662276632766427665276662766727668276692767027671276722767327674276752767627677276782767927680276812768227683276842768527686276872768827689276902769127692276932769427695276962769727698276992770027701277022770327704277052770627707277082770927710277112771227713277142771527716277172771827719277202772127722277232772427725277262772727728277292773027731277322773327734277352773627737277382773927740277412774227743277442774527746277472774827749277502775127752277532775427755277562775727758277592776027761277622776327764277652776627767277682776927770277712777227773277742777527776277772777827779277802778127782277832778427785277862778727788277892779027791277922779327794277952779627797277982779927800278012780227803278042780527806278072780827809278102781127812278132781427815278162781727818278192782027821278222782327824278252782627827278282782927830278312783227833278342783527836278372783827839278402784127842278432784427845278462784727848278492785027851278522785327854278552785627857278582785927860278612786227863278642786527866278672786827869278702787127872278732787427875278762787727878278792788027881278822788327884278852788627887278882788927890278912789227893278942789527896278972789827899279002790127902279032790427905279062790727908279092791027911279122791327914279152791627917279182791927920279212792227923279242792527926279272792827929279302793127932279332793427935279362793727938279392794027941279422794327944279452794627947279482794927950279512795227953279542795527956279572795827959279602796127962279632796427965279662796727968279692797027971279722797327974279752797627977279782797927980279812798227983279842798527986279872798827989279902799127992279932799427995279962799727998279992800028001280022800328004280052800628007280082800928010280112801228013280142801528016280172801828019280202802128022280232802428025280262802728028280292803028031280322803328034280352803628037280382803928040280412804228043280442804528046280472804828049280502805128052280532805428055280562805728058280592806028061280622806328064280652806628067280682806928070280712807228073280742807528076280772807828079280802808128082280832808428085280862808728088280892809028091280922809328094280952809628097280982809928100281012810228103281042810528106281072810828109281102811128112281132811428115281162811728118281192812028121281222812328124281252812628127281282812928130281312813228133281342813528136281372813828139281402814128142281432814428145281462814728148281492815028151281522815328154281552815628157281582815928160281612816228163281642816528166281672816828169281702817128172281732817428175281762817728178281792818028181281822818328184281852818628187281882818928190281912819228193281942819528196281972819828199282002820128202282032820428205282062820728208282092821028211282122821328214282152821628217282182821928220282212822228223282242822528226282272822828229282302823128232282332823428235282362823728238282392824028241282422824328244282452824628247282482824928250282512825228253282542825528256282572825828259282602826128262282632826428265282662826728268282692827028271282722827328274282752827628277282782827928280282812828228283282842828528286282872828828289282902829128292282932829428295282962829728298282992830028301283022830328304283052830628307283082830928310283112831228313283142831528316283172831828319283202832128322283232832428325283262832728328283292833028331283322833328334283352833628337283382833928340283412834228343283442834528346283472834828349283502835128352283532835428355283562835728358283592836028361283622836328364283652836628367283682836928370283712837228373283742837528376283772837828379283802838128382283832838428385283862838728388283892839028391283922839328394283952839628397283982839928400284012840228403284042840528406284072840828409284102841128412284132841428415284162841728418284192842028421284222842328424284252842628427284282842928430284312843228433284342843528436284372843828439284402844128442284432844428445284462844728448284492845028451284522845328454284552845628457284582845928460284612846228463284642846528466284672846828469284702847128472284732847428475284762847728478284792848028481284822848328484284852848628487284882848928490284912849228493284942849528496284972849828499285002850128502285032850428505285062850728508285092851028511285122851328514285152851628517285182851928520285212852228523285242852528526285272852828529285302853128532285332853428535285362853728538285392854028541285422854328544285452854628547285482854928550285512855228553285542855528556285572855828559285602856128562285632856428565285662856728568285692857028571285722857328574285752857628577285782857928580285812858228583285842858528586285872858828589285902859128592285932859428595285962859728598285992860028601286022860328604286052860628607286082860928610286112861228613286142861528616286172861828619286202862128622286232862428625286262862728628286292863028631286322863328634286352863628637286382863928640286412864228643286442864528646286472864828649286502865128652286532865428655286562865728658286592866028661286622866328664286652866628667286682866928670286712867228673286742867528676286772867828679286802868128682286832868428685286862868728688286892869028691286922869328694286952869628697286982869928700287012870228703287042870528706287072870828709287102871128712287132871428715287162871728718287192872028721287222872328724287252872628727287282872928730287312873228733287342873528736287372873828739287402874128742287432874428745287462874728748287492875028751287522875328754287552875628757287582875928760287612876228763287642876528766287672876828769287702877128772287732877428775287762877728778287792878028781287822878328784287852878628787287882878928790287912879228793287942879528796287972879828799288002880128802288032880428805288062880728808288092881028811288122881328814288152881628817288182881928820288212882228823288242882528826288272882828829288302883128832288332883428835288362883728838288392884028841288422884328844288452884628847288482884928850288512885228853288542885528856288572885828859288602886128862288632886428865288662886728868288692887028871288722887328874288752887628877288782887928880288812888228883288842888528886288872888828889288902889128892288932889428895288962889728898288992890028901289022890328904289052890628907289082890928910289112891228913289142891528916289172891828919289202892128922289232892428925289262892728928289292893028931289322893328934289352893628937289382893928940289412894228943289442894528946289472894828949289502895128952289532895428955289562895728958289592896028961289622896328964289652896628967289682896928970289712897228973289742897528976289772897828979289802898128982289832898428985289862898728988289892899028991289922899328994289952899628997289982899929000290012900229003290042900529006290072900829009290102901129012290132901429015290162901729018290192902029021290222902329024290252902629027290282902929030290312903229033290342903529036290372903829039290402904129042290432904429045290462904729048290492905029051290522905329054290552905629057290582905929060290612906229063290642906529066290672906829069290702907129072290732907429075290762907729078290792908029081290822908329084290852908629087290882908929090290912909229093290942909529096290972909829099291002910129102291032910429105291062910729108291092911029111291122911329114291152911629117291182911929120291212912229123291242912529126291272912829129291302913129132291332913429135291362913729138291392914029141291422914329144291452914629147291482914929150291512915229153291542915529156291572915829159291602916129162291632916429165291662916729168291692917029171291722917329174291752917629177291782917929180291812918229183291842918529186291872918829189291902919129192291932919429195291962919729198291992920029201292022920329204292052920629207292082920929210292112921229213292142921529216292172921829219292202922129222292232922429225292262922729228292292923029231292322923329234292352923629237292382923929240292412924229243292442924529246292472924829249292502925129252292532925429255292562925729258292592926029261292622926329264292652926629267292682926929270292712927229273292742927529276292772927829279292802928129282292832928429285292862928729288292892929029291292922929329294292952929629297292982929929300293012930229303293042930529306293072930829309293102931129312293132931429315293162931729318293192932029321293222932329324293252932629327293282932929330293312933229333293342933529336293372933829339293402934129342293432934429345293462934729348293492935029351293522935329354293552935629357293582935929360293612936229363293642936529366293672936829369293702937129372293732937429375293762937729378293792938029381293822938329384293852938629387293882938929390293912939229393293942939529396293972939829399294002940129402294032940429405294062940729408294092941029411294122941329414294152941629417294182941929420294212942229423294242942529426294272942829429294302943129432294332943429435294362943729438294392944029441294422944329444294452944629447294482944929450294512945229453294542945529456294572945829459294602946129462294632946429465294662946729468294692947029471294722947329474294752947629477294782947929480294812948229483294842948529486294872948829489294902949129492294932949429495294962949729498294992950029501295022950329504295052950629507295082950929510295112951229513295142951529516295172951829519295202952129522295232952429525295262952729528295292953029531295322953329534295352953629537295382953929540295412954229543295442954529546295472954829549295502955129552295532955429555295562955729558295592956029561295622956329564295652956629567295682956929570295712957229573295742957529576295772957829579295802958129582295832958429585295862958729588295892959029591295922959329594295952959629597295982959929600296012960229603296042960529606296072960829609296102961129612296132961429615296162961729618296192962029621296222962329624296252962629627296282962929630296312963229633296342963529636296372963829639296402964129642296432964429645296462964729648296492965029651296522965329654296552965629657296582965929660296612966229663296642966529666296672966829669296702967129672296732967429675296762967729678296792968029681296822968329684296852968629687296882968929690296912969229693296942969529696296972969829699297002970129702297032970429705297062970729708297092971029711297122971329714297152971629717297182971929720297212972229723297242972529726297272972829729297302973129732297332973429735297362973729738297392974029741297422974329744297452974629747297482974929750297512975229753297542975529756297572975829759297602976129762297632976429765297662976729768297692977029771297722977329774297752977629777297782977929780297812978229783297842978529786297872978829789297902979129792297932979429795297962979729798297992980029801298022980329804298052980629807298082980929810298112981229813298142981529816298172981829819298202982129822298232982429825298262982729828298292983029831298322983329834298352983629837298382983929840298412984229843298442984529846298472984829849298502985129852298532985429855298562985729858298592986029861298622986329864298652986629867298682986929870298712987229873298742987529876298772987829879298802988129882298832988429885298862988729888298892989029891298922989329894298952989629897298982989929900299012990229903299042990529906299072990829909299102991129912299132991429915299162991729918299192992029921299222992329924299252992629927299282992929930299312993229933299342993529936299372993829939299402994129942299432994429945299462994729948299492995029951299522995329954299552995629957299582995929960299612996229963299642996529966299672996829969299702997129972299732997429975299762997729978299792998029981299822998329984299852998629987299882998929990299912999229993299942999529996299972999829999300003000130002300033000430005300063000730008300093001030011300123001330014300153001630017300183001930020300213002230023300243002530026300273002830029300303003130032300333003430035300363003730038300393004030041300423004330044300453004630047300483004930050300513005230053300543005530056300573005830059300603006130062300633006430065300663006730068300693007030071300723007330074300753007630077300783007930080300813008230083300843008530086300873008830089300903009130092300933009430095300963009730098300993010030101301023010330104301053010630107301083010930110301113011230113301143011530116301173011830119301203012130122301233012430125301263012730128301293013030131301323013330134301353013630137301383013930140301413014230143301443014530146301473014830149301503015130152301533015430155301563015730158301593016030161301623016330164301653016630167301683016930170301713017230173301743017530176301773017830179301803018130182301833018430185301863018730188301893019030191301923019330194301953019630197301983019930200302013020230203302043020530206302073020830209302103021130212302133021430215302163021730218302193022030221302223022330224302253022630227302283022930230302313023230233302343023530236302373023830239302403024130242302433024430245302463024730248302493025030251302523025330254302553025630257302583025930260302613026230263302643026530266302673026830269302703027130272302733027430275302763027730278302793028030281302823028330284302853028630287302883028930290302913029230293302943029530296302973029830299303003030130302303033030430305303063030730308303093031030311303123031330314303153031630317303183031930320303213032230323303243032530326303273032830329303303033130332303333033430335303363033730338303393034030341303423034330344303453034630347303483034930350303513035230353303543035530356303573035830359303603036130362303633036430365303663036730368303693037030371303723037330374303753037630377303783037930380303813038230383303843038530386303873038830389303903039130392303933039430395303963039730398303993040030401304023040330404304053040630407304083040930410304113041230413304143041530416304173041830419304203042130422304233042430425304263042730428304293043030431304323043330434304353043630437304383043930440304413044230443304443044530446304473044830449304503045130452304533045430455304563045730458304593046030461304623046330464304653046630467304683046930470304713047230473304743047530476304773047830479304803048130482304833048430485304863048730488304893049030491304923049330494304953049630497304983049930500305013050230503305043050530506305073050830509305103051130512305133051430515305163051730518305193052030521305223052330524305253052630527305283052930530305313053230533305343053530536305373053830539305403054130542305433054430545305463054730548305493055030551305523055330554305553055630557305583055930560305613056230563305643056530566305673056830569305703057130572305733057430575305763057730578305793058030581305823058330584305853058630587305883058930590305913059230593305943059530596305973059830599306003060130602306033060430605306063060730608306093061030611306123061330614306153061630617306183061930620306213062230623306243062530626306273062830629306303063130632306333063430635306363063730638306393064030641306423064330644306453064630647306483064930650306513065230653306543065530656306573065830659306603066130662306633066430665306663066730668306693067030671306723067330674306753067630677306783067930680306813068230683306843068530686306873068830689306903069130692306933069430695306963069730698306993070030701307023070330704307053070630707307083070930710307113071230713307143071530716307173071830719307203072130722307233072430725307263072730728307293073030731307323073330734307353073630737307383073930740307413074230743307443074530746307473074830749307503075130752307533075430755307563075730758307593076030761307623076330764307653076630767307683076930770307713077230773307743077530776307773077830779307803078130782307833078430785307863078730788307893079030791307923079330794307953079630797307983079930800308013080230803308043080530806308073080830809308103081130812308133081430815308163081730818308193082030821308223082330824308253082630827308283082930830308313083230833308343083530836308373083830839308403084130842308433084430845308463084730848308493085030851308523085330854308553085630857308583085930860308613086230863308643086530866308673086830869308703087130872308733087430875308763087730878308793088030881308823088330884308853088630887308883088930890308913089230893308943089530896308973089830899309003090130902309033090430905309063090730908309093091030911309123091330914309153091630917309183091930920309213092230923309243092530926309273092830929309303093130932309333093430935309363093730938309393094030941309423094330944309453094630947309483094930950309513095230953309543095530956309573095830959309603096130962309633096430965309663096730968309693097030971309723097330974309753097630977309783097930980309813098230983309843098530986309873098830989309903099130992309933099430995309963099730998309993100031001310023100331004310053100631007310083100931010310113101231013310143101531016310173101831019310203102131022310233102431025310263102731028310293103031031310323103331034310353103631037310383103931040310413104231043310443104531046310473104831049310503105131052310533105431055310563105731058310593106031061310623106331064310653106631067310683106931070310713107231073310743107531076310773107831079310803108131082310833108431085310863108731088310893109031091310923109331094310953109631097310983109931100311013110231103311043110531106311073110831109311103111131112311133111431115311163111731118311193112031121311223112331124311253112631127311283112931130311313113231133311343113531136311373113831139311403114131142311433114431145311463114731148311493115031151311523115331154311553115631157311583115931160311613116231163311643116531166311673116831169311703117131172311733117431175311763117731178311793118031181311823118331184311853118631187311883118931190311913119231193311943119531196311973119831199312003120131202312033120431205312063120731208312093121031211312123121331214312153121631217312183121931220312213122231223312243122531226312273122831229312303123131232312333123431235312363123731238312393124031241312423124331244312453124631247312483124931250312513125231253312543125531256312573125831259312603126131262312633126431265312663126731268312693127031271312723127331274312753127631277312783127931280312813128231283312843128531286312873128831289312903129131292312933129431295312963129731298312993130031301313023130331304313053130631307313083130931310313113131231313313143131531316313173131831319313203132131322313233132431325313263132731328313293133031331313323133331334313353133631337313383133931340313413134231343313443134531346313473134831349313503135131352313533135431355313563135731358313593136031361313623136331364313653136631367313683136931370313713137231373313743137531376313773137831379313803138131382313833138431385313863138731388313893139031391313923139331394313953139631397313983139931400314013140231403314043140531406314073140831409314103141131412314133141431415314163141731418314193142031421314223142331424314253142631427314283142931430314313143231433314343143531436314373143831439314403144131442314433144431445314463144731448314493145031451314523145331454314553145631457314583145931460314613146231463314643146531466314673146831469314703147131472314733147431475314763147731478314793148031481314823148331484314853148631487314883148931490314913149231493314943149531496314973149831499315003150131502315033150431505315063150731508315093151031511315123151331514315153151631517315183151931520315213152231523315243152531526315273152831529315303153131532315333153431535315363153731538315393154031541315423154331544315453154631547315483154931550315513155231553315543155531556315573155831559315603156131562315633156431565315663156731568315693157031571315723157331574315753157631577315783157931580315813158231583315843158531586315873158831589315903159131592315933159431595315963159731598315993160031601316023160331604316053160631607316083160931610316113161231613316143161531616316173161831619316203162131622316233162431625316263162731628316293163031631316323163331634316353163631637316383163931640316413164231643316443164531646316473164831649316503165131652316533165431655316563165731658316593166031661316623166331664316653166631667316683166931670316713167231673316743167531676316773167831679316803168131682316833168431685316863168731688316893169031691316923169331694316953169631697316983169931700317013170231703317043170531706317073170831709317103171131712317133171431715317163171731718317193172031721317223172331724317253172631727317283172931730317313173231733317343173531736317373173831739317403174131742317433174431745317463174731748317493175031751317523175331754317553175631757317583175931760317613176231763317643176531766317673176831769317703177131772317733177431775317763177731778317793178031781317823178331784317853178631787317883178931790317913179231793317943179531796317973179831799318003180131802318033180431805318063180731808318093181031811318123181331814318153181631817318183181931820318213182231823318243182531826318273182831829318303183131832318333183431835318363183731838318393184031841318423184331844318453184631847318483184931850318513185231853318543185531856318573185831859318603186131862318633186431865318663186731868318693187031871318723187331874318753187631877318783187931880318813188231883318843188531886318873188831889318903189131892318933189431895318963189731898318993190031901319023190331904319053190631907319083190931910319113191231913319143191531916319173191831919319203192131922319233192431925319263192731928319293193031931319323193331934319353193631937319383193931940319413194231943319443194531946319473194831949319503195131952319533195431955319563195731958319593196031961319623196331964319653196631967319683196931970319713197231973319743197531976319773197831979319803198131982319833198431985319863198731988319893199031991319923199331994319953199631997319983199932000320013200232003320043200532006320073200832009320103201132012320133201432015320163201732018320193202032021320223202332024320253202632027320283202932030320313203232033320343203532036320373203832039320403204132042320433204432045320463204732048320493205032051320523205332054320553205632057320583205932060320613206232063320643206532066320673206832069320703207132072320733207432075320763207732078320793208032081320823208332084320853208632087320883208932090320913209232093320943209532096320973209832099321003210132102321033210432105321063210732108321093211032111321123211332114321153211632117321183211932120321213212232123321243212532126321273212832129321303213132132321333213432135321363213732138321393214032141321423214332144321453214632147321483214932150321513215232153321543215532156321573215832159321603216132162321633216432165321663216732168321693217032171321723217332174321753217632177321783217932180321813218232183321843218532186321873218832189321903219132192321933219432195321963219732198321993220032201322023220332204322053220632207322083220932210322113221232213322143221532216322173221832219322203222132222322233222432225322263222732228322293223032231322323223332234322353223632237322383223932240322413224232243322443224532246322473224832249322503225132252322533225432255322563225732258322593226032261322623226332264322653226632267322683226932270322713227232273322743227532276322773227832279322803228132282322833228432285322863228732288322893229032291322923229332294322953229632297322983229932300323013230232303323043230532306323073230832309323103231132312323133231432315323163231732318323193232032321323223232332324323253232632327323283232932330323313233232333323343233532336323373233832339323403234132342323433234432345323463234732348323493235032351323523235332354323553235632357323583235932360323613236232363323643236532366323673236832369323703237132372323733237432375323763237732378323793238032381323823238332384323853238632387323883238932390323913239232393323943239532396323973239832399324003240132402324033240432405324063240732408324093241032411324123241332414324153241632417324183241932420324213242232423324243242532426324273242832429324303243132432324333243432435324363243732438324393244032441324423244332444324453244632447324483244932450324513245232453324543245532456324573245832459324603246132462324633246432465324663246732468324693247032471324723247332474324753247632477324783247932480324813248232483324843248532486324873248832489324903249132492324933249432495324963249732498324993250032501325023250332504325053250632507325083250932510325113251232513325143251532516325173251832519325203252132522325233252432525325263252732528325293253032531325323253332534325353253632537325383253932540325413254232543325443254532546325473254832549325503255132552325533255432555325563255732558325593256032561325623256332564325653256632567325683256932570325713257232573325743257532576325773257832579325803258132582325833258432585325863258732588325893259032591325923259332594325953259632597325983259932600326013260232603326043260532606326073260832609326103261132612326133261432615326163261732618326193262032621326223262332624326253262632627326283262932630326313263232633326343263532636326373263832639326403264132642326433264432645326463264732648326493265032651326523265332654326553265632657326583265932660326613266232663326643266532666326673266832669326703267132672326733267432675326763267732678326793268032681326823268332684326853268632687326883268932690326913269232693326943269532696326973269832699327003270132702327033270432705327063270732708327093271032711327123271332714327153271632717327183271932720327213272232723327243272532726327273272832729327303273132732327333273432735327363273732738327393274032741327423274332744327453274632747327483274932750327513275232753327543275532756327573275832759327603276132762327633276432765327663276732768327693277032771327723277332774327753277632777327783277932780327813278232783327843278532786327873278832789327903279132792327933279432795327963279732798327993280032801328023280332804328053280632807328083280932810328113281232813328143281532816328173281832819328203282132822328233282432825328263282732828328293283032831328323283332834328353283632837328383283932840328413284232843328443284532846328473284832849328503285132852328533285432855328563285732858328593286032861328623286332864328653286632867328683286932870328713287232873328743287532876328773287832879328803288132882328833288432885328863288732888328893289032891328923289332894328953289632897328983289932900329013290232903329043290532906329073290832909329103291132912329133291432915329163291732918329193292032921329223292332924329253292632927329283292932930329313293232933329343293532936329373293832939329403294132942329433294432945329463294732948329493295032951329523295332954329553295632957329583295932960329613296232963329643296532966329673296832969329703297132972329733297432975329763297732978329793298032981329823298332984329853298632987329883298932990329913299232993329943299532996329973299832999330003300133002330033300433005330063300733008330093301033011330123301333014330153301633017330183301933020330213302233023330243302533026330273302833029330303303133032330333303433035330363303733038330393304033041330423304333044330453304633047330483304933050330513305233053330543305533056330573305833059330603306133062330633306433065330663306733068330693307033071330723307333074330753307633077330783307933080330813308233083330843308533086330873308833089330903309133092330933309433095330963309733098330993310033101331023310333104331053310633107331083310933110331113311233113331143311533116331173311833119331203312133122331233312433125331263312733128331293313033131331323313333134331353313633137331383313933140331413314233143331443314533146331473314833149331503315133152331533315433155331563315733158331593316033161331623316333164331653316633167331683316933170331713317233173331743317533176331773317833179331803318133182331833318433185331863318733188331893319033191331923319333194331953319633197331983319933200332013320233203332043320533206332073320833209332103321133212332133321433215332163321733218332193322033221332223322333224332253322633227332283322933230332313323233233332343323533236332373323833239332403324133242332433324433245332463324733248332493325033251332523325333254332553325633257332583325933260332613326233263332643326533266332673326833269332703327133272332733327433275332763327733278332793328033281332823328333284332853328633287332883328933290332913329233293332943329533296332973329833299333003330133302333033330433305333063330733308333093331033311333123331333314333153331633317333183331933320333213332233323333243332533326333273332833329333303333133332333333333433335333363333733338333393334033341333423334333344333453334633347333483334933350333513335233353333543335533356333573335833359333603336133362333633336433365333663336733368333693337033371333723337333374333753337633377333783337933380333813338233383333843338533386333873338833389333903339133392333933339433395333963339733398333993340033401334023340333404334053340633407334083340933410334113341233413334143341533416334173341833419334203342133422334233342433425334263342733428334293343033431334323343333434334353343633437334383343933440334413344233443334443344533446334473344833449334503345133452334533345433455334563345733458334593346033461334623346333464334653346633467334683346933470334713347233473334743347533476334773347833479334803348133482334833348433485334863348733488334893349033491334923349333494334953349633497334983349933500335013350233503335043350533506335073350833509335103351133512335133351433515335163351733518335193352033521335223352333524335253352633527335283352933530335313353233533335343353533536335373353833539335403354133542335433354433545335463354733548335493355033551335523355333554335553355633557335583355933560335613356233563335643356533566335673356833569335703357133572335733357433575335763357733578335793358033581335823358333584335853358633587335883358933590335913359233593335943359533596335973359833599336003360133602336033360433605336063360733608336093361033611336123361333614336153361633617336183361933620336213362233623336243362533626336273362833629336303363133632336333363433635336363363733638336393364033641336423364333644336453364633647336483364933650336513365233653336543365533656336573365833659336603366133662336633366433665336663366733668336693367033671336723367333674336753367633677336783367933680336813368233683336843368533686336873368833689336903369133692336933369433695336963369733698336993370033701337023370333704337053370633707337083370933710337113371233713337143371533716337173371833719337203372133722337233372433725337263372733728337293373033731337323373333734337353373633737337383373933740337413374233743337443374533746337473374833749337503375133752337533375433755337563375733758337593376033761337623376333764337653376633767337683376933770337713377233773337743377533776337773377833779337803378133782337833378433785337863378733788337893379033791337923379333794337953379633797337983379933800338013380233803338043380533806338073380833809338103381133812338133381433815338163381733818338193382033821338223382333824338253382633827338283382933830338313383233833338343383533836338373383833839338403384133842338433384433845338463384733848338493385033851338523385333854338553385633857338583385933860338613386233863338643386533866338673386833869338703387133872338733387433875338763387733878338793388033881338823388333884338853388633887338883388933890338913389233893338943389533896338973389833899339003390133902339033390433905339063390733908339093391033911339123391333914339153391633917339183391933920339213392233923339243392533926339273392833929339303393133932339333393433935339363393733938339393394033941339423394333944339453394633947339483394933950339513395233953339543395533956339573395833959339603396133962339633396433965339663396733968339693397033971339723397333974339753397633977339783397933980339813398233983339843398533986339873398833989339903399133992339933399433995339963399733998339993400034001340023400334004340053400634007340083400934010340113401234013340143401534016340173401834019340203402134022340233402434025340263402734028340293403034031340323403334034340353403634037340383403934040340413404234043340443404534046340473404834049340503405134052340533405434055340563405734058340593406034061340623406334064340653406634067340683406934070340713407234073340743407534076340773407834079340803408134082340833408434085340863408734088340893409034091340923409334094340953409634097340983409934100341013410234103341043410534106341073410834109341103411134112341133411434115341163411734118341193412034121341223412334124341253412634127341283412934130341313413234133341343413534136341373413834139341403414134142341433414434145341463414734148341493415034151341523415334154341553415634157341583415934160341613416234163341643416534166341673416834169341703417134172341733417434175341763417734178341793418034181341823418334184341853418634187341883418934190341913419234193341943419534196341973419834199342003420134202342033420434205342063420734208342093421034211342123421334214342153421634217342183421934220342213422234223342243422534226342273422834229342303423134232342333423434235342363423734238342393424034241342423424334244342453424634247342483424934250342513425234253342543425534256342573425834259342603426134262342633426434265342663426734268342693427034271342723427334274342753427634277342783427934280342813428234283342843428534286342873428834289342903429134292342933429434295342963429734298342993430034301343023430334304343053430634307343083430934310343113431234313343143431534316343173431834319343203432134322343233432434325343263432734328343293433034331343323433334334343353433634337343383433934340343413434234343343443434534346343473434834349343503435134352343533435434355343563435734358343593436034361343623436334364343653436634367343683436934370343713437234373343743437534376343773437834379343803438134382343833438434385343863438734388343893439034391343923439334394343953439634397343983439934400344013440234403344043440534406344073440834409344103441134412344133441434415344163441734418344193442034421344223442334424344253442634427344283442934430344313443234433344343443534436344373443834439344403444134442344433444434445344463444734448344493445034451344523445334454344553445634457344583445934460344613446234463344643446534466344673446834469344703447134472344733447434475344763447734478344793448034481344823448334484344853448634487344883448934490344913449234493344943449534496344973449834499345003450134502345033450434505345063450734508345093451034511345123451334514345153451634517345183451934520345213452234523345243452534526345273452834529345303453134532345333453434535345363453734538345393454034541345423454334544345453454634547345483454934550345513455234553345543455534556345573455834559345603456134562345633456434565345663456734568345693457034571345723457334574345753457634577345783457934580345813458234583345843458534586345873458834589345903459134592345933459434595345963459734598345993460034601346023460334604346053460634607346083460934610346113461234613346143461534616346173461834619346203462134622346233462434625346263462734628346293463034631346323463334634346353463634637346383463934640346413464234643346443464534646346473464834649346503465134652346533465434655346563465734658346593466034661346623466334664346653466634667346683466934670346713467234673346743467534676346773467834679346803468134682346833468434685346863468734688346893469034691346923469334694346953469634697346983469934700347013470234703347043470534706347073470834709347103471134712347133471434715347163471734718347193472034721347223472334724347253472634727347283472934730347313473234733347343473534736347373473834739347403474134742347433474434745347463474734748347493475034751347523475334754347553475634757347583475934760347613476234763347643476534766347673476834769347703477134772347733477434775347763477734778347793478034781347823478334784347853478634787347883478934790347913479234793347943479534796347973479834799348003480134802348033480434805348063480734808348093481034811348123481334814348153481634817348183481934820348213482234823348243482534826348273482834829348303483134832348333483434835348363483734838348393484034841348423484334844348453484634847348483484934850348513485234853348543485534856348573485834859348603486134862348633486434865348663486734868348693487034871348723487334874348753487634877348783487934880348813488234883348843488534886348873488834889348903489134892348933489434895348963489734898348993490034901349023490334904349053490634907349083490934910349113491234913349143491534916349173491834919349203492134922349233492434925349263492734928349293493034931349323493334934349353493634937349383493934940349413494234943349443494534946349473494834949349503495134952349533495434955349563495734958349593496034961349623496334964349653496634967349683496934970349713497234973349743497534976349773497834979349803498134982349833498434985349863498734988349893499034991349923499334994349953499634997349983499935000350013500235003350043500535006350073500835009350103501135012350133501435015350163501735018350193502035021350223502335024350253502635027350283502935030350313503235033350343503535036350373503835039350403504135042350433504435045350463504735048350493505035051350523505335054350553505635057350583505935060350613506235063350643506535066350673506835069350703507135072350733507435075350763507735078350793508035081350823508335084350853508635087350883508935090350913509235093350943509535096350973509835099351003510135102351033510435105351063510735108351093511035111351123511335114351153511635117351183511935120351213512235123351243512535126351273512835129351303513135132351333513435135351363513735138351393514035141351423514335144351453514635147351483514935150351513515235153351543515535156351573515835159351603516135162351633516435165351663516735168351693517035171351723517335174351753517635177351783517935180351813518235183351843518535186351873518835189351903519135192351933519435195351963519735198351993520035201352023520335204352053520635207352083520935210352113521235213352143521535216352173521835219352203522135222352233522435225352263522735228352293523035231352323523335234352353523635237352383523935240352413524235243352443524535246352473524835249352503525135252352533525435255352563525735258352593526035261352623526335264352653526635267352683526935270352713527235273352743527535276352773527835279352803528135282352833528435285352863528735288352893529035291352923529335294352953529635297352983529935300353013530235303353043530535306353073530835309353103531135312353133531435315353163531735318353193532035321353223532335324353253532635327353283532935330353313533235333353343533535336353373533835339353403534135342353433534435345353463534735348353493535035351353523535335354353553535635357353583535935360353613536235363353643536535366353673536835369353703537135372353733537435375353763537735378353793538035381353823538335384353853538635387353883538935390353913539235393353943539535396353973539835399354003540135402354033540435405354063540735408354093541035411354123541335414354153541635417354183541935420354213542235423354243542535426354273542835429354303543135432354333543435435354363543735438354393544035441354423544335444354453544635447354483544935450354513545235453354543545535456354573545835459354603546135462354633546435465354663546735468354693547035471354723547335474354753547635477354783547935480354813548235483354843548535486354873548835489354903549135492354933549435495354963549735498354993550035501355023550335504355053550635507355083550935510355113551235513355143551535516355173551835519355203552135522355233552435525355263552735528355293553035531355323553335534355353553635537355383553935540355413554235543355443554535546355473554835549355503555135552355533555435555355563555735558355593556035561355623556335564355653556635567355683556935570355713557235573355743557535576355773557835579355803558135582355833558435585355863558735588355893559035591355923559335594355953559635597355983559935600356013560235603356043560535606356073560835609356103561135612356133561435615356163561735618356193562035621356223562335624356253562635627356283562935630356313563235633356343563535636356373563835639356403564135642356433564435645356463564735648356493565035651356523565335654356553565635657356583565935660356613566235663356643566535666356673566835669356703567135672356733567435675356763567735678356793568035681356823568335684356853568635687356883568935690356913569235693356943569535696356973569835699357003570135702357033570435705357063570735708357093571035711357123571335714357153571635717357183571935720357213572235723357243572535726357273572835729357303573135732357333573435735357363573735738357393574035741357423574335744357453574635747357483574935750357513575235753357543575535756357573575835759357603576135762357633576435765357663576735768357693577035771357723577335774357753577635777357783577935780357813578235783357843578535786357873578835789357903579135792357933579435795357963579735798357993580035801358023580335804358053580635807358083580935810358113581235813358143581535816358173581835819358203582135822358233582435825358263582735828358293583035831358323583335834358353583635837358383583935840358413584235843358443584535846358473584835849358503585135852358533585435855358563585735858358593586035861358623586335864358653586635867358683586935870358713587235873358743587535876358773587835879358803588135882358833588435885358863588735888358893589035891358923589335894358953589635897358983589935900359013590235903359043590535906359073590835909359103591135912359133591435915359163591735918359193592035921359223592335924359253592635927359283592935930359313593235933359343593535936359373593835939359403594135942359433594435945359463594735948359493595035951359523595335954359553595635957359583595935960359613596235963359643596535966359673596835969359703597135972359733597435975359763597735978359793598035981359823598335984359853598635987359883598935990359913599235993359943599535996359973599835999360003600136002360033600436005360063600736008360093601036011360123601336014360153601636017360183601936020360213602236023360243602536026360273602836029360303603136032360333603436035360363603736038360393604036041360423604336044360453604636047360483604936050360513605236053360543605536056360573605836059360603606136062360633606436065360663606736068360693607036071360723607336074360753607636077360783607936080360813608236083360843608536086360873608836089360903609136092360933609436095360963609736098360993610036101361023610336104361053610636107361083610936110361113611236113361143611536116361173611836119361203612136122361233612436125361263612736128361293613036131361323613336134361353613636137361383613936140361413614236143361443614536146361473614836149361503615136152361533615436155361563615736158361593616036161361623616336164361653616636167361683616936170361713617236173361743617536176361773617836179361803618136182361833618436185361863618736188361893619036191361923619336194361953619636197361983619936200362013620236203362043620536206362073620836209362103621136212362133621436215362163621736218362193622036221362223622336224362253622636227362283622936230362313623236233362343623536236362373623836239362403624136242362433624436245362463624736248362493625036251362523625336254362553625636257362583625936260362613626236263362643626536266362673626836269362703627136272362733627436275362763627736278362793628036281362823628336284362853628636287362883628936290362913629236293362943629536296362973629836299363003630136302363033630436305363063630736308363093631036311363123631336314363153631636317363183631936320363213632236323363243632536326363273632836329363303633136332363333633436335363363633736338363393634036341363423634336344363453634636347363483634936350363513635236353363543635536356363573635836359363603636136362363633636436365363663636736368363693637036371363723637336374363753637636377363783637936380363813638236383363843638536386363873638836389363903639136392363933639436395363963639736398363993640036401364023640336404364053640636407364083640936410364113641236413364143641536416364173641836419364203642136422364233642436425364263642736428364293643036431364323643336434364353643636437364383643936440364413644236443364443644536446364473644836449364503645136452364533645436455364563645736458364593646036461364623646336464364653646636467364683646936470364713647236473364743647536476364773647836479364803648136482364833648436485364863648736488364893649036491364923649336494364953649636497364983649936500365013650236503365043650536506365073650836509365103651136512365133651436515365163651736518365193652036521365223652336524365253652636527365283652936530365313653236533365343653536536365373653836539365403654136542365433654436545365463654736548365493655036551365523655336554365553655636557365583655936560365613656236563365643656536566365673656836569365703657136572365733657436575365763657736578365793658036581365823658336584365853658636587365883658936590365913659236593365943659536596365973659836599366003660136602366033660436605366063660736608366093661036611366123661336614366153661636617366183661936620366213662236623366243662536626366273662836629366303663136632366333663436635366363663736638366393664036641366423664336644366453664636647366483664936650366513665236653366543665536656366573665836659366603666136662366633666436665366663666736668366693667036671366723667336674366753667636677366783667936680366813668236683366843668536686366873668836689366903669136692366933669436695366963669736698366993670036701367023670336704367053670636707367083670936710367113671236713367143671536716367173671836719367203672136722367233672436725367263672736728367293673036731367323673336734367353673636737367383673936740367413674236743367443674536746367473674836749367503675136752367533675436755367563675736758367593676036761367623676336764367653676636767367683676936770367713677236773367743677536776367773677836779367803678136782367833678436785367863678736788367893679036791367923679336794367953679636797367983679936800368013680236803368043680536806368073680836809368103681136812368133681436815368163681736818368193682036821368223682336824368253682636827368283682936830368313683236833368343683536836368373683836839368403684136842368433684436845368463684736848368493685036851368523685336854368553685636857368583685936860368613686236863368643686536866368673686836869368703687136872368733687436875368763687736878368793688036881368823688336884368853688636887368883688936890368913689236893368943689536896368973689836899369003690136902369033690436905369063690736908369093691036911369123691336914369153691636917369183691936920369213692236923369243692536926369273692836929369303693136932369333693436935369363693736938369393694036941369423694336944369453694636947369483694936950369513695236953369543695536956369573695836959369603696136962369633696436965369663696736968369693697036971369723697336974369753697636977369783697936980369813698236983369843698536986369873698836989369903699136992369933699436995369963699736998369993700037001370023700337004370053700637007370083700937010370113701237013370143701537016370173701837019370203702137022370233702437025370263702737028370293703037031370323703337034370353703637037370383703937040370413704237043370443704537046370473704837049370503705137052370533705437055370563705737058370593706037061370623706337064370653706637067370683706937070370713707237073370743707537076370773707837079370803708137082370833708437085370863708737088370893709037091370923709337094370953709637097370983709937100371013710237103371043710537106371073710837109371103711137112371133711437115371163711737118371193712037121371223712337124371253712637127371283712937130371313713237133371343713537136371373713837139371403714137142371433714437145371463714737148371493715037151371523715337154371553715637157371583715937160371613716237163371643716537166371673716837169371703717137172371733717437175371763717737178371793718037181371823718337184371853718637187371883718937190371913719237193371943719537196371973719837199372003720137202372033720437205372063720737208372093721037211372123721337214372153721637217372183721937220372213722237223372243722537226372273722837229372303723137232372333723437235372363723737238372393724037241372423724337244372453724637247372483724937250372513725237253372543725537256372573725837259372603726137262372633726437265372663726737268
  1. // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
  2. package iot
  3. import (
  4. "fmt"
  5. "time"
  6. "github.com/aws/aws-sdk-go/aws"
  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/restjson"
  11. )
  12. const opAcceptCertificateTransfer = "AcceptCertificateTransfer"
  13. // AcceptCertificateTransferRequest generates a "aws/request.Request" representing the
  14. // client's request for the AcceptCertificateTransfer operation. The "output" return
  15. // value will be populated with the request's response once the request completes
  16. // successfully.
  17. //
  18. // Use "Send" method on the returned Request to send the API call to the service.
  19. // the "output" return value is not valid until after Send returns without error.
  20. //
  21. // See AcceptCertificateTransfer for more information on using the AcceptCertificateTransfer
  22. // API call, and error handling.
  23. //
  24. // This method is useful when you want to inject custom logic or configuration
  25. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  26. //
  27. //
  28. // // Example sending a request using the AcceptCertificateTransferRequest method.
  29. // req, resp := client.AcceptCertificateTransferRequest(params)
  30. //
  31. // err := req.Send()
  32. // if err == nil { // resp is now filled
  33. // fmt.Println(resp)
  34. // }
  35. func (c *IoT) AcceptCertificateTransferRequest(input *AcceptCertificateTransferInput) (req *request.Request, output *AcceptCertificateTransferOutput) {
  36. op := &request.Operation{
  37. Name: opAcceptCertificateTransfer,
  38. HTTPMethod: "PATCH",
  39. HTTPPath: "/accept-certificate-transfer/{certificateId}",
  40. }
  41. if input == nil {
  42. input = &AcceptCertificateTransferInput{}
  43. }
  44. output = &AcceptCertificateTransferOutput{}
  45. req = c.newRequest(op, input, output)
  46. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  47. return
  48. }
  49. // AcceptCertificateTransfer API operation for AWS IoT.
  50. //
  51. // Accepts a pending certificate transfer. The default state of the certificate
  52. // is INACTIVE.
  53. //
  54. // To check for pending certificate transfers, call ListCertificates to enumerate
  55. // your certificates.
  56. //
  57. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  58. // with awserr.Error's Code and Message methods to get detailed information about
  59. // the error.
  60. //
  61. // See the AWS API reference guide for AWS IoT's
  62. // API operation AcceptCertificateTransfer for usage and error information.
  63. //
  64. // Returned Error Codes:
  65. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  66. // The specified resource does not exist.
  67. //
  68. // * ErrCodeTransferAlreadyCompletedException "TransferAlreadyCompletedException"
  69. // You can't revert the certificate transfer because the transfer is already
  70. // complete.
  71. //
  72. // * ErrCodeInvalidRequestException "InvalidRequestException"
  73. // The request is not valid.
  74. //
  75. // * ErrCodeThrottlingException "ThrottlingException"
  76. // The rate exceeds the limit.
  77. //
  78. // * ErrCodeUnauthorizedException "UnauthorizedException"
  79. // You are not authorized to perform this operation.
  80. //
  81. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  82. // The service is temporarily unavailable.
  83. //
  84. // * ErrCodeInternalFailureException "InternalFailureException"
  85. // An unexpected error has occurred.
  86. //
  87. func (c *IoT) AcceptCertificateTransfer(input *AcceptCertificateTransferInput) (*AcceptCertificateTransferOutput, error) {
  88. req, out := c.AcceptCertificateTransferRequest(input)
  89. return out, req.Send()
  90. }
  91. // AcceptCertificateTransferWithContext is the same as AcceptCertificateTransfer with the addition of
  92. // the ability to pass a context and additional request options.
  93. //
  94. // See AcceptCertificateTransfer for details on how to use this API operation.
  95. //
  96. // The context must be non-nil and will be used for request cancellation. If
  97. // the context is nil a panic will occur. In the future the SDK may create
  98. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  99. // for more information on using Contexts.
  100. func (c *IoT) AcceptCertificateTransferWithContext(ctx aws.Context, input *AcceptCertificateTransferInput, opts ...request.Option) (*AcceptCertificateTransferOutput, error) {
  101. req, out := c.AcceptCertificateTransferRequest(input)
  102. req.SetContext(ctx)
  103. req.ApplyOptions(opts...)
  104. return out, req.Send()
  105. }
  106. const opAddThingToBillingGroup = "AddThingToBillingGroup"
  107. // AddThingToBillingGroupRequest generates a "aws/request.Request" representing the
  108. // client's request for the AddThingToBillingGroup operation. The "output" return
  109. // value will be populated with the request's response once the request completes
  110. // successfully.
  111. //
  112. // Use "Send" method on the returned Request to send the API call to the service.
  113. // the "output" return value is not valid until after Send returns without error.
  114. //
  115. // See AddThingToBillingGroup for more information on using the AddThingToBillingGroup
  116. // API call, and error handling.
  117. //
  118. // This method is useful when you want to inject custom logic or configuration
  119. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  120. //
  121. //
  122. // // Example sending a request using the AddThingToBillingGroupRequest method.
  123. // req, resp := client.AddThingToBillingGroupRequest(params)
  124. //
  125. // err := req.Send()
  126. // if err == nil { // resp is now filled
  127. // fmt.Println(resp)
  128. // }
  129. func (c *IoT) AddThingToBillingGroupRequest(input *AddThingToBillingGroupInput) (req *request.Request, output *AddThingToBillingGroupOutput) {
  130. op := &request.Operation{
  131. Name: opAddThingToBillingGroup,
  132. HTTPMethod: "PUT",
  133. HTTPPath: "/billing-groups/addThingToBillingGroup",
  134. }
  135. if input == nil {
  136. input = &AddThingToBillingGroupInput{}
  137. }
  138. output = &AddThingToBillingGroupOutput{}
  139. req = c.newRequest(op, input, output)
  140. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  141. return
  142. }
  143. // AddThingToBillingGroup API operation for AWS IoT.
  144. //
  145. // Adds a thing to a billing group.
  146. //
  147. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  148. // with awserr.Error's Code and Message methods to get detailed information about
  149. // the error.
  150. //
  151. // See the AWS API reference guide for AWS IoT's
  152. // API operation AddThingToBillingGroup for usage and error information.
  153. //
  154. // Returned Error Codes:
  155. // * ErrCodeInvalidRequestException "InvalidRequestException"
  156. // The request is not valid.
  157. //
  158. // * ErrCodeThrottlingException "ThrottlingException"
  159. // The rate exceeds the limit.
  160. //
  161. // * ErrCodeInternalFailureException "InternalFailureException"
  162. // An unexpected error has occurred.
  163. //
  164. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  165. // The specified resource does not exist.
  166. //
  167. func (c *IoT) AddThingToBillingGroup(input *AddThingToBillingGroupInput) (*AddThingToBillingGroupOutput, error) {
  168. req, out := c.AddThingToBillingGroupRequest(input)
  169. return out, req.Send()
  170. }
  171. // AddThingToBillingGroupWithContext is the same as AddThingToBillingGroup with the addition of
  172. // the ability to pass a context and additional request options.
  173. //
  174. // See AddThingToBillingGroup for details on how to use this API operation.
  175. //
  176. // The context must be non-nil and will be used for request cancellation. If
  177. // the context is nil a panic will occur. In the future the SDK may create
  178. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  179. // for more information on using Contexts.
  180. func (c *IoT) AddThingToBillingGroupWithContext(ctx aws.Context, input *AddThingToBillingGroupInput, opts ...request.Option) (*AddThingToBillingGroupOutput, error) {
  181. req, out := c.AddThingToBillingGroupRequest(input)
  182. req.SetContext(ctx)
  183. req.ApplyOptions(opts...)
  184. return out, req.Send()
  185. }
  186. const opAddThingToThingGroup = "AddThingToThingGroup"
  187. // AddThingToThingGroupRequest generates a "aws/request.Request" representing the
  188. // client's request for the AddThingToThingGroup operation. The "output" return
  189. // value will be populated with the request's response once the request completes
  190. // successfully.
  191. //
  192. // Use "Send" method on the returned Request to send the API call to the service.
  193. // the "output" return value is not valid until after Send returns without error.
  194. //
  195. // See AddThingToThingGroup for more information on using the AddThingToThingGroup
  196. // API call, and error handling.
  197. //
  198. // This method is useful when you want to inject custom logic or configuration
  199. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  200. //
  201. //
  202. // // Example sending a request using the AddThingToThingGroupRequest method.
  203. // req, resp := client.AddThingToThingGroupRequest(params)
  204. //
  205. // err := req.Send()
  206. // if err == nil { // resp is now filled
  207. // fmt.Println(resp)
  208. // }
  209. func (c *IoT) AddThingToThingGroupRequest(input *AddThingToThingGroupInput) (req *request.Request, output *AddThingToThingGroupOutput) {
  210. op := &request.Operation{
  211. Name: opAddThingToThingGroup,
  212. HTTPMethod: "PUT",
  213. HTTPPath: "/thing-groups/addThingToThingGroup",
  214. }
  215. if input == nil {
  216. input = &AddThingToThingGroupInput{}
  217. }
  218. output = &AddThingToThingGroupOutput{}
  219. req = c.newRequest(op, input, output)
  220. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  221. return
  222. }
  223. // AddThingToThingGroup API operation for AWS IoT.
  224. //
  225. // Adds a thing to a thing group.
  226. //
  227. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  228. // with awserr.Error's Code and Message methods to get detailed information about
  229. // the error.
  230. //
  231. // See the AWS API reference guide for AWS IoT's
  232. // API operation AddThingToThingGroup for usage and error information.
  233. //
  234. // Returned Error Codes:
  235. // * ErrCodeInvalidRequestException "InvalidRequestException"
  236. // The request is not valid.
  237. //
  238. // * ErrCodeThrottlingException "ThrottlingException"
  239. // The rate exceeds the limit.
  240. //
  241. // * ErrCodeInternalFailureException "InternalFailureException"
  242. // An unexpected error has occurred.
  243. //
  244. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  245. // The specified resource does not exist.
  246. //
  247. func (c *IoT) AddThingToThingGroup(input *AddThingToThingGroupInput) (*AddThingToThingGroupOutput, error) {
  248. req, out := c.AddThingToThingGroupRequest(input)
  249. return out, req.Send()
  250. }
  251. // AddThingToThingGroupWithContext is the same as AddThingToThingGroup with the addition of
  252. // the ability to pass a context and additional request options.
  253. //
  254. // See AddThingToThingGroup for details on how to use this API operation.
  255. //
  256. // The context must be non-nil and will be used for request cancellation. If
  257. // the context is nil a panic will occur. In the future the SDK may create
  258. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  259. // for more information on using Contexts.
  260. func (c *IoT) AddThingToThingGroupWithContext(ctx aws.Context, input *AddThingToThingGroupInput, opts ...request.Option) (*AddThingToThingGroupOutput, error) {
  261. req, out := c.AddThingToThingGroupRequest(input)
  262. req.SetContext(ctx)
  263. req.ApplyOptions(opts...)
  264. return out, req.Send()
  265. }
  266. const opAssociateTargetsWithJob = "AssociateTargetsWithJob"
  267. // AssociateTargetsWithJobRequest generates a "aws/request.Request" representing the
  268. // client's request for the AssociateTargetsWithJob operation. The "output" return
  269. // value will be populated with the request's response once the request completes
  270. // successfully.
  271. //
  272. // Use "Send" method on the returned Request to send the API call to the service.
  273. // the "output" return value is not valid until after Send returns without error.
  274. //
  275. // See AssociateTargetsWithJob for more information on using the AssociateTargetsWithJob
  276. // API call, and error handling.
  277. //
  278. // This method is useful when you want to inject custom logic or configuration
  279. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  280. //
  281. //
  282. // // Example sending a request using the AssociateTargetsWithJobRequest method.
  283. // req, resp := client.AssociateTargetsWithJobRequest(params)
  284. //
  285. // err := req.Send()
  286. // if err == nil { // resp is now filled
  287. // fmt.Println(resp)
  288. // }
  289. func (c *IoT) AssociateTargetsWithJobRequest(input *AssociateTargetsWithJobInput) (req *request.Request, output *AssociateTargetsWithJobOutput) {
  290. op := &request.Operation{
  291. Name: opAssociateTargetsWithJob,
  292. HTTPMethod: "POST",
  293. HTTPPath: "/jobs/{jobId}/targets",
  294. }
  295. if input == nil {
  296. input = &AssociateTargetsWithJobInput{}
  297. }
  298. output = &AssociateTargetsWithJobOutput{}
  299. req = c.newRequest(op, input, output)
  300. return
  301. }
  302. // AssociateTargetsWithJob API operation for AWS IoT.
  303. //
  304. // Associates a group with a continuous job. The following criteria must be
  305. // met:
  306. //
  307. // * The job must have been created with the targetSelection field set to
  308. // "CONTINUOUS".
  309. //
  310. // * The job status must currently be "IN_PROGRESS".
  311. //
  312. // * The total number of targets associated with a job must not exceed 100.
  313. //
  314. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  315. // with awserr.Error's Code and Message methods to get detailed information about
  316. // the error.
  317. //
  318. // See the AWS API reference guide for AWS IoT's
  319. // API operation AssociateTargetsWithJob for usage and error information.
  320. //
  321. // Returned Error Codes:
  322. // * ErrCodeInvalidRequestException "InvalidRequestException"
  323. // The request is not valid.
  324. //
  325. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  326. // The specified resource does not exist.
  327. //
  328. // * ErrCodeLimitExceededException "LimitExceededException"
  329. // A limit has been exceeded.
  330. //
  331. // * ErrCodeThrottlingException "ThrottlingException"
  332. // The rate exceeds the limit.
  333. //
  334. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  335. // The service is temporarily unavailable.
  336. //
  337. func (c *IoT) AssociateTargetsWithJob(input *AssociateTargetsWithJobInput) (*AssociateTargetsWithJobOutput, error) {
  338. req, out := c.AssociateTargetsWithJobRequest(input)
  339. return out, req.Send()
  340. }
  341. // AssociateTargetsWithJobWithContext is the same as AssociateTargetsWithJob with the addition of
  342. // the ability to pass a context and additional request options.
  343. //
  344. // See AssociateTargetsWithJob for details on how to use this API operation.
  345. //
  346. // The context must be non-nil and will be used for request cancellation. If
  347. // the context is nil a panic will occur. In the future the SDK may create
  348. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  349. // for more information on using Contexts.
  350. func (c *IoT) AssociateTargetsWithJobWithContext(ctx aws.Context, input *AssociateTargetsWithJobInput, opts ...request.Option) (*AssociateTargetsWithJobOutput, error) {
  351. req, out := c.AssociateTargetsWithJobRequest(input)
  352. req.SetContext(ctx)
  353. req.ApplyOptions(opts...)
  354. return out, req.Send()
  355. }
  356. const opAttachPolicy = "AttachPolicy"
  357. // AttachPolicyRequest generates a "aws/request.Request" representing the
  358. // client's request for the AttachPolicy operation. The "output" return
  359. // value will be populated with the request's response once the request completes
  360. // successfully.
  361. //
  362. // Use "Send" method on the returned Request to send the API call to the service.
  363. // the "output" return value is not valid until after Send returns without error.
  364. //
  365. // See AttachPolicy for more information on using the AttachPolicy
  366. // API call, and error handling.
  367. //
  368. // This method is useful when you want to inject custom logic or configuration
  369. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  370. //
  371. //
  372. // // Example sending a request using the AttachPolicyRequest method.
  373. // req, resp := client.AttachPolicyRequest(params)
  374. //
  375. // err := req.Send()
  376. // if err == nil { // resp is now filled
  377. // fmt.Println(resp)
  378. // }
  379. func (c *IoT) AttachPolicyRequest(input *AttachPolicyInput) (req *request.Request, output *AttachPolicyOutput) {
  380. op := &request.Operation{
  381. Name: opAttachPolicy,
  382. HTTPMethod: "PUT",
  383. HTTPPath: "/target-policies/{policyName}",
  384. }
  385. if input == nil {
  386. input = &AttachPolicyInput{}
  387. }
  388. output = &AttachPolicyOutput{}
  389. req = c.newRequest(op, input, output)
  390. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  391. return
  392. }
  393. // AttachPolicy API operation for AWS IoT.
  394. //
  395. // Attaches a policy to the specified target.
  396. //
  397. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  398. // with awserr.Error's Code and Message methods to get detailed information about
  399. // the error.
  400. //
  401. // See the AWS API reference guide for AWS IoT's
  402. // API operation AttachPolicy for usage and error information.
  403. //
  404. // Returned Error Codes:
  405. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  406. // The specified resource does not exist.
  407. //
  408. // * ErrCodeInvalidRequestException "InvalidRequestException"
  409. // The request is not valid.
  410. //
  411. // * ErrCodeThrottlingException "ThrottlingException"
  412. // The rate exceeds the limit.
  413. //
  414. // * ErrCodeUnauthorizedException "UnauthorizedException"
  415. // You are not authorized to perform this operation.
  416. //
  417. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  418. // The service is temporarily unavailable.
  419. //
  420. // * ErrCodeInternalFailureException "InternalFailureException"
  421. // An unexpected error has occurred.
  422. //
  423. // * ErrCodeLimitExceededException "LimitExceededException"
  424. // A limit has been exceeded.
  425. //
  426. func (c *IoT) AttachPolicy(input *AttachPolicyInput) (*AttachPolicyOutput, error) {
  427. req, out := c.AttachPolicyRequest(input)
  428. return out, req.Send()
  429. }
  430. // AttachPolicyWithContext is the same as AttachPolicy with the addition of
  431. // the ability to pass a context and additional request options.
  432. //
  433. // See AttachPolicy for details on how to use this API operation.
  434. //
  435. // The context must be non-nil and will be used for request cancellation. If
  436. // the context is nil a panic will occur. In the future the SDK may create
  437. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  438. // for more information on using Contexts.
  439. func (c *IoT) AttachPolicyWithContext(ctx aws.Context, input *AttachPolicyInput, opts ...request.Option) (*AttachPolicyOutput, error) {
  440. req, out := c.AttachPolicyRequest(input)
  441. req.SetContext(ctx)
  442. req.ApplyOptions(opts...)
  443. return out, req.Send()
  444. }
  445. const opAttachPrincipalPolicy = "AttachPrincipalPolicy"
  446. // AttachPrincipalPolicyRequest generates a "aws/request.Request" representing the
  447. // client's request for the AttachPrincipalPolicy operation. The "output" return
  448. // value will be populated with the request's response once the request completes
  449. // successfully.
  450. //
  451. // Use "Send" method on the returned Request to send the API call to the service.
  452. // the "output" return value is not valid until after Send returns without error.
  453. //
  454. // See AttachPrincipalPolicy for more information on using the AttachPrincipalPolicy
  455. // API call, and error handling.
  456. //
  457. // This method is useful when you want to inject custom logic or configuration
  458. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  459. //
  460. //
  461. // // Example sending a request using the AttachPrincipalPolicyRequest method.
  462. // req, resp := client.AttachPrincipalPolicyRequest(params)
  463. //
  464. // err := req.Send()
  465. // if err == nil { // resp is now filled
  466. // fmt.Println(resp)
  467. // }
  468. //
  469. // Deprecated: AttachPrincipalPolicy has been deprecated
  470. func (c *IoT) AttachPrincipalPolicyRequest(input *AttachPrincipalPolicyInput) (req *request.Request, output *AttachPrincipalPolicyOutput) {
  471. if c.Client.Config.Logger != nil {
  472. c.Client.Config.Logger.Log("This operation, AttachPrincipalPolicy, has been deprecated")
  473. }
  474. op := &request.Operation{
  475. Name: opAttachPrincipalPolicy,
  476. HTTPMethod: "PUT",
  477. HTTPPath: "/principal-policies/{policyName}",
  478. }
  479. if input == nil {
  480. input = &AttachPrincipalPolicyInput{}
  481. }
  482. output = &AttachPrincipalPolicyOutput{}
  483. req = c.newRequest(op, input, output)
  484. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  485. return
  486. }
  487. // AttachPrincipalPolicy API operation for AWS IoT.
  488. //
  489. // Attaches the specified policy to the specified principal (certificate or
  490. // other credential).
  491. //
  492. // Note: This API is deprecated. Please use AttachPolicy instead.
  493. //
  494. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  495. // with awserr.Error's Code and Message methods to get detailed information about
  496. // the error.
  497. //
  498. // See the AWS API reference guide for AWS IoT's
  499. // API operation AttachPrincipalPolicy for usage and error information.
  500. //
  501. // Returned Error Codes:
  502. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  503. // The specified resource does not exist.
  504. //
  505. // * ErrCodeInvalidRequestException "InvalidRequestException"
  506. // The request is not valid.
  507. //
  508. // * ErrCodeThrottlingException "ThrottlingException"
  509. // The rate exceeds the limit.
  510. //
  511. // * ErrCodeUnauthorizedException "UnauthorizedException"
  512. // You are not authorized to perform this operation.
  513. //
  514. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  515. // The service is temporarily unavailable.
  516. //
  517. // * ErrCodeInternalFailureException "InternalFailureException"
  518. // An unexpected error has occurred.
  519. //
  520. // * ErrCodeLimitExceededException "LimitExceededException"
  521. // A limit has been exceeded.
  522. //
  523. //
  524. // Deprecated: AttachPrincipalPolicy has been deprecated
  525. func (c *IoT) AttachPrincipalPolicy(input *AttachPrincipalPolicyInput) (*AttachPrincipalPolicyOutput, error) {
  526. req, out := c.AttachPrincipalPolicyRequest(input)
  527. return out, req.Send()
  528. }
  529. // AttachPrincipalPolicyWithContext is the same as AttachPrincipalPolicy with the addition of
  530. // the ability to pass a context and additional request options.
  531. //
  532. // See AttachPrincipalPolicy for details on how to use this API operation.
  533. //
  534. // The context must be non-nil and will be used for request cancellation. If
  535. // the context is nil a panic will occur. In the future the SDK may create
  536. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  537. // for more information on using Contexts.
  538. //
  539. // Deprecated: AttachPrincipalPolicyWithContext has been deprecated
  540. func (c *IoT) AttachPrincipalPolicyWithContext(ctx aws.Context, input *AttachPrincipalPolicyInput, opts ...request.Option) (*AttachPrincipalPolicyOutput, error) {
  541. req, out := c.AttachPrincipalPolicyRequest(input)
  542. req.SetContext(ctx)
  543. req.ApplyOptions(opts...)
  544. return out, req.Send()
  545. }
  546. const opAttachSecurityProfile = "AttachSecurityProfile"
  547. // AttachSecurityProfileRequest generates a "aws/request.Request" representing the
  548. // client's request for the AttachSecurityProfile operation. The "output" return
  549. // value will be populated with the request's response once the request completes
  550. // successfully.
  551. //
  552. // Use "Send" method on the returned Request to send the API call to the service.
  553. // the "output" return value is not valid until after Send returns without error.
  554. //
  555. // See AttachSecurityProfile for more information on using the AttachSecurityProfile
  556. // API call, and error handling.
  557. //
  558. // This method is useful when you want to inject custom logic or configuration
  559. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  560. //
  561. //
  562. // // Example sending a request using the AttachSecurityProfileRequest method.
  563. // req, resp := client.AttachSecurityProfileRequest(params)
  564. //
  565. // err := req.Send()
  566. // if err == nil { // resp is now filled
  567. // fmt.Println(resp)
  568. // }
  569. func (c *IoT) AttachSecurityProfileRequest(input *AttachSecurityProfileInput) (req *request.Request, output *AttachSecurityProfileOutput) {
  570. op := &request.Operation{
  571. Name: opAttachSecurityProfile,
  572. HTTPMethod: "PUT",
  573. HTTPPath: "/security-profiles/{securityProfileName}/targets",
  574. }
  575. if input == nil {
  576. input = &AttachSecurityProfileInput{}
  577. }
  578. output = &AttachSecurityProfileOutput{}
  579. req = c.newRequest(op, input, output)
  580. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  581. return
  582. }
  583. // AttachSecurityProfile API operation for AWS IoT.
  584. //
  585. // Associates a Device Defender security profile with a thing group or with
  586. // this account. Each thing group or account can have up to five security profiles
  587. // associated with it.
  588. //
  589. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  590. // with awserr.Error's Code and Message methods to get detailed information about
  591. // the error.
  592. //
  593. // See the AWS API reference guide for AWS IoT's
  594. // API operation AttachSecurityProfile for usage and error information.
  595. //
  596. // Returned Error Codes:
  597. // * ErrCodeInvalidRequestException "InvalidRequestException"
  598. // The request is not valid.
  599. //
  600. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  601. // The specified resource does not exist.
  602. //
  603. // * ErrCodeLimitExceededException "LimitExceededException"
  604. // A limit has been exceeded.
  605. //
  606. // * ErrCodeVersionConflictException "VersionConflictException"
  607. // An exception thrown when the version of an entity specified with the expectedVersion
  608. // parameter does not match the latest version in the system.
  609. //
  610. // * ErrCodeThrottlingException "ThrottlingException"
  611. // The rate exceeds the limit.
  612. //
  613. // * ErrCodeInternalFailureException "InternalFailureException"
  614. // An unexpected error has occurred.
  615. //
  616. func (c *IoT) AttachSecurityProfile(input *AttachSecurityProfileInput) (*AttachSecurityProfileOutput, error) {
  617. req, out := c.AttachSecurityProfileRequest(input)
  618. return out, req.Send()
  619. }
  620. // AttachSecurityProfileWithContext is the same as AttachSecurityProfile with the addition of
  621. // the ability to pass a context and additional request options.
  622. //
  623. // See AttachSecurityProfile for details on how to use this API operation.
  624. //
  625. // The context must be non-nil and will be used for request cancellation. If
  626. // the context is nil a panic will occur. In the future the SDK may create
  627. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  628. // for more information on using Contexts.
  629. func (c *IoT) AttachSecurityProfileWithContext(ctx aws.Context, input *AttachSecurityProfileInput, opts ...request.Option) (*AttachSecurityProfileOutput, error) {
  630. req, out := c.AttachSecurityProfileRequest(input)
  631. req.SetContext(ctx)
  632. req.ApplyOptions(opts...)
  633. return out, req.Send()
  634. }
  635. const opAttachThingPrincipal = "AttachThingPrincipal"
  636. // AttachThingPrincipalRequest generates a "aws/request.Request" representing the
  637. // client's request for the AttachThingPrincipal operation. The "output" return
  638. // value will be populated with the request's response once the request completes
  639. // successfully.
  640. //
  641. // Use "Send" method on the returned Request to send the API call to the service.
  642. // the "output" return value is not valid until after Send returns without error.
  643. //
  644. // See AttachThingPrincipal for more information on using the AttachThingPrincipal
  645. // API call, and error handling.
  646. //
  647. // This method is useful when you want to inject custom logic or configuration
  648. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  649. //
  650. //
  651. // // Example sending a request using the AttachThingPrincipalRequest method.
  652. // req, resp := client.AttachThingPrincipalRequest(params)
  653. //
  654. // err := req.Send()
  655. // if err == nil { // resp is now filled
  656. // fmt.Println(resp)
  657. // }
  658. func (c *IoT) AttachThingPrincipalRequest(input *AttachThingPrincipalInput) (req *request.Request, output *AttachThingPrincipalOutput) {
  659. op := &request.Operation{
  660. Name: opAttachThingPrincipal,
  661. HTTPMethod: "PUT",
  662. HTTPPath: "/things/{thingName}/principals",
  663. }
  664. if input == nil {
  665. input = &AttachThingPrincipalInput{}
  666. }
  667. output = &AttachThingPrincipalOutput{}
  668. req = c.newRequest(op, input, output)
  669. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  670. return
  671. }
  672. // AttachThingPrincipal API operation for AWS IoT.
  673. //
  674. // Attaches the specified principal to the specified thing.
  675. //
  676. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  677. // with awserr.Error's Code and Message methods to get detailed information about
  678. // the error.
  679. //
  680. // See the AWS API reference guide for AWS IoT's
  681. // API operation AttachThingPrincipal for usage and error information.
  682. //
  683. // Returned Error Codes:
  684. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  685. // The specified resource does not exist.
  686. //
  687. // * ErrCodeInvalidRequestException "InvalidRequestException"
  688. // The request is not valid.
  689. //
  690. // * ErrCodeThrottlingException "ThrottlingException"
  691. // The rate exceeds the limit.
  692. //
  693. // * ErrCodeUnauthorizedException "UnauthorizedException"
  694. // You are not authorized to perform this operation.
  695. //
  696. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  697. // The service is temporarily unavailable.
  698. //
  699. // * ErrCodeInternalFailureException "InternalFailureException"
  700. // An unexpected error has occurred.
  701. //
  702. func (c *IoT) AttachThingPrincipal(input *AttachThingPrincipalInput) (*AttachThingPrincipalOutput, error) {
  703. req, out := c.AttachThingPrincipalRequest(input)
  704. return out, req.Send()
  705. }
  706. // AttachThingPrincipalWithContext is the same as AttachThingPrincipal with the addition of
  707. // the ability to pass a context and additional request options.
  708. //
  709. // See AttachThingPrincipal for details on how to use this API operation.
  710. //
  711. // The context must be non-nil and will be used for request cancellation. If
  712. // the context is nil a panic will occur. In the future the SDK may create
  713. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  714. // for more information on using Contexts.
  715. func (c *IoT) AttachThingPrincipalWithContext(ctx aws.Context, input *AttachThingPrincipalInput, opts ...request.Option) (*AttachThingPrincipalOutput, error) {
  716. req, out := c.AttachThingPrincipalRequest(input)
  717. req.SetContext(ctx)
  718. req.ApplyOptions(opts...)
  719. return out, req.Send()
  720. }
  721. const opCancelAuditTask = "CancelAuditTask"
  722. // CancelAuditTaskRequest generates a "aws/request.Request" representing the
  723. // client's request for the CancelAuditTask operation. The "output" return
  724. // value will be populated with the request's response once the request completes
  725. // successfully.
  726. //
  727. // Use "Send" method on the returned Request to send the API call to the service.
  728. // the "output" return value is not valid until after Send returns without error.
  729. //
  730. // See CancelAuditTask for more information on using the CancelAuditTask
  731. // API call, and error handling.
  732. //
  733. // This method is useful when you want to inject custom logic or configuration
  734. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  735. //
  736. //
  737. // // Example sending a request using the CancelAuditTaskRequest method.
  738. // req, resp := client.CancelAuditTaskRequest(params)
  739. //
  740. // err := req.Send()
  741. // if err == nil { // resp is now filled
  742. // fmt.Println(resp)
  743. // }
  744. func (c *IoT) CancelAuditTaskRequest(input *CancelAuditTaskInput) (req *request.Request, output *CancelAuditTaskOutput) {
  745. op := &request.Operation{
  746. Name: opCancelAuditTask,
  747. HTTPMethod: "PUT",
  748. HTTPPath: "/audit/tasks/{taskId}/cancel",
  749. }
  750. if input == nil {
  751. input = &CancelAuditTaskInput{}
  752. }
  753. output = &CancelAuditTaskOutput{}
  754. req = c.newRequest(op, input, output)
  755. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  756. return
  757. }
  758. // CancelAuditTask API operation for AWS IoT.
  759. //
  760. // Cancels an audit that is in progress. The audit can be either scheduled or
  761. // on-demand. If the audit is not in progress, an "InvalidRequestException"
  762. // occurs.
  763. //
  764. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  765. // with awserr.Error's Code and Message methods to get detailed information about
  766. // the error.
  767. //
  768. // See the AWS API reference guide for AWS IoT's
  769. // API operation CancelAuditTask for usage and error information.
  770. //
  771. // Returned Error Codes:
  772. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  773. // The specified resource does not exist.
  774. //
  775. // * ErrCodeInvalidRequestException "InvalidRequestException"
  776. // The request is not valid.
  777. //
  778. // * ErrCodeThrottlingException "ThrottlingException"
  779. // The rate exceeds the limit.
  780. //
  781. // * ErrCodeInternalFailureException "InternalFailureException"
  782. // An unexpected error has occurred.
  783. //
  784. func (c *IoT) CancelAuditTask(input *CancelAuditTaskInput) (*CancelAuditTaskOutput, error) {
  785. req, out := c.CancelAuditTaskRequest(input)
  786. return out, req.Send()
  787. }
  788. // CancelAuditTaskWithContext is the same as CancelAuditTask with the addition of
  789. // the ability to pass a context and additional request options.
  790. //
  791. // See CancelAuditTask for details on how to use this API operation.
  792. //
  793. // The context must be non-nil and will be used for request cancellation. If
  794. // the context is nil a panic will occur. In the future the SDK may create
  795. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  796. // for more information on using Contexts.
  797. func (c *IoT) CancelAuditTaskWithContext(ctx aws.Context, input *CancelAuditTaskInput, opts ...request.Option) (*CancelAuditTaskOutput, error) {
  798. req, out := c.CancelAuditTaskRequest(input)
  799. req.SetContext(ctx)
  800. req.ApplyOptions(opts...)
  801. return out, req.Send()
  802. }
  803. const opCancelCertificateTransfer = "CancelCertificateTransfer"
  804. // CancelCertificateTransferRequest generates a "aws/request.Request" representing the
  805. // client's request for the CancelCertificateTransfer operation. The "output" return
  806. // value will be populated with the request's response once the request completes
  807. // successfully.
  808. //
  809. // Use "Send" method on the returned Request to send the API call to the service.
  810. // the "output" return value is not valid until after Send returns without error.
  811. //
  812. // See CancelCertificateTransfer for more information on using the CancelCertificateTransfer
  813. // API call, and error handling.
  814. //
  815. // This method is useful when you want to inject custom logic or configuration
  816. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  817. //
  818. //
  819. // // Example sending a request using the CancelCertificateTransferRequest method.
  820. // req, resp := client.CancelCertificateTransferRequest(params)
  821. //
  822. // err := req.Send()
  823. // if err == nil { // resp is now filled
  824. // fmt.Println(resp)
  825. // }
  826. func (c *IoT) CancelCertificateTransferRequest(input *CancelCertificateTransferInput) (req *request.Request, output *CancelCertificateTransferOutput) {
  827. op := &request.Operation{
  828. Name: opCancelCertificateTransfer,
  829. HTTPMethod: "PATCH",
  830. HTTPPath: "/cancel-certificate-transfer/{certificateId}",
  831. }
  832. if input == nil {
  833. input = &CancelCertificateTransferInput{}
  834. }
  835. output = &CancelCertificateTransferOutput{}
  836. req = c.newRequest(op, input, output)
  837. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  838. return
  839. }
  840. // CancelCertificateTransfer API operation for AWS IoT.
  841. //
  842. // Cancels a pending transfer for the specified certificate.
  843. //
  844. // Note Only the transfer source account can use this operation to cancel a
  845. // transfer. (Transfer destinations can use RejectCertificateTransfer instead.)
  846. // After transfer, AWS IoT returns the certificate to the source account in
  847. // the INACTIVE state. After the destination account has accepted the transfer,
  848. // the transfer cannot be cancelled.
  849. //
  850. // After a certificate transfer is cancelled, the status of the certificate
  851. // changes from PENDING_TRANSFER to INACTIVE.
  852. //
  853. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  854. // with awserr.Error's Code and Message methods to get detailed information about
  855. // the error.
  856. //
  857. // See the AWS API reference guide for AWS IoT's
  858. // API operation CancelCertificateTransfer for usage and error information.
  859. //
  860. // Returned Error Codes:
  861. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  862. // The specified resource does not exist.
  863. //
  864. // * ErrCodeTransferAlreadyCompletedException "TransferAlreadyCompletedException"
  865. // You can't revert the certificate transfer because the transfer is already
  866. // complete.
  867. //
  868. // * ErrCodeInvalidRequestException "InvalidRequestException"
  869. // The request is not valid.
  870. //
  871. // * ErrCodeThrottlingException "ThrottlingException"
  872. // The rate exceeds the limit.
  873. //
  874. // * ErrCodeUnauthorizedException "UnauthorizedException"
  875. // You are not authorized to perform this operation.
  876. //
  877. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  878. // The service is temporarily unavailable.
  879. //
  880. // * ErrCodeInternalFailureException "InternalFailureException"
  881. // An unexpected error has occurred.
  882. //
  883. func (c *IoT) CancelCertificateTransfer(input *CancelCertificateTransferInput) (*CancelCertificateTransferOutput, error) {
  884. req, out := c.CancelCertificateTransferRequest(input)
  885. return out, req.Send()
  886. }
  887. // CancelCertificateTransferWithContext is the same as CancelCertificateTransfer with the addition of
  888. // the ability to pass a context and additional request options.
  889. //
  890. // See CancelCertificateTransfer for details on how to use this API operation.
  891. //
  892. // The context must be non-nil and will be used for request cancellation. If
  893. // the context is nil a panic will occur. In the future the SDK may create
  894. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  895. // for more information on using Contexts.
  896. func (c *IoT) CancelCertificateTransferWithContext(ctx aws.Context, input *CancelCertificateTransferInput, opts ...request.Option) (*CancelCertificateTransferOutput, error) {
  897. req, out := c.CancelCertificateTransferRequest(input)
  898. req.SetContext(ctx)
  899. req.ApplyOptions(opts...)
  900. return out, req.Send()
  901. }
  902. const opCancelJob = "CancelJob"
  903. // CancelJobRequest generates a "aws/request.Request" representing the
  904. // client's request for the CancelJob operation. The "output" return
  905. // value will be populated with the request's response once the request completes
  906. // successfully.
  907. //
  908. // Use "Send" method on the returned Request to send the API call to the service.
  909. // the "output" return value is not valid until after Send returns without error.
  910. //
  911. // See CancelJob for more information on using the CancelJob
  912. // API call, and error handling.
  913. //
  914. // This method is useful when you want to inject custom logic or configuration
  915. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  916. //
  917. //
  918. // // Example sending a request using the CancelJobRequest method.
  919. // req, resp := client.CancelJobRequest(params)
  920. //
  921. // err := req.Send()
  922. // if err == nil { // resp is now filled
  923. // fmt.Println(resp)
  924. // }
  925. func (c *IoT) CancelJobRequest(input *CancelJobInput) (req *request.Request, output *CancelJobOutput) {
  926. op := &request.Operation{
  927. Name: opCancelJob,
  928. HTTPMethod: "PUT",
  929. HTTPPath: "/jobs/{jobId}/cancel",
  930. }
  931. if input == nil {
  932. input = &CancelJobInput{}
  933. }
  934. output = &CancelJobOutput{}
  935. req = c.newRequest(op, input, output)
  936. return
  937. }
  938. // CancelJob API operation for AWS IoT.
  939. //
  940. // Cancels a job.
  941. //
  942. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  943. // with awserr.Error's Code and Message methods to get detailed information about
  944. // the error.
  945. //
  946. // See the AWS API reference guide for AWS IoT's
  947. // API operation CancelJob for usage and error information.
  948. //
  949. // Returned Error Codes:
  950. // * ErrCodeInvalidRequestException "InvalidRequestException"
  951. // The request is not valid.
  952. //
  953. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  954. // The specified resource does not exist.
  955. //
  956. // * ErrCodeThrottlingException "ThrottlingException"
  957. // The rate exceeds the limit.
  958. //
  959. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  960. // The service is temporarily unavailable.
  961. //
  962. func (c *IoT) CancelJob(input *CancelJobInput) (*CancelJobOutput, error) {
  963. req, out := c.CancelJobRequest(input)
  964. return out, req.Send()
  965. }
  966. // CancelJobWithContext is the same as CancelJob with the addition of
  967. // the ability to pass a context and additional request options.
  968. //
  969. // See CancelJob for details on how to use this API operation.
  970. //
  971. // The context must be non-nil and will be used for request cancellation. If
  972. // the context is nil a panic will occur. In the future the SDK may create
  973. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  974. // for more information on using Contexts.
  975. func (c *IoT) CancelJobWithContext(ctx aws.Context, input *CancelJobInput, opts ...request.Option) (*CancelJobOutput, error) {
  976. req, out := c.CancelJobRequest(input)
  977. req.SetContext(ctx)
  978. req.ApplyOptions(opts...)
  979. return out, req.Send()
  980. }
  981. const opCancelJobExecution = "CancelJobExecution"
  982. // CancelJobExecutionRequest generates a "aws/request.Request" representing the
  983. // client's request for the CancelJobExecution operation. The "output" return
  984. // value will be populated with the request's response once the request completes
  985. // successfully.
  986. //
  987. // Use "Send" method on the returned Request to send the API call to the service.
  988. // the "output" return value is not valid until after Send returns without error.
  989. //
  990. // See CancelJobExecution for more information on using the CancelJobExecution
  991. // API call, and error handling.
  992. //
  993. // This method is useful when you want to inject custom logic or configuration
  994. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  995. //
  996. //
  997. // // Example sending a request using the CancelJobExecutionRequest method.
  998. // req, resp := client.CancelJobExecutionRequest(params)
  999. //
  1000. // err := req.Send()
  1001. // if err == nil { // resp is now filled
  1002. // fmt.Println(resp)
  1003. // }
  1004. func (c *IoT) CancelJobExecutionRequest(input *CancelJobExecutionInput) (req *request.Request, output *CancelJobExecutionOutput) {
  1005. op := &request.Operation{
  1006. Name: opCancelJobExecution,
  1007. HTTPMethod: "PUT",
  1008. HTTPPath: "/things/{thingName}/jobs/{jobId}/cancel",
  1009. }
  1010. if input == nil {
  1011. input = &CancelJobExecutionInput{}
  1012. }
  1013. output = &CancelJobExecutionOutput{}
  1014. req = c.newRequest(op, input, output)
  1015. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1016. return
  1017. }
  1018. // CancelJobExecution API operation for AWS IoT.
  1019. //
  1020. // Cancels the execution of a job for a given thing.
  1021. //
  1022. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1023. // with awserr.Error's Code and Message methods to get detailed information about
  1024. // the error.
  1025. //
  1026. // See the AWS API reference guide for AWS IoT's
  1027. // API operation CancelJobExecution for usage and error information.
  1028. //
  1029. // Returned Error Codes:
  1030. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1031. // The request is not valid.
  1032. //
  1033. // * ErrCodeInvalidStateTransitionException "InvalidStateTransitionException"
  1034. // An attempt was made to change to an invalid state, for example by deleting
  1035. // a job or a job execution which is "IN_PROGRESS" without setting the force
  1036. // parameter.
  1037. //
  1038. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1039. // The specified resource does not exist.
  1040. //
  1041. // * ErrCodeThrottlingException "ThrottlingException"
  1042. // The rate exceeds the limit.
  1043. //
  1044. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1045. // The service is temporarily unavailable.
  1046. //
  1047. // * ErrCodeVersionConflictException "VersionConflictException"
  1048. // An exception thrown when the version of an entity specified with the expectedVersion
  1049. // parameter does not match the latest version in the system.
  1050. //
  1051. func (c *IoT) CancelJobExecution(input *CancelJobExecutionInput) (*CancelJobExecutionOutput, error) {
  1052. req, out := c.CancelJobExecutionRequest(input)
  1053. return out, req.Send()
  1054. }
  1055. // CancelJobExecutionWithContext is the same as CancelJobExecution with the addition of
  1056. // the ability to pass a context and additional request options.
  1057. //
  1058. // See CancelJobExecution for details on how to use this API operation.
  1059. //
  1060. // The context must be non-nil and will be used for request cancellation. If
  1061. // the context is nil a panic will occur. In the future the SDK may create
  1062. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1063. // for more information on using Contexts.
  1064. func (c *IoT) CancelJobExecutionWithContext(ctx aws.Context, input *CancelJobExecutionInput, opts ...request.Option) (*CancelJobExecutionOutput, error) {
  1065. req, out := c.CancelJobExecutionRequest(input)
  1066. req.SetContext(ctx)
  1067. req.ApplyOptions(opts...)
  1068. return out, req.Send()
  1069. }
  1070. const opClearDefaultAuthorizer = "ClearDefaultAuthorizer"
  1071. // ClearDefaultAuthorizerRequest generates a "aws/request.Request" representing the
  1072. // client's request for the ClearDefaultAuthorizer operation. The "output" return
  1073. // value will be populated with the request's response once the request completes
  1074. // successfully.
  1075. //
  1076. // Use "Send" method on the returned Request to send the API call to the service.
  1077. // the "output" return value is not valid until after Send returns without error.
  1078. //
  1079. // See ClearDefaultAuthorizer for more information on using the ClearDefaultAuthorizer
  1080. // API call, and error handling.
  1081. //
  1082. // This method is useful when you want to inject custom logic or configuration
  1083. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1084. //
  1085. //
  1086. // // Example sending a request using the ClearDefaultAuthorizerRequest method.
  1087. // req, resp := client.ClearDefaultAuthorizerRequest(params)
  1088. //
  1089. // err := req.Send()
  1090. // if err == nil { // resp is now filled
  1091. // fmt.Println(resp)
  1092. // }
  1093. func (c *IoT) ClearDefaultAuthorizerRequest(input *ClearDefaultAuthorizerInput) (req *request.Request, output *ClearDefaultAuthorizerOutput) {
  1094. op := &request.Operation{
  1095. Name: opClearDefaultAuthorizer,
  1096. HTTPMethod: "DELETE",
  1097. HTTPPath: "/default-authorizer",
  1098. }
  1099. if input == nil {
  1100. input = &ClearDefaultAuthorizerInput{}
  1101. }
  1102. output = &ClearDefaultAuthorizerOutput{}
  1103. req = c.newRequest(op, input, output)
  1104. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1105. return
  1106. }
  1107. // ClearDefaultAuthorizer API operation for AWS IoT.
  1108. //
  1109. // Clears the default authorizer.
  1110. //
  1111. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1112. // with awserr.Error's Code and Message methods to get detailed information about
  1113. // the error.
  1114. //
  1115. // See the AWS API reference guide for AWS IoT's
  1116. // API operation ClearDefaultAuthorizer for usage and error information.
  1117. //
  1118. // Returned Error Codes:
  1119. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1120. // The specified resource does not exist.
  1121. //
  1122. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1123. // The request is not valid.
  1124. //
  1125. // * ErrCodeThrottlingException "ThrottlingException"
  1126. // The rate exceeds the limit.
  1127. //
  1128. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1129. // You are not authorized to perform this operation.
  1130. //
  1131. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1132. // The service is temporarily unavailable.
  1133. //
  1134. // * ErrCodeInternalFailureException "InternalFailureException"
  1135. // An unexpected error has occurred.
  1136. //
  1137. func (c *IoT) ClearDefaultAuthorizer(input *ClearDefaultAuthorizerInput) (*ClearDefaultAuthorizerOutput, error) {
  1138. req, out := c.ClearDefaultAuthorizerRequest(input)
  1139. return out, req.Send()
  1140. }
  1141. // ClearDefaultAuthorizerWithContext is the same as ClearDefaultAuthorizer with the addition of
  1142. // the ability to pass a context and additional request options.
  1143. //
  1144. // See ClearDefaultAuthorizer for details on how to use this API operation.
  1145. //
  1146. // The context must be non-nil and will be used for request cancellation. If
  1147. // the context is nil a panic will occur. In the future the SDK may create
  1148. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1149. // for more information on using Contexts.
  1150. func (c *IoT) ClearDefaultAuthorizerWithContext(ctx aws.Context, input *ClearDefaultAuthorizerInput, opts ...request.Option) (*ClearDefaultAuthorizerOutput, error) {
  1151. req, out := c.ClearDefaultAuthorizerRequest(input)
  1152. req.SetContext(ctx)
  1153. req.ApplyOptions(opts...)
  1154. return out, req.Send()
  1155. }
  1156. const opCreateAuthorizer = "CreateAuthorizer"
  1157. // CreateAuthorizerRequest generates a "aws/request.Request" representing the
  1158. // client's request for the CreateAuthorizer operation. The "output" return
  1159. // value will be populated with the request's response once the request completes
  1160. // successfully.
  1161. //
  1162. // Use "Send" method on the returned Request to send the API call to the service.
  1163. // the "output" return value is not valid until after Send returns without error.
  1164. //
  1165. // See CreateAuthorizer for more information on using the CreateAuthorizer
  1166. // API call, and error handling.
  1167. //
  1168. // This method is useful when you want to inject custom logic or configuration
  1169. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1170. //
  1171. //
  1172. // // Example sending a request using the CreateAuthorizerRequest method.
  1173. // req, resp := client.CreateAuthorizerRequest(params)
  1174. //
  1175. // err := req.Send()
  1176. // if err == nil { // resp is now filled
  1177. // fmt.Println(resp)
  1178. // }
  1179. func (c *IoT) CreateAuthorizerRequest(input *CreateAuthorizerInput) (req *request.Request, output *CreateAuthorizerOutput) {
  1180. op := &request.Operation{
  1181. Name: opCreateAuthorizer,
  1182. HTTPMethod: "POST",
  1183. HTTPPath: "/authorizer/{authorizerName}",
  1184. }
  1185. if input == nil {
  1186. input = &CreateAuthorizerInput{}
  1187. }
  1188. output = &CreateAuthorizerOutput{}
  1189. req = c.newRequest(op, input, output)
  1190. return
  1191. }
  1192. // CreateAuthorizer API operation for AWS IoT.
  1193. //
  1194. // Creates an authorizer.
  1195. //
  1196. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1197. // with awserr.Error's Code and Message methods to get detailed information about
  1198. // the error.
  1199. //
  1200. // See the AWS API reference guide for AWS IoT's
  1201. // API operation CreateAuthorizer for usage and error information.
  1202. //
  1203. // Returned Error Codes:
  1204. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1205. // The resource already exists.
  1206. //
  1207. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1208. // The request is not valid.
  1209. //
  1210. // * ErrCodeLimitExceededException "LimitExceededException"
  1211. // A limit has been exceeded.
  1212. //
  1213. // * ErrCodeThrottlingException "ThrottlingException"
  1214. // The rate exceeds the limit.
  1215. //
  1216. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1217. // You are not authorized to perform this operation.
  1218. //
  1219. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1220. // The service is temporarily unavailable.
  1221. //
  1222. // * ErrCodeInternalFailureException "InternalFailureException"
  1223. // An unexpected error has occurred.
  1224. //
  1225. func (c *IoT) CreateAuthorizer(input *CreateAuthorizerInput) (*CreateAuthorizerOutput, error) {
  1226. req, out := c.CreateAuthorizerRequest(input)
  1227. return out, req.Send()
  1228. }
  1229. // CreateAuthorizerWithContext is the same as CreateAuthorizer with the addition of
  1230. // the ability to pass a context and additional request options.
  1231. //
  1232. // See CreateAuthorizer for details on how to use this API operation.
  1233. //
  1234. // The context must be non-nil and will be used for request cancellation. If
  1235. // the context is nil a panic will occur. In the future the SDK may create
  1236. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1237. // for more information on using Contexts.
  1238. func (c *IoT) CreateAuthorizerWithContext(ctx aws.Context, input *CreateAuthorizerInput, opts ...request.Option) (*CreateAuthorizerOutput, error) {
  1239. req, out := c.CreateAuthorizerRequest(input)
  1240. req.SetContext(ctx)
  1241. req.ApplyOptions(opts...)
  1242. return out, req.Send()
  1243. }
  1244. const opCreateBillingGroup = "CreateBillingGroup"
  1245. // CreateBillingGroupRequest generates a "aws/request.Request" representing the
  1246. // client's request for the CreateBillingGroup operation. The "output" return
  1247. // value will be populated with the request's response once the request completes
  1248. // successfully.
  1249. //
  1250. // Use "Send" method on the returned Request to send the API call to the service.
  1251. // the "output" return value is not valid until after Send returns without error.
  1252. //
  1253. // See CreateBillingGroup for more information on using the CreateBillingGroup
  1254. // API call, and error handling.
  1255. //
  1256. // This method is useful when you want to inject custom logic or configuration
  1257. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1258. //
  1259. //
  1260. // // Example sending a request using the CreateBillingGroupRequest method.
  1261. // req, resp := client.CreateBillingGroupRequest(params)
  1262. //
  1263. // err := req.Send()
  1264. // if err == nil { // resp is now filled
  1265. // fmt.Println(resp)
  1266. // }
  1267. func (c *IoT) CreateBillingGroupRequest(input *CreateBillingGroupInput) (req *request.Request, output *CreateBillingGroupOutput) {
  1268. op := &request.Operation{
  1269. Name: opCreateBillingGroup,
  1270. HTTPMethod: "POST",
  1271. HTTPPath: "/billing-groups/{billingGroupName}",
  1272. }
  1273. if input == nil {
  1274. input = &CreateBillingGroupInput{}
  1275. }
  1276. output = &CreateBillingGroupOutput{}
  1277. req = c.newRequest(op, input, output)
  1278. return
  1279. }
  1280. // CreateBillingGroup API operation for AWS IoT.
  1281. //
  1282. // Creates a billing group.
  1283. //
  1284. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1285. // with awserr.Error's Code and Message methods to get detailed information about
  1286. // the error.
  1287. //
  1288. // See the AWS API reference guide for AWS IoT's
  1289. // API operation CreateBillingGroup for usage and error information.
  1290. //
  1291. // Returned Error Codes:
  1292. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1293. // The request is not valid.
  1294. //
  1295. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1296. // The resource already exists.
  1297. //
  1298. // * ErrCodeThrottlingException "ThrottlingException"
  1299. // The rate exceeds the limit.
  1300. //
  1301. // * ErrCodeInternalFailureException "InternalFailureException"
  1302. // An unexpected error has occurred.
  1303. //
  1304. func (c *IoT) CreateBillingGroup(input *CreateBillingGroupInput) (*CreateBillingGroupOutput, error) {
  1305. req, out := c.CreateBillingGroupRequest(input)
  1306. return out, req.Send()
  1307. }
  1308. // CreateBillingGroupWithContext is the same as CreateBillingGroup with the addition of
  1309. // the ability to pass a context and additional request options.
  1310. //
  1311. // See CreateBillingGroup for details on how to use this API operation.
  1312. //
  1313. // The context must be non-nil and will be used for request cancellation. If
  1314. // the context is nil a panic will occur. In the future the SDK may create
  1315. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1316. // for more information on using Contexts.
  1317. func (c *IoT) CreateBillingGroupWithContext(ctx aws.Context, input *CreateBillingGroupInput, opts ...request.Option) (*CreateBillingGroupOutput, error) {
  1318. req, out := c.CreateBillingGroupRequest(input)
  1319. req.SetContext(ctx)
  1320. req.ApplyOptions(opts...)
  1321. return out, req.Send()
  1322. }
  1323. const opCreateCertificateFromCsr = "CreateCertificateFromCsr"
  1324. // CreateCertificateFromCsrRequest generates a "aws/request.Request" representing the
  1325. // client's request for the CreateCertificateFromCsr operation. The "output" return
  1326. // value will be populated with the request's response once the request completes
  1327. // successfully.
  1328. //
  1329. // Use "Send" method on the returned Request to send the API call to the service.
  1330. // the "output" return value is not valid until after Send returns without error.
  1331. //
  1332. // See CreateCertificateFromCsr for more information on using the CreateCertificateFromCsr
  1333. // API call, and error handling.
  1334. //
  1335. // This method is useful when you want to inject custom logic or configuration
  1336. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1337. //
  1338. //
  1339. // // Example sending a request using the CreateCertificateFromCsrRequest method.
  1340. // req, resp := client.CreateCertificateFromCsrRequest(params)
  1341. //
  1342. // err := req.Send()
  1343. // if err == nil { // resp is now filled
  1344. // fmt.Println(resp)
  1345. // }
  1346. func (c *IoT) CreateCertificateFromCsrRequest(input *CreateCertificateFromCsrInput) (req *request.Request, output *CreateCertificateFromCsrOutput) {
  1347. op := &request.Operation{
  1348. Name: opCreateCertificateFromCsr,
  1349. HTTPMethod: "POST",
  1350. HTTPPath: "/certificates",
  1351. }
  1352. if input == nil {
  1353. input = &CreateCertificateFromCsrInput{}
  1354. }
  1355. output = &CreateCertificateFromCsrOutput{}
  1356. req = c.newRequest(op, input, output)
  1357. return
  1358. }
  1359. // CreateCertificateFromCsr API operation for AWS IoT.
  1360. //
  1361. // Creates an X.509 certificate using the specified certificate signing request.
  1362. //
  1363. // Note: The CSR must include a public key that is either an RSA key with a
  1364. // length of at least 2048 bits or an ECC key from NIST P-256 or NIST P-384
  1365. // curves.
  1366. //
  1367. // Note: Reusing the same certificate signing request (CSR) results in a distinct
  1368. // certificate.
  1369. //
  1370. // You can create multiple certificates in a batch by creating a directory,
  1371. // copying multiple .csr files into that directory, and then specifying that
  1372. // directory on the command line. The following commands show how to create
  1373. // a batch of certificates given a batch of CSRs.
  1374. //
  1375. // Assuming a set of CSRs are located inside of the directory my-csr-directory:
  1376. //
  1377. // On Linux and OS X, the command is:
  1378. //
  1379. // $ ls my-csr-directory/ | xargs -I {} aws iot create-certificate-from-csr
  1380. // --certificate-signing-request file://my-csr-directory/{}
  1381. //
  1382. // This command lists all of the CSRs in my-csr-directory and pipes each CSR
  1383. // file name to the aws iot create-certificate-from-csr AWS CLI command to create
  1384. // a certificate for the corresponding CSR.
  1385. //
  1386. // The aws iot create-certificate-from-csr part of the command can also be run
  1387. // in parallel to speed up the certificate creation process:
  1388. //
  1389. // $ ls my-csr-directory/ | xargs -P 10 -I {} aws iot create-certificate-from-csr
  1390. // --certificate-signing-request file://my-csr-directory/{}
  1391. //
  1392. // On Windows PowerShell, the command to create certificates for all CSRs in
  1393. // my-csr-directory is:
  1394. //
  1395. // > ls -Name my-csr-directory | %{aws iot create-certificate-from-csr --certificate-signing-request
  1396. // file://my-csr-directory/$_}
  1397. //
  1398. // On a Windows command prompt, the command to create certificates for all CSRs
  1399. // in my-csr-directory is:
  1400. //
  1401. // > forfiles /p my-csr-directory /c "cmd /c aws iot create-certificate-from-csr
  1402. // --certificate-signing-request file://@path"
  1403. //
  1404. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1405. // with awserr.Error's Code and Message methods to get detailed information about
  1406. // the error.
  1407. //
  1408. // See the AWS API reference guide for AWS IoT's
  1409. // API operation CreateCertificateFromCsr for usage and error information.
  1410. //
  1411. // Returned Error Codes:
  1412. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1413. // The request is not valid.
  1414. //
  1415. // * ErrCodeThrottlingException "ThrottlingException"
  1416. // The rate exceeds the limit.
  1417. //
  1418. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1419. // You are not authorized to perform this operation.
  1420. //
  1421. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1422. // The service is temporarily unavailable.
  1423. //
  1424. // * ErrCodeInternalFailureException "InternalFailureException"
  1425. // An unexpected error has occurred.
  1426. //
  1427. func (c *IoT) CreateCertificateFromCsr(input *CreateCertificateFromCsrInput) (*CreateCertificateFromCsrOutput, error) {
  1428. req, out := c.CreateCertificateFromCsrRequest(input)
  1429. return out, req.Send()
  1430. }
  1431. // CreateCertificateFromCsrWithContext is the same as CreateCertificateFromCsr with the addition of
  1432. // the ability to pass a context and additional request options.
  1433. //
  1434. // See CreateCertificateFromCsr for details on how to use this API operation.
  1435. //
  1436. // The context must be non-nil and will be used for request cancellation. If
  1437. // the context is nil a panic will occur. In the future the SDK may create
  1438. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1439. // for more information on using Contexts.
  1440. func (c *IoT) CreateCertificateFromCsrWithContext(ctx aws.Context, input *CreateCertificateFromCsrInput, opts ...request.Option) (*CreateCertificateFromCsrOutput, error) {
  1441. req, out := c.CreateCertificateFromCsrRequest(input)
  1442. req.SetContext(ctx)
  1443. req.ApplyOptions(opts...)
  1444. return out, req.Send()
  1445. }
  1446. const opCreateDynamicThingGroup = "CreateDynamicThingGroup"
  1447. // CreateDynamicThingGroupRequest generates a "aws/request.Request" representing the
  1448. // client's request for the CreateDynamicThingGroup operation. The "output" return
  1449. // value will be populated with the request's response once the request completes
  1450. // successfully.
  1451. //
  1452. // Use "Send" method on the returned Request to send the API call to the service.
  1453. // the "output" return value is not valid until after Send returns without error.
  1454. //
  1455. // See CreateDynamicThingGroup for more information on using the CreateDynamicThingGroup
  1456. // API call, and error handling.
  1457. //
  1458. // This method is useful when you want to inject custom logic or configuration
  1459. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1460. //
  1461. //
  1462. // // Example sending a request using the CreateDynamicThingGroupRequest method.
  1463. // req, resp := client.CreateDynamicThingGroupRequest(params)
  1464. //
  1465. // err := req.Send()
  1466. // if err == nil { // resp is now filled
  1467. // fmt.Println(resp)
  1468. // }
  1469. func (c *IoT) CreateDynamicThingGroupRequest(input *CreateDynamicThingGroupInput) (req *request.Request, output *CreateDynamicThingGroupOutput) {
  1470. op := &request.Operation{
  1471. Name: opCreateDynamicThingGroup,
  1472. HTTPMethod: "POST",
  1473. HTTPPath: "/dynamic-thing-groups/{thingGroupName}",
  1474. }
  1475. if input == nil {
  1476. input = &CreateDynamicThingGroupInput{}
  1477. }
  1478. output = &CreateDynamicThingGroupOutput{}
  1479. req = c.newRequest(op, input, output)
  1480. return
  1481. }
  1482. // CreateDynamicThingGroup API operation for AWS IoT.
  1483. //
  1484. // Creates a dynamic thing group.
  1485. //
  1486. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1487. // with awserr.Error's Code and Message methods to get detailed information about
  1488. // the error.
  1489. //
  1490. // See the AWS API reference guide for AWS IoT's
  1491. // API operation CreateDynamicThingGroup for usage and error information.
  1492. //
  1493. // Returned Error Codes:
  1494. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1495. // The request is not valid.
  1496. //
  1497. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1498. // The resource already exists.
  1499. //
  1500. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1501. // The specified resource does not exist.
  1502. //
  1503. // * ErrCodeThrottlingException "ThrottlingException"
  1504. // The rate exceeds the limit.
  1505. //
  1506. // * ErrCodeInternalFailureException "InternalFailureException"
  1507. // An unexpected error has occurred.
  1508. //
  1509. // * ErrCodeInvalidQueryException "InvalidQueryException"
  1510. // The query is invalid.
  1511. //
  1512. // * ErrCodeLimitExceededException "LimitExceededException"
  1513. // A limit has been exceeded.
  1514. //
  1515. func (c *IoT) CreateDynamicThingGroup(input *CreateDynamicThingGroupInput) (*CreateDynamicThingGroupOutput, error) {
  1516. req, out := c.CreateDynamicThingGroupRequest(input)
  1517. return out, req.Send()
  1518. }
  1519. // CreateDynamicThingGroupWithContext is the same as CreateDynamicThingGroup with the addition of
  1520. // the ability to pass a context and additional request options.
  1521. //
  1522. // See CreateDynamicThingGroup for details on how to use this API operation.
  1523. //
  1524. // The context must be non-nil and will be used for request cancellation. If
  1525. // the context is nil a panic will occur. In the future the SDK may create
  1526. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1527. // for more information on using Contexts.
  1528. func (c *IoT) CreateDynamicThingGroupWithContext(ctx aws.Context, input *CreateDynamicThingGroupInput, opts ...request.Option) (*CreateDynamicThingGroupOutput, error) {
  1529. req, out := c.CreateDynamicThingGroupRequest(input)
  1530. req.SetContext(ctx)
  1531. req.ApplyOptions(opts...)
  1532. return out, req.Send()
  1533. }
  1534. const opCreateJob = "CreateJob"
  1535. // CreateJobRequest generates a "aws/request.Request" representing the
  1536. // client's request for the CreateJob operation. The "output" return
  1537. // value will be populated with the request's response once the request completes
  1538. // successfully.
  1539. //
  1540. // Use "Send" method on the returned Request to send the API call to the service.
  1541. // the "output" return value is not valid until after Send returns without error.
  1542. //
  1543. // See CreateJob for more information on using the CreateJob
  1544. // API call, and error handling.
  1545. //
  1546. // This method is useful when you want to inject custom logic or configuration
  1547. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1548. //
  1549. //
  1550. // // Example sending a request using the CreateJobRequest method.
  1551. // req, resp := client.CreateJobRequest(params)
  1552. //
  1553. // err := req.Send()
  1554. // if err == nil { // resp is now filled
  1555. // fmt.Println(resp)
  1556. // }
  1557. func (c *IoT) CreateJobRequest(input *CreateJobInput) (req *request.Request, output *CreateJobOutput) {
  1558. op := &request.Operation{
  1559. Name: opCreateJob,
  1560. HTTPMethod: "PUT",
  1561. HTTPPath: "/jobs/{jobId}",
  1562. }
  1563. if input == nil {
  1564. input = &CreateJobInput{}
  1565. }
  1566. output = &CreateJobOutput{}
  1567. req = c.newRequest(op, input, output)
  1568. return
  1569. }
  1570. // CreateJob API operation for AWS IoT.
  1571. //
  1572. // Creates a job.
  1573. //
  1574. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1575. // with awserr.Error's Code and Message methods to get detailed information about
  1576. // the error.
  1577. //
  1578. // See the AWS API reference guide for AWS IoT's
  1579. // API operation CreateJob for usage and error information.
  1580. //
  1581. // Returned Error Codes:
  1582. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1583. // The request is not valid.
  1584. //
  1585. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1586. // The specified resource does not exist.
  1587. //
  1588. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1589. // The resource already exists.
  1590. //
  1591. // * ErrCodeLimitExceededException "LimitExceededException"
  1592. // A limit has been exceeded.
  1593. //
  1594. // * ErrCodeThrottlingException "ThrottlingException"
  1595. // The rate exceeds the limit.
  1596. //
  1597. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1598. // The service is temporarily unavailable.
  1599. //
  1600. func (c *IoT) CreateJob(input *CreateJobInput) (*CreateJobOutput, error) {
  1601. req, out := c.CreateJobRequest(input)
  1602. return out, req.Send()
  1603. }
  1604. // CreateJobWithContext is the same as CreateJob with the addition of
  1605. // the ability to pass a context and additional request options.
  1606. //
  1607. // See CreateJob for details on how to use this API operation.
  1608. //
  1609. // The context must be non-nil and will be used for request cancellation. If
  1610. // the context is nil a panic will occur. In the future the SDK may create
  1611. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1612. // for more information on using Contexts.
  1613. func (c *IoT) CreateJobWithContext(ctx aws.Context, input *CreateJobInput, opts ...request.Option) (*CreateJobOutput, error) {
  1614. req, out := c.CreateJobRequest(input)
  1615. req.SetContext(ctx)
  1616. req.ApplyOptions(opts...)
  1617. return out, req.Send()
  1618. }
  1619. const opCreateKeysAndCertificate = "CreateKeysAndCertificate"
  1620. // CreateKeysAndCertificateRequest generates a "aws/request.Request" representing the
  1621. // client's request for the CreateKeysAndCertificate operation. The "output" return
  1622. // value will be populated with the request's response once the request completes
  1623. // successfully.
  1624. //
  1625. // Use "Send" method on the returned Request to send the API call to the service.
  1626. // the "output" return value is not valid until after Send returns without error.
  1627. //
  1628. // See CreateKeysAndCertificate for more information on using the CreateKeysAndCertificate
  1629. // API call, and error handling.
  1630. //
  1631. // This method is useful when you want to inject custom logic or configuration
  1632. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1633. //
  1634. //
  1635. // // Example sending a request using the CreateKeysAndCertificateRequest method.
  1636. // req, resp := client.CreateKeysAndCertificateRequest(params)
  1637. //
  1638. // err := req.Send()
  1639. // if err == nil { // resp is now filled
  1640. // fmt.Println(resp)
  1641. // }
  1642. func (c *IoT) CreateKeysAndCertificateRequest(input *CreateKeysAndCertificateInput) (req *request.Request, output *CreateKeysAndCertificateOutput) {
  1643. op := &request.Operation{
  1644. Name: opCreateKeysAndCertificate,
  1645. HTTPMethod: "POST",
  1646. HTTPPath: "/keys-and-certificate",
  1647. }
  1648. if input == nil {
  1649. input = &CreateKeysAndCertificateInput{}
  1650. }
  1651. output = &CreateKeysAndCertificateOutput{}
  1652. req = c.newRequest(op, input, output)
  1653. return
  1654. }
  1655. // CreateKeysAndCertificate API operation for AWS IoT.
  1656. //
  1657. // Creates a 2048-bit RSA key pair and issues an X.509 certificate using the
  1658. // issued public key.
  1659. //
  1660. // Note This is the only time AWS IoT issues the private key for this certificate,
  1661. // so it is important to keep it in a secure location.
  1662. //
  1663. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1664. // with awserr.Error's Code and Message methods to get detailed information about
  1665. // the error.
  1666. //
  1667. // See the AWS API reference guide for AWS IoT's
  1668. // API operation CreateKeysAndCertificate for usage and error information.
  1669. //
  1670. // Returned Error Codes:
  1671. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1672. // The request is not valid.
  1673. //
  1674. // * ErrCodeThrottlingException "ThrottlingException"
  1675. // The rate exceeds the limit.
  1676. //
  1677. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1678. // You are not authorized to perform this operation.
  1679. //
  1680. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1681. // The service is temporarily unavailable.
  1682. //
  1683. // * ErrCodeInternalFailureException "InternalFailureException"
  1684. // An unexpected error has occurred.
  1685. //
  1686. func (c *IoT) CreateKeysAndCertificate(input *CreateKeysAndCertificateInput) (*CreateKeysAndCertificateOutput, error) {
  1687. req, out := c.CreateKeysAndCertificateRequest(input)
  1688. return out, req.Send()
  1689. }
  1690. // CreateKeysAndCertificateWithContext is the same as CreateKeysAndCertificate with the addition of
  1691. // the ability to pass a context and additional request options.
  1692. //
  1693. // See CreateKeysAndCertificate for details on how to use this API operation.
  1694. //
  1695. // The context must be non-nil and will be used for request cancellation. If
  1696. // the context is nil a panic will occur. In the future the SDK may create
  1697. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1698. // for more information on using Contexts.
  1699. func (c *IoT) CreateKeysAndCertificateWithContext(ctx aws.Context, input *CreateKeysAndCertificateInput, opts ...request.Option) (*CreateKeysAndCertificateOutput, error) {
  1700. req, out := c.CreateKeysAndCertificateRequest(input)
  1701. req.SetContext(ctx)
  1702. req.ApplyOptions(opts...)
  1703. return out, req.Send()
  1704. }
  1705. const opCreateOTAUpdate = "CreateOTAUpdate"
  1706. // CreateOTAUpdateRequest generates a "aws/request.Request" representing the
  1707. // client's request for the CreateOTAUpdate operation. The "output" return
  1708. // value will be populated with the request's response once the request completes
  1709. // successfully.
  1710. //
  1711. // Use "Send" method on the returned Request to send the API call to the service.
  1712. // the "output" return value is not valid until after Send returns without error.
  1713. //
  1714. // See CreateOTAUpdate for more information on using the CreateOTAUpdate
  1715. // API call, and error handling.
  1716. //
  1717. // This method is useful when you want to inject custom logic or configuration
  1718. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1719. //
  1720. //
  1721. // // Example sending a request using the CreateOTAUpdateRequest method.
  1722. // req, resp := client.CreateOTAUpdateRequest(params)
  1723. //
  1724. // err := req.Send()
  1725. // if err == nil { // resp is now filled
  1726. // fmt.Println(resp)
  1727. // }
  1728. func (c *IoT) CreateOTAUpdateRequest(input *CreateOTAUpdateInput) (req *request.Request, output *CreateOTAUpdateOutput) {
  1729. op := &request.Operation{
  1730. Name: opCreateOTAUpdate,
  1731. HTTPMethod: "POST",
  1732. HTTPPath: "/otaUpdates/{otaUpdateId}",
  1733. }
  1734. if input == nil {
  1735. input = &CreateOTAUpdateInput{}
  1736. }
  1737. output = &CreateOTAUpdateOutput{}
  1738. req = c.newRequest(op, input, output)
  1739. return
  1740. }
  1741. // CreateOTAUpdate API operation for AWS IoT.
  1742. //
  1743. // Creates an AWS IoT OTAUpdate on a target group of things or groups.
  1744. //
  1745. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1746. // with awserr.Error's Code and Message methods to get detailed information about
  1747. // the error.
  1748. //
  1749. // See the AWS API reference guide for AWS IoT's
  1750. // API operation CreateOTAUpdate for usage and error information.
  1751. //
  1752. // Returned Error Codes:
  1753. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1754. // The request is not valid.
  1755. //
  1756. // * ErrCodeLimitExceededException "LimitExceededException"
  1757. // A limit has been exceeded.
  1758. //
  1759. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1760. // The specified resource does not exist.
  1761. //
  1762. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1763. // The resource already exists.
  1764. //
  1765. // * ErrCodeThrottlingException "ThrottlingException"
  1766. // The rate exceeds the limit.
  1767. //
  1768. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1769. // You are not authorized to perform this operation.
  1770. //
  1771. // * ErrCodeInternalFailureException "InternalFailureException"
  1772. // An unexpected error has occurred.
  1773. //
  1774. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1775. // The service is temporarily unavailable.
  1776. //
  1777. func (c *IoT) CreateOTAUpdate(input *CreateOTAUpdateInput) (*CreateOTAUpdateOutput, error) {
  1778. req, out := c.CreateOTAUpdateRequest(input)
  1779. return out, req.Send()
  1780. }
  1781. // CreateOTAUpdateWithContext is the same as CreateOTAUpdate with the addition of
  1782. // the ability to pass a context and additional request options.
  1783. //
  1784. // See CreateOTAUpdate for details on how to use this API operation.
  1785. //
  1786. // The context must be non-nil and will be used for request cancellation. If
  1787. // the context is nil a panic will occur. In the future the SDK may create
  1788. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1789. // for more information on using Contexts.
  1790. func (c *IoT) CreateOTAUpdateWithContext(ctx aws.Context, input *CreateOTAUpdateInput, opts ...request.Option) (*CreateOTAUpdateOutput, error) {
  1791. req, out := c.CreateOTAUpdateRequest(input)
  1792. req.SetContext(ctx)
  1793. req.ApplyOptions(opts...)
  1794. return out, req.Send()
  1795. }
  1796. const opCreatePolicy = "CreatePolicy"
  1797. // CreatePolicyRequest generates a "aws/request.Request" representing the
  1798. // client's request for the CreatePolicy operation. The "output" return
  1799. // value will be populated with the request's response once the request completes
  1800. // successfully.
  1801. //
  1802. // Use "Send" method on the returned Request to send the API call to the service.
  1803. // the "output" return value is not valid until after Send returns without error.
  1804. //
  1805. // See CreatePolicy for more information on using the CreatePolicy
  1806. // API call, and error handling.
  1807. //
  1808. // This method is useful when you want to inject custom logic or configuration
  1809. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1810. //
  1811. //
  1812. // // Example sending a request using the CreatePolicyRequest method.
  1813. // req, resp := client.CreatePolicyRequest(params)
  1814. //
  1815. // err := req.Send()
  1816. // if err == nil { // resp is now filled
  1817. // fmt.Println(resp)
  1818. // }
  1819. func (c *IoT) CreatePolicyRequest(input *CreatePolicyInput) (req *request.Request, output *CreatePolicyOutput) {
  1820. op := &request.Operation{
  1821. Name: opCreatePolicy,
  1822. HTTPMethod: "POST",
  1823. HTTPPath: "/policies/{policyName}",
  1824. }
  1825. if input == nil {
  1826. input = &CreatePolicyInput{}
  1827. }
  1828. output = &CreatePolicyOutput{}
  1829. req = c.newRequest(op, input, output)
  1830. return
  1831. }
  1832. // CreatePolicy API operation for AWS IoT.
  1833. //
  1834. // Creates an AWS IoT policy.
  1835. //
  1836. // The created policy is the default version for the policy. This operation
  1837. // creates a policy version with a version identifier of 1 and sets 1 as the
  1838. // policy's default version.
  1839. //
  1840. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1841. // with awserr.Error's Code and Message methods to get detailed information about
  1842. // the error.
  1843. //
  1844. // See the AWS API reference guide for AWS IoT's
  1845. // API operation CreatePolicy for usage and error information.
  1846. //
  1847. // Returned Error Codes:
  1848. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  1849. // The resource already exists.
  1850. //
  1851. // * ErrCodeMalformedPolicyException "MalformedPolicyException"
  1852. // The policy documentation is not valid.
  1853. //
  1854. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1855. // The request is not valid.
  1856. //
  1857. // * ErrCodeThrottlingException "ThrottlingException"
  1858. // The rate exceeds the limit.
  1859. //
  1860. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1861. // You are not authorized to perform this operation.
  1862. //
  1863. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1864. // The service is temporarily unavailable.
  1865. //
  1866. // * ErrCodeInternalFailureException "InternalFailureException"
  1867. // An unexpected error has occurred.
  1868. //
  1869. func (c *IoT) CreatePolicy(input *CreatePolicyInput) (*CreatePolicyOutput, error) {
  1870. req, out := c.CreatePolicyRequest(input)
  1871. return out, req.Send()
  1872. }
  1873. // CreatePolicyWithContext is the same as CreatePolicy with the addition of
  1874. // the ability to pass a context and additional request options.
  1875. //
  1876. // See CreatePolicy for details on how to use this API operation.
  1877. //
  1878. // The context must be non-nil and will be used for request cancellation. If
  1879. // the context is nil a panic will occur. In the future the SDK may create
  1880. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1881. // for more information on using Contexts.
  1882. func (c *IoT) CreatePolicyWithContext(ctx aws.Context, input *CreatePolicyInput, opts ...request.Option) (*CreatePolicyOutput, error) {
  1883. req, out := c.CreatePolicyRequest(input)
  1884. req.SetContext(ctx)
  1885. req.ApplyOptions(opts...)
  1886. return out, req.Send()
  1887. }
  1888. const opCreatePolicyVersion = "CreatePolicyVersion"
  1889. // CreatePolicyVersionRequest generates a "aws/request.Request" representing the
  1890. // client's request for the CreatePolicyVersion operation. The "output" return
  1891. // value will be populated with the request's response once the request completes
  1892. // successfully.
  1893. //
  1894. // Use "Send" method on the returned Request to send the API call to the service.
  1895. // the "output" return value is not valid until after Send returns without error.
  1896. //
  1897. // See CreatePolicyVersion for more information on using the CreatePolicyVersion
  1898. // API call, and error handling.
  1899. //
  1900. // This method is useful when you want to inject custom logic or configuration
  1901. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1902. //
  1903. //
  1904. // // Example sending a request using the CreatePolicyVersionRequest method.
  1905. // req, resp := client.CreatePolicyVersionRequest(params)
  1906. //
  1907. // err := req.Send()
  1908. // if err == nil { // resp is now filled
  1909. // fmt.Println(resp)
  1910. // }
  1911. func (c *IoT) CreatePolicyVersionRequest(input *CreatePolicyVersionInput) (req *request.Request, output *CreatePolicyVersionOutput) {
  1912. op := &request.Operation{
  1913. Name: opCreatePolicyVersion,
  1914. HTTPMethod: "POST",
  1915. HTTPPath: "/policies/{policyName}/version",
  1916. }
  1917. if input == nil {
  1918. input = &CreatePolicyVersionInput{}
  1919. }
  1920. output = &CreatePolicyVersionOutput{}
  1921. req = c.newRequest(op, input, output)
  1922. return
  1923. }
  1924. // CreatePolicyVersion API operation for AWS IoT.
  1925. //
  1926. // Creates a new version of the specified AWS IoT policy. To update a policy,
  1927. // create a new policy version. A managed policy can have up to five versions.
  1928. // If the policy has five versions, you must use DeletePolicyVersion to delete
  1929. // an existing version before you create a new one.
  1930. //
  1931. // Optionally, you can set the new version as the policy's default version.
  1932. // The default version is the operative version (that is, the version that is
  1933. // in effect for the certificates to which the policy is attached).
  1934. //
  1935. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1936. // with awserr.Error's Code and Message methods to get detailed information about
  1937. // the error.
  1938. //
  1939. // See the AWS API reference guide for AWS IoT's
  1940. // API operation CreatePolicyVersion for usage and error information.
  1941. //
  1942. // Returned Error Codes:
  1943. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  1944. // The specified resource does not exist.
  1945. //
  1946. // * ErrCodeMalformedPolicyException "MalformedPolicyException"
  1947. // The policy documentation is not valid.
  1948. //
  1949. // * ErrCodeVersionsLimitExceededException "VersionsLimitExceededException"
  1950. // The number of policy versions exceeds the limit.
  1951. //
  1952. // * ErrCodeInvalidRequestException "InvalidRequestException"
  1953. // The request is not valid.
  1954. //
  1955. // * ErrCodeThrottlingException "ThrottlingException"
  1956. // The rate exceeds the limit.
  1957. //
  1958. // * ErrCodeUnauthorizedException "UnauthorizedException"
  1959. // You are not authorized to perform this operation.
  1960. //
  1961. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  1962. // The service is temporarily unavailable.
  1963. //
  1964. // * ErrCodeInternalFailureException "InternalFailureException"
  1965. // An unexpected error has occurred.
  1966. //
  1967. func (c *IoT) CreatePolicyVersion(input *CreatePolicyVersionInput) (*CreatePolicyVersionOutput, error) {
  1968. req, out := c.CreatePolicyVersionRequest(input)
  1969. return out, req.Send()
  1970. }
  1971. // CreatePolicyVersionWithContext is the same as CreatePolicyVersion with the addition of
  1972. // the ability to pass a context and additional request options.
  1973. //
  1974. // See CreatePolicyVersion for details on how to use this API operation.
  1975. //
  1976. // The context must be non-nil and will be used for request cancellation. If
  1977. // the context is nil a panic will occur. In the future the SDK may create
  1978. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1979. // for more information on using Contexts.
  1980. func (c *IoT) CreatePolicyVersionWithContext(ctx aws.Context, input *CreatePolicyVersionInput, opts ...request.Option) (*CreatePolicyVersionOutput, error) {
  1981. req, out := c.CreatePolicyVersionRequest(input)
  1982. req.SetContext(ctx)
  1983. req.ApplyOptions(opts...)
  1984. return out, req.Send()
  1985. }
  1986. const opCreateRoleAlias = "CreateRoleAlias"
  1987. // CreateRoleAliasRequest generates a "aws/request.Request" representing the
  1988. // client's request for the CreateRoleAlias operation. The "output" return
  1989. // value will be populated with the request's response once the request completes
  1990. // successfully.
  1991. //
  1992. // Use "Send" method on the returned Request to send the API call to the service.
  1993. // the "output" return value is not valid until after Send returns without error.
  1994. //
  1995. // See CreateRoleAlias for more information on using the CreateRoleAlias
  1996. // API call, and error handling.
  1997. //
  1998. // This method is useful when you want to inject custom logic or configuration
  1999. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2000. //
  2001. //
  2002. // // Example sending a request using the CreateRoleAliasRequest method.
  2003. // req, resp := client.CreateRoleAliasRequest(params)
  2004. //
  2005. // err := req.Send()
  2006. // if err == nil { // resp is now filled
  2007. // fmt.Println(resp)
  2008. // }
  2009. func (c *IoT) CreateRoleAliasRequest(input *CreateRoleAliasInput) (req *request.Request, output *CreateRoleAliasOutput) {
  2010. op := &request.Operation{
  2011. Name: opCreateRoleAlias,
  2012. HTTPMethod: "POST",
  2013. HTTPPath: "/role-aliases/{roleAlias}",
  2014. }
  2015. if input == nil {
  2016. input = &CreateRoleAliasInput{}
  2017. }
  2018. output = &CreateRoleAliasOutput{}
  2019. req = c.newRequest(op, input, output)
  2020. return
  2021. }
  2022. // CreateRoleAlias API operation for AWS IoT.
  2023. //
  2024. // Creates a role alias.
  2025. //
  2026. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2027. // with awserr.Error's Code and Message methods to get detailed information about
  2028. // the error.
  2029. //
  2030. // See the AWS API reference guide for AWS IoT's
  2031. // API operation CreateRoleAlias for usage and error information.
  2032. //
  2033. // Returned Error Codes:
  2034. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2035. // The resource already exists.
  2036. //
  2037. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2038. // The request is not valid.
  2039. //
  2040. // * ErrCodeLimitExceededException "LimitExceededException"
  2041. // A limit has been exceeded.
  2042. //
  2043. // * ErrCodeThrottlingException "ThrottlingException"
  2044. // The rate exceeds the limit.
  2045. //
  2046. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2047. // You are not authorized to perform this operation.
  2048. //
  2049. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2050. // The service is temporarily unavailable.
  2051. //
  2052. // * ErrCodeInternalFailureException "InternalFailureException"
  2053. // An unexpected error has occurred.
  2054. //
  2055. func (c *IoT) CreateRoleAlias(input *CreateRoleAliasInput) (*CreateRoleAliasOutput, error) {
  2056. req, out := c.CreateRoleAliasRequest(input)
  2057. return out, req.Send()
  2058. }
  2059. // CreateRoleAliasWithContext is the same as CreateRoleAlias with the addition of
  2060. // the ability to pass a context and additional request options.
  2061. //
  2062. // See CreateRoleAlias for details on how to use this API operation.
  2063. //
  2064. // The context must be non-nil and will be used for request cancellation. If
  2065. // the context is nil a panic will occur. In the future the SDK may create
  2066. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2067. // for more information on using Contexts.
  2068. func (c *IoT) CreateRoleAliasWithContext(ctx aws.Context, input *CreateRoleAliasInput, opts ...request.Option) (*CreateRoleAliasOutput, error) {
  2069. req, out := c.CreateRoleAliasRequest(input)
  2070. req.SetContext(ctx)
  2071. req.ApplyOptions(opts...)
  2072. return out, req.Send()
  2073. }
  2074. const opCreateScheduledAudit = "CreateScheduledAudit"
  2075. // CreateScheduledAuditRequest generates a "aws/request.Request" representing the
  2076. // client's request for the CreateScheduledAudit operation. The "output" return
  2077. // value will be populated with the request's response once the request completes
  2078. // successfully.
  2079. //
  2080. // Use "Send" method on the returned Request to send the API call to the service.
  2081. // the "output" return value is not valid until after Send returns without error.
  2082. //
  2083. // See CreateScheduledAudit for more information on using the CreateScheduledAudit
  2084. // API call, and error handling.
  2085. //
  2086. // This method is useful when you want to inject custom logic or configuration
  2087. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2088. //
  2089. //
  2090. // // Example sending a request using the CreateScheduledAuditRequest method.
  2091. // req, resp := client.CreateScheduledAuditRequest(params)
  2092. //
  2093. // err := req.Send()
  2094. // if err == nil { // resp is now filled
  2095. // fmt.Println(resp)
  2096. // }
  2097. func (c *IoT) CreateScheduledAuditRequest(input *CreateScheduledAuditInput) (req *request.Request, output *CreateScheduledAuditOutput) {
  2098. op := &request.Operation{
  2099. Name: opCreateScheduledAudit,
  2100. HTTPMethod: "POST",
  2101. HTTPPath: "/audit/scheduledaudits/{scheduledAuditName}",
  2102. }
  2103. if input == nil {
  2104. input = &CreateScheduledAuditInput{}
  2105. }
  2106. output = &CreateScheduledAuditOutput{}
  2107. req = c.newRequest(op, input, output)
  2108. return
  2109. }
  2110. // CreateScheduledAudit API operation for AWS IoT.
  2111. //
  2112. // Creates a scheduled audit that is run at a specified time interval.
  2113. //
  2114. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2115. // with awserr.Error's Code and Message methods to get detailed information about
  2116. // the error.
  2117. //
  2118. // See the AWS API reference guide for AWS IoT's
  2119. // API operation CreateScheduledAudit for usage and error information.
  2120. //
  2121. // Returned Error Codes:
  2122. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2123. // The request is not valid.
  2124. //
  2125. // * ErrCodeThrottlingException "ThrottlingException"
  2126. // The rate exceeds the limit.
  2127. //
  2128. // * ErrCodeInternalFailureException "InternalFailureException"
  2129. // An unexpected error has occurred.
  2130. //
  2131. // * ErrCodeLimitExceededException "LimitExceededException"
  2132. // A limit has been exceeded.
  2133. //
  2134. func (c *IoT) CreateScheduledAudit(input *CreateScheduledAuditInput) (*CreateScheduledAuditOutput, error) {
  2135. req, out := c.CreateScheduledAuditRequest(input)
  2136. return out, req.Send()
  2137. }
  2138. // CreateScheduledAuditWithContext is the same as CreateScheduledAudit with the addition of
  2139. // the ability to pass a context and additional request options.
  2140. //
  2141. // See CreateScheduledAudit for details on how to use this API operation.
  2142. //
  2143. // The context must be non-nil and will be used for request cancellation. If
  2144. // the context is nil a panic will occur. In the future the SDK may create
  2145. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2146. // for more information on using Contexts.
  2147. func (c *IoT) CreateScheduledAuditWithContext(ctx aws.Context, input *CreateScheduledAuditInput, opts ...request.Option) (*CreateScheduledAuditOutput, error) {
  2148. req, out := c.CreateScheduledAuditRequest(input)
  2149. req.SetContext(ctx)
  2150. req.ApplyOptions(opts...)
  2151. return out, req.Send()
  2152. }
  2153. const opCreateSecurityProfile = "CreateSecurityProfile"
  2154. // CreateSecurityProfileRequest generates a "aws/request.Request" representing the
  2155. // client's request for the CreateSecurityProfile operation. The "output" return
  2156. // value will be populated with the request's response once the request completes
  2157. // successfully.
  2158. //
  2159. // Use "Send" method on the returned Request to send the API call to the service.
  2160. // the "output" return value is not valid until after Send returns without error.
  2161. //
  2162. // See CreateSecurityProfile for more information on using the CreateSecurityProfile
  2163. // API call, and error handling.
  2164. //
  2165. // This method is useful when you want to inject custom logic or configuration
  2166. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2167. //
  2168. //
  2169. // // Example sending a request using the CreateSecurityProfileRequest method.
  2170. // req, resp := client.CreateSecurityProfileRequest(params)
  2171. //
  2172. // err := req.Send()
  2173. // if err == nil { // resp is now filled
  2174. // fmt.Println(resp)
  2175. // }
  2176. func (c *IoT) CreateSecurityProfileRequest(input *CreateSecurityProfileInput) (req *request.Request, output *CreateSecurityProfileOutput) {
  2177. op := &request.Operation{
  2178. Name: opCreateSecurityProfile,
  2179. HTTPMethod: "POST",
  2180. HTTPPath: "/security-profiles/{securityProfileName}",
  2181. }
  2182. if input == nil {
  2183. input = &CreateSecurityProfileInput{}
  2184. }
  2185. output = &CreateSecurityProfileOutput{}
  2186. req = c.newRequest(op, input, output)
  2187. return
  2188. }
  2189. // CreateSecurityProfile API operation for AWS IoT.
  2190. //
  2191. // Creates a Device Defender security profile.
  2192. //
  2193. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2194. // with awserr.Error's Code and Message methods to get detailed information about
  2195. // the error.
  2196. //
  2197. // See the AWS API reference guide for AWS IoT's
  2198. // API operation CreateSecurityProfile for usage and error information.
  2199. //
  2200. // Returned Error Codes:
  2201. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2202. // The request is not valid.
  2203. //
  2204. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2205. // The resource already exists.
  2206. //
  2207. // * ErrCodeThrottlingException "ThrottlingException"
  2208. // The rate exceeds the limit.
  2209. //
  2210. // * ErrCodeInternalFailureException "InternalFailureException"
  2211. // An unexpected error has occurred.
  2212. //
  2213. func (c *IoT) CreateSecurityProfile(input *CreateSecurityProfileInput) (*CreateSecurityProfileOutput, error) {
  2214. req, out := c.CreateSecurityProfileRequest(input)
  2215. return out, req.Send()
  2216. }
  2217. // CreateSecurityProfileWithContext is the same as CreateSecurityProfile with the addition of
  2218. // the ability to pass a context and additional request options.
  2219. //
  2220. // See CreateSecurityProfile for details on how to use this API operation.
  2221. //
  2222. // The context must be non-nil and will be used for request cancellation. If
  2223. // the context is nil a panic will occur. In the future the SDK may create
  2224. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2225. // for more information on using Contexts.
  2226. func (c *IoT) CreateSecurityProfileWithContext(ctx aws.Context, input *CreateSecurityProfileInput, opts ...request.Option) (*CreateSecurityProfileOutput, error) {
  2227. req, out := c.CreateSecurityProfileRequest(input)
  2228. req.SetContext(ctx)
  2229. req.ApplyOptions(opts...)
  2230. return out, req.Send()
  2231. }
  2232. const opCreateStream = "CreateStream"
  2233. // CreateStreamRequest generates a "aws/request.Request" representing the
  2234. // client's request for the CreateStream operation. The "output" return
  2235. // value will be populated with the request's response once the request completes
  2236. // successfully.
  2237. //
  2238. // Use "Send" method on the returned Request to send the API call to the service.
  2239. // the "output" return value is not valid until after Send returns without error.
  2240. //
  2241. // See CreateStream for more information on using the CreateStream
  2242. // API call, and error handling.
  2243. //
  2244. // This method is useful when you want to inject custom logic or configuration
  2245. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2246. //
  2247. //
  2248. // // Example sending a request using the CreateStreamRequest method.
  2249. // req, resp := client.CreateStreamRequest(params)
  2250. //
  2251. // err := req.Send()
  2252. // if err == nil { // resp is now filled
  2253. // fmt.Println(resp)
  2254. // }
  2255. func (c *IoT) CreateStreamRequest(input *CreateStreamInput) (req *request.Request, output *CreateStreamOutput) {
  2256. op := &request.Operation{
  2257. Name: opCreateStream,
  2258. HTTPMethod: "POST",
  2259. HTTPPath: "/streams/{streamId}",
  2260. }
  2261. if input == nil {
  2262. input = &CreateStreamInput{}
  2263. }
  2264. output = &CreateStreamOutput{}
  2265. req = c.newRequest(op, input, output)
  2266. return
  2267. }
  2268. // CreateStream API operation for AWS IoT.
  2269. //
  2270. // Creates a stream for delivering one or more large files in chunks over MQTT.
  2271. // A stream transports data bytes in chunks or blocks packaged as MQTT messages
  2272. // from a source like S3. You can have one or more files associated with a stream.
  2273. // The total size of a file associated with the stream cannot exceed more than
  2274. // 2 MB. The stream will be created with version 0. If a stream is created with
  2275. // the same streamID as a stream that existed and was deleted within last 90
  2276. // days, we will resurrect that old stream by incrementing the version by 1.
  2277. //
  2278. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2279. // with awserr.Error's Code and Message methods to get detailed information about
  2280. // the error.
  2281. //
  2282. // See the AWS API reference guide for AWS IoT's
  2283. // API operation CreateStream for usage and error information.
  2284. //
  2285. // Returned Error Codes:
  2286. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2287. // The request is not valid.
  2288. //
  2289. // * ErrCodeLimitExceededException "LimitExceededException"
  2290. // A limit has been exceeded.
  2291. //
  2292. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  2293. // The specified resource does not exist.
  2294. //
  2295. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2296. // The resource already exists.
  2297. //
  2298. // * ErrCodeThrottlingException "ThrottlingException"
  2299. // The rate exceeds the limit.
  2300. //
  2301. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2302. // You are not authorized to perform this operation.
  2303. //
  2304. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2305. // The service is temporarily unavailable.
  2306. //
  2307. // * ErrCodeInternalFailureException "InternalFailureException"
  2308. // An unexpected error has occurred.
  2309. //
  2310. func (c *IoT) CreateStream(input *CreateStreamInput) (*CreateStreamOutput, error) {
  2311. req, out := c.CreateStreamRequest(input)
  2312. return out, req.Send()
  2313. }
  2314. // CreateStreamWithContext is the same as CreateStream with the addition of
  2315. // the ability to pass a context and additional request options.
  2316. //
  2317. // See CreateStream for details on how to use this API operation.
  2318. //
  2319. // The context must be non-nil and will be used for request cancellation. If
  2320. // the context is nil a panic will occur. In the future the SDK may create
  2321. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2322. // for more information on using Contexts.
  2323. func (c *IoT) CreateStreamWithContext(ctx aws.Context, input *CreateStreamInput, opts ...request.Option) (*CreateStreamOutput, error) {
  2324. req, out := c.CreateStreamRequest(input)
  2325. req.SetContext(ctx)
  2326. req.ApplyOptions(opts...)
  2327. return out, req.Send()
  2328. }
  2329. const opCreateThing = "CreateThing"
  2330. // CreateThingRequest generates a "aws/request.Request" representing the
  2331. // client's request for the CreateThing operation. The "output" return
  2332. // value will be populated with the request's response once the request completes
  2333. // successfully.
  2334. //
  2335. // Use "Send" method on the returned Request to send the API call to the service.
  2336. // the "output" return value is not valid until after Send returns without error.
  2337. //
  2338. // See CreateThing for more information on using the CreateThing
  2339. // API call, and error handling.
  2340. //
  2341. // This method is useful when you want to inject custom logic or configuration
  2342. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2343. //
  2344. //
  2345. // // Example sending a request using the CreateThingRequest method.
  2346. // req, resp := client.CreateThingRequest(params)
  2347. //
  2348. // err := req.Send()
  2349. // if err == nil { // resp is now filled
  2350. // fmt.Println(resp)
  2351. // }
  2352. func (c *IoT) CreateThingRequest(input *CreateThingInput) (req *request.Request, output *CreateThingOutput) {
  2353. op := &request.Operation{
  2354. Name: opCreateThing,
  2355. HTTPMethod: "POST",
  2356. HTTPPath: "/things/{thingName}",
  2357. }
  2358. if input == nil {
  2359. input = &CreateThingInput{}
  2360. }
  2361. output = &CreateThingOutput{}
  2362. req = c.newRequest(op, input, output)
  2363. return
  2364. }
  2365. // CreateThing API operation for AWS IoT.
  2366. //
  2367. // Creates a thing record in the registry.
  2368. //
  2369. // This is a control plane operation. See Authorization (http://docs.aws.amazon.com/iot/latest/developerguide/authorization.html)
  2370. // for information about authorizing control plane actions.
  2371. //
  2372. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2373. // with awserr.Error's Code and Message methods to get detailed information about
  2374. // the error.
  2375. //
  2376. // See the AWS API reference guide for AWS IoT's
  2377. // API operation CreateThing for usage and error information.
  2378. //
  2379. // Returned Error Codes:
  2380. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2381. // The request is not valid.
  2382. //
  2383. // * ErrCodeThrottlingException "ThrottlingException"
  2384. // The rate exceeds the limit.
  2385. //
  2386. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2387. // You are not authorized to perform this operation.
  2388. //
  2389. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2390. // The service is temporarily unavailable.
  2391. //
  2392. // * ErrCodeInternalFailureException "InternalFailureException"
  2393. // An unexpected error has occurred.
  2394. //
  2395. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2396. // The resource already exists.
  2397. //
  2398. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  2399. // The specified resource does not exist.
  2400. //
  2401. func (c *IoT) CreateThing(input *CreateThingInput) (*CreateThingOutput, error) {
  2402. req, out := c.CreateThingRequest(input)
  2403. return out, req.Send()
  2404. }
  2405. // CreateThingWithContext is the same as CreateThing with the addition of
  2406. // the ability to pass a context and additional request options.
  2407. //
  2408. // See CreateThing for details on how to use this API operation.
  2409. //
  2410. // The context must be non-nil and will be used for request cancellation. If
  2411. // the context is nil a panic will occur. In the future the SDK may create
  2412. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2413. // for more information on using Contexts.
  2414. func (c *IoT) CreateThingWithContext(ctx aws.Context, input *CreateThingInput, opts ...request.Option) (*CreateThingOutput, error) {
  2415. req, out := c.CreateThingRequest(input)
  2416. req.SetContext(ctx)
  2417. req.ApplyOptions(opts...)
  2418. return out, req.Send()
  2419. }
  2420. const opCreateThingGroup = "CreateThingGroup"
  2421. // CreateThingGroupRequest generates a "aws/request.Request" representing the
  2422. // client's request for the CreateThingGroup operation. The "output" return
  2423. // value will be populated with the request's response once the request completes
  2424. // successfully.
  2425. //
  2426. // Use "Send" method on the returned Request to send the API call to the service.
  2427. // the "output" return value is not valid until after Send returns without error.
  2428. //
  2429. // See CreateThingGroup for more information on using the CreateThingGroup
  2430. // API call, and error handling.
  2431. //
  2432. // This method is useful when you want to inject custom logic or configuration
  2433. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2434. //
  2435. //
  2436. // // Example sending a request using the CreateThingGroupRequest method.
  2437. // req, resp := client.CreateThingGroupRequest(params)
  2438. //
  2439. // err := req.Send()
  2440. // if err == nil { // resp is now filled
  2441. // fmt.Println(resp)
  2442. // }
  2443. func (c *IoT) CreateThingGroupRequest(input *CreateThingGroupInput) (req *request.Request, output *CreateThingGroupOutput) {
  2444. op := &request.Operation{
  2445. Name: opCreateThingGroup,
  2446. HTTPMethod: "POST",
  2447. HTTPPath: "/thing-groups/{thingGroupName}",
  2448. }
  2449. if input == nil {
  2450. input = &CreateThingGroupInput{}
  2451. }
  2452. output = &CreateThingGroupOutput{}
  2453. req = c.newRequest(op, input, output)
  2454. return
  2455. }
  2456. // CreateThingGroup API operation for AWS IoT.
  2457. //
  2458. // Create a thing group.
  2459. //
  2460. // This is a control plane operation. See Authorization (http://docs.aws.amazon.com/iot/latest/developerguide/authorization.html)
  2461. // for information about authorizing control plane actions.
  2462. //
  2463. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2464. // with awserr.Error's Code and Message methods to get detailed information about
  2465. // the error.
  2466. //
  2467. // See the AWS API reference guide for AWS IoT's
  2468. // API operation CreateThingGroup for usage and error information.
  2469. //
  2470. // Returned Error Codes:
  2471. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2472. // The request is not valid.
  2473. //
  2474. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2475. // The resource already exists.
  2476. //
  2477. // * ErrCodeThrottlingException "ThrottlingException"
  2478. // The rate exceeds the limit.
  2479. //
  2480. // * ErrCodeInternalFailureException "InternalFailureException"
  2481. // An unexpected error has occurred.
  2482. //
  2483. func (c *IoT) CreateThingGroup(input *CreateThingGroupInput) (*CreateThingGroupOutput, error) {
  2484. req, out := c.CreateThingGroupRequest(input)
  2485. return out, req.Send()
  2486. }
  2487. // CreateThingGroupWithContext is the same as CreateThingGroup with the addition of
  2488. // the ability to pass a context and additional request options.
  2489. //
  2490. // See CreateThingGroup for details on how to use this API operation.
  2491. //
  2492. // The context must be non-nil and will be used for request cancellation. If
  2493. // the context is nil a panic will occur. In the future the SDK may create
  2494. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2495. // for more information on using Contexts.
  2496. func (c *IoT) CreateThingGroupWithContext(ctx aws.Context, input *CreateThingGroupInput, opts ...request.Option) (*CreateThingGroupOutput, error) {
  2497. req, out := c.CreateThingGroupRequest(input)
  2498. req.SetContext(ctx)
  2499. req.ApplyOptions(opts...)
  2500. return out, req.Send()
  2501. }
  2502. const opCreateThingType = "CreateThingType"
  2503. // CreateThingTypeRequest generates a "aws/request.Request" representing the
  2504. // client's request for the CreateThingType operation. The "output" return
  2505. // value will be populated with the request's response once the request completes
  2506. // successfully.
  2507. //
  2508. // Use "Send" method on the returned Request to send the API call to the service.
  2509. // the "output" return value is not valid until after Send returns without error.
  2510. //
  2511. // See CreateThingType for more information on using the CreateThingType
  2512. // API call, and error handling.
  2513. //
  2514. // This method is useful when you want to inject custom logic or configuration
  2515. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2516. //
  2517. //
  2518. // // Example sending a request using the CreateThingTypeRequest method.
  2519. // req, resp := client.CreateThingTypeRequest(params)
  2520. //
  2521. // err := req.Send()
  2522. // if err == nil { // resp is now filled
  2523. // fmt.Println(resp)
  2524. // }
  2525. func (c *IoT) CreateThingTypeRequest(input *CreateThingTypeInput) (req *request.Request, output *CreateThingTypeOutput) {
  2526. op := &request.Operation{
  2527. Name: opCreateThingType,
  2528. HTTPMethod: "POST",
  2529. HTTPPath: "/thing-types/{thingTypeName}",
  2530. }
  2531. if input == nil {
  2532. input = &CreateThingTypeInput{}
  2533. }
  2534. output = &CreateThingTypeOutput{}
  2535. req = c.newRequest(op, input, output)
  2536. return
  2537. }
  2538. // CreateThingType API operation for AWS IoT.
  2539. //
  2540. // Creates a new thing type.
  2541. //
  2542. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2543. // with awserr.Error's Code and Message methods to get detailed information about
  2544. // the error.
  2545. //
  2546. // See the AWS API reference guide for AWS IoT's
  2547. // API operation CreateThingType for usage and error information.
  2548. //
  2549. // Returned Error Codes:
  2550. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2551. // The request is not valid.
  2552. //
  2553. // * ErrCodeThrottlingException "ThrottlingException"
  2554. // The rate exceeds the limit.
  2555. //
  2556. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2557. // You are not authorized to perform this operation.
  2558. //
  2559. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2560. // The service is temporarily unavailable.
  2561. //
  2562. // * ErrCodeInternalFailureException "InternalFailureException"
  2563. // An unexpected error has occurred.
  2564. //
  2565. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2566. // The resource already exists.
  2567. //
  2568. func (c *IoT) CreateThingType(input *CreateThingTypeInput) (*CreateThingTypeOutput, error) {
  2569. req, out := c.CreateThingTypeRequest(input)
  2570. return out, req.Send()
  2571. }
  2572. // CreateThingTypeWithContext is the same as CreateThingType with the addition of
  2573. // the ability to pass a context and additional request options.
  2574. //
  2575. // See CreateThingType for details on how to use this API operation.
  2576. //
  2577. // The context must be non-nil and will be used for request cancellation. If
  2578. // the context is nil a panic will occur. In the future the SDK may create
  2579. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2580. // for more information on using Contexts.
  2581. func (c *IoT) CreateThingTypeWithContext(ctx aws.Context, input *CreateThingTypeInput, opts ...request.Option) (*CreateThingTypeOutput, error) {
  2582. req, out := c.CreateThingTypeRequest(input)
  2583. req.SetContext(ctx)
  2584. req.ApplyOptions(opts...)
  2585. return out, req.Send()
  2586. }
  2587. const opCreateTopicRule = "CreateTopicRule"
  2588. // CreateTopicRuleRequest generates a "aws/request.Request" representing the
  2589. // client's request for the CreateTopicRule operation. The "output" return
  2590. // value will be populated with the request's response once the request completes
  2591. // successfully.
  2592. //
  2593. // Use "Send" method on the returned Request to send the API call to the service.
  2594. // the "output" return value is not valid until after Send returns without error.
  2595. //
  2596. // See CreateTopicRule for more information on using the CreateTopicRule
  2597. // API call, and error handling.
  2598. //
  2599. // This method is useful when you want to inject custom logic or configuration
  2600. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2601. //
  2602. //
  2603. // // Example sending a request using the CreateTopicRuleRequest method.
  2604. // req, resp := client.CreateTopicRuleRequest(params)
  2605. //
  2606. // err := req.Send()
  2607. // if err == nil { // resp is now filled
  2608. // fmt.Println(resp)
  2609. // }
  2610. func (c *IoT) CreateTopicRuleRequest(input *CreateTopicRuleInput) (req *request.Request, output *CreateTopicRuleOutput) {
  2611. op := &request.Operation{
  2612. Name: opCreateTopicRule,
  2613. HTTPMethod: "POST",
  2614. HTTPPath: "/rules/{ruleName}",
  2615. }
  2616. if input == nil {
  2617. input = &CreateTopicRuleInput{}
  2618. }
  2619. output = &CreateTopicRuleOutput{}
  2620. req = c.newRequest(op, input, output)
  2621. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2622. return
  2623. }
  2624. // CreateTopicRule API operation for AWS IoT.
  2625. //
  2626. // Creates a rule. Creating rules is an administrator-level action. Any user
  2627. // who has permission to create rules will be able to access data processed
  2628. // by the rule.
  2629. //
  2630. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2631. // with awserr.Error's Code and Message methods to get detailed information about
  2632. // the error.
  2633. //
  2634. // See the AWS API reference guide for AWS IoT's
  2635. // API operation CreateTopicRule for usage and error information.
  2636. //
  2637. // Returned Error Codes:
  2638. // * ErrCodeSqlParseException "SqlParseException"
  2639. // The Rule-SQL expression can't be parsed correctly.
  2640. //
  2641. // * ErrCodeInternalException "InternalException"
  2642. // An unexpected error has occurred.
  2643. //
  2644. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2645. // The request is not valid.
  2646. //
  2647. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  2648. // The resource already exists.
  2649. //
  2650. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2651. // The service is temporarily unavailable.
  2652. //
  2653. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  2654. // A conflicting resource update exception. This exception is thrown when two
  2655. // pending updates cause a conflict.
  2656. //
  2657. func (c *IoT) CreateTopicRule(input *CreateTopicRuleInput) (*CreateTopicRuleOutput, error) {
  2658. req, out := c.CreateTopicRuleRequest(input)
  2659. return out, req.Send()
  2660. }
  2661. // CreateTopicRuleWithContext is the same as CreateTopicRule with the addition of
  2662. // the ability to pass a context and additional request options.
  2663. //
  2664. // See CreateTopicRule for details on how to use this API operation.
  2665. //
  2666. // The context must be non-nil and will be used for request cancellation. If
  2667. // the context is nil a panic will occur. In the future the SDK may create
  2668. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2669. // for more information on using Contexts.
  2670. func (c *IoT) CreateTopicRuleWithContext(ctx aws.Context, input *CreateTopicRuleInput, opts ...request.Option) (*CreateTopicRuleOutput, error) {
  2671. req, out := c.CreateTopicRuleRequest(input)
  2672. req.SetContext(ctx)
  2673. req.ApplyOptions(opts...)
  2674. return out, req.Send()
  2675. }
  2676. const opDeleteAccountAuditConfiguration = "DeleteAccountAuditConfiguration"
  2677. // DeleteAccountAuditConfigurationRequest generates a "aws/request.Request" representing the
  2678. // client's request for the DeleteAccountAuditConfiguration operation. The "output" return
  2679. // value will be populated with the request's response once the request completes
  2680. // successfully.
  2681. //
  2682. // Use "Send" method on the returned Request to send the API call to the service.
  2683. // the "output" return value is not valid until after Send returns without error.
  2684. //
  2685. // See DeleteAccountAuditConfiguration for more information on using the DeleteAccountAuditConfiguration
  2686. // API call, and error handling.
  2687. //
  2688. // This method is useful when you want to inject custom logic or configuration
  2689. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2690. //
  2691. //
  2692. // // Example sending a request using the DeleteAccountAuditConfigurationRequest method.
  2693. // req, resp := client.DeleteAccountAuditConfigurationRequest(params)
  2694. //
  2695. // err := req.Send()
  2696. // if err == nil { // resp is now filled
  2697. // fmt.Println(resp)
  2698. // }
  2699. func (c *IoT) DeleteAccountAuditConfigurationRequest(input *DeleteAccountAuditConfigurationInput) (req *request.Request, output *DeleteAccountAuditConfigurationOutput) {
  2700. op := &request.Operation{
  2701. Name: opDeleteAccountAuditConfiguration,
  2702. HTTPMethod: "DELETE",
  2703. HTTPPath: "/audit/configuration",
  2704. }
  2705. if input == nil {
  2706. input = &DeleteAccountAuditConfigurationInput{}
  2707. }
  2708. output = &DeleteAccountAuditConfigurationOutput{}
  2709. req = c.newRequest(op, input, output)
  2710. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2711. return
  2712. }
  2713. // DeleteAccountAuditConfiguration API operation for AWS IoT.
  2714. //
  2715. // Restores the default settings for Device Defender audits for this account.
  2716. // Any configuration data you entered is deleted and all audit checks are reset
  2717. // to disabled.
  2718. //
  2719. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2720. // with awserr.Error's Code and Message methods to get detailed information about
  2721. // the error.
  2722. //
  2723. // See the AWS API reference guide for AWS IoT's
  2724. // API operation DeleteAccountAuditConfiguration for usage and error information.
  2725. //
  2726. // Returned Error Codes:
  2727. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2728. // The request is not valid.
  2729. //
  2730. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  2731. // The specified resource does not exist.
  2732. //
  2733. // * ErrCodeThrottlingException "ThrottlingException"
  2734. // The rate exceeds the limit.
  2735. //
  2736. // * ErrCodeInternalFailureException "InternalFailureException"
  2737. // An unexpected error has occurred.
  2738. //
  2739. func (c *IoT) DeleteAccountAuditConfiguration(input *DeleteAccountAuditConfigurationInput) (*DeleteAccountAuditConfigurationOutput, error) {
  2740. req, out := c.DeleteAccountAuditConfigurationRequest(input)
  2741. return out, req.Send()
  2742. }
  2743. // DeleteAccountAuditConfigurationWithContext is the same as DeleteAccountAuditConfiguration with the addition of
  2744. // the ability to pass a context and additional request options.
  2745. //
  2746. // See DeleteAccountAuditConfiguration for details on how to use this API operation.
  2747. //
  2748. // The context must be non-nil and will be used for request cancellation. If
  2749. // the context is nil a panic will occur. In the future the SDK may create
  2750. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2751. // for more information on using Contexts.
  2752. func (c *IoT) DeleteAccountAuditConfigurationWithContext(ctx aws.Context, input *DeleteAccountAuditConfigurationInput, opts ...request.Option) (*DeleteAccountAuditConfigurationOutput, error) {
  2753. req, out := c.DeleteAccountAuditConfigurationRequest(input)
  2754. req.SetContext(ctx)
  2755. req.ApplyOptions(opts...)
  2756. return out, req.Send()
  2757. }
  2758. const opDeleteAuthorizer = "DeleteAuthorizer"
  2759. // DeleteAuthorizerRequest generates a "aws/request.Request" representing the
  2760. // client's request for the DeleteAuthorizer operation. The "output" return
  2761. // value will be populated with the request's response once the request completes
  2762. // successfully.
  2763. //
  2764. // Use "Send" method on the returned Request to send the API call to the service.
  2765. // the "output" return value is not valid until after Send returns without error.
  2766. //
  2767. // See DeleteAuthorizer for more information on using the DeleteAuthorizer
  2768. // API call, and error handling.
  2769. //
  2770. // This method is useful when you want to inject custom logic or configuration
  2771. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2772. //
  2773. //
  2774. // // Example sending a request using the DeleteAuthorizerRequest method.
  2775. // req, resp := client.DeleteAuthorizerRequest(params)
  2776. //
  2777. // err := req.Send()
  2778. // if err == nil { // resp is now filled
  2779. // fmt.Println(resp)
  2780. // }
  2781. func (c *IoT) DeleteAuthorizerRequest(input *DeleteAuthorizerInput) (req *request.Request, output *DeleteAuthorizerOutput) {
  2782. op := &request.Operation{
  2783. Name: opDeleteAuthorizer,
  2784. HTTPMethod: "DELETE",
  2785. HTTPPath: "/authorizer/{authorizerName}",
  2786. }
  2787. if input == nil {
  2788. input = &DeleteAuthorizerInput{}
  2789. }
  2790. output = &DeleteAuthorizerOutput{}
  2791. req = c.newRequest(op, input, output)
  2792. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2793. return
  2794. }
  2795. // DeleteAuthorizer API operation for AWS IoT.
  2796. //
  2797. // Deletes an authorizer.
  2798. //
  2799. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2800. // with awserr.Error's Code and Message methods to get detailed information about
  2801. // the error.
  2802. //
  2803. // See the AWS API reference guide for AWS IoT's
  2804. // API operation DeleteAuthorizer for usage and error information.
  2805. //
  2806. // Returned Error Codes:
  2807. // * ErrCodeDeleteConflictException "DeleteConflictException"
  2808. // You can't delete the resource because it is attached to one or more resources.
  2809. //
  2810. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  2811. // The specified resource does not exist.
  2812. //
  2813. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2814. // The request is not valid.
  2815. //
  2816. // * ErrCodeThrottlingException "ThrottlingException"
  2817. // The rate exceeds the limit.
  2818. //
  2819. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2820. // You are not authorized to perform this operation.
  2821. //
  2822. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2823. // The service is temporarily unavailable.
  2824. //
  2825. // * ErrCodeInternalFailureException "InternalFailureException"
  2826. // An unexpected error has occurred.
  2827. //
  2828. func (c *IoT) DeleteAuthorizer(input *DeleteAuthorizerInput) (*DeleteAuthorizerOutput, error) {
  2829. req, out := c.DeleteAuthorizerRequest(input)
  2830. return out, req.Send()
  2831. }
  2832. // DeleteAuthorizerWithContext is the same as DeleteAuthorizer with the addition of
  2833. // the ability to pass a context and additional request options.
  2834. //
  2835. // See DeleteAuthorizer for details on how to use this API operation.
  2836. //
  2837. // The context must be non-nil and will be used for request cancellation. If
  2838. // the context is nil a panic will occur. In the future the SDK may create
  2839. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2840. // for more information on using Contexts.
  2841. func (c *IoT) DeleteAuthorizerWithContext(ctx aws.Context, input *DeleteAuthorizerInput, opts ...request.Option) (*DeleteAuthorizerOutput, error) {
  2842. req, out := c.DeleteAuthorizerRequest(input)
  2843. req.SetContext(ctx)
  2844. req.ApplyOptions(opts...)
  2845. return out, req.Send()
  2846. }
  2847. const opDeleteBillingGroup = "DeleteBillingGroup"
  2848. // DeleteBillingGroupRequest generates a "aws/request.Request" representing the
  2849. // client's request for the DeleteBillingGroup operation. The "output" return
  2850. // value will be populated with the request's response once the request completes
  2851. // successfully.
  2852. //
  2853. // Use "Send" method on the returned Request to send the API call to the service.
  2854. // the "output" return value is not valid until after Send returns without error.
  2855. //
  2856. // See DeleteBillingGroup for more information on using the DeleteBillingGroup
  2857. // API call, and error handling.
  2858. //
  2859. // This method is useful when you want to inject custom logic or configuration
  2860. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2861. //
  2862. //
  2863. // // Example sending a request using the DeleteBillingGroupRequest method.
  2864. // req, resp := client.DeleteBillingGroupRequest(params)
  2865. //
  2866. // err := req.Send()
  2867. // if err == nil { // resp is now filled
  2868. // fmt.Println(resp)
  2869. // }
  2870. func (c *IoT) DeleteBillingGroupRequest(input *DeleteBillingGroupInput) (req *request.Request, output *DeleteBillingGroupOutput) {
  2871. op := &request.Operation{
  2872. Name: opDeleteBillingGroup,
  2873. HTTPMethod: "DELETE",
  2874. HTTPPath: "/billing-groups/{billingGroupName}",
  2875. }
  2876. if input == nil {
  2877. input = &DeleteBillingGroupInput{}
  2878. }
  2879. output = &DeleteBillingGroupOutput{}
  2880. req = c.newRequest(op, input, output)
  2881. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2882. return
  2883. }
  2884. // DeleteBillingGroup API operation for AWS IoT.
  2885. //
  2886. // Deletes the billing group.
  2887. //
  2888. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2889. // with awserr.Error's Code and Message methods to get detailed information about
  2890. // the error.
  2891. //
  2892. // See the AWS API reference guide for AWS IoT's
  2893. // API operation DeleteBillingGroup for usage and error information.
  2894. //
  2895. // Returned Error Codes:
  2896. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2897. // The request is not valid.
  2898. //
  2899. // * ErrCodeVersionConflictException "VersionConflictException"
  2900. // An exception thrown when the version of an entity specified with the expectedVersion
  2901. // parameter does not match the latest version in the system.
  2902. //
  2903. // * ErrCodeThrottlingException "ThrottlingException"
  2904. // The rate exceeds the limit.
  2905. //
  2906. // * ErrCodeInternalFailureException "InternalFailureException"
  2907. // An unexpected error has occurred.
  2908. //
  2909. func (c *IoT) DeleteBillingGroup(input *DeleteBillingGroupInput) (*DeleteBillingGroupOutput, error) {
  2910. req, out := c.DeleteBillingGroupRequest(input)
  2911. return out, req.Send()
  2912. }
  2913. // DeleteBillingGroupWithContext is the same as DeleteBillingGroup with the addition of
  2914. // the ability to pass a context and additional request options.
  2915. //
  2916. // See DeleteBillingGroup for details on how to use this API operation.
  2917. //
  2918. // The context must be non-nil and will be used for request cancellation. If
  2919. // the context is nil a panic will occur. In the future the SDK may create
  2920. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2921. // for more information on using Contexts.
  2922. func (c *IoT) DeleteBillingGroupWithContext(ctx aws.Context, input *DeleteBillingGroupInput, opts ...request.Option) (*DeleteBillingGroupOutput, error) {
  2923. req, out := c.DeleteBillingGroupRequest(input)
  2924. req.SetContext(ctx)
  2925. req.ApplyOptions(opts...)
  2926. return out, req.Send()
  2927. }
  2928. const opDeleteCACertificate = "DeleteCACertificate"
  2929. // DeleteCACertificateRequest generates a "aws/request.Request" representing the
  2930. // client's request for the DeleteCACertificate operation. The "output" return
  2931. // value will be populated with the request's response once the request completes
  2932. // successfully.
  2933. //
  2934. // Use "Send" method on the returned Request to send the API call to the service.
  2935. // the "output" return value is not valid until after Send returns without error.
  2936. //
  2937. // See DeleteCACertificate for more information on using the DeleteCACertificate
  2938. // API call, and error handling.
  2939. //
  2940. // This method is useful when you want to inject custom logic or configuration
  2941. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2942. //
  2943. //
  2944. // // Example sending a request using the DeleteCACertificateRequest method.
  2945. // req, resp := client.DeleteCACertificateRequest(params)
  2946. //
  2947. // err := req.Send()
  2948. // if err == nil { // resp is now filled
  2949. // fmt.Println(resp)
  2950. // }
  2951. func (c *IoT) DeleteCACertificateRequest(input *DeleteCACertificateInput) (req *request.Request, output *DeleteCACertificateOutput) {
  2952. op := &request.Operation{
  2953. Name: opDeleteCACertificate,
  2954. HTTPMethod: "DELETE",
  2955. HTTPPath: "/cacertificate/{caCertificateId}",
  2956. }
  2957. if input == nil {
  2958. input = &DeleteCACertificateInput{}
  2959. }
  2960. output = &DeleteCACertificateOutput{}
  2961. req = c.newRequest(op, input, output)
  2962. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2963. return
  2964. }
  2965. // DeleteCACertificate API operation for AWS IoT.
  2966. //
  2967. // Deletes a registered CA certificate.
  2968. //
  2969. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2970. // with awserr.Error's Code and Message methods to get detailed information about
  2971. // the error.
  2972. //
  2973. // See the AWS API reference guide for AWS IoT's
  2974. // API operation DeleteCACertificate for usage and error information.
  2975. //
  2976. // Returned Error Codes:
  2977. // * ErrCodeInvalidRequestException "InvalidRequestException"
  2978. // The request is not valid.
  2979. //
  2980. // * ErrCodeCertificateStateException "CertificateStateException"
  2981. // The certificate operation is not allowed.
  2982. //
  2983. // * ErrCodeThrottlingException "ThrottlingException"
  2984. // The rate exceeds the limit.
  2985. //
  2986. // * ErrCodeUnauthorizedException "UnauthorizedException"
  2987. // You are not authorized to perform this operation.
  2988. //
  2989. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  2990. // The service is temporarily unavailable.
  2991. //
  2992. // * ErrCodeInternalFailureException "InternalFailureException"
  2993. // An unexpected error has occurred.
  2994. //
  2995. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  2996. // The specified resource does not exist.
  2997. //
  2998. func (c *IoT) DeleteCACertificate(input *DeleteCACertificateInput) (*DeleteCACertificateOutput, error) {
  2999. req, out := c.DeleteCACertificateRequest(input)
  3000. return out, req.Send()
  3001. }
  3002. // DeleteCACertificateWithContext is the same as DeleteCACertificate with the addition of
  3003. // the ability to pass a context and additional request options.
  3004. //
  3005. // See DeleteCACertificate for details on how to use this API operation.
  3006. //
  3007. // The context must be non-nil and will be used for request cancellation. If
  3008. // the context is nil a panic will occur. In the future the SDK may create
  3009. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3010. // for more information on using Contexts.
  3011. func (c *IoT) DeleteCACertificateWithContext(ctx aws.Context, input *DeleteCACertificateInput, opts ...request.Option) (*DeleteCACertificateOutput, error) {
  3012. req, out := c.DeleteCACertificateRequest(input)
  3013. req.SetContext(ctx)
  3014. req.ApplyOptions(opts...)
  3015. return out, req.Send()
  3016. }
  3017. const opDeleteCertificate = "DeleteCertificate"
  3018. // DeleteCertificateRequest generates a "aws/request.Request" representing the
  3019. // client's request for the DeleteCertificate operation. The "output" return
  3020. // value will be populated with the request's response once the request completes
  3021. // successfully.
  3022. //
  3023. // Use "Send" method on the returned Request to send the API call to the service.
  3024. // the "output" return value is not valid until after Send returns without error.
  3025. //
  3026. // See DeleteCertificate for more information on using the DeleteCertificate
  3027. // API call, and error handling.
  3028. //
  3029. // This method is useful when you want to inject custom logic or configuration
  3030. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3031. //
  3032. //
  3033. // // Example sending a request using the DeleteCertificateRequest method.
  3034. // req, resp := client.DeleteCertificateRequest(params)
  3035. //
  3036. // err := req.Send()
  3037. // if err == nil { // resp is now filled
  3038. // fmt.Println(resp)
  3039. // }
  3040. func (c *IoT) DeleteCertificateRequest(input *DeleteCertificateInput) (req *request.Request, output *DeleteCertificateOutput) {
  3041. op := &request.Operation{
  3042. Name: opDeleteCertificate,
  3043. HTTPMethod: "DELETE",
  3044. HTTPPath: "/certificates/{certificateId}",
  3045. }
  3046. if input == nil {
  3047. input = &DeleteCertificateInput{}
  3048. }
  3049. output = &DeleteCertificateOutput{}
  3050. req = c.newRequest(op, input, output)
  3051. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3052. return
  3053. }
  3054. // DeleteCertificate API operation for AWS IoT.
  3055. //
  3056. // Deletes the specified certificate.
  3057. //
  3058. // A certificate cannot be deleted if it has a policy attached to it or if its
  3059. // status is set to ACTIVE. To delete a certificate, first use the DetachPrincipalPolicy
  3060. // API to detach all policies. Next, use the UpdateCertificate API to set the
  3061. // certificate to the INACTIVE status.
  3062. //
  3063. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3064. // with awserr.Error's Code and Message methods to get detailed information about
  3065. // the error.
  3066. //
  3067. // See the AWS API reference guide for AWS IoT's
  3068. // API operation DeleteCertificate for usage and error information.
  3069. //
  3070. // Returned Error Codes:
  3071. // * ErrCodeCertificateStateException "CertificateStateException"
  3072. // The certificate operation is not allowed.
  3073. //
  3074. // * ErrCodeDeleteConflictException "DeleteConflictException"
  3075. // You can't delete the resource because it is attached to one or more resources.
  3076. //
  3077. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3078. // The request is not valid.
  3079. //
  3080. // * ErrCodeThrottlingException "ThrottlingException"
  3081. // The rate exceeds the limit.
  3082. //
  3083. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3084. // You are not authorized to perform this operation.
  3085. //
  3086. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3087. // The service is temporarily unavailable.
  3088. //
  3089. // * ErrCodeInternalFailureException "InternalFailureException"
  3090. // An unexpected error has occurred.
  3091. //
  3092. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3093. // The specified resource does not exist.
  3094. //
  3095. func (c *IoT) DeleteCertificate(input *DeleteCertificateInput) (*DeleteCertificateOutput, error) {
  3096. req, out := c.DeleteCertificateRequest(input)
  3097. return out, req.Send()
  3098. }
  3099. // DeleteCertificateWithContext is the same as DeleteCertificate with the addition of
  3100. // the ability to pass a context and additional request options.
  3101. //
  3102. // See DeleteCertificate for details on how to use this API operation.
  3103. //
  3104. // The context must be non-nil and will be used for request cancellation. If
  3105. // the context is nil a panic will occur. In the future the SDK may create
  3106. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3107. // for more information on using Contexts.
  3108. func (c *IoT) DeleteCertificateWithContext(ctx aws.Context, input *DeleteCertificateInput, opts ...request.Option) (*DeleteCertificateOutput, error) {
  3109. req, out := c.DeleteCertificateRequest(input)
  3110. req.SetContext(ctx)
  3111. req.ApplyOptions(opts...)
  3112. return out, req.Send()
  3113. }
  3114. const opDeleteDynamicThingGroup = "DeleteDynamicThingGroup"
  3115. // DeleteDynamicThingGroupRequest generates a "aws/request.Request" representing the
  3116. // client's request for the DeleteDynamicThingGroup operation. The "output" return
  3117. // value will be populated with the request's response once the request completes
  3118. // successfully.
  3119. //
  3120. // Use "Send" method on the returned Request to send the API call to the service.
  3121. // the "output" return value is not valid until after Send returns without error.
  3122. //
  3123. // See DeleteDynamicThingGroup for more information on using the DeleteDynamicThingGroup
  3124. // API call, and error handling.
  3125. //
  3126. // This method is useful when you want to inject custom logic or configuration
  3127. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3128. //
  3129. //
  3130. // // Example sending a request using the DeleteDynamicThingGroupRequest method.
  3131. // req, resp := client.DeleteDynamicThingGroupRequest(params)
  3132. //
  3133. // err := req.Send()
  3134. // if err == nil { // resp is now filled
  3135. // fmt.Println(resp)
  3136. // }
  3137. func (c *IoT) DeleteDynamicThingGroupRequest(input *DeleteDynamicThingGroupInput) (req *request.Request, output *DeleteDynamicThingGroupOutput) {
  3138. op := &request.Operation{
  3139. Name: opDeleteDynamicThingGroup,
  3140. HTTPMethod: "DELETE",
  3141. HTTPPath: "/dynamic-thing-groups/{thingGroupName}",
  3142. }
  3143. if input == nil {
  3144. input = &DeleteDynamicThingGroupInput{}
  3145. }
  3146. output = &DeleteDynamicThingGroupOutput{}
  3147. req = c.newRequest(op, input, output)
  3148. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3149. return
  3150. }
  3151. // DeleteDynamicThingGroup API operation for AWS IoT.
  3152. //
  3153. // Deletes a dynamic thing group.
  3154. //
  3155. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3156. // with awserr.Error's Code and Message methods to get detailed information about
  3157. // the error.
  3158. //
  3159. // See the AWS API reference guide for AWS IoT's
  3160. // API operation DeleteDynamicThingGroup for usage and error information.
  3161. //
  3162. // Returned Error Codes:
  3163. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3164. // The request is not valid.
  3165. //
  3166. // * ErrCodeVersionConflictException "VersionConflictException"
  3167. // An exception thrown when the version of an entity specified with the expectedVersion
  3168. // parameter does not match the latest version in the system.
  3169. //
  3170. // * ErrCodeThrottlingException "ThrottlingException"
  3171. // The rate exceeds the limit.
  3172. //
  3173. // * ErrCodeInternalFailureException "InternalFailureException"
  3174. // An unexpected error has occurred.
  3175. //
  3176. func (c *IoT) DeleteDynamicThingGroup(input *DeleteDynamicThingGroupInput) (*DeleteDynamicThingGroupOutput, error) {
  3177. req, out := c.DeleteDynamicThingGroupRequest(input)
  3178. return out, req.Send()
  3179. }
  3180. // DeleteDynamicThingGroupWithContext is the same as DeleteDynamicThingGroup with the addition of
  3181. // the ability to pass a context and additional request options.
  3182. //
  3183. // See DeleteDynamicThingGroup for details on how to use this API operation.
  3184. //
  3185. // The context must be non-nil and will be used for request cancellation. If
  3186. // the context is nil a panic will occur. In the future the SDK may create
  3187. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3188. // for more information on using Contexts.
  3189. func (c *IoT) DeleteDynamicThingGroupWithContext(ctx aws.Context, input *DeleteDynamicThingGroupInput, opts ...request.Option) (*DeleteDynamicThingGroupOutput, error) {
  3190. req, out := c.DeleteDynamicThingGroupRequest(input)
  3191. req.SetContext(ctx)
  3192. req.ApplyOptions(opts...)
  3193. return out, req.Send()
  3194. }
  3195. const opDeleteJob = "DeleteJob"
  3196. // DeleteJobRequest generates a "aws/request.Request" representing the
  3197. // client's request for the DeleteJob operation. The "output" return
  3198. // value will be populated with the request's response once the request completes
  3199. // successfully.
  3200. //
  3201. // Use "Send" method on the returned Request to send the API call to the service.
  3202. // the "output" return value is not valid until after Send returns without error.
  3203. //
  3204. // See DeleteJob for more information on using the DeleteJob
  3205. // API call, and error handling.
  3206. //
  3207. // This method is useful when you want to inject custom logic or configuration
  3208. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3209. //
  3210. //
  3211. // // Example sending a request using the DeleteJobRequest method.
  3212. // req, resp := client.DeleteJobRequest(params)
  3213. //
  3214. // err := req.Send()
  3215. // if err == nil { // resp is now filled
  3216. // fmt.Println(resp)
  3217. // }
  3218. func (c *IoT) DeleteJobRequest(input *DeleteJobInput) (req *request.Request, output *DeleteJobOutput) {
  3219. op := &request.Operation{
  3220. Name: opDeleteJob,
  3221. HTTPMethod: "DELETE",
  3222. HTTPPath: "/jobs/{jobId}",
  3223. }
  3224. if input == nil {
  3225. input = &DeleteJobInput{}
  3226. }
  3227. output = &DeleteJobOutput{}
  3228. req = c.newRequest(op, input, output)
  3229. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3230. return
  3231. }
  3232. // DeleteJob API operation for AWS IoT.
  3233. //
  3234. // Deletes a job and its related job executions.
  3235. //
  3236. // Deleting a job may take time, depending on the number of job executions created
  3237. // for the job and various other factors. While the job is being deleted, the
  3238. // status of the job will be shown as "DELETION_IN_PROGRESS". Attempting to
  3239. // delete or cancel a job whose status is already "DELETION_IN_PROGRESS" will
  3240. // result in an error.
  3241. //
  3242. // Only 10 jobs may have status "DELETION_IN_PROGRESS" at the same time, or
  3243. // a LimitExceededException will occur.
  3244. //
  3245. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3246. // with awserr.Error's Code and Message methods to get detailed information about
  3247. // the error.
  3248. //
  3249. // See the AWS API reference guide for AWS IoT's
  3250. // API operation DeleteJob for usage and error information.
  3251. //
  3252. // Returned Error Codes:
  3253. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3254. // The request is not valid.
  3255. //
  3256. // * ErrCodeInvalidStateTransitionException "InvalidStateTransitionException"
  3257. // An attempt was made to change to an invalid state, for example by deleting
  3258. // a job or a job execution which is "IN_PROGRESS" without setting the force
  3259. // parameter.
  3260. //
  3261. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3262. // The specified resource does not exist.
  3263. //
  3264. // * ErrCodeLimitExceededException "LimitExceededException"
  3265. // A limit has been exceeded.
  3266. //
  3267. // * ErrCodeThrottlingException "ThrottlingException"
  3268. // The rate exceeds the limit.
  3269. //
  3270. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3271. // The service is temporarily unavailable.
  3272. //
  3273. func (c *IoT) DeleteJob(input *DeleteJobInput) (*DeleteJobOutput, error) {
  3274. req, out := c.DeleteJobRequest(input)
  3275. return out, req.Send()
  3276. }
  3277. // DeleteJobWithContext is the same as DeleteJob with the addition of
  3278. // the ability to pass a context and additional request options.
  3279. //
  3280. // See DeleteJob for details on how to use this API operation.
  3281. //
  3282. // The context must be non-nil and will be used for request cancellation. If
  3283. // the context is nil a panic will occur. In the future the SDK may create
  3284. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3285. // for more information on using Contexts.
  3286. func (c *IoT) DeleteJobWithContext(ctx aws.Context, input *DeleteJobInput, opts ...request.Option) (*DeleteJobOutput, error) {
  3287. req, out := c.DeleteJobRequest(input)
  3288. req.SetContext(ctx)
  3289. req.ApplyOptions(opts...)
  3290. return out, req.Send()
  3291. }
  3292. const opDeleteJobExecution = "DeleteJobExecution"
  3293. // DeleteJobExecutionRequest generates a "aws/request.Request" representing the
  3294. // client's request for the DeleteJobExecution operation. The "output" return
  3295. // value will be populated with the request's response once the request completes
  3296. // successfully.
  3297. //
  3298. // Use "Send" method on the returned Request to send the API call to the service.
  3299. // the "output" return value is not valid until after Send returns without error.
  3300. //
  3301. // See DeleteJobExecution for more information on using the DeleteJobExecution
  3302. // API call, and error handling.
  3303. //
  3304. // This method is useful when you want to inject custom logic or configuration
  3305. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3306. //
  3307. //
  3308. // // Example sending a request using the DeleteJobExecutionRequest method.
  3309. // req, resp := client.DeleteJobExecutionRequest(params)
  3310. //
  3311. // err := req.Send()
  3312. // if err == nil { // resp is now filled
  3313. // fmt.Println(resp)
  3314. // }
  3315. func (c *IoT) DeleteJobExecutionRequest(input *DeleteJobExecutionInput) (req *request.Request, output *DeleteJobExecutionOutput) {
  3316. op := &request.Operation{
  3317. Name: opDeleteJobExecution,
  3318. HTTPMethod: "DELETE",
  3319. HTTPPath: "/things/{thingName}/jobs/{jobId}/executionNumber/{executionNumber}",
  3320. }
  3321. if input == nil {
  3322. input = &DeleteJobExecutionInput{}
  3323. }
  3324. output = &DeleteJobExecutionOutput{}
  3325. req = c.newRequest(op, input, output)
  3326. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3327. return
  3328. }
  3329. // DeleteJobExecution API operation for AWS IoT.
  3330. //
  3331. // Deletes a job execution.
  3332. //
  3333. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3334. // with awserr.Error's Code and Message methods to get detailed information about
  3335. // the error.
  3336. //
  3337. // See the AWS API reference guide for AWS IoT's
  3338. // API operation DeleteJobExecution for usage and error information.
  3339. //
  3340. // Returned Error Codes:
  3341. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3342. // The request is not valid.
  3343. //
  3344. // * ErrCodeInvalidStateTransitionException "InvalidStateTransitionException"
  3345. // An attempt was made to change to an invalid state, for example by deleting
  3346. // a job or a job execution which is "IN_PROGRESS" without setting the force
  3347. // parameter.
  3348. //
  3349. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3350. // The specified resource does not exist.
  3351. //
  3352. // * ErrCodeThrottlingException "ThrottlingException"
  3353. // The rate exceeds the limit.
  3354. //
  3355. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3356. // The service is temporarily unavailable.
  3357. //
  3358. func (c *IoT) DeleteJobExecution(input *DeleteJobExecutionInput) (*DeleteJobExecutionOutput, error) {
  3359. req, out := c.DeleteJobExecutionRequest(input)
  3360. return out, req.Send()
  3361. }
  3362. // DeleteJobExecutionWithContext is the same as DeleteJobExecution with the addition of
  3363. // the ability to pass a context and additional request options.
  3364. //
  3365. // See DeleteJobExecution for details on how to use this API operation.
  3366. //
  3367. // The context must be non-nil and will be used for request cancellation. If
  3368. // the context is nil a panic will occur. In the future the SDK may create
  3369. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3370. // for more information on using Contexts.
  3371. func (c *IoT) DeleteJobExecutionWithContext(ctx aws.Context, input *DeleteJobExecutionInput, opts ...request.Option) (*DeleteJobExecutionOutput, error) {
  3372. req, out := c.DeleteJobExecutionRequest(input)
  3373. req.SetContext(ctx)
  3374. req.ApplyOptions(opts...)
  3375. return out, req.Send()
  3376. }
  3377. const opDeleteOTAUpdate = "DeleteOTAUpdate"
  3378. // DeleteOTAUpdateRequest generates a "aws/request.Request" representing the
  3379. // client's request for the DeleteOTAUpdate operation. The "output" return
  3380. // value will be populated with the request's response once the request completes
  3381. // successfully.
  3382. //
  3383. // Use "Send" method on the returned Request to send the API call to the service.
  3384. // the "output" return value is not valid until after Send returns without error.
  3385. //
  3386. // See DeleteOTAUpdate for more information on using the DeleteOTAUpdate
  3387. // API call, and error handling.
  3388. //
  3389. // This method is useful when you want to inject custom logic or configuration
  3390. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3391. //
  3392. //
  3393. // // Example sending a request using the DeleteOTAUpdateRequest method.
  3394. // req, resp := client.DeleteOTAUpdateRequest(params)
  3395. //
  3396. // err := req.Send()
  3397. // if err == nil { // resp is now filled
  3398. // fmt.Println(resp)
  3399. // }
  3400. func (c *IoT) DeleteOTAUpdateRequest(input *DeleteOTAUpdateInput) (req *request.Request, output *DeleteOTAUpdateOutput) {
  3401. op := &request.Operation{
  3402. Name: opDeleteOTAUpdate,
  3403. HTTPMethod: "DELETE",
  3404. HTTPPath: "/otaUpdates/{otaUpdateId}",
  3405. }
  3406. if input == nil {
  3407. input = &DeleteOTAUpdateInput{}
  3408. }
  3409. output = &DeleteOTAUpdateOutput{}
  3410. req = c.newRequest(op, input, output)
  3411. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3412. return
  3413. }
  3414. // DeleteOTAUpdate API operation for AWS IoT.
  3415. //
  3416. // Delete an OTA update.
  3417. //
  3418. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3419. // with awserr.Error's Code and Message methods to get detailed information about
  3420. // the error.
  3421. //
  3422. // See the AWS API reference guide for AWS IoT's
  3423. // API operation DeleteOTAUpdate for usage and error information.
  3424. //
  3425. // Returned Error Codes:
  3426. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3427. // The request is not valid.
  3428. //
  3429. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3430. // The specified resource does not exist.
  3431. //
  3432. // * ErrCodeThrottlingException "ThrottlingException"
  3433. // The rate exceeds the limit.
  3434. //
  3435. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3436. // You are not authorized to perform this operation.
  3437. //
  3438. // * ErrCodeInternalFailureException "InternalFailureException"
  3439. // An unexpected error has occurred.
  3440. //
  3441. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3442. // The service is temporarily unavailable.
  3443. //
  3444. // * ErrCodeVersionConflictException "VersionConflictException"
  3445. // An exception thrown when the version of an entity specified with the expectedVersion
  3446. // parameter does not match the latest version in the system.
  3447. //
  3448. func (c *IoT) DeleteOTAUpdate(input *DeleteOTAUpdateInput) (*DeleteOTAUpdateOutput, error) {
  3449. req, out := c.DeleteOTAUpdateRequest(input)
  3450. return out, req.Send()
  3451. }
  3452. // DeleteOTAUpdateWithContext is the same as DeleteOTAUpdate with the addition of
  3453. // the ability to pass a context and additional request options.
  3454. //
  3455. // See DeleteOTAUpdate for details on how to use this API operation.
  3456. //
  3457. // The context must be non-nil and will be used for request cancellation. If
  3458. // the context is nil a panic will occur. In the future the SDK may create
  3459. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3460. // for more information on using Contexts.
  3461. func (c *IoT) DeleteOTAUpdateWithContext(ctx aws.Context, input *DeleteOTAUpdateInput, opts ...request.Option) (*DeleteOTAUpdateOutput, error) {
  3462. req, out := c.DeleteOTAUpdateRequest(input)
  3463. req.SetContext(ctx)
  3464. req.ApplyOptions(opts...)
  3465. return out, req.Send()
  3466. }
  3467. const opDeletePolicy = "DeletePolicy"
  3468. // DeletePolicyRequest generates a "aws/request.Request" representing the
  3469. // client's request for the DeletePolicy operation. The "output" return
  3470. // value will be populated with the request's response once the request completes
  3471. // successfully.
  3472. //
  3473. // Use "Send" method on the returned Request to send the API call to the service.
  3474. // the "output" return value is not valid until after Send returns without error.
  3475. //
  3476. // See DeletePolicy for more information on using the DeletePolicy
  3477. // API call, and error handling.
  3478. //
  3479. // This method is useful when you want to inject custom logic or configuration
  3480. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3481. //
  3482. //
  3483. // // Example sending a request using the DeletePolicyRequest method.
  3484. // req, resp := client.DeletePolicyRequest(params)
  3485. //
  3486. // err := req.Send()
  3487. // if err == nil { // resp is now filled
  3488. // fmt.Println(resp)
  3489. // }
  3490. func (c *IoT) DeletePolicyRequest(input *DeletePolicyInput) (req *request.Request, output *DeletePolicyOutput) {
  3491. op := &request.Operation{
  3492. Name: opDeletePolicy,
  3493. HTTPMethod: "DELETE",
  3494. HTTPPath: "/policies/{policyName}",
  3495. }
  3496. if input == nil {
  3497. input = &DeletePolicyInput{}
  3498. }
  3499. output = &DeletePolicyOutput{}
  3500. req = c.newRequest(op, input, output)
  3501. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3502. return
  3503. }
  3504. // DeletePolicy API operation for AWS IoT.
  3505. //
  3506. // Deletes the specified policy.
  3507. //
  3508. // A policy cannot be deleted if it has non-default versions or it is attached
  3509. // to any certificate.
  3510. //
  3511. // To delete a policy, use the DeletePolicyVersion API to delete all non-default
  3512. // versions of the policy; use the DetachPrincipalPolicy API to detach the policy
  3513. // from any certificate; and then use the DeletePolicy API to delete the policy.
  3514. //
  3515. // When a policy is deleted using DeletePolicy, its default version is deleted
  3516. // with it.
  3517. //
  3518. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3519. // with awserr.Error's Code and Message methods to get detailed information about
  3520. // the error.
  3521. //
  3522. // See the AWS API reference guide for AWS IoT's
  3523. // API operation DeletePolicy for usage and error information.
  3524. //
  3525. // Returned Error Codes:
  3526. // * ErrCodeDeleteConflictException "DeleteConflictException"
  3527. // You can't delete the resource because it is attached to one or more resources.
  3528. //
  3529. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3530. // The specified resource does not exist.
  3531. //
  3532. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3533. // The request is not valid.
  3534. //
  3535. // * ErrCodeThrottlingException "ThrottlingException"
  3536. // The rate exceeds the limit.
  3537. //
  3538. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3539. // You are not authorized to perform this operation.
  3540. //
  3541. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3542. // The service is temporarily unavailable.
  3543. //
  3544. // * ErrCodeInternalFailureException "InternalFailureException"
  3545. // An unexpected error has occurred.
  3546. //
  3547. func (c *IoT) DeletePolicy(input *DeletePolicyInput) (*DeletePolicyOutput, error) {
  3548. req, out := c.DeletePolicyRequest(input)
  3549. return out, req.Send()
  3550. }
  3551. // DeletePolicyWithContext is the same as DeletePolicy with the addition of
  3552. // the ability to pass a context and additional request options.
  3553. //
  3554. // See DeletePolicy for details on how to use this API operation.
  3555. //
  3556. // The context must be non-nil and will be used for request cancellation. If
  3557. // the context is nil a panic will occur. In the future the SDK may create
  3558. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3559. // for more information on using Contexts.
  3560. func (c *IoT) DeletePolicyWithContext(ctx aws.Context, input *DeletePolicyInput, opts ...request.Option) (*DeletePolicyOutput, error) {
  3561. req, out := c.DeletePolicyRequest(input)
  3562. req.SetContext(ctx)
  3563. req.ApplyOptions(opts...)
  3564. return out, req.Send()
  3565. }
  3566. const opDeletePolicyVersion = "DeletePolicyVersion"
  3567. // DeletePolicyVersionRequest generates a "aws/request.Request" representing the
  3568. // client's request for the DeletePolicyVersion operation. The "output" return
  3569. // value will be populated with the request's response once the request completes
  3570. // successfully.
  3571. //
  3572. // Use "Send" method on the returned Request to send the API call to the service.
  3573. // the "output" return value is not valid until after Send returns without error.
  3574. //
  3575. // See DeletePolicyVersion for more information on using the DeletePolicyVersion
  3576. // API call, and error handling.
  3577. //
  3578. // This method is useful when you want to inject custom logic or configuration
  3579. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3580. //
  3581. //
  3582. // // Example sending a request using the DeletePolicyVersionRequest method.
  3583. // req, resp := client.DeletePolicyVersionRequest(params)
  3584. //
  3585. // err := req.Send()
  3586. // if err == nil { // resp is now filled
  3587. // fmt.Println(resp)
  3588. // }
  3589. func (c *IoT) DeletePolicyVersionRequest(input *DeletePolicyVersionInput) (req *request.Request, output *DeletePolicyVersionOutput) {
  3590. op := &request.Operation{
  3591. Name: opDeletePolicyVersion,
  3592. HTTPMethod: "DELETE",
  3593. HTTPPath: "/policies/{policyName}/version/{policyVersionId}",
  3594. }
  3595. if input == nil {
  3596. input = &DeletePolicyVersionInput{}
  3597. }
  3598. output = &DeletePolicyVersionOutput{}
  3599. req = c.newRequest(op, input, output)
  3600. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3601. return
  3602. }
  3603. // DeletePolicyVersion API operation for AWS IoT.
  3604. //
  3605. // Deletes the specified version of the specified policy. You cannot delete
  3606. // the default version of a policy using this API. To delete the default version
  3607. // of a policy, use DeletePolicy. To find out which version of a policy is marked
  3608. // as the default version, use ListPolicyVersions.
  3609. //
  3610. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3611. // with awserr.Error's Code and Message methods to get detailed information about
  3612. // the error.
  3613. //
  3614. // See the AWS API reference guide for AWS IoT's
  3615. // API operation DeletePolicyVersion for usage and error information.
  3616. //
  3617. // Returned Error Codes:
  3618. // * ErrCodeDeleteConflictException "DeleteConflictException"
  3619. // You can't delete the resource because it is attached to one or more resources.
  3620. //
  3621. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3622. // The specified resource does not exist.
  3623. //
  3624. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3625. // The request is not valid.
  3626. //
  3627. // * ErrCodeThrottlingException "ThrottlingException"
  3628. // The rate exceeds the limit.
  3629. //
  3630. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3631. // You are not authorized to perform this operation.
  3632. //
  3633. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3634. // The service is temporarily unavailable.
  3635. //
  3636. // * ErrCodeInternalFailureException "InternalFailureException"
  3637. // An unexpected error has occurred.
  3638. //
  3639. func (c *IoT) DeletePolicyVersion(input *DeletePolicyVersionInput) (*DeletePolicyVersionOutput, error) {
  3640. req, out := c.DeletePolicyVersionRequest(input)
  3641. return out, req.Send()
  3642. }
  3643. // DeletePolicyVersionWithContext is the same as DeletePolicyVersion with the addition of
  3644. // the ability to pass a context and additional request options.
  3645. //
  3646. // See DeletePolicyVersion for details on how to use this API operation.
  3647. //
  3648. // The context must be non-nil and will be used for request cancellation. If
  3649. // the context is nil a panic will occur. In the future the SDK may create
  3650. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3651. // for more information on using Contexts.
  3652. func (c *IoT) DeletePolicyVersionWithContext(ctx aws.Context, input *DeletePolicyVersionInput, opts ...request.Option) (*DeletePolicyVersionOutput, error) {
  3653. req, out := c.DeletePolicyVersionRequest(input)
  3654. req.SetContext(ctx)
  3655. req.ApplyOptions(opts...)
  3656. return out, req.Send()
  3657. }
  3658. const opDeleteRegistrationCode = "DeleteRegistrationCode"
  3659. // DeleteRegistrationCodeRequest generates a "aws/request.Request" representing the
  3660. // client's request for the DeleteRegistrationCode operation. The "output" return
  3661. // value will be populated with the request's response once the request completes
  3662. // successfully.
  3663. //
  3664. // Use "Send" method on the returned Request to send the API call to the service.
  3665. // the "output" return value is not valid until after Send returns without error.
  3666. //
  3667. // See DeleteRegistrationCode for more information on using the DeleteRegistrationCode
  3668. // API call, and error handling.
  3669. //
  3670. // This method is useful when you want to inject custom logic or configuration
  3671. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3672. //
  3673. //
  3674. // // Example sending a request using the DeleteRegistrationCodeRequest method.
  3675. // req, resp := client.DeleteRegistrationCodeRequest(params)
  3676. //
  3677. // err := req.Send()
  3678. // if err == nil { // resp is now filled
  3679. // fmt.Println(resp)
  3680. // }
  3681. func (c *IoT) DeleteRegistrationCodeRequest(input *DeleteRegistrationCodeInput) (req *request.Request, output *DeleteRegistrationCodeOutput) {
  3682. op := &request.Operation{
  3683. Name: opDeleteRegistrationCode,
  3684. HTTPMethod: "DELETE",
  3685. HTTPPath: "/registrationcode",
  3686. }
  3687. if input == nil {
  3688. input = &DeleteRegistrationCodeInput{}
  3689. }
  3690. output = &DeleteRegistrationCodeOutput{}
  3691. req = c.newRequest(op, input, output)
  3692. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3693. return
  3694. }
  3695. // DeleteRegistrationCode API operation for AWS IoT.
  3696. //
  3697. // Deletes a CA certificate registration code.
  3698. //
  3699. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3700. // with awserr.Error's Code and Message methods to get detailed information about
  3701. // the error.
  3702. //
  3703. // See the AWS API reference guide for AWS IoT's
  3704. // API operation DeleteRegistrationCode for usage and error information.
  3705. //
  3706. // Returned Error Codes:
  3707. // * ErrCodeThrottlingException "ThrottlingException"
  3708. // The rate exceeds the limit.
  3709. //
  3710. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3711. // The specified resource does not exist.
  3712. //
  3713. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3714. // You are not authorized to perform this operation.
  3715. //
  3716. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3717. // The service is temporarily unavailable.
  3718. //
  3719. // * ErrCodeInternalFailureException "InternalFailureException"
  3720. // An unexpected error has occurred.
  3721. //
  3722. func (c *IoT) DeleteRegistrationCode(input *DeleteRegistrationCodeInput) (*DeleteRegistrationCodeOutput, error) {
  3723. req, out := c.DeleteRegistrationCodeRequest(input)
  3724. return out, req.Send()
  3725. }
  3726. // DeleteRegistrationCodeWithContext is the same as DeleteRegistrationCode with the addition of
  3727. // the ability to pass a context and additional request options.
  3728. //
  3729. // See DeleteRegistrationCode for details on how to use this API operation.
  3730. //
  3731. // The context must be non-nil and will be used for request cancellation. If
  3732. // the context is nil a panic will occur. In the future the SDK may create
  3733. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3734. // for more information on using Contexts.
  3735. func (c *IoT) DeleteRegistrationCodeWithContext(ctx aws.Context, input *DeleteRegistrationCodeInput, opts ...request.Option) (*DeleteRegistrationCodeOutput, error) {
  3736. req, out := c.DeleteRegistrationCodeRequest(input)
  3737. req.SetContext(ctx)
  3738. req.ApplyOptions(opts...)
  3739. return out, req.Send()
  3740. }
  3741. const opDeleteRoleAlias = "DeleteRoleAlias"
  3742. // DeleteRoleAliasRequest generates a "aws/request.Request" representing the
  3743. // client's request for the DeleteRoleAlias operation. The "output" return
  3744. // value will be populated with the request's response once the request completes
  3745. // successfully.
  3746. //
  3747. // Use "Send" method on the returned Request to send the API call to the service.
  3748. // the "output" return value is not valid until after Send returns without error.
  3749. //
  3750. // See DeleteRoleAlias for more information on using the DeleteRoleAlias
  3751. // API call, and error handling.
  3752. //
  3753. // This method is useful when you want to inject custom logic or configuration
  3754. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3755. //
  3756. //
  3757. // // Example sending a request using the DeleteRoleAliasRequest method.
  3758. // req, resp := client.DeleteRoleAliasRequest(params)
  3759. //
  3760. // err := req.Send()
  3761. // if err == nil { // resp is now filled
  3762. // fmt.Println(resp)
  3763. // }
  3764. func (c *IoT) DeleteRoleAliasRequest(input *DeleteRoleAliasInput) (req *request.Request, output *DeleteRoleAliasOutput) {
  3765. op := &request.Operation{
  3766. Name: opDeleteRoleAlias,
  3767. HTTPMethod: "DELETE",
  3768. HTTPPath: "/role-aliases/{roleAlias}",
  3769. }
  3770. if input == nil {
  3771. input = &DeleteRoleAliasInput{}
  3772. }
  3773. output = &DeleteRoleAliasOutput{}
  3774. req = c.newRequest(op, input, output)
  3775. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3776. return
  3777. }
  3778. // DeleteRoleAlias API operation for AWS IoT.
  3779. //
  3780. // Deletes a role alias
  3781. //
  3782. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3783. // with awserr.Error's Code and Message methods to get detailed information about
  3784. // the error.
  3785. //
  3786. // See the AWS API reference guide for AWS IoT's
  3787. // API operation DeleteRoleAlias for usage and error information.
  3788. //
  3789. // Returned Error Codes:
  3790. // * ErrCodeDeleteConflictException "DeleteConflictException"
  3791. // You can't delete the resource because it is attached to one or more resources.
  3792. //
  3793. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3794. // The request is not valid.
  3795. //
  3796. // * ErrCodeThrottlingException "ThrottlingException"
  3797. // The rate exceeds the limit.
  3798. //
  3799. // * ErrCodeUnauthorizedException "UnauthorizedException"
  3800. // You are not authorized to perform this operation.
  3801. //
  3802. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  3803. // The service is temporarily unavailable.
  3804. //
  3805. // * ErrCodeInternalFailureException "InternalFailureException"
  3806. // An unexpected error has occurred.
  3807. //
  3808. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3809. // The specified resource does not exist.
  3810. //
  3811. func (c *IoT) DeleteRoleAlias(input *DeleteRoleAliasInput) (*DeleteRoleAliasOutput, error) {
  3812. req, out := c.DeleteRoleAliasRequest(input)
  3813. return out, req.Send()
  3814. }
  3815. // DeleteRoleAliasWithContext is the same as DeleteRoleAlias with the addition of
  3816. // the ability to pass a context and additional request options.
  3817. //
  3818. // See DeleteRoleAlias for details on how to use this API operation.
  3819. //
  3820. // The context must be non-nil and will be used for request cancellation. If
  3821. // the context is nil a panic will occur. In the future the SDK may create
  3822. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3823. // for more information on using Contexts.
  3824. func (c *IoT) DeleteRoleAliasWithContext(ctx aws.Context, input *DeleteRoleAliasInput, opts ...request.Option) (*DeleteRoleAliasOutput, error) {
  3825. req, out := c.DeleteRoleAliasRequest(input)
  3826. req.SetContext(ctx)
  3827. req.ApplyOptions(opts...)
  3828. return out, req.Send()
  3829. }
  3830. const opDeleteScheduledAudit = "DeleteScheduledAudit"
  3831. // DeleteScheduledAuditRequest generates a "aws/request.Request" representing the
  3832. // client's request for the DeleteScheduledAudit operation. The "output" return
  3833. // value will be populated with the request's response once the request completes
  3834. // successfully.
  3835. //
  3836. // Use "Send" method on the returned Request to send the API call to the service.
  3837. // the "output" return value is not valid until after Send returns without error.
  3838. //
  3839. // See DeleteScheduledAudit for more information on using the DeleteScheduledAudit
  3840. // API call, and error handling.
  3841. //
  3842. // This method is useful when you want to inject custom logic or configuration
  3843. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3844. //
  3845. //
  3846. // // Example sending a request using the DeleteScheduledAuditRequest method.
  3847. // req, resp := client.DeleteScheduledAuditRequest(params)
  3848. //
  3849. // err := req.Send()
  3850. // if err == nil { // resp is now filled
  3851. // fmt.Println(resp)
  3852. // }
  3853. func (c *IoT) DeleteScheduledAuditRequest(input *DeleteScheduledAuditInput) (req *request.Request, output *DeleteScheduledAuditOutput) {
  3854. op := &request.Operation{
  3855. Name: opDeleteScheduledAudit,
  3856. HTTPMethod: "DELETE",
  3857. HTTPPath: "/audit/scheduledaudits/{scheduledAuditName}",
  3858. }
  3859. if input == nil {
  3860. input = &DeleteScheduledAuditInput{}
  3861. }
  3862. output = &DeleteScheduledAuditOutput{}
  3863. req = c.newRequest(op, input, output)
  3864. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3865. return
  3866. }
  3867. // DeleteScheduledAudit API operation for AWS IoT.
  3868. //
  3869. // Deletes a scheduled audit.
  3870. //
  3871. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3872. // with awserr.Error's Code and Message methods to get detailed information about
  3873. // the error.
  3874. //
  3875. // See the AWS API reference guide for AWS IoT's
  3876. // API operation DeleteScheduledAudit for usage and error information.
  3877. //
  3878. // Returned Error Codes:
  3879. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3880. // The request is not valid.
  3881. //
  3882. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  3883. // The specified resource does not exist.
  3884. //
  3885. // * ErrCodeThrottlingException "ThrottlingException"
  3886. // The rate exceeds the limit.
  3887. //
  3888. // * ErrCodeInternalFailureException "InternalFailureException"
  3889. // An unexpected error has occurred.
  3890. //
  3891. func (c *IoT) DeleteScheduledAudit(input *DeleteScheduledAuditInput) (*DeleteScheduledAuditOutput, error) {
  3892. req, out := c.DeleteScheduledAuditRequest(input)
  3893. return out, req.Send()
  3894. }
  3895. // DeleteScheduledAuditWithContext is the same as DeleteScheduledAudit with the addition of
  3896. // the ability to pass a context and additional request options.
  3897. //
  3898. // See DeleteScheduledAudit for details on how to use this API operation.
  3899. //
  3900. // The context must be non-nil and will be used for request cancellation. If
  3901. // the context is nil a panic will occur. In the future the SDK may create
  3902. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3903. // for more information on using Contexts.
  3904. func (c *IoT) DeleteScheduledAuditWithContext(ctx aws.Context, input *DeleteScheduledAuditInput, opts ...request.Option) (*DeleteScheduledAuditOutput, error) {
  3905. req, out := c.DeleteScheduledAuditRequest(input)
  3906. req.SetContext(ctx)
  3907. req.ApplyOptions(opts...)
  3908. return out, req.Send()
  3909. }
  3910. const opDeleteSecurityProfile = "DeleteSecurityProfile"
  3911. // DeleteSecurityProfileRequest generates a "aws/request.Request" representing the
  3912. // client's request for the DeleteSecurityProfile operation. The "output" return
  3913. // value will be populated with the request's response once the request completes
  3914. // successfully.
  3915. //
  3916. // Use "Send" method on the returned Request to send the API call to the service.
  3917. // the "output" return value is not valid until after Send returns without error.
  3918. //
  3919. // See DeleteSecurityProfile for more information on using the DeleteSecurityProfile
  3920. // API call, and error handling.
  3921. //
  3922. // This method is useful when you want to inject custom logic or configuration
  3923. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3924. //
  3925. //
  3926. // // Example sending a request using the DeleteSecurityProfileRequest method.
  3927. // req, resp := client.DeleteSecurityProfileRequest(params)
  3928. //
  3929. // err := req.Send()
  3930. // if err == nil { // resp is now filled
  3931. // fmt.Println(resp)
  3932. // }
  3933. func (c *IoT) DeleteSecurityProfileRequest(input *DeleteSecurityProfileInput) (req *request.Request, output *DeleteSecurityProfileOutput) {
  3934. op := &request.Operation{
  3935. Name: opDeleteSecurityProfile,
  3936. HTTPMethod: "DELETE",
  3937. HTTPPath: "/security-profiles/{securityProfileName}",
  3938. }
  3939. if input == nil {
  3940. input = &DeleteSecurityProfileInput{}
  3941. }
  3942. output = &DeleteSecurityProfileOutput{}
  3943. req = c.newRequest(op, input, output)
  3944. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3945. return
  3946. }
  3947. // DeleteSecurityProfile API operation for AWS IoT.
  3948. //
  3949. // Deletes a Device Defender security profile.
  3950. //
  3951. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3952. // with awserr.Error's Code and Message methods to get detailed information about
  3953. // the error.
  3954. //
  3955. // See the AWS API reference guide for AWS IoT's
  3956. // API operation DeleteSecurityProfile for usage and error information.
  3957. //
  3958. // Returned Error Codes:
  3959. // * ErrCodeInvalidRequestException "InvalidRequestException"
  3960. // The request is not valid.
  3961. //
  3962. // * ErrCodeThrottlingException "ThrottlingException"
  3963. // The rate exceeds the limit.
  3964. //
  3965. // * ErrCodeInternalFailureException "InternalFailureException"
  3966. // An unexpected error has occurred.
  3967. //
  3968. // * ErrCodeVersionConflictException "VersionConflictException"
  3969. // An exception thrown when the version of an entity specified with the expectedVersion
  3970. // parameter does not match the latest version in the system.
  3971. //
  3972. func (c *IoT) DeleteSecurityProfile(input *DeleteSecurityProfileInput) (*DeleteSecurityProfileOutput, error) {
  3973. req, out := c.DeleteSecurityProfileRequest(input)
  3974. return out, req.Send()
  3975. }
  3976. // DeleteSecurityProfileWithContext is the same as DeleteSecurityProfile with the addition of
  3977. // the ability to pass a context and additional request options.
  3978. //
  3979. // See DeleteSecurityProfile for details on how to use this API operation.
  3980. //
  3981. // The context must be non-nil and will be used for request cancellation. If
  3982. // the context is nil a panic will occur. In the future the SDK may create
  3983. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3984. // for more information on using Contexts.
  3985. func (c *IoT) DeleteSecurityProfileWithContext(ctx aws.Context, input *DeleteSecurityProfileInput, opts ...request.Option) (*DeleteSecurityProfileOutput, error) {
  3986. req, out := c.DeleteSecurityProfileRequest(input)
  3987. req.SetContext(ctx)
  3988. req.ApplyOptions(opts...)
  3989. return out, req.Send()
  3990. }
  3991. const opDeleteStream = "DeleteStream"
  3992. // DeleteStreamRequest generates a "aws/request.Request" representing the
  3993. // client's request for the DeleteStream operation. The "output" return
  3994. // value will be populated with the request's response once the request completes
  3995. // successfully.
  3996. //
  3997. // Use "Send" method on the returned Request to send the API call to the service.
  3998. // the "output" return value is not valid until after Send returns without error.
  3999. //
  4000. // See DeleteStream for more information on using the DeleteStream
  4001. // API call, and error handling.
  4002. //
  4003. // This method is useful when you want to inject custom logic or configuration
  4004. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4005. //
  4006. //
  4007. // // Example sending a request using the DeleteStreamRequest method.
  4008. // req, resp := client.DeleteStreamRequest(params)
  4009. //
  4010. // err := req.Send()
  4011. // if err == nil { // resp is now filled
  4012. // fmt.Println(resp)
  4013. // }
  4014. func (c *IoT) DeleteStreamRequest(input *DeleteStreamInput) (req *request.Request, output *DeleteStreamOutput) {
  4015. op := &request.Operation{
  4016. Name: opDeleteStream,
  4017. HTTPMethod: "DELETE",
  4018. HTTPPath: "/streams/{streamId}",
  4019. }
  4020. if input == nil {
  4021. input = &DeleteStreamInput{}
  4022. }
  4023. output = &DeleteStreamOutput{}
  4024. req = c.newRequest(op, input, output)
  4025. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4026. return
  4027. }
  4028. // DeleteStream API operation for AWS IoT.
  4029. //
  4030. // Deletes a stream.
  4031. //
  4032. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4033. // with awserr.Error's Code and Message methods to get detailed information about
  4034. // the error.
  4035. //
  4036. // See the AWS API reference guide for AWS IoT's
  4037. // API operation DeleteStream for usage and error information.
  4038. //
  4039. // Returned Error Codes:
  4040. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4041. // The specified resource does not exist.
  4042. //
  4043. // * ErrCodeDeleteConflictException "DeleteConflictException"
  4044. // You can't delete the resource because it is attached to one or more resources.
  4045. //
  4046. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4047. // The request is not valid.
  4048. //
  4049. // * ErrCodeThrottlingException "ThrottlingException"
  4050. // The rate exceeds the limit.
  4051. //
  4052. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4053. // You are not authorized to perform this operation.
  4054. //
  4055. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4056. // The service is temporarily unavailable.
  4057. //
  4058. // * ErrCodeInternalFailureException "InternalFailureException"
  4059. // An unexpected error has occurred.
  4060. //
  4061. func (c *IoT) DeleteStream(input *DeleteStreamInput) (*DeleteStreamOutput, error) {
  4062. req, out := c.DeleteStreamRequest(input)
  4063. return out, req.Send()
  4064. }
  4065. // DeleteStreamWithContext is the same as DeleteStream with the addition of
  4066. // the ability to pass a context and additional request options.
  4067. //
  4068. // See DeleteStream for details on how to use this API operation.
  4069. //
  4070. // The context must be non-nil and will be used for request cancellation. If
  4071. // the context is nil a panic will occur. In the future the SDK may create
  4072. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4073. // for more information on using Contexts.
  4074. func (c *IoT) DeleteStreamWithContext(ctx aws.Context, input *DeleteStreamInput, opts ...request.Option) (*DeleteStreamOutput, error) {
  4075. req, out := c.DeleteStreamRequest(input)
  4076. req.SetContext(ctx)
  4077. req.ApplyOptions(opts...)
  4078. return out, req.Send()
  4079. }
  4080. const opDeleteThing = "DeleteThing"
  4081. // DeleteThingRequest generates a "aws/request.Request" representing the
  4082. // client's request for the DeleteThing operation. The "output" return
  4083. // value will be populated with the request's response once the request completes
  4084. // successfully.
  4085. //
  4086. // Use "Send" method on the returned Request to send the API call to the service.
  4087. // the "output" return value is not valid until after Send returns without error.
  4088. //
  4089. // See DeleteThing for more information on using the DeleteThing
  4090. // API call, and error handling.
  4091. //
  4092. // This method is useful when you want to inject custom logic or configuration
  4093. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4094. //
  4095. //
  4096. // // Example sending a request using the DeleteThingRequest method.
  4097. // req, resp := client.DeleteThingRequest(params)
  4098. //
  4099. // err := req.Send()
  4100. // if err == nil { // resp is now filled
  4101. // fmt.Println(resp)
  4102. // }
  4103. func (c *IoT) DeleteThingRequest(input *DeleteThingInput) (req *request.Request, output *DeleteThingOutput) {
  4104. op := &request.Operation{
  4105. Name: opDeleteThing,
  4106. HTTPMethod: "DELETE",
  4107. HTTPPath: "/things/{thingName}",
  4108. }
  4109. if input == nil {
  4110. input = &DeleteThingInput{}
  4111. }
  4112. output = &DeleteThingOutput{}
  4113. req = c.newRequest(op, input, output)
  4114. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4115. return
  4116. }
  4117. // DeleteThing API operation for AWS IoT.
  4118. //
  4119. // Deletes the specified thing. Returns successfully with no error if the deletion
  4120. // is successful or you specify a thing that doesn't exist.
  4121. //
  4122. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4123. // with awserr.Error's Code and Message methods to get detailed information about
  4124. // the error.
  4125. //
  4126. // See the AWS API reference guide for AWS IoT's
  4127. // API operation DeleteThing for usage and error information.
  4128. //
  4129. // Returned Error Codes:
  4130. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4131. // The specified resource does not exist.
  4132. //
  4133. // * ErrCodeVersionConflictException "VersionConflictException"
  4134. // An exception thrown when the version of an entity specified with the expectedVersion
  4135. // parameter does not match the latest version in the system.
  4136. //
  4137. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4138. // The request is not valid.
  4139. //
  4140. // * ErrCodeThrottlingException "ThrottlingException"
  4141. // The rate exceeds the limit.
  4142. //
  4143. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4144. // You are not authorized to perform this operation.
  4145. //
  4146. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4147. // The service is temporarily unavailable.
  4148. //
  4149. // * ErrCodeInternalFailureException "InternalFailureException"
  4150. // An unexpected error has occurred.
  4151. //
  4152. func (c *IoT) DeleteThing(input *DeleteThingInput) (*DeleteThingOutput, error) {
  4153. req, out := c.DeleteThingRequest(input)
  4154. return out, req.Send()
  4155. }
  4156. // DeleteThingWithContext is the same as DeleteThing with the addition of
  4157. // the ability to pass a context and additional request options.
  4158. //
  4159. // See DeleteThing for details on how to use this API operation.
  4160. //
  4161. // The context must be non-nil and will be used for request cancellation. If
  4162. // the context is nil a panic will occur. In the future the SDK may create
  4163. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4164. // for more information on using Contexts.
  4165. func (c *IoT) DeleteThingWithContext(ctx aws.Context, input *DeleteThingInput, opts ...request.Option) (*DeleteThingOutput, error) {
  4166. req, out := c.DeleteThingRequest(input)
  4167. req.SetContext(ctx)
  4168. req.ApplyOptions(opts...)
  4169. return out, req.Send()
  4170. }
  4171. const opDeleteThingGroup = "DeleteThingGroup"
  4172. // DeleteThingGroupRequest generates a "aws/request.Request" representing the
  4173. // client's request for the DeleteThingGroup operation. The "output" return
  4174. // value will be populated with the request's response once the request completes
  4175. // successfully.
  4176. //
  4177. // Use "Send" method on the returned Request to send the API call to the service.
  4178. // the "output" return value is not valid until after Send returns without error.
  4179. //
  4180. // See DeleteThingGroup for more information on using the DeleteThingGroup
  4181. // API call, and error handling.
  4182. //
  4183. // This method is useful when you want to inject custom logic or configuration
  4184. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4185. //
  4186. //
  4187. // // Example sending a request using the DeleteThingGroupRequest method.
  4188. // req, resp := client.DeleteThingGroupRequest(params)
  4189. //
  4190. // err := req.Send()
  4191. // if err == nil { // resp is now filled
  4192. // fmt.Println(resp)
  4193. // }
  4194. func (c *IoT) DeleteThingGroupRequest(input *DeleteThingGroupInput) (req *request.Request, output *DeleteThingGroupOutput) {
  4195. op := &request.Operation{
  4196. Name: opDeleteThingGroup,
  4197. HTTPMethod: "DELETE",
  4198. HTTPPath: "/thing-groups/{thingGroupName}",
  4199. }
  4200. if input == nil {
  4201. input = &DeleteThingGroupInput{}
  4202. }
  4203. output = &DeleteThingGroupOutput{}
  4204. req = c.newRequest(op, input, output)
  4205. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4206. return
  4207. }
  4208. // DeleteThingGroup API operation for AWS IoT.
  4209. //
  4210. // Deletes a thing group.
  4211. //
  4212. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4213. // with awserr.Error's Code and Message methods to get detailed information about
  4214. // the error.
  4215. //
  4216. // See the AWS API reference guide for AWS IoT's
  4217. // API operation DeleteThingGroup for usage and error information.
  4218. //
  4219. // Returned Error Codes:
  4220. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4221. // The request is not valid.
  4222. //
  4223. // * ErrCodeVersionConflictException "VersionConflictException"
  4224. // An exception thrown when the version of an entity specified with the expectedVersion
  4225. // parameter does not match the latest version in the system.
  4226. //
  4227. // * ErrCodeThrottlingException "ThrottlingException"
  4228. // The rate exceeds the limit.
  4229. //
  4230. // * ErrCodeInternalFailureException "InternalFailureException"
  4231. // An unexpected error has occurred.
  4232. //
  4233. func (c *IoT) DeleteThingGroup(input *DeleteThingGroupInput) (*DeleteThingGroupOutput, error) {
  4234. req, out := c.DeleteThingGroupRequest(input)
  4235. return out, req.Send()
  4236. }
  4237. // DeleteThingGroupWithContext is the same as DeleteThingGroup with the addition of
  4238. // the ability to pass a context and additional request options.
  4239. //
  4240. // See DeleteThingGroup for details on how to use this API operation.
  4241. //
  4242. // The context must be non-nil and will be used for request cancellation. If
  4243. // the context is nil a panic will occur. In the future the SDK may create
  4244. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4245. // for more information on using Contexts.
  4246. func (c *IoT) DeleteThingGroupWithContext(ctx aws.Context, input *DeleteThingGroupInput, opts ...request.Option) (*DeleteThingGroupOutput, error) {
  4247. req, out := c.DeleteThingGroupRequest(input)
  4248. req.SetContext(ctx)
  4249. req.ApplyOptions(opts...)
  4250. return out, req.Send()
  4251. }
  4252. const opDeleteThingType = "DeleteThingType"
  4253. // DeleteThingTypeRequest generates a "aws/request.Request" representing the
  4254. // client's request for the DeleteThingType operation. The "output" return
  4255. // value will be populated with the request's response once the request completes
  4256. // successfully.
  4257. //
  4258. // Use "Send" method on the returned Request to send the API call to the service.
  4259. // the "output" return value is not valid until after Send returns without error.
  4260. //
  4261. // See DeleteThingType for more information on using the DeleteThingType
  4262. // API call, and error handling.
  4263. //
  4264. // This method is useful when you want to inject custom logic or configuration
  4265. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4266. //
  4267. //
  4268. // // Example sending a request using the DeleteThingTypeRequest method.
  4269. // req, resp := client.DeleteThingTypeRequest(params)
  4270. //
  4271. // err := req.Send()
  4272. // if err == nil { // resp is now filled
  4273. // fmt.Println(resp)
  4274. // }
  4275. func (c *IoT) DeleteThingTypeRequest(input *DeleteThingTypeInput) (req *request.Request, output *DeleteThingTypeOutput) {
  4276. op := &request.Operation{
  4277. Name: opDeleteThingType,
  4278. HTTPMethod: "DELETE",
  4279. HTTPPath: "/thing-types/{thingTypeName}",
  4280. }
  4281. if input == nil {
  4282. input = &DeleteThingTypeInput{}
  4283. }
  4284. output = &DeleteThingTypeOutput{}
  4285. req = c.newRequest(op, input, output)
  4286. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4287. return
  4288. }
  4289. // DeleteThingType API operation for AWS IoT.
  4290. //
  4291. // Deletes the specified thing type. You cannot delete a thing type if it has
  4292. // things associated with it. To delete a thing type, first mark it as deprecated
  4293. // by calling DeprecateThingType, then remove any associated things by calling
  4294. // UpdateThing to change the thing type on any associated thing, and finally
  4295. // use DeleteThingType to delete the thing type.
  4296. //
  4297. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4298. // with awserr.Error's Code and Message methods to get detailed information about
  4299. // the error.
  4300. //
  4301. // See the AWS API reference guide for AWS IoT's
  4302. // API operation DeleteThingType for usage and error information.
  4303. //
  4304. // Returned Error Codes:
  4305. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4306. // The specified resource does not exist.
  4307. //
  4308. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4309. // The request is not valid.
  4310. //
  4311. // * ErrCodeThrottlingException "ThrottlingException"
  4312. // The rate exceeds the limit.
  4313. //
  4314. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4315. // You are not authorized to perform this operation.
  4316. //
  4317. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4318. // The service is temporarily unavailable.
  4319. //
  4320. // * ErrCodeInternalFailureException "InternalFailureException"
  4321. // An unexpected error has occurred.
  4322. //
  4323. func (c *IoT) DeleteThingType(input *DeleteThingTypeInput) (*DeleteThingTypeOutput, error) {
  4324. req, out := c.DeleteThingTypeRequest(input)
  4325. return out, req.Send()
  4326. }
  4327. // DeleteThingTypeWithContext is the same as DeleteThingType with the addition of
  4328. // the ability to pass a context and additional request options.
  4329. //
  4330. // See DeleteThingType for details on how to use this API operation.
  4331. //
  4332. // The context must be non-nil and will be used for request cancellation. If
  4333. // the context is nil a panic will occur. In the future the SDK may create
  4334. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4335. // for more information on using Contexts.
  4336. func (c *IoT) DeleteThingTypeWithContext(ctx aws.Context, input *DeleteThingTypeInput, opts ...request.Option) (*DeleteThingTypeOutput, error) {
  4337. req, out := c.DeleteThingTypeRequest(input)
  4338. req.SetContext(ctx)
  4339. req.ApplyOptions(opts...)
  4340. return out, req.Send()
  4341. }
  4342. const opDeleteTopicRule = "DeleteTopicRule"
  4343. // DeleteTopicRuleRequest generates a "aws/request.Request" representing the
  4344. // client's request for the DeleteTopicRule operation. The "output" return
  4345. // value will be populated with the request's response once the request completes
  4346. // successfully.
  4347. //
  4348. // Use "Send" method on the returned Request to send the API call to the service.
  4349. // the "output" return value is not valid until after Send returns without error.
  4350. //
  4351. // See DeleteTopicRule for more information on using the DeleteTopicRule
  4352. // API call, and error handling.
  4353. //
  4354. // This method is useful when you want to inject custom logic or configuration
  4355. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4356. //
  4357. //
  4358. // // Example sending a request using the DeleteTopicRuleRequest method.
  4359. // req, resp := client.DeleteTopicRuleRequest(params)
  4360. //
  4361. // err := req.Send()
  4362. // if err == nil { // resp is now filled
  4363. // fmt.Println(resp)
  4364. // }
  4365. func (c *IoT) DeleteTopicRuleRequest(input *DeleteTopicRuleInput) (req *request.Request, output *DeleteTopicRuleOutput) {
  4366. op := &request.Operation{
  4367. Name: opDeleteTopicRule,
  4368. HTTPMethod: "DELETE",
  4369. HTTPPath: "/rules/{ruleName}",
  4370. }
  4371. if input == nil {
  4372. input = &DeleteTopicRuleInput{}
  4373. }
  4374. output = &DeleteTopicRuleOutput{}
  4375. req = c.newRequest(op, input, output)
  4376. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4377. return
  4378. }
  4379. // DeleteTopicRule API operation for AWS IoT.
  4380. //
  4381. // Deletes the rule.
  4382. //
  4383. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4384. // with awserr.Error's Code and Message methods to get detailed information about
  4385. // the error.
  4386. //
  4387. // See the AWS API reference guide for AWS IoT's
  4388. // API operation DeleteTopicRule for usage and error information.
  4389. //
  4390. // Returned Error Codes:
  4391. // * ErrCodeInternalException "InternalException"
  4392. // An unexpected error has occurred.
  4393. //
  4394. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4395. // The request is not valid.
  4396. //
  4397. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4398. // The service is temporarily unavailable.
  4399. //
  4400. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4401. // You are not authorized to perform this operation.
  4402. //
  4403. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  4404. // A conflicting resource update exception. This exception is thrown when two
  4405. // pending updates cause a conflict.
  4406. //
  4407. func (c *IoT) DeleteTopicRule(input *DeleteTopicRuleInput) (*DeleteTopicRuleOutput, error) {
  4408. req, out := c.DeleteTopicRuleRequest(input)
  4409. return out, req.Send()
  4410. }
  4411. // DeleteTopicRuleWithContext is the same as DeleteTopicRule with the addition of
  4412. // the ability to pass a context and additional request options.
  4413. //
  4414. // See DeleteTopicRule for details on how to use this API operation.
  4415. //
  4416. // The context must be non-nil and will be used for request cancellation. If
  4417. // the context is nil a panic will occur. In the future the SDK may create
  4418. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4419. // for more information on using Contexts.
  4420. func (c *IoT) DeleteTopicRuleWithContext(ctx aws.Context, input *DeleteTopicRuleInput, opts ...request.Option) (*DeleteTopicRuleOutput, error) {
  4421. req, out := c.DeleteTopicRuleRequest(input)
  4422. req.SetContext(ctx)
  4423. req.ApplyOptions(opts...)
  4424. return out, req.Send()
  4425. }
  4426. const opDeleteV2LoggingLevel = "DeleteV2LoggingLevel"
  4427. // DeleteV2LoggingLevelRequest generates a "aws/request.Request" representing the
  4428. // client's request for the DeleteV2LoggingLevel operation. The "output" return
  4429. // value will be populated with the request's response once the request completes
  4430. // successfully.
  4431. //
  4432. // Use "Send" method on the returned Request to send the API call to the service.
  4433. // the "output" return value is not valid until after Send returns without error.
  4434. //
  4435. // See DeleteV2LoggingLevel for more information on using the DeleteV2LoggingLevel
  4436. // API call, and error handling.
  4437. //
  4438. // This method is useful when you want to inject custom logic or configuration
  4439. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4440. //
  4441. //
  4442. // // Example sending a request using the DeleteV2LoggingLevelRequest method.
  4443. // req, resp := client.DeleteV2LoggingLevelRequest(params)
  4444. //
  4445. // err := req.Send()
  4446. // if err == nil { // resp is now filled
  4447. // fmt.Println(resp)
  4448. // }
  4449. func (c *IoT) DeleteV2LoggingLevelRequest(input *DeleteV2LoggingLevelInput) (req *request.Request, output *DeleteV2LoggingLevelOutput) {
  4450. op := &request.Operation{
  4451. Name: opDeleteV2LoggingLevel,
  4452. HTTPMethod: "DELETE",
  4453. HTTPPath: "/v2LoggingLevel",
  4454. }
  4455. if input == nil {
  4456. input = &DeleteV2LoggingLevelInput{}
  4457. }
  4458. output = &DeleteV2LoggingLevelOutput{}
  4459. req = c.newRequest(op, input, output)
  4460. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4461. return
  4462. }
  4463. // DeleteV2LoggingLevel API operation for AWS IoT.
  4464. //
  4465. // Deletes a logging level.
  4466. //
  4467. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4468. // with awserr.Error's Code and Message methods to get detailed information about
  4469. // the error.
  4470. //
  4471. // See the AWS API reference guide for AWS IoT's
  4472. // API operation DeleteV2LoggingLevel for usage and error information.
  4473. //
  4474. // Returned Error Codes:
  4475. // * ErrCodeInternalException "InternalException"
  4476. // An unexpected error has occurred.
  4477. //
  4478. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4479. // The request is not valid.
  4480. //
  4481. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4482. // The service is temporarily unavailable.
  4483. //
  4484. func (c *IoT) DeleteV2LoggingLevel(input *DeleteV2LoggingLevelInput) (*DeleteV2LoggingLevelOutput, error) {
  4485. req, out := c.DeleteV2LoggingLevelRequest(input)
  4486. return out, req.Send()
  4487. }
  4488. // DeleteV2LoggingLevelWithContext is the same as DeleteV2LoggingLevel with the addition of
  4489. // the ability to pass a context and additional request options.
  4490. //
  4491. // See DeleteV2LoggingLevel for details on how to use this API operation.
  4492. //
  4493. // The context must be non-nil and will be used for request cancellation. If
  4494. // the context is nil a panic will occur. In the future the SDK may create
  4495. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4496. // for more information on using Contexts.
  4497. func (c *IoT) DeleteV2LoggingLevelWithContext(ctx aws.Context, input *DeleteV2LoggingLevelInput, opts ...request.Option) (*DeleteV2LoggingLevelOutput, error) {
  4498. req, out := c.DeleteV2LoggingLevelRequest(input)
  4499. req.SetContext(ctx)
  4500. req.ApplyOptions(opts...)
  4501. return out, req.Send()
  4502. }
  4503. const opDeprecateThingType = "DeprecateThingType"
  4504. // DeprecateThingTypeRequest generates a "aws/request.Request" representing the
  4505. // client's request for the DeprecateThingType operation. The "output" return
  4506. // value will be populated with the request's response once the request completes
  4507. // successfully.
  4508. //
  4509. // Use "Send" method on the returned Request to send the API call to the service.
  4510. // the "output" return value is not valid until after Send returns without error.
  4511. //
  4512. // See DeprecateThingType for more information on using the DeprecateThingType
  4513. // API call, and error handling.
  4514. //
  4515. // This method is useful when you want to inject custom logic or configuration
  4516. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4517. //
  4518. //
  4519. // // Example sending a request using the DeprecateThingTypeRequest method.
  4520. // req, resp := client.DeprecateThingTypeRequest(params)
  4521. //
  4522. // err := req.Send()
  4523. // if err == nil { // resp is now filled
  4524. // fmt.Println(resp)
  4525. // }
  4526. func (c *IoT) DeprecateThingTypeRequest(input *DeprecateThingTypeInput) (req *request.Request, output *DeprecateThingTypeOutput) {
  4527. op := &request.Operation{
  4528. Name: opDeprecateThingType,
  4529. HTTPMethod: "POST",
  4530. HTTPPath: "/thing-types/{thingTypeName}/deprecate",
  4531. }
  4532. if input == nil {
  4533. input = &DeprecateThingTypeInput{}
  4534. }
  4535. output = &DeprecateThingTypeOutput{}
  4536. req = c.newRequest(op, input, output)
  4537. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  4538. return
  4539. }
  4540. // DeprecateThingType API operation for AWS IoT.
  4541. //
  4542. // Deprecates a thing type. You can not associate new things with deprecated
  4543. // thing type.
  4544. //
  4545. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4546. // with awserr.Error's Code and Message methods to get detailed information about
  4547. // the error.
  4548. //
  4549. // See the AWS API reference guide for AWS IoT's
  4550. // API operation DeprecateThingType for usage and error information.
  4551. //
  4552. // Returned Error Codes:
  4553. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4554. // The specified resource does not exist.
  4555. //
  4556. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4557. // The request is not valid.
  4558. //
  4559. // * ErrCodeThrottlingException "ThrottlingException"
  4560. // The rate exceeds the limit.
  4561. //
  4562. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4563. // You are not authorized to perform this operation.
  4564. //
  4565. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4566. // The service is temporarily unavailable.
  4567. //
  4568. // * ErrCodeInternalFailureException "InternalFailureException"
  4569. // An unexpected error has occurred.
  4570. //
  4571. func (c *IoT) DeprecateThingType(input *DeprecateThingTypeInput) (*DeprecateThingTypeOutput, error) {
  4572. req, out := c.DeprecateThingTypeRequest(input)
  4573. return out, req.Send()
  4574. }
  4575. // DeprecateThingTypeWithContext is the same as DeprecateThingType with the addition of
  4576. // the ability to pass a context and additional request options.
  4577. //
  4578. // See DeprecateThingType for details on how to use this API operation.
  4579. //
  4580. // The context must be non-nil and will be used for request cancellation. If
  4581. // the context is nil a panic will occur. In the future the SDK may create
  4582. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4583. // for more information on using Contexts.
  4584. func (c *IoT) DeprecateThingTypeWithContext(ctx aws.Context, input *DeprecateThingTypeInput, opts ...request.Option) (*DeprecateThingTypeOutput, error) {
  4585. req, out := c.DeprecateThingTypeRequest(input)
  4586. req.SetContext(ctx)
  4587. req.ApplyOptions(opts...)
  4588. return out, req.Send()
  4589. }
  4590. const opDescribeAccountAuditConfiguration = "DescribeAccountAuditConfiguration"
  4591. // DescribeAccountAuditConfigurationRequest generates a "aws/request.Request" representing the
  4592. // client's request for the DescribeAccountAuditConfiguration operation. The "output" return
  4593. // value will be populated with the request's response once the request completes
  4594. // successfully.
  4595. //
  4596. // Use "Send" method on the returned Request to send the API call to the service.
  4597. // the "output" return value is not valid until after Send returns without error.
  4598. //
  4599. // See DescribeAccountAuditConfiguration for more information on using the DescribeAccountAuditConfiguration
  4600. // API call, and error handling.
  4601. //
  4602. // This method is useful when you want to inject custom logic or configuration
  4603. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4604. //
  4605. //
  4606. // // Example sending a request using the DescribeAccountAuditConfigurationRequest method.
  4607. // req, resp := client.DescribeAccountAuditConfigurationRequest(params)
  4608. //
  4609. // err := req.Send()
  4610. // if err == nil { // resp is now filled
  4611. // fmt.Println(resp)
  4612. // }
  4613. func (c *IoT) DescribeAccountAuditConfigurationRequest(input *DescribeAccountAuditConfigurationInput) (req *request.Request, output *DescribeAccountAuditConfigurationOutput) {
  4614. op := &request.Operation{
  4615. Name: opDescribeAccountAuditConfiguration,
  4616. HTTPMethod: "GET",
  4617. HTTPPath: "/audit/configuration",
  4618. }
  4619. if input == nil {
  4620. input = &DescribeAccountAuditConfigurationInput{}
  4621. }
  4622. output = &DescribeAccountAuditConfigurationOutput{}
  4623. req = c.newRequest(op, input, output)
  4624. return
  4625. }
  4626. // DescribeAccountAuditConfiguration API operation for AWS IoT.
  4627. //
  4628. // Gets information about the Device Defender audit settings for this account.
  4629. // Settings include how audit notifications are sent and which audit checks
  4630. // are enabled or disabled.
  4631. //
  4632. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4633. // with awserr.Error's Code and Message methods to get detailed information about
  4634. // the error.
  4635. //
  4636. // See the AWS API reference guide for AWS IoT's
  4637. // API operation DescribeAccountAuditConfiguration for usage and error information.
  4638. //
  4639. // Returned Error Codes:
  4640. // * ErrCodeThrottlingException "ThrottlingException"
  4641. // The rate exceeds the limit.
  4642. //
  4643. // * ErrCodeInternalFailureException "InternalFailureException"
  4644. // An unexpected error has occurred.
  4645. //
  4646. func (c *IoT) DescribeAccountAuditConfiguration(input *DescribeAccountAuditConfigurationInput) (*DescribeAccountAuditConfigurationOutput, error) {
  4647. req, out := c.DescribeAccountAuditConfigurationRequest(input)
  4648. return out, req.Send()
  4649. }
  4650. // DescribeAccountAuditConfigurationWithContext is the same as DescribeAccountAuditConfiguration with the addition of
  4651. // the ability to pass a context and additional request options.
  4652. //
  4653. // See DescribeAccountAuditConfiguration for details on how to use this API operation.
  4654. //
  4655. // The context must be non-nil and will be used for request cancellation. If
  4656. // the context is nil a panic will occur. In the future the SDK may create
  4657. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4658. // for more information on using Contexts.
  4659. func (c *IoT) DescribeAccountAuditConfigurationWithContext(ctx aws.Context, input *DescribeAccountAuditConfigurationInput, opts ...request.Option) (*DescribeAccountAuditConfigurationOutput, error) {
  4660. req, out := c.DescribeAccountAuditConfigurationRequest(input)
  4661. req.SetContext(ctx)
  4662. req.ApplyOptions(opts...)
  4663. return out, req.Send()
  4664. }
  4665. const opDescribeAuditTask = "DescribeAuditTask"
  4666. // DescribeAuditTaskRequest generates a "aws/request.Request" representing the
  4667. // client's request for the DescribeAuditTask operation. The "output" return
  4668. // value will be populated with the request's response once the request completes
  4669. // successfully.
  4670. //
  4671. // Use "Send" method on the returned Request to send the API call to the service.
  4672. // the "output" return value is not valid until after Send returns without error.
  4673. //
  4674. // See DescribeAuditTask for more information on using the DescribeAuditTask
  4675. // API call, and error handling.
  4676. //
  4677. // This method is useful when you want to inject custom logic or configuration
  4678. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4679. //
  4680. //
  4681. // // Example sending a request using the DescribeAuditTaskRequest method.
  4682. // req, resp := client.DescribeAuditTaskRequest(params)
  4683. //
  4684. // err := req.Send()
  4685. // if err == nil { // resp is now filled
  4686. // fmt.Println(resp)
  4687. // }
  4688. func (c *IoT) DescribeAuditTaskRequest(input *DescribeAuditTaskInput) (req *request.Request, output *DescribeAuditTaskOutput) {
  4689. op := &request.Operation{
  4690. Name: opDescribeAuditTask,
  4691. HTTPMethod: "GET",
  4692. HTTPPath: "/audit/tasks/{taskId}",
  4693. }
  4694. if input == nil {
  4695. input = &DescribeAuditTaskInput{}
  4696. }
  4697. output = &DescribeAuditTaskOutput{}
  4698. req = c.newRequest(op, input, output)
  4699. return
  4700. }
  4701. // DescribeAuditTask API operation for AWS IoT.
  4702. //
  4703. // Gets information about a Device Defender audit.
  4704. //
  4705. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4706. // with awserr.Error's Code and Message methods to get detailed information about
  4707. // the error.
  4708. //
  4709. // See the AWS API reference guide for AWS IoT's
  4710. // API operation DescribeAuditTask for usage and error information.
  4711. //
  4712. // Returned Error Codes:
  4713. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4714. // The request is not valid.
  4715. //
  4716. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4717. // The specified resource does not exist.
  4718. //
  4719. // * ErrCodeThrottlingException "ThrottlingException"
  4720. // The rate exceeds the limit.
  4721. //
  4722. // * ErrCodeInternalFailureException "InternalFailureException"
  4723. // An unexpected error has occurred.
  4724. //
  4725. func (c *IoT) DescribeAuditTask(input *DescribeAuditTaskInput) (*DescribeAuditTaskOutput, error) {
  4726. req, out := c.DescribeAuditTaskRequest(input)
  4727. return out, req.Send()
  4728. }
  4729. // DescribeAuditTaskWithContext is the same as DescribeAuditTask with the addition of
  4730. // the ability to pass a context and additional request options.
  4731. //
  4732. // See DescribeAuditTask for details on how to use this API operation.
  4733. //
  4734. // The context must be non-nil and will be used for request cancellation. If
  4735. // the context is nil a panic will occur. In the future the SDK may create
  4736. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4737. // for more information on using Contexts.
  4738. func (c *IoT) DescribeAuditTaskWithContext(ctx aws.Context, input *DescribeAuditTaskInput, opts ...request.Option) (*DescribeAuditTaskOutput, error) {
  4739. req, out := c.DescribeAuditTaskRequest(input)
  4740. req.SetContext(ctx)
  4741. req.ApplyOptions(opts...)
  4742. return out, req.Send()
  4743. }
  4744. const opDescribeAuthorizer = "DescribeAuthorizer"
  4745. // DescribeAuthorizerRequest generates a "aws/request.Request" representing the
  4746. // client's request for the DescribeAuthorizer operation. The "output" return
  4747. // value will be populated with the request's response once the request completes
  4748. // successfully.
  4749. //
  4750. // Use "Send" method on the returned Request to send the API call to the service.
  4751. // the "output" return value is not valid until after Send returns without error.
  4752. //
  4753. // See DescribeAuthorizer for more information on using the DescribeAuthorizer
  4754. // API call, and error handling.
  4755. //
  4756. // This method is useful when you want to inject custom logic or configuration
  4757. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4758. //
  4759. //
  4760. // // Example sending a request using the DescribeAuthorizerRequest method.
  4761. // req, resp := client.DescribeAuthorizerRequest(params)
  4762. //
  4763. // err := req.Send()
  4764. // if err == nil { // resp is now filled
  4765. // fmt.Println(resp)
  4766. // }
  4767. func (c *IoT) DescribeAuthorizerRequest(input *DescribeAuthorizerInput) (req *request.Request, output *DescribeAuthorizerOutput) {
  4768. op := &request.Operation{
  4769. Name: opDescribeAuthorizer,
  4770. HTTPMethod: "GET",
  4771. HTTPPath: "/authorizer/{authorizerName}",
  4772. }
  4773. if input == nil {
  4774. input = &DescribeAuthorizerInput{}
  4775. }
  4776. output = &DescribeAuthorizerOutput{}
  4777. req = c.newRequest(op, input, output)
  4778. return
  4779. }
  4780. // DescribeAuthorizer API operation for AWS IoT.
  4781. //
  4782. // Describes an authorizer.
  4783. //
  4784. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4785. // with awserr.Error's Code and Message methods to get detailed information about
  4786. // the error.
  4787. //
  4788. // See the AWS API reference guide for AWS IoT's
  4789. // API operation DescribeAuthorizer for usage and error information.
  4790. //
  4791. // Returned Error Codes:
  4792. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4793. // The specified resource does not exist.
  4794. //
  4795. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4796. // The request is not valid.
  4797. //
  4798. // * ErrCodeThrottlingException "ThrottlingException"
  4799. // The rate exceeds the limit.
  4800. //
  4801. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4802. // You are not authorized to perform this operation.
  4803. //
  4804. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4805. // The service is temporarily unavailable.
  4806. //
  4807. // * ErrCodeInternalFailureException "InternalFailureException"
  4808. // An unexpected error has occurred.
  4809. //
  4810. func (c *IoT) DescribeAuthorizer(input *DescribeAuthorizerInput) (*DescribeAuthorizerOutput, error) {
  4811. req, out := c.DescribeAuthorizerRequest(input)
  4812. return out, req.Send()
  4813. }
  4814. // DescribeAuthorizerWithContext is the same as DescribeAuthorizer with the addition of
  4815. // the ability to pass a context and additional request options.
  4816. //
  4817. // See DescribeAuthorizer for details on how to use this API operation.
  4818. //
  4819. // The context must be non-nil and will be used for request cancellation. If
  4820. // the context is nil a panic will occur. In the future the SDK may create
  4821. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4822. // for more information on using Contexts.
  4823. func (c *IoT) DescribeAuthorizerWithContext(ctx aws.Context, input *DescribeAuthorizerInput, opts ...request.Option) (*DescribeAuthorizerOutput, error) {
  4824. req, out := c.DescribeAuthorizerRequest(input)
  4825. req.SetContext(ctx)
  4826. req.ApplyOptions(opts...)
  4827. return out, req.Send()
  4828. }
  4829. const opDescribeBillingGroup = "DescribeBillingGroup"
  4830. // DescribeBillingGroupRequest generates a "aws/request.Request" representing the
  4831. // client's request for the DescribeBillingGroup operation. The "output" return
  4832. // value will be populated with the request's response once the request completes
  4833. // successfully.
  4834. //
  4835. // Use "Send" method on the returned Request to send the API call to the service.
  4836. // the "output" return value is not valid until after Send returns without error.
  4837. //
  4838. // See DescribeBillingGroup for more information on using the DescribeBillingGroup
  4839. // API call, and error handling.
  4840. //
  4841. // This method is useful when you want to inject custom logic or configuration
  4842. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4843. //
  4844. //
  4845. // // Example sending a request using the DescribeBillingGroupRequest method.
  4846. // req, resp := client.DescribeBillingGroupRequest(params)
  4847. //
  4848. // err := req.Send()
  4849. // if err == nil { // resp is now filled
  4850. // fmt.Println(resp)
  4851. // }
  4852. func (c *IoT) DescribeBillingGroupRequest(input *DescribeBillingGroupInput) (req *request.Request, output *DescribeBillingGroupOutput) {
  4853. op := &request.Operation{
  4854. Name: opDescribeBillingGroup,
  4855. HTTPMethod: "GET",
  4856. HTTPPath: "/billing-groups/{billingGroupName}",
  4857. }
  4858. if input == nil {
  4859. input = &DescribeBillingGroupInput{}
  4860. }
  4861. output = &DescribeBillingGroupOutput{}
  4862. req = c.newRequest(op, input, output)
  4863. return
  4864. }
  4865. // DescribeBillingGroup API operation for AWS IoT.
  4866. //
  4867. // Returns information about a billing group.
  4868. //
  4869. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4870. // with awserr.Error's Code and Message methods to get detailed information about
  4871. // the error.
  4872. //
  4873. // See the AWS API reference guide for AWS IoT's
  4874. // API operation DescribeBillingGroup for usage and error information.
  4875. //
  4876. // Returned Error Codes:
  4877. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4878. // The request is not valid.
  4879. //
  4880. // * ErrCodeThrottlingException "ThrottlingException"
  4881. // The rate exceeds the limit.
  4882. //
  4883. // * ErrCodeInternalFailureException "InternalFailureException"
  4884. // An unexpected error has occurred.
  4885. //
  4886. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4887. // The specified resource does not exist.
  4888. //
  4889. func (c *IoT) DescribeBillingGroup(input *DescribeBillingGroupInput) (*DescribeBillingGroupOutput, error) {
  4890. req, out := c.DescribeBillingGroupRequest(input)
  4891. return out, req.Send()
  4892. }
  4893. // DescribeBillingGroupWithContext is the same as DescribeBillingGroup with the addition of
  4894. // the ability to pass a context and additional request options.
  4895. //
  4896. // See DescribeBillingGroup for details on how to use this API operation.
  4897. //
  4898. // The context must be non-nil and will be used for request cancellation. If
  4899. // the context is nil a panic will occur. In the future the SDK may create
  4900. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4901. // for more information on using Contexts.
  4902. func (c *IoT) DescribeBillingGroupWithContext(ctx aws.Context, input *DescribeBillingGroupInput, opts ...request.Option) (*DescribeBillingGroupOutput, error) {
  4903. req, out := c.DescribeBillingGroupRequest(input)
  4904. req.SetContext(ctx)
  4905. req.ApplyOptions(opts...)
  4906. return out, req.Send()
  4907. }
  4908. const opDescribeCACertificate = "DescribeCACertificate"
  4909. // DescribeCACertificateRequest generates a "aws/request.Request" representing the
  4910. // client's request for the DescribeCACertificate operation. The "output" return
  4911. // value will be populated with the request's response once the request completes
  4912. // successfully.
  4913. //
  4914. // Use "Send" method on the returned Request to send the API call to the service.
  4915. // the "output" return value is not valid until after Send returns without error.
  4916. //
  4917. // See DescribeCACertificate for more information on using the DescribeCACertificate
  4918. // API call, and error handling.
  4919. //
  4920. // This method is useful when you want to inject custom logic or configuration
  4921. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4922. //
  4923. //
  4924. // // Example sending a request using the DescribeCACertificateRequest method.
  4925. // req, resp := client.DescribeCACertificateRequest(params)
  4926. //
  4927. // err := req.Send()
  4928. // if err == nil { // resp is now filled
  4929. // fmt.Println(resp)
  4930. // }
  4931. func (c *IoT) DescribeCACertificateRequest(input *DescribeCACertificateInput) (req *request.Request, output *DescribeCACertificateOutput) {
  4932. op := &request.Operation{
  4933. Name: opDescribeCACertificate,
  4934. HTTPMethod: "GET",
  4935. HTTPPath: "/cacertificate/{caCertificateId}",
  4936. }
  4937. if input == nil {
  4938. input = &DescribeCACertificateInput{}
  4939. }
  4940. output = &DescribeCACertificateOutput{}
  4941. req = c.newRequest(op, input, output)
  4942. return
  4943. }
  4944. // DescribeCACertificate API operation for AWS IoT.
  4945. //
  4946. // Describes a registered CA certificate.
  4947. //
  4948. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4949. // with awserr.Error's Code and Message methods to get detailed information about
  4950. // the error.
  4951. //
  4952. // See the AWS API reference guide for AWS IoT's
  4953. // API operation DescribeCACertificate for usage and error information.
  4954. //
  4955. // Returned Error Codes:
  4956. // * ErrCodeInvalidRequestException "InvalidRequestException"
  4957. // The request is not valid.
  4958. //
  4959. // * ErrCodeThrottlingException "ThrottlingException"
  4960. // The rate exceeds the limit.
  4961. //
  4962. // * ErrCodeUnauthorizedException "UnauthorizedException"
  4963. // You are not authorized to perform this operation.
  4964. //
  4965. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  4966. // The service is temporarily unavailable.
  4967. //
  4968. // * ErrCodeInternalFailureException "InternalFailureException"
  4969. // An unexpected error has occurred.
  4970. //
  4971. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  4972. // The specified resource does not exist.
  4973. //
  4974. func (c *IoT) DescribeCACertificate(input *DescribeCACertificateInput) (*DescribeCACertificateOutput, error) {
  4975. req, out := c.DescribeCACertificateRequest(input)
  4976. return out, req.Send()
  4977. }
  4978. // DescribeCACertificateWithContext is the same as DescribeCACertificate with the addition of
  4979. // the ability to pass a context and additional request options.
  4980. //
  4981. // See DescribeCACertificate for details on how to use this API operation.
  4982. //
  4983. // The context must be non-nil and will be used for request cancellation. If
  4984. // the context is nil a panic will occur. In the future the SDK may create
  4985. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4986. // for more information on using Contexts.
  4987. func (c *IoT) DescribeCACertificateWithContext(ctx aws.Context, input *DescribeCACertificateInput, opts ...request.Option) (*DescribeCACertificateOutput, error) {
  4988. req, out := c.DescribeCACertificateRequest(input)
  4989. req.SetContext(ctx)
  4990. req.ApplyOptions(opts...)
  4991. return out, req.Send()
  4992. }
  4993. const opDescribeCertificate = "DescribeCertificate"
  4994. // DescribeCertificateRequest generates a "aws/request.Request" representing the
  4995. // client's request for the DescribeCertificate operation. The "output" return
  4996. // value will be populated with the request's response once the request completes
  4997. // successfully.
  4998. //
  4999. // Use "Send" method on the returned Request to send the API call to the service.
  5000. // the "output" return value is not valid until after Send returns without error.
  5001. //
  5002. // See DescribeCertificate for more information on using the DescribeCertificate
  5003. // API call, and error handling.
  5004. //
  5005. // This method is useful when you want to inject custom logic or configuration
  5006. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5007. //
  5008. //
  5009. // // Example sending a request using the DescribeCertificateRequest method.
  5010. // req, resp := client.DescribeCertificateRequest(params)
  5011. //
  5012. // err := req.Send()
  5013. // if err == nil { // resp is now filled
  5014. // fmt.Println(resp)
  5015. // }
  5016. func (c *IoT) DescribeCertificateRequest(input *DescribeCertificateInput) (req *request.Request, output *DescribeCertificateOutput) {
  5017. op := &request.Operation{
  5018. Name: opDescribeCertificate,
  5019. HTTPMethod: "GET",
  5020. HTTPPath: "/certificates/{certificateId}",
  5021. }
  5022. if input == nil {
  5023. input = &DescribeCertificateInput{}
  5024. }
  5025. output = &DescribeCertificateOutput{}
  5026. req = c.newRequest(op, input, output)
  5027. return
  5028. }
  5029. // DescribeCertificate API operation for AWS IoT.
  5030. //
  5031. // Gets information about the specified certificate.
  5032. //
  5033. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5034. // with awserr.Error's Code and Message methods to get detailed information about
  5035. // the error.
  5036. //
  5037. // See the AWS API reference guide for AWS IoT's
  5038. // API operation DescribeCertificate for usage and error information.
  5039. //
  5040. // Returned Error Codes:
  5041. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5042. // The request is not valid.
  5043. //
  5044. // * ErrCodeThrottlingException "ThrottlingException"
  5045. // The rate exceeds the limit.
  5046. //
  5047. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5048. // You are not authorized to perform this operation.
  5049. //
  5050. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5051. // The service is temporarily unavailable.
  5052. //
  5053. // * ErrCodeInternalFailureException "InternalFailureException"
  5054. // An unexpected error has occurred.
  5055. //
  5056. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5057. // The specified resource does not exist.
  5058. //
  5059. func (c *IoT) DescribeCertificate(input *DescribeCertificateInput) (*DescribeCertificateOutput, error) {
  5060. req, out := c.DescribeCertificateRequest(input)
  5061. return out, req.Send()
  5062. }
  5063. // DescribeCertificateWithContext is the same as DescribeCertificate with the addition of
  5064. // the ability to pass a context and additional request options.
  5065. //
  5066. // See DescribeCertificate for details on how to use this API operation.
  5067. //
  5068. // The context must be non-nil and will be used for request cancellation. If
  5069. // the context is nil a panic will occur. In the future the SDK may create
  5070. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5071. // for more information on using Contexts.
  5072. func (c *IoT) DescribeCertificateWithContext(ctx aws.Context, input *DescribeCertificateInput, opts ...request.Option) (*DescribeCertificateOutput, error) {
  5073. req, out := c.DescribeCertificateRequest(input)
  5074. req.SetContext(ctx)
  5075. req.ApplyOptions(opts...)
  5076. return out, req.Send()
  5077. }
  5078. const opDescribeDefaultAuthorizer = "DescribeDefaultAuthorizer"
  5079. // DescribeDefaultAuthorizerRequest generates a "aws/request.Request" representing the
  5080. // client's request for the DescribeDefaultAuthorizer operation. The "output" return
  5081. // value will be populated with the request's response once the request completes
  5082. // successfully.
  5083. //
  5084. // Use "Send" method on the returned Request to send the API call to the service.
  5085. // the "output" return value is not valid until after Send returns without error.
  5086. //
  5087. // See DescribeDefaultAuthorizer for more information on using the DescribeDefaultAuthorizer
  5088. // API call, and error handling.
  5089. //
  5090. // This method is useful when you want to inject custom logic or configuration
  5091. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5092. //
  5093. //
  5094. // // Example sending a request using the DescribeDefaultAuthorizerRequest method.
  5095. // req, resp := client.DescribeDefaultAuthorizerRequest(params)
  5096. //
  5097. // err := req.Send()
  5098. // if err == nil { // resp is now filled
  5099. // fmt.Println(resp)
  5100. // }
  5101. func (c *IoT) DescribeDefaultAuthorizerRequest(input *DescribeDefaultAuthorizerInput) (req *request.Request, output *DescribeDefaultAuthorizerOutput) {
  5102. op := &request.Operation{
  5103. Name: opDescribeDefaultAuthorizer,
  5104. HTTPMethod: "GET",
  5105. HTTPPath: "/default-authorizer",
  5106. }
  5107. if input == nil {
  5108. input = &DescribeDefaultAuthorizerInput{}
  5109. }
  5110. output = &DescribeDefaultAuthorizerOutput{}
  5111. req = c.newRequest(op, input, output)
  5112. return
  5113. }
  5114. // DescribeDefaultAuthorizer API operation for AWS IoT.
  5115. //
  5116. // Describes the default authorizer.
  5117. //
  5118. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5119. // with awserr.Error's Code and Message methods to get detailed information about
  5120. // the error.
  5121. //
  5122. // See the AWS API reference guide for AWS IoT's
  5123. // API operation DescribeDefaultAuthorizer for usage and error information.
  5124. //
  5125. // Returned Error Codes:
  5126. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5127. // The specified resource does not exist.
  5128. //
  5129. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5130. // The request is not valid.
  5131. //
  5132. // * ErrCodeThrottlingException "ThrottlingException"
  5133. // The rate exceeds the limit.
  5134. //
  5135. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5136. // You are not authorized to perform this operation.
  5137. //
  5138. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5139. // The service is temporarily unavailable.
  5140. //
  5141. // * ErrCodeInternalFailureException "InternalFailureException"
  5142. // An unexpected error has occurred.
  5143. //
  5144. func (c *IoT) DescribeDefaultAuthorizer(input *DescribeDefaultAuthorizerInput) (*DescribeDefaultAuthorizerOutput, error) {
  5145. req, out := c.DescribeDefaultAuthorizerRequest(input)
  5146. return out, req.Send()
  5147. }
  5148. // DescribeDefaultAuthorizerWithContext is the same as DescribeDefaultAuthorizer with the addition of
  5149. // the ability to pass a context and additional request options.
  5150. //
  5151. // See DescribeDefaultAuthorizer for details on how to use this API operation.
  5152. //
  5153. // The context must be non-nil and will be used for request cancellation. If
  5154. // the context is nil a panic will occur. In the future the SDK may create
  5155. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5156. // for more information on using Contexts.
  5157. func (c *IoT) DescribeDefaultAuthorizerWithContext(ctx aws.Context, input *DescribeDefaultAuthorizerInput, opts ...request.Option) (*DescribeDefaultAuthorizerOutput, error) {
  5158. req, out := c.DescribeDefaultAuthorizerRequest(input)
  5159. req.SetContext(ctx)
  5160. req.ApplyOptions(opts...)
  5161. return out, req.Send()
  5162. }
  5163. const opDescribeEndpoint = "DescribeEndpoint"
  5164. // DescribeEndpointRequest generates a "aws/request.Request" representing the
  5165. // client's request for the DescribeEndpoint operation. The "output" return
  5166. // value will be populated with the request's response once the request completes
  5167. // successfully.
  5168. //
  5169. // Use "Send" method on the returned Request to send the API call to the service.
  5170. // the "output" return value is not valid until after Send returns without error.
  5171. //
  5172. // See DescribeEndpoint for more information on using the DescribeEndpoint
  5173. // API call, and error handling.
  5174. //
  5175. // This method is useful when you want to inject custom logic or configuration
  5176. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5177. //
  5178. //
  5179. // // Example sending a request using the DescribeEndpointRequest method.
  5180. // req, resp := client.DescribeEndpointRequest(params)
  5181. //
  5182. // err := req.Send()
  5183. // if err == nil { // resp is now filled
  5184. // fmt.Println(resp)
  5185. // }
  5186. func (c *IoT) DescribeEndpointRequest(input *DescribeEndpointInput) (req *request.Request, output *DescribeEndpointOutput) {
  5187. op := &request.Operation{
  5188. Name: opDescribeEndpoint,
  5189. HTTPMethod: "GET",
  5190. HTTPPath: "/endpoint",
  5191. }
  5192. if input == nil {
  5193. input = &DescribeEndpointInput{}
  5194. }
  5195. output = &DescribeEndpointOutput{}
  5196. req = c.newRequest(op, input, output)
  5197. return
  5198. }
  5199. // DescribeEndpoint API operation for AWS IoT.
  5200. //
  5201. // Returns a unique endpoint specific to the AWS account making the call.
  5202. //
  5203. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5204. // with awserr.Error's Code and Message methods to get detailed information about
  5205. // the error.
  5206. //
  5207. // See the AWS API reference guide for AWS IoT's
  5208. // API operation DescribeEndpoint for usage and error information.
  5209. //
  5210. // Returned Error Codes:
  5211. // * ErrCodeInternalFailureException "InternalFailureException"
  5212. // An unexpected error has occurred.
  5213. //
  5214. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5215. // The request is not valid.
  5216. //
  5217. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5218. // You are not authorized to perform this operation.
  5219. //
  5220. // * ErrCodeThrottlingException "ThrottlingException"
  5221. // The rate exceeds the limit.
  5222. //
  5223. func (c *IoT) DescribeEndpoint(input *DescribeEndpointInput) (*DescribeEndpointOutput, error) {
  5224. req, out := c.DescribeEndpointRequest(input)
  5225. return out, req.Send()
  5226. }
  5227. // DescribeEndpointWithContext is the same as DescribeEndpoint with the addition of
  5228. // the ability to pass a context and additional request options.
  5229. //
  5230. // See DescribeEndpoint for details on how to use this API operation.
  5231. //
  5232. // The context must be non-nil and will be used for request cancellation. If
  5233. // the context is nil a panic will occur. In the future the SDK may create
  5234. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5235. // for more information on using Contexts.
  5236. func (c *IoT) DescribeEndpointWithContext(ctx aws.Context, input *DescribeEndpointInput, opts ...request.Option) (*DescribeEndpointOutput, error) {
  5237. req, out := c.DescribeEndpointRequest(input)
  5238. req.SetContext(ctx)
  5239. req.ApplyOptions(opts...)
  5240. return out, req.Send()
  5241. }
  5242. const opDescribeEventConfigurations = "DescribeEventConfigurations"
  5243. // DescribeEventConfigurationsRequest generates a "aws/request.Request" representing the
  5244. // client's request for the DescribeEventConfigurations operation. The "output" return
  5245. // value will be populated with the request's response once the request completes
  5246. // successfully.
  5247. //
  5248. // Use "Send" method on the returned Request to send the API call to the service.
  5249. // the "output" return value is not valid until after Send returns without error.
  5250. //
  5251. // See DescribeEventConfigurations for more information on using the DescribeEventConfigurations
  5252. // API call, and error handling.
  5253. //
  5254. // This method is useful when you want to inject custom logic or configuration
  5255. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5256. //
  5257. //
  5258. // // Example sending a request using the DescribeEventConfigurationsRequest method.
  5259. // req, resp := client.DescribeEventConfigurationsRequest(params)
  5260. //
  5261. // err := req.Send()
  5262. // if err == nil { // resp is now filled
  5263. // fmt.Println(resp)
  5264. // }
  5265. func (c *IoT) DescribeEventConfigurationsRequest(input *DescribeEventConfigurationsInput) (req *request.Request, output *DescribeEventConfigurationsOutput) {
  5266. op := &request.Operation{
  5267. Name: opDescribeEventConfigurations,
  5268. HTTPMethod: "GET",
  5269. HTTPPath: "/event-configurations",
  5270. }
  5271. if input == nil {
  5272. input = &DescribeEventConfigurationsInput{}
  5273. }
  5274. output = &DescribeEventConfigurationsOutput{}
  5275. req = c.newRequest(op, input, output)
  5276. return
  5277. }
  5278. // DescribeEventConfigurations API operation for AWS IoT.
  5279. //
  5280. // Describes event configurations.
  5281. //
  5282. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5283. // with awserr.Error's Code and Message methods to get detailed information about
  5284. // the error.
  5285. //
  5286. // See the AWS API reference guide for AWS IoT's
  5287. // API operation DescribeEventConfigurations for usage and error information.
  5288. //
  5289. // Returned Error Codes:
  5290. // * ErrCodeInternalFailureException "InternalFailureException"
  5291. // An unexpected error has occurred.
  5292. //
  5293. // * ErrCodeThrottlingException "ThrottlingException"
  5294. // The rate exceeds the limit.
  5295. //
  5296. func (c *IoT) DescribeEventConfigurations(input *DescribeEventConfigurationsInput) (*DescribeEventConfigurationsOutput, error) {
  5297. req, out := c.DescribeEventConfigurationsRequest(input)
  5298. return out, req.Send()
  5299. }
  5300. // DescribeEventConfigurationsWithContext is the same as DescribeEventConfigurations with the addition of
  5301. // the ability to pass a context and additional request options.
  5302. //
  5303. // See DescribeEventConfigurations for details on how to use this API operation.
  5304. //
  5305. // The context must be non-nil and will be used for request cancellation. If
  5306. // the context is nil a panic will occur. In the future the SDK may create
  5307. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5308. // for more information on using Contexts.
  5309. func (c *IoT) DescribeEventConfigurationsWithContext(ctx aws.Context, input *DescribeEventConfigurationsInput, opts ...request.Option) (*DescribeEventConfigurationsOutput, error) {
  5310. req, out := c.DescribeEventConfigurationsRequest(input)
  5311. req.SetContext(ctx)
  5312. req.ApplyOptions(opts...)
  5313. return out, req.Send()
  5314. }
  5315. const opDescribeIndex = "DescribeIndex"
  5316. // DescribeIndexRequest generates a "aws/request.Request" representing the
  5317. // client's request for the DescribeIndex operation. The "output" return
  5318. // value will be populated with the request's response once the request completes
  5319. // successfully.
  5320. //
  5321. // Use "Send" method on the returned Request to send the API call to the service.
  5322. // the "output" return value is not valid until after Send returns without error.
  5323. //
  5324. // See DescribeIndex for more information on using the DescribeIndex
  5325. // API call, and error handling.
  5326. //
  5327. // This method is useful when you want to inject custom logic or configuration
  5328. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5329. //
  5330. //
  5331. // // Example sending a request using the DescribeIndexRequest method.
  5332. // req, resp := client.DescribeIndexRequest(params)
  5333. //
  5334. // err := req.Send()
  5335. // if err == nil { // resp is now filled
  5336. // fmt.Println(resp)
  5337. // }
  5338. func (c *IoT) DescribeIndexRequest(input *DescribeIndexInput) (req *request.Request, output *DescribeIndexOutput) {
  5339. op := &request.Operation{
  5340. Name: opDescribeIndex,
  5341. HTTPMethod: "GET",
  5342. HTTPPath: "/indices/{indexName}",
  5343. }
  5344. if input == nil {
  5345. input = &DescribeIndexInput{}
  5346. }
  5347. output = &DescribeIndexOutput{}
  5348. req = c.newRequest(op, input, output)
  5349. return
  5350. }
  5351. // DescribeIndex API operation for AWS IoT.
  5352. //
  5353. // Describes a search index.
  5354. //
  5355. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5356. // with awserr.Error's Code and Message methods to get detailed information about
  5357. // the error.
  5358. //
  5359. // See the AWS API reference guide for AWS IoT's
  5360. // API operation DescribeIndex for usage and error information.
  5361. //
  5362. // Returned Error Codes:
  5363. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5364. // The request is not valid.
  5365. //
  5366. // * ErrCodeThrottlingException "ThrottlingException"
  5367. // The rate exceeds the limit.
  5368. //
  5369. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5370. // You are not authorized to perform this operation.
  5371. //
  5372. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5373. // The service is temporarily unavailable.
  5374. //
  5375. // * ErrCodeInternalFailureException "InternalFailureException"
  5376. // An unexpected error has occurred.
  5377. //
  5378. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5379. // The specified resource does not exist.
  5380. //
  5381. func (c *IoT) DescribeIndex(input *DescribeIndexInput) (*DescribeIndexOutput, error) {
  5382. req, out := c.DescribeIndexRequest(input)
  5383. return out, req.Send()
  5384. }
  5385. // DescribeIndexWithContext is the same as DescribeIndex with the addition of
  5386. // the ability to pass a context and additional request options.
  5387. //
  5388. // See DescribeIndex for details on how to use this API operation.
  5389. //
  5390. // The context must be non-nil and will be used for request cancellation. If
  5391. // the context is nil a panic will occur. In the future the SDK may create
  5392. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5393. // for more information on using Contexts.
  5394. func (c *IoT) DescribeIndexWithContext(ctx aws.Context, input *DescribeIndexInput, opts ...request.Option) (*DescribeIndexOutput, error) {
  5395. req, out := c.DescribeIndexRequest(input)
  5396. req.SetContext(ctx)
  5397. req.ApplyOptions(opts...)
  5398. return out, req.Send()
  5399. }
  5400. const opDescribeJob = "DescribeJob"
  5401. // DescribeJobRequest generates a "aws/request.Request" representing the
  5402. // client's request for the DescribeJob operation. The "output" return
  5403. // value will be populated with the request's response once the request completes
  5404. // successfully.
  5405. //
  5406. // Use "Send" method on the returned Request to send the API call to the service.
  5407. // the "output" return value is not valid until after Send returns without error.
  5408. //
  5409. // See DescribeJob for more information on using the DescribeJob
  5410. // API call, and error handling.
  5411. //
  5412. // This method is useful when you want to inject custom logic or configuration
  5413. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5414. //
  5415. //
  5416. // // Example sending a request using the DescribeJobRequest method.
  5417. // req, resp := client.DescribeJobRequest(params)
  5418. //
  5419. // err := req.Send()
  5420. // if err == nil { // resp is now filled
  5421. // fmt.Println(resp)
  5422. // }
  5423. func (c *IoT) DescribeJobRequest(input *DescribeJobInput) (req *request.Request, output *DescribeJobOutput) {
  5424. op := &request.Operation{
  5425. Name: opDescribeJob,
  5426. HTTPMethod: "GET",
  5427. HTTPPath: "/jobs/{jobId}",
  5428. }
  5429. if input == nil {
  5430. input = &DescribeJobInput{}
  5431. }
  5432. output = &DescribeJobOutput{}
  5433. req = c.newRequest(op, input, output)
  5434. return
  5435. }
  5436. // DescribeJob API operation for AWS IoT.
  5437. //
  5438. // Describes a job.
  5439. //
  5440. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5441. // with awserr.Error's Code and Message methods to get detailed information about
  5442. // the error.
  5443. //
  5444. // See the AWS API reference guide for AWS IoT's
  5445. // API operation DescribeJob for usage and error information.
  5446. //
  5447. // Returned Error Codes:
  5448. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5449. // The request is not valid.
  5450. //
  5451. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5452. // The specified resource does not exist.
  5453. //
  5454. // * ErrCodeThrottlingException "ThrottlingException"
  5455. // The rate exceeds the limit.
  5456. //
  5457. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5458. // The service is temporarily unavailable.
  5459. //
  5460. func (c *IoT) DescribeJob(input *DescribeJobInput) (*DescribeJobOutput, error) {
  5461. req, out := c.DescribeJobRequest(input)
  5462. return out, req.Send()
  5463. }
  5464. // DescribeJobWithContext is the same as DescribeJob with the addition of
  5465. // the ability to pass a context and additional request options.
  5466. //
  5467. // See DescribeJob for details on how to use this API operation.
  5468. //
  5469. // The context must be non-nil and will be used for request cancellation. If
  5470. // the context is nil a panic will occur. In the future the SDK may create
  5471. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5472. // for more information on using Contexts.
  5473. func (c *IoT) DescribeJobWithContext(ctx aws.Context, input *DescribeJobInput, opts ...request.Option) (*DescribeJobOutput, error) {
  5474. req, out := c.DescribeJobRequest(input)
  5475. req.SetContext(ctx)
  5476. req.ApplyOptions(opts...)
  5477. return out, req.Send()
  5478. }
  5479. const opDescribeJobExecution = "DescribeJobExecution"
  5480. // DescribeJobExecutionRequest generates a "aws/request.Request" representing the
  5481. // client's request for the DescribeJobExecution operation. The "output" return
  5482. // value will be populated with the request's response once the request completes
  5483. // successfully.
  5484. //
  5485. // Use "Send" method on the returned Request to send the API call to the service.
  5486. // the "output" return value is not valid until after Send returns without error.
  5487. //
  5488. // See DescribeJobExecution for more information on using the DescribeJobExecution
  5489. // API call, and error handling.
  5490. //
  5491. // This method is useful when you want to inject custom logic or configuration
  5492. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5493. //
  5494. //
  5495. // // Example sending a request using the DescribeJobExecutionRequest method.
  5496. // req, resp := client.DescribeJobExecutionRequest(params)
  5497. //
  5498. // err := req.Send()
  5499. // if err == nil { // resp is now filled
  5500. // fmt.Println(resp)
  5501. // }
  5502. func (c *IoT) DescribeJobExecutionRequest(input *DescribeJobExecutionInput) (req *request.Request, output *DescribeJobExecutionOutput) {
  5503. op := &request.Operation{
  5504. Name: opDescribeJobExecution,
  5505. HTTPMethod: "GET",
  5506. HTTPPath: "/things/{thingName}/jobs/{jobId}",
  5507. }
  5508. if input == nil {
  5509. input = &DescribeJobExecutionInput{}
  5510. }
  5511. output = &DescribeJobExecutionOutput{}
  5512. req = c.newRequest(op, input, output)
  5513. return
  5514. }
  5515. // DescribeJobExecution API operation for AWS IoT.
  5516. //
  5517. // Describes a job execution.
  5518. //
  5519. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5520. // with awserr.Error's Code and Message methods to get detailed information about
  5521. // the error.
  5522. //
  5523. // See the AWS API reference guide for AWS IoT's
  5524. // API operation DescribeJobExecution for usage and error information.
  5525. //
  5526. // Returned Error Codes:
  5527. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5528. // The request is not valid.
  5529. //
  5530. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5531. // The specified resource does not exist.
  5532. //
  5533. // * ErrCodeThrottlingException "ThrottlingException"
  5534. // The rate exceeds the limit.
  5535. //
  5536. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5537. // The service is temporarily unavailable.
  5538. //
  5539. func (c *IoT) DescribeJobExecution(input *DescribeJobExecutionInput) (*DescribeJobExecutionOutput, error) {
  5540. req, out := c.DescribeJobExecutionRequest(input)
  5541. return out, req.Send()
  5542. }
  5543. // DescribeJobExecutionWithContext is the same as DescribeJobExecution with the addition of
  5544. // the ability to pass a context and additional request options.
  5545. //
  5546. // See DescribeJobExecution for details on how to use this API operation.
  5547. //
  5548. // The context must be non-nil and will be used for request cancellation. If
  5549. // the context is nil a panic will occur. In the future the SDK may create
  5550. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5551. // for more information on using Contexts.
  5552. func (c *IoT) DescribeJobExecutionWithContext(ctx aws.Context, input *DescribeJobExecutionInput, opts ...request.Option) (*DescribeJobExecutionOutput, error) {
  5553. req, out := c.DescribeJobExecutionRequest(input)
  5554. req.SetContext(ctx)
  5555. req.ApplyOptions(opts...)
  5556. return out, req.Send()
  5557. }
  5558. const opDescribeRoleAlias = "DescribeRoleAlias"
  5559. // DescribeRoleAliasRequest generates a "aws/request.Request" representing the
  5560. // client's request for the DescribeRoleAlias operation. The "output" return
  5561. // value will be populated with the request's response once the request completes
  5562. // successfully.
  5563. //
  5564. // Use "Send" method on the returned Request to send the API call to the service.
  5565. // the "output" return value is not valid until after Send returns without error.
  5566. //
  5567. // See DescribeRoleAlias for more information on using the DescribeRoleAlias
  5568. // API call, and error handling.
  5569. //
  5570. // This method is useful when you want to inject custom logic or configuration
  5571. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5572. //
  5573. //
  5574. // // Example sending a request using the DescribeRoleAliasRequest method.
  5575. // req, resp := client.DescribeRoleAliasRequest(params)
  5576. //
  5577. // err := req.Send()
  5578. // if err == nil { // resp is now filled
  5579. // fmt.Println(resp)
  5580. // }
  5581. func (c *IoT) DescribeRoleAliasRequest(input *DescribeRoleAliasInput) (req *request.Request, output *DescribeRoleAliasOutput) {
  5582. op := &request.Operation{
  5583. Name: opDescribeRoleAlias,
  5584. HTTPMethod: "GET",
  5585. HTTPPath: "/role-aliases/{roleAlias}",
  5586. }
  5587. if input == nil {
  5588. input = &DescribeRoleAliasInput{}
  5589. }
  5590. output = &DescribeRoleAliasOutput{}
  5591. req = c.newRequest(op, input, output)
  5592. return
  5593. }
  5594. // DescribeRoleAlias API operation for AWS IoT.
  5595. //
  5596. // Describes a role alias.
  5597. //
  5598. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5599. // with awserr.Error's Code and Message methods to get detailed information about
  5600. // the error.
  5601. //
  5602. // See the AWS API reference guide for AWS IoT's
  5603. // API operation DescribeRoleAlias for usage and error information.
  5604. //
  5605. // Returned Error Codes:
  5606. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5607. // The request is not valid.
  5608. //
  5609. // * ErrCodeThrottlingException "ThrottlingException"
  5610. // The rate exceeds the limit.
  5611. //
  5612. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5613. // You are not authorized to perform this operation.
  5614. //
  5615. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5616. // The service is temporarily unavailable.
  5617. //
  5618. // * ErrCodeInternalFailureException "InternalFailureException"
  5619. // An unexpected error has occurred.
  5620. //
  5621. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5622. // The specified resource does not exist.
  5623. //
  5624. func (c *IoT) DescribeRoleAlias(input *DescribeRoleAliasInput) (*DescribeRoleAliasOutput, error) {
  5625. req, out := c.DescribeRoleAliasRequest(input)
  5626. return out, req.Send()
  5627. }
  5628. // DescribeRoleAliasWithContext is the same as DescribeRoleAlias with the addition of
  5629. // the ability to pass a context and additional request options.
  5630. //
  5631. // See DescribeRoleAlias for details on how to use this API operation.
  5632. //
  5633. // The context must be non-nil and will be used for request cancellation. If
  5634. // the context is nil a panic will occur. In the future the SDK may create
  5635. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5636. // for more information on using Contexts.
  5637. func (c *IoT) DescribeRoleAliasWithContext(ctx aws.Context, input *DescribeRoleAliasInput, opts ...request.Option) (*DescribeRoleAliasOutput, error) {
  5638. req, out := c.DescribeRoleAliasRequest(input)
  5639. req.SetContext(ctx)
  5640. req.ApplyOptions(opts...)
  5641. return out, req.Send()
  5642. }
  5643. const opDescribeScheduledAudit = "DescribeScheduledAudit"
  5644. // DescribeScheduledAuditRequest generates a "aws/request.Request" representing the
  5645. // client's request for the DescribeScheduledAudit operation. The "output" return
  5646. // value will be populated with the request's response once the request completes
  5647. // successfully.
  5648. //
  5649. // Use "Send" method on the returned Request to send the API call to the service.
  5650. // the "output" return value is not valid until after Send returns without error.
  5651. //
  5652. // See DescribeScheduledAudit for more information on using the DescribeScheduledAudit
  5653. // API call, and error handling.
  5654. //
  5655. // This method is useful when you want to inject custom logic or configuration
  5656. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5657. //
  5658. //
  5659. // // Example sending a request using the DescribeScheduledAuditRequest method.
  5660. // req, resp := client.DescribeScheduledAuditRequest(params)
  5661. //
  5662. // err := req.Send()
  5663. // if err == nil { // resp is now filled
  5664. // fmt.Println(resp)
  5665. // }
  5666. func (c *IoT) DescribeScheduledAuditRequest(input *DescribeScheduledAuditInput) (req *request.Request, output *DescribeScheduledAuditOutput) {
  5667. op := &request.Operation{
  5668. Name: opDescribeScheduledAudit,
  5669. HTTPMethod: "GET",
  5670. HTTPPath: "/audit/scheduledaudits/{scheduledAuditName}",
  5671. }
  5672. if input == nil {
  5673. input = &DescribeScheduledAuditInput{}
  5674. }
  5675. output = &DescribeScheduledAuditOutput{}
  5676. req = c.newRequest(op, input, output)
  5677. return
  5678. }
  5679. // DescribeScheduledAudit API operation for AWS IoT.
  5680. //
  5681. // Gets information about a scheduled audit.
  5682. //
  5683. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5684. // with awserr.Error's Code and Message methods to get detailed information about
  5685. // the error.
  5686. //
  5687. // See the AWS API reference guide for AWS IoT's
  5688. // API operation DescribeScheduledAudit for usage and error information.
  5689. //
  5690. // Returned Error Codes:
  5691. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5692. // The request is not valid.
  5693. //
  5694. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5695. // The specified resource does not exist.
  5696. //
  5697. // * ErrCodeThrottlingException "ThrottlingException"
  5698. // The rate exceeds the limit.
  5699. //
  5700. // * ErrCodeInternalFailureException "InternalFailureException"
  5701. // An unexpected error has occurred.
  5702. //
  5703. func (c *IoT) DescribeScheduledAudit(input *DescribeScheduledAuditInput) (*DescribeScheduledAuditOutput, error) {
  5704. req, out := c.DescribeScheduledAuditRequest(input)
  5705. return out, req.Send()
  5706. }
  5707. // DescribeScheduledAuditWithContext is the same as DescribeScheduledAudit with the addition of
  5708. // the ability to pass a context and additional request options.
  5709. //
  5710. // See DescribeScheduledAudit for details on how to use this API operation.
  5711. //
  5712. // The context must be non-nil and will be used for request cancellation. If
  5713. // the context is nil a panic will occur. In the future the SDK may create
  5714. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5715. // for more information on using Contexts.
  5716. func (c *IoT) DescribeScheduledAuditWithContext(ctx aws.Context, input *DescribeScheduledAuditInput, opts ...request.Option) (*DescribeScheduledAuditOutput, error) {
  5717. req, out := c.DescribeScheduledAuditRequest(input)
  5718. req.SetContext(ctx)
  5719. req.ApplyOptions(opts...)
  5720. return out, req.Send()
  5721. }
  5722. const opDescribeSecurityProfile = "DescribeSecurityProfile"
  5723. // DescribeSecurityProfileRequest generates a "aws/request.Request" representing the
  5724. // client's request for the DescribeSecurityProfile operation. The "output" return
  5725. // value will be populated with the request's response once the request completes
  5726. // successfully.
  5727. //
  5728. // Use "Send" method on the returned Request to send the API call to the service.
  5729. // the "output" return value is not valid until after Send returns without error.
  5730. //
  5731. // See DescribeSecurityProfile for more information on using the DescribeSecurityProfile
  5732. // API call, and error handling.
  5733. //
  5734. // This method is useful when you want to inject custom logic or configuration
  5735. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5736. //
  5737. //
  5738. // // Example sending a request using the DescribeSecurityProfileRequest method.
  5739. // req, resp := client.DescribeSecurityProfileRequest(params)
  5740. //
  5741. // err := req.Send()
  5742. // if err == nil { // resp is now filled
  5743. // fmt.Println(resp)
  5744. // }
  5745. func (c *IoT) DescribeSecurityProfileRequest(input *DescribeSecurityProfileInput) (req *request.Request, output *DescribeSecurityProfileOutput) {
  5746. op := &request.Operation{
  5747. Name: opDescribeSecurityProfile,
  5748. HTTPMethod: "GET",
  5749. HTTPPath: "/security-profiles/{securityProfileName}",
  5750. }
  5751. if input == nil {
  5752. input = &DescribeSecurityProfileInput{}
  5753. }
  5754. output = &DescribeSecurityProfileOutput{}
  5755. req = c.newRequest(op, input, output)
  5756. return
  5757. }
  5758. // DescribeSecurityProfile API operation for AWS IoT.
  5759. //
  5760. // Gets information about a Device Defender security profile.
  5761. //
  5762. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5763. // with awserr.Error's Code and Message methods to get detailed information about
  5764. // the error.
  5765. //
  5766. // See the AWS API reference guide for AWS IoT's
  5767. // API operation DescribeSecurityProfile for usage and error information.
  5768. //
  5769. // Returned Error Codes:
  5770. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5771. // The request is not valid.
  5772. //
  5773. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5774. // The specified resource does not exist.
  5775. //
  5776. // * ErrCodeThrottlingException "ThrottlingException"
  5777. // The rate exceeds the limit.
  5778. //
  5779. // * ErrCodeInternalFailureException "InternalFailureException"
  5780. // An unexpected error has occurred.
  5781. //
  5782. func (c *IoT) DescribeSecurityProfile(input *DescribeSecurityProfileInput) (*DescribeSecurityProfileOutput, error) {
  5783. req, out := c.DescribeSecurityProfileRequest(input)
  5784. return out, req.Send()
  5785. }
  5786. // DescribeSecurityProfileWithContext is the same as DescribeSecurityProfile with the addition of
  5787. // the ability to pass a context and additional request options.
  5788. //
  5789. // See DescribeSecurityProfile for details on how to use this API operation.
  5790. //
  5791. // The context must be non-nil and will be used for request cancellation. If
  5792. // the context is nil a panic will occur. In the future the SDK may create
  5793. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5794. // for more information on using Contexts.
  5795. func (c *IoT) DescribeSecurityProfileWithContext(ctx aws.Context, input *DescribeSecurityProfileInput, opts ...request.Option) (*DescribeSecurityProfileOutput, error) {
  5796. req, out := c.DescribeSecurityProfileRequest(input)
  5797. req.SetContext(ctx)
  5798. req.ApplyOptions(opts...)
  5799. return out, req.Send()
  5800. }
  5801. const opDescribeStream = "DescribeStream"
  5802. // DescribeStreamRequest generates a "aws/request.Request" representing the
  5803. // client's request for the DescribeStream operation. The "output" return
  5804. // value will be populated with the request's response once the request completes
  5805. // successfully.
  5806. //
  5807. // Use "Send" method on the returned Request to send the API call to the service.
  5808. // the "output" return value is not valid until after Send returns without error.
  5809. //
  5810. // See DescribeStream for more information on using the DescribeStream
  5811. // API call, and error handling.
  5812. //
  5813. // This method is useful when you want to inject custom logic or configuration
  5814. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5815. //
  5816. //
  5817. // // Example sending a request using the DescribeStreamRequest method.
  5818. // req, resp := client.DescribeStreamRequest(params)
  5819. //
  5820. // err := req.Send()
  5821. // if err == nil { // resp is now filled
  5822. // fmt.Println(resp)
  5823. // }
  5824. func (c *IoT) DescribeStreamRequest(input *DescribeStreamInput) (req *request.Request, output *DescribeStreamOutput) {
  5825. op := &request.Operation{
  5826. Name: opDescribeStream,
  5827. HTTPMethod: "GET",
  5828. HTTPPath: "/streams/{streamId}",
  5829. }
  5830. if input == nil {
  5831. input = &DescribeStreamInput{}
  5832. }
  5833. output = &DescribeStreamOutput{}
  5834. req = c.newRequest(op, input, output)
  5835. return
  5836. }
  5837. // DescribeStream API operation for AWS IoT.
  5838. //
  5839. // Gets information about a stream.
  5840. //
  5841. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5842. // with awserr.Error's Code and Message methods to get detailed information about
  5843. // the error.
  5844. //
  5845. // See the AWS API reference guide for AWS IoT's
  5846. // API operation DescribeStream for usage and error information.
  5847. //
  5848. // Returned Error Codes:
  5849. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5850. // The request is not valid.
  5851. //
  5852. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5853. // The specified resource does not exist.
  5854. //
  5855. // * ErrCodeThrottlingException "ThrottlingException"
  5856. // The rate exceeds the limit.
  5857. //
  5858. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5859. // You are not authorized to perform this operation.
  5860. //
  5861. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5862. // The service is temporarily unavailable.
  5863. //
  5864. // * ErrCodeInternalFailureException "InternalFailureException"
  5865. // An unexpected error has occurred.
  5866. //
  5867. func (c *IoT) DescribeStream(input *DescribeStreamInput) (*DescribeStreamOutput, error) {
  5868. req, out := c.DescribeStreamRequest(input)
  5869. return out, req.Send()
  5870. }
  5871. // DescribeStreamWithContext is the same as DescribeStream with the addition of
  5872. // the ability to pass a context and additional request options.
  5873. //
  5874. // See DescribeStream for details on how to use this API operation.
  5875. //
  5876. // The context must be non-nil and will be used for request cancellation. If
  5877. // the context is nil a panic will occur. In the future the SDK may create
  5878. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5879. // for more information on using Contexts.
  5880. func (c *IoT) DescribeStreamWithContext(ctx aws.Context, input *DescribeStreamInput, opts ...request.Option) (*DescribeStreamOutput, error) {
  5881. req, out := c.DescribeStreamRequest(input)
  5882. req.SetContext(ctx)
  5883. req.ApplyOptions(opts...)
  5884. return out, req.Send()
  5885. }
  5886. const opDescribeThing = "DescribeThing"
  5887. // DescribeThingRequest generates a "aws/request.Request" representing the
  5888. // client's request for the DescribeThing operation. The "output" return
  5889. // value will be populated with the request's response once the request completes
  5890. // successfully.
  5891. //
  5892. // Use "Send" method on the returned Request to send the API call to the service.
  5893. // the "output" return value is not valid until after Send returns without error.
  5894. //
  5895. // See DescribeThing for more information on using the DescribeThing
  5896. // API call, and error handling.
  5897. //
  5898. // This method is useful when you want to inject custom logic or configuration
  5899. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5900. //
  5901. //
  5902. // // Example sending a request using the DescribeThingRequest method.
  5903. // req, resp := client.DescribeThingRequest(params)
  5904. //
  5905. // err := req.Send()
  5906. // if err == nil { // resp is now filled
  5907. // fmt.Println(resp)
  5908. // }
  5909. func (c *IoT) DescribeThingRequest(input *DescribeThingInput) (req *request.Request, output *DescribeThingOutput) {
  5910. op := &request.Operation{
  5911. Name: opDescribeThing,
  5912. HTTPMethod: "GET",
  5913. HTTPPath: "/things/{thingName}",
  5914. }
  5915. if input == nil {
  5916. input = &DescribeThingInput{}
  5917. }
  5918. output = &DescribeThingOutput{}
  5919. req = c.newRequest(op, input, output)
  5920. return
  5921. }
  5922. // DescribeThing API operation for AWS IoT.
  5923. //
  5924. // Gets information about the specified thing.
  5925. //
  5926. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5927. // with awserr.Error's Code and Message methods to get detailed information about
  5928. // the error.
  5929. //
  5930. // See the AWS API reference guide for AWS IoT's
  5931. // API operation DescribeThing for usage and error information.
  5932. //
  5933. // Returned Error Codes:
  5934. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  5935. // The specified resource does not exist.
  5936. //
  5937. // * ErrCodeInvalidRequestException "InvalidRequestException"
  5938. // The request is not valid.
  5939. //
  5940. // * ErrCodeThrottlingException "ThrottlingException"
  5941. // The rate exceeds the limit.
  5942. //
  5943. // * ErrCodeUnauthorizedException "UnauthorizedException"
  5944. // You are not authorized to perform this operation.
  5945. //
  5946. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  5947. // The service is temporarily unavailable.
  5948. //
  5949. // * ErrCodeInternalFailureException "InternalFailureException"
  5950. // An unexpected error has occurred.
  5951. //
  5952. func (c *IoT) DescribeThing(input *DescribeThingInput) (*DescribeThingOutput, error) {
  5953. req, out := c.DescribeThingRequest(input)
  5954. return out, req.Send()
  5955. }
  5956. // DescribeThingWithContext is the same as DescribeThing with the addition of
  5957. // the ability to pass a context and additional request options.
  5958. //
  5959. // See DescribeThing for details on how to use this API operation.
  5960. //
  5961. // The context must be non-nil and will be used for request cancellation. If
  5962. // the context is nil a panic will occur. In the future the SDK may create
  5963. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5964. // for more information on using Contexts.
  5965. func (c *IoT) DescribeThingWithContext(ctx aws.Context, input *DescribeThingInput, opts ...request.Option) (*DescribeThingOutput, error) {
  5966. req, out := c.DescribeThingRequest(input)
  5967. req.SetContext(ctx)
  5968. req.ApplyOptions(opts...)
  5969. return out, req.Send()
  5970. }
  5971. const opDescribeThingGroup = "DescribeThingGroup"
  5972. // DescribeThingGroupRequest generates a "aws/request.Request" representing the
  5973. // client's request for the DescribeThingGroup operation. The "output" return
  5974. // value will be populated with the request's response once the request completes
  5975. // successfully.
  5976. //
  5977. // Use "Send" method on the returned Request to send the API call to the service.
  5978. // the "output" return value is not valid until after Send returns without error.
  5979. //
  5980. // See DescribeThingGroup for more information on using the DescribeThingGroup
  5981. // API call, and error handling.
  5982. //
  5983. // This method is useful when you want to inject custom logic or configuration
  5984. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5985. //
  5986. //
  5987. // // Example sending a request using the DescribeThingGroupRequest method.
  5988. // req, resp := client.DescribeThingGroupRequest(params)
  5989. //
  5990. // err := req.Send()
  5991. // if err == nil { // resp is now filled
  5992. // fmt.Println(resp)
  5993. // }
  5994. func (c *IoT) DescribeThingGroupRequest(input *DescribeThingGroupInput) (req *request.Request, output *DescribeThingGroupOutput) {
  5995. op := &request.Operation{
  5996. Name: opDescribeThingGroup,
  5997. HTTPMethod: "GET",
  5998. HTTPPath: "/thing-groups/{thingGroupName}",
  5999. }
  6000. if input == nil {
  6001. input = &DescribeThingGroupInput{}
  6002. }
  6003. output = &DescribeThingGroupOutput{}
  6004. req = c.newRequest(op, input, output)
  6005. return
  6006. }
  6007. // DescribeThingGroup API operation for AWS IoT.
  6008. //
  6009. // Describe a thing group.
  6010. //
  6011. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6012. // with awserr.Error's Code and Message methods to get detailed information about
  6013. // the error.
  6014. //
  6015. // See the AWS API reference guide for AWS IoT's
  6016. // API operation DescribeThingGroup for usage and error information.
  6017. //
  6018. // Returned Error Codes:
  6019. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6020. // The request is not valid.
  6021. //
  6022. // * ErrCodeThrottlingException "ThrottlingException"
  6023. // The rate exceeds the limit.
  6024. //
  6025. // * ErrCodeInternalFailureException "InternalFailureException"
  6026. // An unexpected error has occurred.
  6027. //
  6028. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6029. // The specified resource does not exist.
  6030. //
  6031. func (c *IoT) DescribeThingGroup(input *DescribeThingGroupInput) (*DescribeThingGroupOutput, error) {
  6032. req, out := c.DescribeThingGroupRequest(input)
  6033. return out, req.Send()
  6034. }
  6035. // DescribeThingGroupWithContext is the same as DescribeThingGroup with the addition of
  6036. // the ability to pass a context and additional request options.
  6037. //
  6038. // See DescribeThingGroup for details on how to use this API operation.
  6039. //
  6040. // The context must be non-nil and will be used for request cancellation. If
  6041. // the context is nil a panic will occur. In the future the SDK may create
  6042. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6043. // for more information on using Contexts.
  6044. func (c *IoT) DescribeThingGroupWithContext(ctx aws.Context, input *DescribeThingGroupInput, opts ...request.Option) (*DescribeThingGroupOutput, error) {
  6045. req, out := c.DescribeThingGroupRequest(input)
  6046. req.SetContext(ctx)
  6047. req.ApplyOptions(opts...)
  6048. return out, req.Send()
  6049. }
  6050. const opDescribeThingRegistrationTask = "DescribeThingRegistrationTask"
  6051. // DescribeThingRegistrationTaskRequest generates a "aws/request.Request" representing the
  6052. // client's request for the DescribeThingRegistrationTask operation. The "output" return
  6053. // value will be populated with the request's response once the request completes
  6054. // successfully.
  6055. //
  6056. // Use "Send" method on the returned Request to send the API call to the service.
  6057. // the "output" return value is not valid until after Send returns without error.
  6058. //
  6059. // See DescribeThingRegistrationTask for more information on using the DescribeThingRegistrationTask
  6060. // API call, and error handling.
  6061. //
  6062. // This method is useful when you want to inject custom logic or configuration
  6063. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6064. //
  6065. //
  6066. // // Example sending a request using the DescribeThingRegistrationTaskRequest method.
  6067. // req, resp := client.DescribeThingRegistrationTaskRequest(params)
  6068. //
  6069. // err := req.Send()
  6070. // if err == nil { // resp is now filled
  6071. // fmt.Println(resp)
  6072. // }
  6073. func (c *IoT) DescribeThingRegistrationTaskRequest(input *DescribeThingRegistrationTaskInput) (req *request.Request, output *DescribeThingRegistrationTaskOutput) {
  6074. op := &request.Operation{
  6075. Name: opDescribeThingRegistrationTask,
  6076. HTTPMethod: "GET",
  6077. HTTPPath: "/thing-registration-tasks/{taskId}",
  6078. }
  6079. if input == nil {
  6080. input = &DescribeThingRegistrationTaskInput{}
  6081. }
  6082. output = &DescribeThingRegistrationTaskOutput{}
  6083. req = c.newRequest(op, input, output)
  6084. return
  6085. }
  6086. // DescribeThingRegistrationTask API operation for AWS IoT.
  6087. //
  6088. // Describes a bulk thing provisioning task.
  6089. //
  6090. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6091. // with awserr.Error's Code and Message methods to get detailed information about
  6092. // the error.
  6093. //
  6094. // See the AWS API reference guide for AWS IoT's
  6095. // API operation DescribeThingRegistrationTask for usage and error information.
  6096. //
  6097. // Returned Error Codes:
  6098. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6099. // The request is not valid.
  6100. //
  6101. // * ErrCodeThrottlingException "ThrottlingException"
  6102. // The rate exceeds the limit.
  6103. //
  6104. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6105. // You are not authorized to perform this operation.
  6106. //
  6107. // * ErrCodeInternalFailureException "InternalFailureException"
  6108. // An unexpected error has occurred.
  6109. //
  6110. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6111. // The specified resource does not exist.
  6112. //
  6113. func (c *IoT) DescribeThingRegistrationTask(input *DescribeThingRegistrationTaskInput) (*DescribeThingRegistrationTaskOutput, error) {
  6114. req, out := c.DescribeThingRegistrationTaskRequest(input)
  6115. return out, req.Send()
  6116. }
  6117. // DescribeThingRegistrationTaskWithContext is the same as DescribeThingRegistrationTask with the addition of
  6118. // the ability to pass a context and additional request options.
  6119. //
  6120. // See DescribeThingRegistrationTask for details on how to use this API operation.
  6121. //
  6122. // The context must be non-nil and will be used for request cancellation. If
  6123. // the context is nil a panic will occur. In the future the SDK may create
  6124. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6125. // for more information on using Contexts.
  6126. func (c *IoT) DescribeThingRegistrationTaskWithContext(ctx aws.Context, input *DescribeThingRegistrationTaskInput, opts ...request.Option) (*DescribeThingRegistrationTaskOutput, error) {
  6127. req, out := c.DescribeThingRegistrationTaskRequest(input)
  6128. req.SetContext(ctx)
  6129. req.ApplyOptions(opts...)
  6130. return out, req.Send()
  6131. }
  6132. const opDescribeThingType = "DescribeThingType"
  6133. // DescribeThingTypeRequest generates a "aws/request.Request" representing the
  6134. // client's request for the DescribeThingType operation. The "output" return
  6135. // value will be populated with the request's response once the request completes
  6136. // successfully.
  6137. //
  6138. // Use "Send" method on the returned Request to send the API call to the service.
  6139. // the "output" return value is not valid until after Send returns without error.
  6140. //
  6141. // See DescribeThingType for more information on using the DescribeThingType
  6142. // API call, and error handling.
  6143. //
  6144. // This method is useful when you want to inject custom logic or configuration
  6145. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6146. //
  6147. //
  6148. // // Example sending a request using the DescribeThingTypeRequest method.
  6149. // req, resp := client.DescribeThingTypeRequest(params)
  6150. //
  6151. // err := req.Send()
  6152. // if err == nil { // resp is now filled
  6153. // fmt.Println(resp)
  6154. // }
  6155. func (c *IoT) DescribeThingTypeRequest(input *DescribeThingTypeInput) (req *request.Request, output *DescribeThingTypeOutput) {
  6156. op := &request.Operation{
  6157. Name: opDescribeThingType,
  6158. HTTPMethod: "GET",
  6159. HTTPPath: "/thing-types/{thingTypeName}",
  6160. }
  6161. if input == nil {
  6162. input = &DescribeThingTypeInput{}
  6163. }
  6164. output = &DescribeThingTypeOutput{}
  6165. req = c.newRequest(op, input, output)
  6166. return
  6167. }
  6168. // DescribeThingType API operation for AWS IoT.
  6169. //
  6170. // Gets information about the specified thing type.
  6171. //
  6172. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6173. // with awserr.Error's Code and Message methods to get detailed information about
  6174. // the error.
  6175. //
  6176. // See the AWS API reference guide for AWS IoT's
  6177. // API operation DescribeThingType for usage and error information.
  6178. //
  6179. // Returned Error Codes:
  6180. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6181. // The specified resource does not exist.
  6182. //
  6183. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6184. // The request is not valid.
  6185. //
  6186. // * ErrCodeThrottlingException "ThrottlingException"
  6187. // The rate exceeds the limit.
  6188. //
  6189. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6190. // You are not authorized to perform this operation.
  6191. //
  6192. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6193. // The service is temporarily unavailable.
  6194. //
  6195. // * ErrCodeInternalFailureException "InternalFailureException"
  6196. // An unexpected error has occurred.
  6197. //
  6198. func (c *IoT) DescribeThingType(input *DescribeThingTypeInput) (*DescribeThingTypeOutput, error) {
  6199. req, out := c.DescribeThingTypeRequest(input)
  6200. return out, req.Send()
  6201. }
  6202. // DescribeThingTypeWithContext is the same as DescribeThingType with the addition of
  6203. // the ability to pass a context and additional request options.
  6204. //
  6205. // See DescribeThingType for details on how to use this API operation.
  6206. //
  6207. // The context must be non-nil and will be used for request cancellation. If
  6208. // the context is nil a panic will occur. In the future the SDK may create
  6209. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6210. // for more information on using Contexts.
  6211. func (c *IoT) DescribeThingTypeWithContext(ctx aws.Context, input *DescribeThingTypeInput, opts ...request.Option) (*DescribeThingTypeOutput, error) {
  6212. req, out := c.DescribeThingTypeRequest(input)
  6213. req.SetContext(ctx)
  6214. req.ApplyOptions(opts...)
  6215. return out, req.Send()
  6216. }
  6217. const opDetachPolicy = "DetachPolicy"
  6218. // DetachPolicyRequest generates a "aws/request.Request" representing the
  6219. // client's request for the DetachPolicy operation. The "output" return
  6220. // value will be populated with the request's response once the request completes
  6221. // successfully.
  6222. //
  6223. // Use "Send" method on the returned Request to send the API call to the service.
  6224. // the "output" return value is not valid until after Send returns without error.
  6225. //
  6226. // See DetachPolicy for more information on using the DetachPolicy
  6227. // API call, and error handling.
  6228. //
  6229. // This method is useful when you want to inject custom logic or configuration
  6230. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6231. //
  6232. //
  6233. // // Example sending a request using the DetachPolicyRequest method.
  6234. // req, resp := client.DetachPolicyRequest(params)
  6235. //
  6236. // err := req.Send()
  6237. // if err == nil { // resp is now filled
  6238. // fmt.Println(resp)
  6239. // }
  6240. func (c *IoT) DetachPolicyRequest(input *DetachPolicyInput) (req *request.Request, output *DetachPolicyOutput) {
  6241. op := &request.Operation{
  6242. Name: opDetachPolicy,
  6243. HTTPMethod: "POST",
  6244. HTTPPath: "/target-policies/{policyName}",
  6245. }
  6246. if input == nil {
  6247. input = &DetachPolicyInput{}
  6248. }
  6249. output = &DetachPolicyOutput{}
  6250. req = c.newRequest(op, input, output)
  6251. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6252. return
  6253. }
  6254. // DetachPolicy API operation for AWS IoT.
  6255. //
  6256. // Detaches a policy from the specified target.
  6257. //
  6258. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6259. // with awserr.Error's Code and Message methods to get detailed information about
  6260. // the error.
  6261. //
  6262. // See the AWS API reference guide for AWS IoT's
  6263. // API operation DetachPolicy for usage and error information.
  6264. //
  6265. // Returned Error Codes:
  6266. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6267. // The request is not valid.
  6268. //
  6269. // * ErrCodeThrottlingException "ThrottlingException"
  6270. // The rate exceeds the limit.
  6271. //
  6272. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6273. // You are not authorized to perform this operation.
  6274. //
  6275. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6276. // The service is temporarily unavailable.
  6277. //
  6278. // * ErrCodeInternalFailureException "InternalFailureException"
  6279. // An unexpected error has occurred.
  6280. //
  6281. // * ErrCodeLimitExceededException "LimitExceededException"
  6282. // A limit has been exceeded.
  6283. //
  6284. func (c *IoT) DetachPolicy(input *DetachPolicyInput) (*DetachPolicyOutput, error) {
  6285. req, out := c.DetachPolicyRequest(input)
  6286. return out, req.Send()
  6287. }
  6288. // DetachPolicyWithContext is the same as DetachPolicy with the addition of
  6289. // the ability to pass a context and additional request options.
  6290. //
  6291. // See DetachPolicy for details on how to use this API operation.
  6292. //
  6293. // The context must be non-nil and will be used for request cancellation. If
  6294. // the context is nil a panic will occur. In the future the SDK may create
  6295. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6296. // for more information on using Contexts.
  6297. func (c *IoT) DetachPolicyWithContext(ctx aws.Context, input *DetachPolicyInput, opts ...request.Option) (*DetachPolicyOutput, error) {
  6298. req, out := c.DetachPolicyRequest(input)
  6299. req.SetContext(ctx)
  6300. req.ApplyOptions(opts...)
  6301. return out, req.Send()
  6302. }
  6303. const opDetachPrincipalPolicy = "DetachPrincipalPolicy"
  6304. // DetachPrincipalPolicyRequest generates a "aws/request.Request" representing the
  6305. // client's request for the DetachPrincipalPolicy operation. The "output" return
  6306. // value will be populated with the request's response once the request completes
  6307. // successfully.
  6308. //
  6309. // Use "Send" method on the returned Request to send the API call to the service.
  6310. // the "output" return value is not valid until after Send returns without error.
  6311. //
  6312. // See DetachPrincipalPolicy for more information on using the DetachPrincipalPolicy
  6313. // API call, and error handling.
  6314. //
  6315. // This method is useful when you want to inject custom logic or configuration
  6316. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6317. //
  6318. //
  6319. // // Example sending a request using the DetachPrincipalPolicyRequest method.
  6320. // req, resp := client.DetachPrincipalPolicyRequest(params)
  6321. //
  6322. // err := req.Send()
  6323. // if err == nil { // resp is now filled
  6324. // fmt.Println(resp)
  6325. // }
  6326. //
  6327. // Deprecated: DetachPrincipalPolicy has been deprecated
  6328. func (c *IoT) DetachPrincipalPolicyRequest(input *DetachPrincipalPolicyInput) (req *request.Request, output *DetachPrincipalPolicyOutput) {
  6329. if c.Client.Config.Logger != nil {
  6330. c.Client.Config.Logger.Log("This operation, DetachPrincipalPolicy, has been deprecated")
  6331. }
  6332. op := &request.Operation{
  6333. Name: opDetachPrincipalPolicy,
  6334. HTTPMethod: "DELETE",
  6335. HTTPPath: "/principal-policies/{policyName}",
  6336. }
  6337. if input == nil {
  6338. input = &DetachPrincipalPolicyInput{}
  6339. }
  6340. output = &DetachPrincipalPolicyOutput{}
  6341. req = c.newRequest(op, input, output)
  6342. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6343. return
  6344. }
  6345. // DetachPrincipalPolicy API operation for AWS IoT.
  6346. //
  6347. // Removes the specified policy from the specified certificate.
  6348. //
  6349. // Note: This API is deprecated. Please use DetachPolicy instead.
  6350. //
  6351. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6352. // with awserr.Error's Code and Message methods to get detailed information about
  6353. // the error.
  6354. //
  6355. // See the AWS API reference guide for AWS IoT's
  6356. // API operation DetachPrincipalPolicy for usage and error information.
  6357. //
  6358. // Returned Error Codes:
  6359. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6360. // The specified resource does not exist.
  6361. //
  6362. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6363. // The request is not valid.
  6364. //
  6365. // * ErrCodeThrottlingException "ThrottlingException"
  6366. // The rate exceeds the limit.
  6367. //
  6368. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6369. // You are not authorized to perform this operation.
  6370. //
  6371. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6372. // The service is temporarily unavailable.
  6373. //
  6374. // * ErrCodeInternalFailureException "InternalFailureException"
  6375. // An unexpected error has occurred.
  6376. //
  6377. //
  6378. // Deprecated: DetachPrincipalPolicy has been deprecated
  6379. func (c *IoT) DetachPrincipalPolicy(input *DetachPrincipalPolicyInput) (*DetachPrincipalPolicyOutput, error) {
  6380. req, out := c.DetachPrincipalPolicyRequest(input)
  6381. return out, req.Send()
  6382. }
  6383. // DetachPrincipalPolicyWithContext is the same as DetachPrincipalPolicy with the addition of
  6384. // the ability to pass a context and additional request options.
  6385. //
  6386. // See DetachPrincipalPolicy for details on how to use this API operation.
  6387. //
  6388. // The context must be non-nil and will be used for request cancellation. If
  6389. // the context is nil a panic will occur. In the future the SDK may create
  6390. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6391. // for more information on using Contexts.
  6392. //
  6393. // Deprecated: DetachPrincipalPolicyWithContext has been deprecated
  6394. func (c *IoT) DetachPrincipalPolicyWithContext(ctx aws.Context, input *DetachPrincipalPolicyInput, opts ...request.Option) (*DetachPrincipalPolicyOutput, error) {
  6395. req, out := c.DetachPrincipalPolicyRequest(input)
  6396. req.SetContext(ctx)
  6397. req.ApplyOptions(opts...)
  6398. return out, req.Send()
  6399. }
  6400. const opDetachSecurityProfile = "DetachSecurityProfile"
  6401. // DetachSecurityProfileRequest generates a "aws/request.Request" representing the
  6402. // client's request for the DetachSecurityProfile operation. The "output" return
  6403. // value will be populated with the request's response once the request completes
  6404. // successfully.
  6405. //
  6406. // Use "Send" method on the returned Request to send the API call to the service.
  6407. // the "output" return value is not valid until after Send returns without error.
  6408. //
  6409. // See DetachSecurityProfile for more information on using the DetachSecurityProfile
  6410. // API call, and error handling.
  6411. //
  6412. // This method is useful when you want to inject custom logic or configuration
  6413. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6414. //
  6415. //
  6416. // // Example sending a request using the DetachSecurityProfileRequest method.
  6417. // req, resp := client.DetachSecurityProfileRequest(params)
  6418. //
  6419. // err := req.Send()
  6420. // if err == nil { // resp is now filled
  6421. // fmt.Println(resp)
  6422. // }
  6423. func (c *IoT) DetachSecurityProfileRequest(input *DetachSecurityProfileInput) (req *request.Request, output *DetachSecurityProfileOutput) {
  6424. op := &request.Operation{
  6425. Name: opDetachSecurityProfile,
  6426. HTTPMethod: "DELETE",
  6427. HTTPPath: "/security-profiles/{securityProfileName}/targets",
  6428. }
  6429. if input == nil {
  6430. input = &DetachSecurityProfileInput{}
  6431. }
  6432. output = &DetachSecurityProfileOutput{}
  6433. req = c.newRequest(op, input, output)
  6434. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6435. return
  6436. }
  6437. // DetachSecurityProfile API operation for AWS IoT.
  6438. //
  6439. // Disassociates a Device Defender security profile from a thing group or from
  6440. // this account.
  6441. //
  6442. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6443. // with awserr.Error's Code and Message methods to get detailed information about
  6444. // the error.
  6445. //
  6446. // See the AWS API reference guide for AWS IoT's
  6447. // API operation DetachSecurityProfile for usage and error information.
  6448. //
  6449. // Returned Error Codes:
  6450. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6451. // The request is not valid.
  6452. //
  6453. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6454. // The specified resource does not exist.
  6455. //
  6456. // * ErrCodeThrottlingException "ThrottlingException"
  6457. // The rate exceeds the limit.
  6458. //
  6459. // * ErrCodeInternalFailureException "InternalFailureException"
  6460. // An unexpected error has occurred.
  6461. //
  6462. func (c *IoT) DetachSecurityProfile(input *DetachSecurityProfileInput) (*DetachSecurityProfileOutput, error) {
  6463. req, out := c.DetachSecurityProfileRequest(input)
  6464. return out, req.Send()
  6465. }
  6466. // DetachSecurityProfileWithContext is the same as DetachSecurityProfile with the addition of
  6467. // the ability to pass a context and additional request options.
  6468. //
  6469. // See DetachSecurityProfile for details on how to use this API operation.
  6470. //
  6471. // The context must be non-nil and will be used for request cancellation. If
  6472. // the context is nil a panic will occur. In the future the SDK may create
  6473. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6474. // for more information on using Contexts.
  6475. func (c *IoT) DetachSecurityProfileWithContext(ctx aws.Context, input *DetachSecurityProfileInput, opts ...request.Option) (*DetachSecurityProfileOutput, error) {
  6476. req, out := c.DetachSecurityProfileRequest(input)
  6477. req.SetContext(ctx)
  6478. req.ApplyOptions(opts...)
  6479. return out, req.Send()
  6480. }
  6481. const opDetachThingPrincipal = "DetachThingPrincipal"
  6482. // DetachThingPrincipalRequest generates a "aws/request.Request" representing the
  6483. // client's request for the DetachThingPrincipal operation. The "output" return
  6484. // value will be populated with the request's response once the request completes
  6485. // successfully.
  6486. //
  6487. // Use "Send" method on the returned Request to send the API call to the service.
  6488. // the "output" return value is not valid until after Send returns without error.
  6489. //
  6490. // See DetachThingPrincipal for more information on using the DetachThingPrincipal
  6491. // API call, and error handling.
  6492. //
  6493. // This method is useful when you want to inject custom logic or configuration
  6494. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6495. //
  6496. //
  6497. // // Example sending a request using the DetachThingPrincipalRequest method.
  6498. // req, resp := client.DetachThingPrincipalRequest(params)
  6499. //
  6500. // err := req.Send()
  6501. // if err == nil { // resp is now filled
  6502. // fmt.Println(resp)
  6503. // }
  6504. func (c *IoT) DetachThingPrincipalRequest(input *DetachThingPrincipalInput) (req *request.Request, output *DetachThingPrincipalOutput) {
  6505. op := &request.Operation{
  6506. Name: opDetachThingPrincipal,
  6507. HTTPMethod: "DELETE",
  6508. HTTPPath: "/things/{thingName}/principals",
  6509. }
  6510. if input == nil {
  6511. input = &DetachThingPrincipalInput{}
  6512. }
  6513. output = &DetachThingPrincipalOutput{}
  6514. req = c.newRequest(op, input, output)
  6515. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6516. return
  6517. }
  6518. // DetachThingPrincipal API operation for AWS IoT.
  6519. //
  6520. // Detaches the specified principal from the specified thing.
  6521. //
  6522. // This call is asynchronous. It might take several seconds for the detachment
  6523. // to propagate.
  6524. //
  6525. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6526. // with awserr.Error's Code and Message methods to get detailed information about
  6527. // the error.
  6528. //
  6529. // See the AWS API reference guide for AWS IoT's
  6530. // API operation DetachThingPrincipal for usage and error information.
  6531. //
  6532. // Returned Error Codes:
  6533. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6534. // The specified resource does not exist.
  6535. //
  6536. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6537. // The request is not valid.
  6538. //
  6539. // * ErrCodeThrottlingException "ThrottlingException"
  6540. // The rate exceeds the limit.
  6541. //
  6542. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6543. // You are not authorized to perform this operation.
  6544. //
  6545. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6546. // The service is temporarily unavailable.
  6547. //
  6548. // * ErrCodeInternalFailureException "InternalFailureException"
  6549. // An unexpected error has occurred.
  6550. //
  6551. func (c *IoT) DetachThingPrincipal(input *DetachThingPrincipalInput) (*DetachThingPrincipalOutput, error) {
  6552. req, out := c.DetachThingPrincipalRequest(input)
  6553. return out, req.Send()
  6554. }
  6555. // DetachThingPrincipalWithContext is the same as DetachThingPrincipal with the addition of
  6556. // the ability to pass a context and additional request options.
  6557. //
  6558. // See DetachThingPrincipal for details on how to use this API operation.
  6559. //
  6560. // The context must be non-nil and will be used for request cancellation. If
  6561. // the context is nil a panic will occur. In the future the SDK may create
  6562. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6563. // for more information on using Contexts.
  6564. func (c *IoT) DetachThingPrincipalWithContext(ctx aws.Context, input *DetachThingPrincipalInput, opts ...request.Option) (*DetachThingPrincipalOutput, error) {
  6565. req, out := c.DetachThingPrincipalRequest(input)
  6566. req.SetContext(ctx)
  6567. req.ApplyOptions(opts...)
  6568. return out, req.Send()
  6569. }
  6570. const opDisableTopicRule = "DisableTopicRule"
  6571. // DisableTopicRuleRequest generates a "aws/request.Request" representing the
  6572. // client's request for the DisableTopicRule operation. The "output" return
  6573. // value will be populated with the request's response once the request completes
  6574. // successfully.
  6575. //
  6576. // Use "Send" method on the returned Request to send the API call to the service.
  6577. // the "output" return value is not valid until after Send returns without error.
  6578. //
  6579. // See DisableTopicRule for more information on using the DisableTopicRule
  6580. // API call, and error handling.
  6581. //
  6582. // This method is useful when you want to inject custom logic or configuration
  6583. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6584. //
  6585. //
  6586. // // Example sending a request using the DisableTopicRuleRequest method.
  6587. // req, resp := client.DisableTopicRuleRequest(params)
  6588. //
  6589. // err := req.Send()
  6590. // if err == nil { // resp is now filled
  6591. // fmt.Println(resp)
  6592. // }
  6593. func (c *IoT) DisableTopicRuleRequest(input *DisableTopicRuleInput) (req *request.Request, output *DisableTopicRuleOutput) {
  6594. op := &request.Operation{
  6595. Name: opDisableTopicRule,
  6596. HTTPMethod: "POST",
  6597. HTTPPath: "/rules/{ruleName}/disable",
  6598. }
  6599. if input == nil {
  6600. input = &DisableTopicRuleInput{}
  6601. }
  6602. output = &DisableTopicRuleOutput{}
  6603. req = c.newRequest(op, input, output)
  6604. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6605. return
  6606. }
  6607. // DisableTopicRule API operation for AWS IoT.
  6608. //
  6609. // Disables the rule.
  6610. //
  6611. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6612. // with awserr.Error's Code and Message methods to get detailed information about
  6613. // the error.
  6614. //
  6615. // See the AWS API reference guide for AWS IoT's
  6616. // API operation DisableTopicRule for usage and error information.
  6617. //
  6618. // Returned Error Codes:
  6619. // * ErrCodeInternalException "InternalException"
  6620. // An unexpected error has occurred.
  6621. //
  6622. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6623. // The request is not valid.
  6624. //
  6625. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6626. // The service is temporarily unavailable.
  6627. //
  6628. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6629. // You are not authorized to perform this operation.
  6630. //
  6631. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  6632. // A conflicting resource update exception. This exception is thrown when two
  6633. // pending updates cause a conflict.
  6634. //
  6635. func (c *IoT) DisableTopicRule(input *DisableTopicRuleInput) (*DisableTopicRuleOutput, error) {
  6636. req, out := c.DisableTopicRuleRequest(input)
  6637. return out, req.Send()
  6638. }
  6639. // DisableTopicRuleWithContext is the same as DisableTopicRule with the addition of
  6640. // the ability to pass a context and additional request options.
  6641. //
  6642. // See DisableTopicRule for details on how to use this API operation.
  6643. //
  6644. // The context must be non-nil and will be used for request cancellation. If
  6645. // the context is nil a panic will occur. In the future the SDK may create
  6646. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6647. // for more information on using Contexts.
  6648. func (c *IoT) DisableTopicRuleWithContext(ctx aws.Context, input *DisableTopicRuleInput, opts ...request.Option) (*DisableTopicRuleOutput, error) {
  6649. req, out := c.DisableTopicRuleRequest(input)
  6650. req.SetContext(ctx)
  6651. req.ApplyOptions(opts...)
  6652. return out, req.Send()
  6653. }
  6654. const opEnableTopicRule = "EnableTopicRule"
  6655. // EnableTopicRuleRequest generates a "aws/request.Request" representing the
  6656. // client's request for the EnableTopicRule operation. The "output" return
  6657. // value will be populated with the request's response once the request completes
  6658. // successfully.
  6659. //
  6660. // Use "Send" method on the returned Request to send the API call to the service.
  6661. // the "output" return value is not valid until after Send returns without error.
  6662. //
  6663. // See EnableTopicRule for more information on using the EnableTopicRule
  6664. // API call, and error handling.
  6665. //
  6666. // This method is useful when you want to inject custom logic or configuration
  6667. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6668. //
  6669. //
  6670. // // Example sending a request using the EnableTopicRuleRequest method.
  6671. // req, resp := client.EnableTopicRuleRequest(params)
  6672. //
  6673. // err := req.Send()
  6674. // if err == nil { // resp is now filled
  6675. // fmt.Println(resp)
  6676. // }
  6677. func (c *IoT) EnableTopicRuleRequest(input *EnableTopicRuleInput) (req *request.Request, output *EnableTopicRuleOutput) {
  6678. op := &request.Operation{
  6679. Name: opEnableTopicRule,
  6680. HTTPMethod: "POST",
  6681. HTTPPath: "/rules/{ruleName}/enable",
  6682. }
  6683. if input == nil {
  6684. input = &EnableTopicRuleInput{}
  6685. }
  6686. output = &EnableTopicRuleOutput{}
  6687. req = c.newRequest(op, input, output)
  6688. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6689. return
  6690. }
  6691. // EnableTopicRule API operation for AWS IoT.
  6692. //
  6693. // Enables the rule.
  6694. //
  6695. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6696. // with awserr.Error's Code and Message methods to get detailed information about
  6697. // the error.
  6698. //
  6699. // See the AWS API reference guide for AWS IoT's
  6700. // API operation EnableTopicRule for usage and error information.
  6701. //
  6702. // Returned Error Codes:
  6703. // * ErrCodeInternalException "InternalException"
  6704. // An unexpected error has occurred.
  6705. //
  6706. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6707. // The request is not valid.
  6708. //
  6709. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6710. // The service is temporarily unavailable.
  6711. //
  6712. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6713. // You are not authorized to perform this operation.
  6714. //
  6715. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  6716. // A conflicting resource update exception. This exception is thrown when two
  6717. // pending updates cause a conflict.
  6718. //
  6719. func (c *IoT) EnableTopicRule(input *EnableTopicRuleInput) (*EnableTopicRuleOutput, error) {
  6720. req, out := c.EnableTopicRuleRequest(input)
  6721. return out, req.Send()
  6722. }
  6723. // EnableTopicRuleWithContext is the same as EnableTopicRule with the addition of
  6724. // the ability to pass a context and additional request options.
  6725. //
  6726. // See EnableTopicRule for details on how to use this API operation.
  6727. //
  6728. // The context must be non-nil and will be used for request cancellation. If
  6729. // the context is nil a panic will occur. In the future the SDK may create
  6730. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6731. // for more information on using Contexts.
  6732. func (c *IoT) EnableTopicRuleWithContext(ctx aws.Context, input *EnableTopicRuleInput, opts ...request.Option) (*EnableTopicRuleOutput, error) {
  6733. req, out := c.EnableTopicRuleRequest(input)
  6734. req.SetContext(ctx)
  6735. req.ApplyOptions(opts...)
  6736. return out, req.Send()
  6737. }
  6738. const opGetEffectivePolicies = "GetEffectivePolicies"
  6739. // GetEffectivePoliciesRequest generates a "aws/request.Request" representing the
  6740. // client's request for the GetEffectivePolicies operation. The "output" return
  6741. // value will be populated with the request's response once the request completes
  6742. // successfully.
  6743. //
  6744. // Use "Send" method on the returned Request to send the API call to the service.
  6745. // the "output" return value is not valid until after Send returns without error.
  6746. //
  6747. // See GetEffectivePolicies for more information on using the GetEffectivePolicies
  6748. // API call, and error handling.
  6749. //
  6750. // This method is useful when you want to inject custom logic or configuration
  6751. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6752. //
  6753. //
  6754. // // Example sending a request using the GetEffectivePoliciesRequest method.
  6755. // req, resp := client.GetEffectivePoliciesRequest(params)
  6756. //
  6757. // err := req.Send()
  6758. // if err == nil { // resp is now filled
  6759. // fmt.Println(resp)
  6760. // }
  6761. func (c *IoT) GetEffectivePoliciesRequest(input *GetEffectivePoliciesInput) (req *request.Request, output *GetEffectivePoliciesOutput) {
  6762. op := &request.Operation{
  6763. Name: opGetEffectivePolicies,
  6764. HTTPMethod: "POST",
  6765. HTTPPath: "/effective-policies",
  6766. }
  6767. if input == nil {
  6768. input = &GetEffectivePoliciesInput{}
  6769. }
  6770. output = &GetEffectivePoliciesOutput{}
  6771. req = c.newRequest(op, input, output)
  6772. return
  6773. }
  6774. // GetEffectivePolicies API operation for AWS IoT.
  6775. //
  6776. // Gets a list of the policies that have an effect on the authorization behavior
  6777. // of the specified device when it connects to the AWS IoT device gateway.
  6778. //
  6779. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6780. // with awserr.Error's Code and Message methods to get detailed information about
  6781. // the error.
  6782. //
  6783. // See the AWS API reference guide for AWS IoT's
  6784. // API operation GetEffectivePolicies for usage and error information.
  6785. //
  6786. // Returned Error Codes:
  6787. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6788. // The specified resource does not exist.
  6789. //
  6790. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6791. // The request is not valid.
  6792. //
  6793. // * ErrCodeThrottlingException "ThrottlingException"
  6794. // The rate exceeds the limit.
  6795. //
  6796. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6797. // You are not authorized to perform this operation.
  6798. //
  6799. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6800. // The service is temporarily unavailable.
  6801. //
  6802. // * ErrCodeInternalFailureException "InternalFailureException"
  6803. // An unexpected error has occurred.
  6804. //
  6805. // * ErrCodeLimitExceededException "LimitExceededException"
  6806. // A limit has been exceeded.
  6807. //
  6808. func (c *IoT) GetEffectivePolicies(input *GetEffectivePoliciesInput) (*GetEffectivePoliciesOutput, error) {
  6809. req, out := c.GetEffectivePoliciesRequest(input)
  6810. return out, req.Send()
  6811. }
  6812. // GetEffectivePoliciesWithContext is the same as GetEffectivePolicies with the addition of
  6813. // the ability to pass a context and additional request options.
  6814. //
  6815. // See GetEffectivePolicies for details on how to use this API operation.
  6816. //
  6817. // The context must be non-nil and will be used for request cancellation. If
  6818. // the context is nil a panic will occur. In the future the SDK may create
  6819. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6820. // for more information on using Contexts.
  6821. func (c *IoT) GetEffectivePoliciesWithContext(ctx aws.Context, input *GetEffectivePoliciesInput, opts ...request.Option) (*GetEffectivePoliciesOutput, error) {
  6822. req, out := c.GetEffectivePoliciesRequest(input)
  6823. req.SetContext(ctx)
  6824. req.ApplyOptions(opts...)
  6825. return out, req.Send()
  6826. }
  6827. const opGetIndexingConfiguration = "GetIndexingConfiguration"
  6828. // GetIndexingConfigurationRequest generates a "aws/request.Request" representing the
  6829. // client's request for the GetIndexingConfiguration operation. The "output" return
  6830. // value will be populated with the request's response once the request completes
  6831. // successfully.
  6832. //
  6833. // Use "Send" method on the returned Request to send the API call to the service.
  6834. // the "output" return value is not valid until after Send returns without error.
  6835. //
  6836. // See GetIndexingConfiguration for more information on using the GetIndexingConfiguration
  6837. // API call, and error handling.
  6838. //
  6839. // This method is useful when you want to inject custom logic or configuration
  6840. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6841. //
  6842. //
  6843. // // Example sending a request using the GetIndexingConfigurationRequest method.
  6844. // req, resp := client.GetIndexingConfigurationRequest(params)
  6845. //
  6846. // err := req.Send()
  6847. // if err == nil { // resp is now filled
  6848. // fmt.Println(resp)
  6849. // }
  6850. func (c *IoT) GetIndexingConfigurationRequest(input *GetIndexingConfigurationInput) (req *request.Request, output *GetIndexingConfigurationOutput) {
  6851. op := &request.Operation{
  6852. Name: opGetIndexingConfiguration,
  6853. HTTPMethod: "GET",
  6854. HTTPPath: "/indexing/config",
  6855. }
  6856. if input == nil {
  6857. input = &GetIndexingConfigurationInput{}
  6858. }
  6859. output = &GetIndexingConfigurationOutput{}
  6860. req = c.newRequest(op, input, output)
  6861. return
  6862. }
  6863. // GetIndexingConfiguration API operation for AWS IoT.
  6864. //
  6865. // Gets the search configuration.
  6866. //
  6867. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6868. // with awserr.Error's Code and Message methods to get detailed information about
  6869. // the error.
  6870. //
  6871. // See the AWS API reference guide for AWS IoT's
  6872. // API operation GetIndexingConfiguration for usage and error information.
  6873. //
  6874. // Returned Error Codes:
  6875. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6876. // The request is not valid.
  6877. //
  6878. // * ErrCodeThrottlingException "ThrottlingException"
  6879. // The rate exceeds the limit.
  6880. //
  6881. // * ErrCodeUnauthorizedException "UnauthorizedException"
  6882. // You are not authorized to perform this operation.
  6883. //
  6884. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6885. // The service is temporarily unavailable.
  6886. //
  6887. // * ErrCodeInternalFailureException "InternalFailureException"
  6888. // An unexpected error has occurred.
  6889. //
  6890. func (c *IoT) GetIndexingConfiguration(input *GetIndexingConfigurationInput) (*GetIndexingConfigurationOutput, error) {
  6891. req, out := c.GetIndexingConfigurationRequest(input)
  6892. return out, req.Send()
  6893. }
  6894. // GetIndexingConfigurationWithContext is the same as GetIndexingConfiguration with the addition of
  6895. // the ability to pass a context and additional request options.
  6896. //
  6897. // See GetIndexingConfiguration for details on how to use this API operation.
  6898. //
  6899. // The context must be non-nil and will be used for request cancellation. If
  6900. // the context is nil a panic will occur. In the future the SDK may create
  6901. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6902. // for more information on using Contexts.
  6903. func (c *IoT) GetIndexingConfigurationWithContext(ctx aws.Context, input *GetIndexingConfigurationInput, opts ...request.Option) (*GetIndexingConfigurationOutput, error) {
  6904. req, out := c.GetIndexingConfigurationRequest(input)
  6905. req.SetContext(ctx)
  6906. req.ApplyOptions(opts...)
  6907. return out, req.Send()
  6908. }
  6909. const opGetJobDocument = "GetJobDocument"
  6910. // GetJobDocumentRequest generates a "aws/request.Request" representing the
  6911. // client's request for the GetJobDocument operation. The "output" return
  6912. // value will be populated with the request's response once the request completes
  6913. // successfully.
  6914. //
  6915. // Use "Send" method on the returned Request to send the API call to the service.
  6916. // the "output" return value is not valid until after Send returns without error.
  6917. //
  6918. // See GetJobDocument for more information on using the GetJobDocument
  6919. // API call, and error handling.
  6920. //
  6921. // This method is useful when you want to inject custom logic or configuration
  6922. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6923. //
  6924. //
  6925. // // Example sending a request using the GetJobDocumentRequest method.
  6926. // req, resp := client.GetJobDocumentRequest(params)
  6927. //
  6928. // err := req.Send()
  6929. // if err == nil { // resp is now filled
  6930. // fmt.Println(resp)
  6931. // }
  6932. func (c *IoT) GetJobDocumentRequest(input *GetJobDocumentInput) (req *request.Request, output *GetJobDocumentOutput) {
  6933. op := &request.Operation{
  6934. Name: opGetJobDocument,
  6935. HTTPMethod: "GET",
  6936. HTTPPath: "/jobs/{jobId}/job-document",
  6937. }
  6938. if input == nil {
  6939. input = &GetJobDocumentInput{}
  6940. }
  6941. output = &GetJobDocumentOutput{}
  6942. req = c.newRequest(op, input, output)
  6943. return
  6944. }
  6945. // GetJobDocument API operation for AWS IoT.
  6946. //
  6947. // Gets a job document.
  6948. //
  6949. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6950. // with awserr.Error's Code and Message methods to get detailed information about
  6951. // the error.
  6952. //
  6953. // See the AWS API reference guide for AWS IoT's
  6954. // API operation GetJobDocument for usage and error information.
  6955. //
  6956. // Returned Error Codes:
  6957. // * ErrCodeInvalidRequestException "InvalidRequestException"
  6958. // The request is not valid.
  6959. //
  6960. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  6961. // The specified resource does not exist.
  6962. //
  6963. // * ErrCodeThrottlingException "ThrottlingException"
  6964. // The rate exceeds the limit.
  6965. //
  6966. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  6967. // The service is temporarily unavailable.
  6968. //
  6969. func (c *IoT) GetJobDocument(input *GetJobDocumentInput) (*GetJobDocumentOutput, error) {
  6970. req, out := c.GetJobDocumentRequest(input)
  6971. return out, req.Send()
  6972. }
  6973. // GetJobDocumentWithContext is the same as GetJobDocument with the addition of
  6974. // the ability to pass a context and additional request options.
  6975. //
  6976. // See GetJobDocument for details on how to use this API operation.
  6977. //
  6978. // The context must be non-nil and will be used for request cancellation. If
  6979. // the context is nil a panic will occur. In the future the SDK may create
  6980. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6981. // for more information on using Contexts.
  6982. func (c *IoT) GetJobDocumentWithContext(ctx aws.Context, input *GetJobDocumentInput, opts ...request.Option) (*GetJobDocumentOutput, error) {
  6983. req, out := c.GetJobDocumentRequest(input)
  6984. req.SetContext(ctx)
  6985. req.ApplyOptions(opts...)
  6986. return out, req.Send()
  6987. }
  6988. const opGetLoggingOptions = "GetLoggingOptions"
  6989. // GetLoggingOptionsRequest generates a "aws/request.Request" representing the
  6990. // client's request for the GetLoggingOptions operation. The "output" return
  6991. // value will be populated with the request's response once the request completes
  6992. // successfully.
  6993. //
  6994. // Use "Send" method on the returned Request to send the API call to the service.
  6995. // the "output" return value is not valid until after Send returns without error.
  6996. //
  6997. // See GetLoggingOptions for more information on using the GetLoggingOptions
  6998. // API call, and error handling.
  6999. //
  7000. // This method is useful when you want to inject custom logic or configuration
  7001. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7002. //
  7003. //
  7004. // // Example sending a request using the GetLoggingOptionsRequest method.
  7005. // req, resp := client.GetLoggingOptionsRequest(params)
  7006. //
  7007. // err := req.Send()
  7008. // if err == nil { // resp is now filled
  7009. // fmt.Println(resp)
  7010. // }
  7011. func (c *IoT) GetLoggingOptionsRequest(input *GetLoggingOptionsInput) (req *request.Request, output *GetLoggingOptionsOutput) {
  7012. op := &request.Operation{
  7013. Name: opGetLoggingOptions,
  7014. HTTPMethod: "GET",
  7015. HTTPPath: "/loggingOptions",
  7016. }
  7017. if input == nil {
  7018. input = &GetLoggingOptionsInput{}
  7019. }
  7020. output = &GetLoggingOptionsOutput{}
  7021. req = c.newRequest(op, input, output)
  7022. return
  7023. }
  7024. // GetLoggingOptions API operation for AWS IoT.
  7025. //
  7026. // Gets the logging options.
  7027. //
  7028. // NOTE: use of this command is not recommended. Use GetV2LoggingOptions instead.
  7029. //
  7030. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7031. // with awserr.Error's Code and Message methods to get detailed information about
  7032. // the error.
  7033. //
  7034. // See the AWS API reference guide for AWS IoT's
  7035. // API operation GetLoggingOptions for usage and error information.
  7036. //
  7037. // Returned Error Codes:
  7038. // * ErrCodeInternalException "InternalException"
  7039. // An unexpected error has occurred.
  7040. //
  7041. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7042. // The request is not valid.
  7043. //
  7044. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7045. // The service is temporarily unavailable.
  7046. //
  7047. func (c *IoT) GetLoggingOptions(input *GetLoggingOptionsInput) (*GetLoggingOptionsOutput, error) {
  7048. req, out := c.GetLoggingOptionsRequest(input)
  7049. return out, req.Send()
  7050. }
  7051. // GetLoggingOptionsWithContext is the same as GetLoggingOptions with the addition of
  7052. // the ability to pass a context and additional request options.
  7053. //
  7054. // See GetLoggingOptions for details on how to use this API operation.
  7055. //
  7056. // The context must be non-nil and will be used for request cancellation. If
  7057. // the context is nil a panic will occur. In the future the SDK may create
  7058. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7059. // for more information on using Contexts.
  7060. func (c *IoT) GetLoggingOptionsWithContext(ctx aws.Context, input *GetLoggingOptionsInput, opts ...request.Option) (*GetLoggingOptionsOutput, error) {
  7061. req, out := c.GetLoggingOptionsRequest(input)
  7062. req.SetContext(ctx)
  7063. req.ApplyOptions(opts...)
  7064. return out, req.Send()
  7065. }
  7066. const opGetOTAUpdate = "GetOTAUpdate"
  7067. // GetOTAUpdateRequest generates a "aws/request.Request" representing the
  7068. // client's request for the GetOTAUpdate operation. The "output" return
  7069. // value will be populated with the request's response once the request completes
  7070. // successfully.
  7071. //
  7072. // Use "Send" method on the returned Request to send the API call to the service.
  7073. // the "output" return value is not valid until after Send returns without error.
  7074. //
  7075. // See GetOTAUpdate for more information on using the GetOTAUpdate
  7076. // API call, and error handling.
  7077. //
  7078. // This method is useful when you want to inject custom logic or configuration
  7079. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7080. //
  7081. //
  7082. // // Example sending a request using the GetOTAUpdateRequest method.
  7083. // req, resp := client.GetOTAUpdateRequest(params)
  7084. //
  7085. // err := req.Send()
  7086. // if err == nil { // resp is now filled
  7087. // fmt.Println(resp)
  7088. // }
  7089. func (c *IoT) GetOTAUpdateRequest(input *GetOTAUpdateInput) (req *request.Request, output *GetOTAUpdateOutput) {
  7090. op := &request.Operation{
  7091. Name: opGetOTAUpdate,
  7092. HTTPMethod: "GET",
  7093. HTTPPath: "/otaUpdates/{otaUpdateId}",
  7094. }
  7095. if input == nil {
  7096. input = &GetOTAUpdateInput{}
  7097. }
  7098. output = &GetOTAUpdateOutput{}
  7099. req = c.newRequest(op, input, output)
  7100. return
  7101. }
  7102. // GetOTAUpdate API operation for AWS IoT.
  7103. //
  7104. // Gets an OTA update.
  7105. //
  7106. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7107. // with awserr.Error's Code and Message methods to get detailed information about
  7108. // the error.
  7109. //
  7110. // See the AWS API reference guide for AWS IoT's
  7111. // API operation GetOTAUpdate for usage and error information.
  7112. //
  7113. // Returned Error Codes:
  7114. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7115. // The request is not valid.
  7116. //
  7117. // * ErrCodeThrottlingException "ThrottlingException"
  7118. // The rate exceeds the limit.
  7119. //
  7120. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7121. // You are not authorized to perform this operation.
  7122. //
  7123. // * ErrCodeInternalFailureException "InternalFailureException"
  7124. // An unexpected error has occurred.
  7125. //
  7126. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7127. // The service is temporarily unavailable.
  7128. //
  7129. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  7130. // The specified resource does not exist.
  7131. //
  7132. func (c *IoT) GetOTAUpdate(input *GetOTAUpdateInput) (*GetOTAUpdateOutput, error) {
  7133. req, out := c.GetOTAUpdateRequest(input)
  7134. return out, req.Send()
  7135. }
  7136. // GetOTAUpdateWithContext is the same as GetOTAUpdate with the addition of
  7137. // the ability to pass a context and additional request options.
  7138. //
  7139. // See GetOTAUpdate for details on how to use this API operation.
  7140. //
  7141. // The context must be non-nil and will be used for request cancellation. If
  7142. // the context is nil a panic will occur. In the future the SDK may create
  7143. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7144. // for more information on using Contexts.
  7145. func (c *IoT) GetOTAUpdateWithContext(ctx aws.Context, input *GetOTAUpdateInput, opts ...request.Option) (*GetOTAUpdateOutput, error) {
  7146. req, out := c.GetOTAUpdateRequest(input)
  7147. req.SetContext(ctx)
  7148. req.ApplyOptions(opts...)
  7149. return out, req.Send()
  7150. }
  7151. const opGetPolicy = "GetPolicy"
  7152. // GetPolicyRequest generates a "aws/request.Request" representing the
  7153. // client's request for the GetPolicy operation. The "output" return
  7154. // value will be populated with the request's response once the request completes
  7155. // successfully.
  7156. //
  7157. // Use "Send" method on the returned Request to send the API call to the service.
  7158. // the "output" return value is not valid until after Send returns without error.
  7159. //
  7160. // See GetPolicy for more information on using the GetPolicy
  7161. // API call, and error handling.
  7162. //
  7163. // This method is useful when you want to inject custom logic or configuration
  7164. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7165. //
  7166. //
  7167. // // Example sending a request using the GetPolicyRequest method.
  7168. // req, resp := client.GetPolicyRequest(params)
  7169. //
  7170. // err := req.Send()
  7171. // if err == nil { // resp is now filled
  7172. // fmt.Println(resp)
  7173. // }
  7174. func (c *IoT) GetPolicyRequest(input *GetPolicyInput) (req *request.Request, output *GetPolicyOutput) {
  7175. op := &request.Operation{
  7176. Name: opGetPolicy,
  7177. HTTPMethod: "GET",
  7178. HTTPPath: "/policies/{policyName}",
  7179. }
  7180. if input == nil {
  7181. input = &GetPolicyInput{}
  7182. }
  7183. output = &GetPolicyOutput{}
  7184. req = c.newRequest(op, input, output)
  7185. return
  7186. }
  7187. // GetPolicy API operation for AWS IoT.
  7188. //
  7189. // Gets information about the specified policy with the policy document of the
  7190. // default version.
  7191. //
  7192. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7193. // with awserr.Error's Code and Message methods to get detailed information about
  7194. // the error.
  7195. //
  7196. // See the AWS API reference guide for AWS IoT's
  7197. // API operation GetPolicy for usage and error information.
  7198. //
  7199. // Returned Error Codes:
  7200. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  7201. // The specified resource does not exist.
  7202. //
  7203. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7204. // The request is not valid.
  7205. //
  7206. // * ErrCodeThrottlingException "ThrottlingException"
  7207. // The rate exceeds the limit.
  7208. //
  7209. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7210. // You are not authorized to perform this operation.
  7211. //
  7212. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7213. // The service is temporarily unavailable.
  7214. //
  7215. // * ErrCodeInternalFailureException "InternalFailureException"
  7216. // An unexpected error has occurred.
  7217. //
  7218. func (c *IoT) GetPolicy(input *GetPolicyInput) (*GetPolicyOutput, error) {
  7219. req, out := c.GetPolicyRequest(input)
  7220. return out, req.Send()
  7221. }
  7222. // GetPolicyWithContext is the same as GetPolicy with the addition of
  7223. // the ability to pass a context and additional request options.
  7224. //
  7225. // See GetPolicy for details on how to use this API operation.
  7226. //
  7227. // The context must be non-nil and will be used for request cancellation. If
  7228. // the context is nil a panic will occur. In the future the SDK may create
  7229. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7230. // for more information on using Contexts.
  7231. func (c *IoT) GetPolicyWithContext(ctx aws.Context, input *GetPolicyInput, opts ...request.Option) (*GetPolicyOutput, error) {
  7232. req, out := c.GetPolicyRequest(input)
  7233. req.SetContext(ctx)
  7234. req.ApplyOptions(opts...)
  7235. return out, req.Send()
  7236. }
  7237. const opGetPolicyVersion = "GetPolicyVersion"
  7238. // GetPolicyVersionRequest generates a "aws/request.Request" representing the
  7239. // client's request for the GetPolicyVersion operation. The "output" return
  7240. // value will be populated with the request's response once the request completes
  7241. // successfully.
  7242. //
  7243. // Use "Send" method on the returned Request to send the API call to the service.
  7244. // the "output" return value is not valid until after Send returns without error.
  7245. //
  7246. // See GetPolicyVersion for more information on using the GetPolicyVersion
  7247. // API call, and error handling.
  7248. //
  7249. // This method is useful when you want to inject custom logic or configuration
  7250. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7251. //
  7252. //
  7253. // // Example sending a request using the GetPolicyVersionRequest method.
  7254. // req, resp := client.GetPolicyVersionRequest(params)
  7255. //
  7256. // err := req.Send()
  7257. // if err == nil { // resp is now filled
  7258. // fmt.Println(resp)
  7259. // }
  7260. func (c *IoT) GetPolicyVersionRequest(input *GetPolicyVersionInput) (req *request.Request, output *GetPolicyVersionOutput) {
  7261. op := &request.Operation{
  7262. Name: opGetPolicyVersion,
  7263. HTTPMethod: "GET",
  7264. HTTPPath: "/policies/{policyName}/version/{policyVersionId}",
  7265. }
  7266. if input == nil {
  7267. input = &GetPolicyVersionInput{}
  7268. }
  7269. output = &GetPolicyVersionOutput{}
  7270. req = c.newRequest(op, input, output)
  7271. return
  7272. }
  7273. // GetPolicyVersion API operation for AWS IoT.
  7274. //
  7275. // Gets information about the specified policy version.
  7276. //
  7277. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7278. // with awserr.Error's Code and Message methods to get detailed information about
  7279. // the error.
  7280. //
  7281. // See the AWS API reference guide for AWS IoT's
  7282. // API operation GetPolicyVersion for usage and error information.
  7283. //
  7284. // Returned Error Codes:
  7285. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  7286. // The specified resource does not exist.
  7287. //
  7288. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7289. // The request is not valid.
  7290. //
  7291. // * ErrCodeThrottlingException "ThrottlingException"
  7292. // The rate exceeds the limit.
  7293. //
  7294. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7295. // You are not authorized to perform this operation.
  7296. //
  7297. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7298. // The service is temporarily unavailable.
  7299. //
  7300. // * ErrCodeInternalFailureException "InternalFailureException"
  7301. // An unexpected error has occurred.
  7302. //
  7303. func (c *IoT) GetPolicyVersion(input *GetPolicyVersionInput) (*GetPolicyVersionOutput, error) {
  7304. req, out := c.GetPolicyVersionRequest(input)
  7305. return out, req.Send()
  7306. }
  7307. // GetPolicyVersionWithContext is the same as GetPolicyVersion with the addition of
  7308. // the ability to pass a context and additional request options.
  7309. //
  7310. // See GetPolicyVersion for details on how to use this API operation.
  7311. //
  7312. // The context must be non-nil and will be used for request cancellation. If
  7313. // the context is nil a panic will occur. In the future the SDK may create
  7314. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7315. // for more information on using Contexts.
  7316. func (c *IoT) GetPolicyVersionWithContext(ctx aws.Context, input *GetPolicyVersionInput, opts ...request.Option) (*GetPolicyVersionOutput, error) {
  7317. req, out := c.GetPolicyVersionRequest(input)
  7318. req.SetContext(ctx)
  7319. req.ApplyOptions(opts...)
  7320. return out, req.Send()
  7321. }
  7322. const opGetRegistrationCode = "GetRegistrationCode"
  7323. // GetRegistrationCodeRequest generates a "aws/request.Request" representing the
  7324. // client's request for the GetRegistrationCode operation. The "output" return
  7325. // value will be populated with the request's response once the request completes
  7326. // successfully.
  7327. //
  7328. // Use "Send" method on the returned Request to send the API call to the service.
  7329. // the "output" return value is not valid until after Send returns without error.
  7330. //
  7331. // See GetRegistrationCode for more information on using the GetRegistrationCode
  7332. // API call, and error handling.
  7333. //
  7334. // This method is useful when you want to inject custom logic or configuration
  7335. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7336. //
  7337. //
  7338. // // Example sending a request using the GetRegistrationCodeRequest method.
  7339. // req, resp := client.GetRegistrationCodeRequest(params)
  7340. //
  7341. // err := req.Send()
  7342. // if err == nil { // resp is now filled
  7343. // fmt.Println(resp)
  7344. // }
  7345. func (c *IoT) GetRegistrationCodeRequest(input *GetRegistrationCodeInput) (req *request.Request, output *GetRegistrationCodeOutput) {
  7346. op := &request.Operation{
  7347. Name: opGetRegistrationCode,
  7348. HTTPMethod: "GET",
  7349. HTTPPath: "/registrationcode",
  7350. }
  7351. if input == nil {
  7352. input = &GetRegistrationCodeInput{}
  7353. }
  7354. output = &GetRegistrationCodeOutput{}
  7355. req = c.newRequest(op, input, output)
  7356. return
  7357. }
  7358. // GetRegistrationCode API operation for AWS IoT.
  7359. //
  7360. // Gets a registration code used to register a CA certificate with AWS IoT.
  7361. //
  7362. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7363. // with awserr.Error's Code and Message methods to get detailed information about
  7364. // the error.
  7365. //
  7366. // See the AWS API reference guide for AWS IoT's
  7367. // API operation GetRegistrationCode for usage and error information.
  7368. //
  7369. // Returned Error Codes:
  7370. // * ErrCodeThrottlingException "ThrottlingException"
  7371. // The rate exceeds the limit.
  7372. //
  7373. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7374. // You are not authorized to perform this operation.
  7375. //
  7376. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7377. // The service is temporarily unavailable.
  7378. //
  7379. // * ErrCodeInternalFailureException "InternalFailureException"
  7380. // An unexpected error has occurred.
  7381. //
  7382. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7383. // The request is not valid.
  7384. //
  7385. func (c *IoT) GetRegistrationCode(input *GetRegistrationCodeInput) (*GetRegistrationCodeOutput, error) {
  7386. req, out := c.GetRegistrationCodeRequest(input)
  7387. return out, req.Send()
  7388. }
  7389. // GetRegistrationCodeWithContext is the same as GetRegistrationCode with the addition of
  7390. // the ability to pass a context and additional request options.
  7391. //
  7392. // See GetRegistrationCode for details on how to use this API operation.
  7393. //
  7394. // The context must be non-nil and will be used for request cancellation. If
  7395. // the context is nil a panic will occur. In the future the SDK may create
  7396. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7397. // for more information on using Contexts.
  7398. func (c *IoT) GetRegistrationCodeWithContext(ctx aws.Context, input *GetRegistrationCodeInput, opts ...request.Option) (*GetRegistrationCodeOutput, error) {
  7399. req, out := c.GetRegistrationCodeRequest(input)
  7400. req.SetContext(ctx)
  7401. req.ApplyOptions(opts...)
  7402. return out, req.Send()
  7403. }
  7404. const opGetTopicRule = "GetTopicRule"
  7405. // GetTopicRuleRequest generates a "aws/request.Request" representing the
  7406. // client's request for the GetTopicRule operation. The "output" return
  7407. // value will be populated with the request's response once the request completes
  7408. // successfully.
  7409. //
  7410. // Use "Send" method on the returned Request to send the API call to the service.
  7411. // the "output" return value is not valid until after Send returns without error.
  7412. //
  7413. // See GetTopicRule for more information on using the GetTopicRule
  7414. // API call, and error handling.
  7415. //
  7416. // This method is useful when you want to inject custom logic or configuration
  7417. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7418. //
  7419. //
  7420. // // Example sending a request using the GetTopicRuleRequest method.
  7421. // req, resp := client.GetTopicRuleRequest(params)
  7422. //
  7423. // err := req.Send()
  7424. // if err == nil { // resp is now filled
  7425. // fmt.Println(resp)
  7426. // }
  7427. func (c *IoT) GetTopicRuleRequest(input *GetTopicRuleInput) (req *request.Request, output *GetTopicRuleOutput) {
  7428. op := &request.Operation{
  7429. Name: opGetTopicRule,
  7430. HTTPMethod: "GET",
  7431. HTTPPath: "/rules/{ruleName}",
  7432. }
  7433. if input == nil {
  7434. input = &GetTopicRuleInput{}
  7435. }
  7436. output = &GetTopicRuleOutput{}
  7437. req = c.newRequest(op, input, output)
  7438. return
  7439. }
  7440. // GetTopicRule API operation for AWS IoT.
  7441. //
  7442. // Gets information about the rule.
  7443. //
  7444. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7445. // with awserr.Error's Code and Message methods to get detailed information about
  7446. // the error.
  7447. //
  7448. // See the AWS API reference guide for AWS IoT's
  7449. // API operation GetTopicRule for usage and error information.
  7450. //
  7451. // Returned Error Codes:
  7452. // * ErrCodeInternalException "InternalException"
  7453. // An unexpected error has occurred.
  7454. //
  7455. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7456. // The request is not valid.
  7457. //
  7458. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7459. // The service is temporarily unavailable.
  7460. //
  7461. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7462. // You are not authorized to perform this operation.
  7463. //
  7464. func (c *IoT) GetTopicRule(input *GetTopicRuleInput) (*GetTopicRuleOutput, error) {
  7465. req, out := c.GetTopicRuleRequest(input)
  7466. return out, req.Send()
  7467. }
  7468. // GetTopicRuleWithContext is the same as GetTopicRule with the addition of
  7469. // the ability to pass a context and additional request options.
  7470. //
  7471. // See GetTopicRule for details on how to use this API operation.
  7472. //
  7473. // The context must be non-nil and will be used for request cancellation. If
  7474. // the context is nil a panic will occur. In the future the SDK may create
  7475. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7476. // for more information on using Contexts.
  7477. func (c *IoT) GetTopicRuleWithContext(ctx aws.Context, input *GetTopicRuleInput, opts ...request.Option) (*GetTopicRuleOutput, error) {
  7478. req, out := c.GetTopicRuleRequest(input)
  7479. req.SetContext(ctx)
  7480. req.ApplyOptions(opts...)
  7481. return out, req.Send()
  7482. }
  7483. const opGetV2LoggingOptions = "GetV2LoggingOptions"
  7484. // GetV2LoggingOptionsRequest generates a "aws/request.Request" representing the
  7485. // client's request for the GetV2LoggingOptions operation. The "output" return
  7486. // value will be populated with the request's response once the request completes
  7487. // successfully.
  7488. //
  7489. // Use "Send" method on the returned Request to send the API call to the service.
  7490. // the "output" return value is not valid until after Send returns without error.
  7491. //
  7492. // See GetV2LoggingOptions for more information on using the GetV2LoggingOptions
  7493. // API call, and error handling.
  7494. //
  7495. // This method is useful when you want to inject custom logic or configuration
  7496. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7497. //
  7498. //
  7499. // // Example sending a request using the GetV2LoggingOptionsRequest method.
  7500. // req, resp := client.GetV2LoggingOptionsRequest(params)
  7501. //
  7502. // err := req.Send()
  7503. // if err == nil { // resp is now filled
  7504. // fmt.Println(resp)
  7505. // }
  7506. func (c *IoT) GetV2LoggingOptionsRequest(input *GetV2LoggingOptionsInput) (req *request.Request, output *GetV2LoggingOptionsOutput) {
  7507. op := &request.Operation{
  7508. Name: opGetV2LoggingOptions,
  7509. HTTPMethod: "GET",
  7510. HTTPPath: "/v2LoggingOptions",
  7511. }
  7512. if input == nil {
  7513. input = &GetV2LoggingOptionsInput{}
  7514. }
  7515. output = &GetV2LoggingOptionsOutput{}
  7516. req = c.newRequest(op, input, output)
  7517. return
  7518. }
  7519. // GetV2LoggingOptions API operation for AWS IoT.
  7520. //
  7521. // Gets the fine grained logging options.
  7522. //
  7523. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7524. // with awserr.Error's Code and Message methods to get detailed information about
  7525. // the error.
  7526. //
  7527. // See the AWS API reference guide for AWS IoT's
  7528. // API operation GetV2LoggingOptions for usage and error information.
  7529. //
  7530. // Returned Error Codes:
  7531. // * ErrCodeInternalException "InternalException"
  7532. // An unexpected error has occurred.
  7533. //
  7534. // * ErrCodeNotConfiguredException "NotConfiguredException"
  7535. // The resource is not configured.
  7536. //
  7537. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7538. // The service is temporarily unavailable.
  7539. //
  7540. func (c *IoT) GetV2LoggingOptions(input *GetV2LoggingOptionsInput) (*GetV2LoggingOptionsOutput, error) {
  7541. req, out := c.GetV2LoggingOptionsRequest(input)
  7542. return out, req.Send()
  7543. }
  7544. // GetV2LoggingOptionsWithContext is the same as GetV2LoggingOptions with the addition of
  7545. // the ability to pass a context and additional request options.
  7546. //
  7547. // See GetV2LoggingOptions for details on how to use this API operation.
  7548. //
  7549. // The context must be non-nil and will be used for request cancellation. If
  7550. // the context is nil a panic will occur. In the future the SDK may create
  7551. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7552. // for more information on using Contexts.
  7553. func (c *IoT) GetV2LoggingOptionsWithContext(ctx aws.Context, input *GetV2LoggingOptionsInput, opts ...request.Option) (*GetV2LoggingOptionsOutput, error) {
  7554. req, out := c.GetV2LoggingOptionsRequest(input)
  7555. req.SetContext(ctx)
  7556. req.ApplyOptions(opts...)
  7557. return out, req.Send()
  7558. }
  7559. const opListActiveViolations = "ListActiveViolations"
  7560. // ListActiveViolationsRequest generates a "aws/request.Request" representing the
  7561. // client's request for the ListActiveViolations operation. The "output" return
  7562. // value will be populated with the request's response once the request completes
  7563. // successfully.
  7564. //
  7565. // Use "Send" method on the returned Request to send the API call to the service.
  7566. // the "output" return value is not valid until after Send returns without error.
  7567. //
  7568. // See ListActiveViolations for more information on using the ListActiveViolations
  7569. // API call, and error handling.
  7570. //
  7571. // This method is useful when you want to inject custom logic or configuration
  7572. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7573. //
  7574. //
  7575. // // Example sending a request using the ListActiveViolationsRequest method.
  7576. // req, resp := client.ListActiveViolationsRequest(params)
  7577. //
  7578. // err := req.Send()
  7579. // if err == nil { // resp is now filled
  7580. // fmt.Println(resp)
  7581. // }
  7582. func (c *IoT) ListActiveViolationsRequest(input *ListActiveViolationsInput) (req *request.Request, output *ListActiveViolationsOutput) {
  7583. op := &request.Operation{
  7584. Name: opListActiveViolations,
  7585. HTTPMethod: "GET",
  7586. HTTPPath: "/active-violations",
  7587. }
  7588. if input == nil {
  7589. input = &ListActiveViolationsInput{}
  7590. }
  7591. output = &ListActiveViolationsOutput{}
  7592. req = c.newRequest(op, input, output)
  7593. return
  7594. }
  7595. // ListActiveViolations API operation for AWS IoT.
  7596. //
  7597. // Lists the active violations for a given Device Defender security profile.
  7598. //
  7599. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7600. // with awserr.Error's Code and Message methods to get detailed information about
  7601. // the error.
  7602. //
  7603. // See the AWS API reference guide for AWS IoT's
  7604. // API operation ListActiveViolations for usage and error information.
  7605. //
  7606. // Returned Error Codes:
  7607. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7608. // The request is not valid.
  7609. //
  7610. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  7611. // The specified resource does not exist.
  7612. //
  7613. // * ErrCodeThrottlingException "ThrottlingException"
  7614. // The rate exceeds the limit.
  7615. //
  7616. // * ErrCodeInternalFailureException "InternalFailureException"
  7617. // An unexpected error has occurred.
  7618. //
  7619. func (c *IoT) ListActiveViolations(input *ListActiveViolationsInput) (*ListActiveViolationsOutput, error) {
  7620. req, out := c.ListActiveViolationsRequest(input)
  7621. return out, req.Send()
  7622. }
  7623. // ListActiveViolationsWithContext is the same as ListActiveViolations with the addition of
  7624. // the ability to pass a context and additional request options.
  7625. //
  7626. // See ListActiveViolations for details on how to use this API operation.
  7627. //
  7628. // The context must be non-nil and will be used for request cancellation. If
  7629. // the context is nil a panic will occur. In the future the SDK may create
  7630. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7631. // for more information on using Contexts.
  7632. func (c *IoT) ListActiveViolationsWithContext(ctx aws.Context, input *ListActiveViolationsInput, opts ...request.Option) (*ListActiveViolationsOutput, error) {
  7633. req, out := c.ListActiveViolationsRequest(input)
  7634. req.SetContext(ctx)
  7635. req.ApplyOptions(opts...)
  7636. return out, req.Send()
  7637. }
  7638. const opListAttachedPolicies = "ListAttachedPolicies"
  7639. // ListAttachedPoliciesRequest generates a "aws/request.Request" representing the
  7640. // client's request for the ListAttachedPolicies operation. The "output" return
  7641. // value will be populated with the request's response once the request completes
  7642. // successfully.
  7643. //
  7644. // Use "Send" method on the returned Request to send the API call to the service.
  7645. // the "output" return value is not valid until after Send returns without error.
  7646. //
  7647. // See ListAttachedPolicies for more information on using the ListAttachedPolicies
  7648. // API call, and error handling.
  7649. //
  7650. // This method is useful when you want to inject custom logic or configuration
  7651. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7652. //
  7653. //
  7654. // // Example sending a request using the ListAttachedPoliciesRequest method.
  7655. // req, resp := client.ListAttachedPoliciesRequest(params)
  7656. //
  7657. // err := req.Send()
  7658. // if err == nil { // resp is now filled
  7659. // fmt.Println(resp)
  7660. // }
  7661. func (c *IoT) ListAttachedPoliciesRequest(input *ListAttachedPoliciesInput) (req *request.Request, output *ListAttachedPoliciesOutput) {
  7662. op := &request.Operation{
  7663. Name: opListAttachedPolicies,
  7664. HTTPMethod: "POST",
  7665. HTTPPath: "/attached-policies/{target}",
  7666. }
  7667. if input == nil {
  7668. input = &ListAttachedPoliciesInput{}
  7669. }
  7670. output = &ListAttachedPoliciesOutput{}
  7671. req = c.newRequest(op, input, output)
  7672. return
  7673. }
  7674. // ListAttachedPolicies API operation for AWS IoT.
  7675. //
  7676. // Lists the policies attached to the specified thing group.
  7677. //
  7678. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7679. // with awserr.Error's Code and Message methods to get detailed information about
  7680. // the error.
  7681. //
  7682. // See the AWS API reference guide for AWS IoT's
  7683. // API operation ListAttachedPolicies for usage and error information.
  7684. //
  7685. // Returned Error Codes:
  7686. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  7687. // The specified resource does not exist.
  7688. //
  7689. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7690. // The request is not valid.
  7691. //
  7692. // * ErrCodeThrottlingException "ThrottlingException"
  7693. // The rate exceeds the limit.
  7694. //
  7695. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7696. // You are not authorized to perform this operation.
  7697. //
  7698. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7699. // The service is temporarily unavailable.
  7700. //
  7701. // * ErrCodeInternalFailureException "InternalFailureException"
  7702. // An unexpected error has occurred.
  7703. //
  7704. // * ErrCodeLimitExceededException "LimitExceededException"
  7705. // A limit has been exceeded.
  7706. //
  7707. func (c *IoT) ListAttachedPolicies(input *ListAttachedPoliciesInput) (*ListAttachedPoliciesOutput, error) {
  7708. req, out := c.ListAttachedPoliciesRequest(input)
  7709. return out, req.Send()
  7710. }
  7711. // ListAttachedPoliciesWithContext is the same as ListAttachedPolicies with the addition of
  7712. // the ability to pass a context and additional request options.
  7713. //
  7714. // See ListAttachedPolicies for details on how to use this API operation.
  7715. //
  7716. // The context must be non-nil and will be used for request cancellation. If
  7717. // the context is nil a panic will occur. In the future the SDK may create
  7718. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7719. // for more information on using Contexts.
  7720. func (c *IoT) ListAttachedPoliciesWithContext(ctx aws.Context, input *ListAttachedPoliciesInput, opts ...request.Option) (*ListAttachedPoliciesOutput, error) {
  7721. req, out := c.ListAttachedPoliciesRequest(input)
  7722. req.SetContext(ctx)
  7723. req.ApplyOptions(opts...)
  7724. return out, req.Send()
  7725. }
  7726. const opListAuditFindings = "ListAuditFindings"
  7727. // ListAuditFindingsRequest generates a "aws/request.Request" representing the
  7728. // client's request for the ListAuditFindings operation. The "output" return
  7729. // value will be populated with the request's response once the request completes
  7730. // successfully.
  7731. //
  7732. // Use "Send" method on the returned Request to send the API call to the service.
  7733. // the "output" return value is not valid until after Send returns without error.
  7734. //
  7735. // See ListAuditFindings for more information on using the ListAuditFindings
  7736. // API call, and error handling.
  7737. //
  7738. // This method is useful when you want to inject custom logic or configuration
  7739. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7740. //
  7741. //
  7742. // // Example sending a request using the ListAuditFindingsRequest method.
  7743. // req, resp := client.ListAuditFindingsRequest(params)
  7744. //
  7745. // err := req.Send()
  7746. // if err == nil { // resp is now filled
  7747. // fmt.Println(resp)
  7748. // }
  7749. func (c *IoT) ListAuditFindingsRequest(input *ListAuditFindingsInput) (req *request.Request, output *ListAuditFindingsOutput) {
  7750. op := &request.Operation{
  7751. Name: opListAuditFindings,
  7752. HTTPMethod: "POST",
  7753. HTTPPath: "/audit/findings",
  7754. }
  7755. if input == nil {
  7756. input = &ListAuditFindingsInput{}
  7757. }
  7758. output = &ListAuditFindingsOutput{}
  7759. req = c.newRequest(op, input, output)
  7760. return
  7761. }
  7762. // ListAuditFindings API operation for AWS IoT.
  7763. //
  7764. // Lists the findings (results) of a Device Defender audit or of the audits
  7765. // performed during a specified time period. (Findings are retained for 180
  7766. // days.)
  7767. //
  7768. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7769. // with awserr.Error's Code and Message methods to get detailed information about
  7770. // the error.
  7771. //
  7772. // See the AWS API reference guide for AWS IoT's
  7773. // API operation ListAuditFindings for usage and error information.
  7774. //
  7775. // Returned Error Codes:
  7776. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7777. // The request is not valid.
  7778. //
  7779. // * ErrCodeThrottlingException "ThrottlingException"
  7780. // The rate exceeds the limit.
  7781. //
  7782. // * ErrCodeInternalFailureException "InternalFailureException"
  7783. // An unexpected error has occurred.
  7784. //
  7785. func (c *IoT) ListAuditFindings(input *ListAuditFindingsInput) (*ListAuditFindingsOutput, error) {
  7786. req, out := c.ListAuditFindingsRequest(input)
  7787. return out, req.Send()
  7788. }
  7789. // ListAuditFindingsWithContext is the same as ListAuditFindings with the addition of
  7790. // the ability to pass a context and additional request options.
  7791. //
  7792. // See ListAuditFindings for details on how to use this API operation.
  7793. //
  7794. // The context must be non-nil and will be used for request cancellation. If
  7795. // the context is nil a panic will occur. In the future the SDK may create
  7796. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7797. // for more information on using Contexts.
  7798. func (c *IoT) ListAuditFindingsWithContext(ctx aws.Context, input *ListAuditFindingsInput, opts ...request.Option) (*ListAuditFindingsOutput, error) {
  7799. req, out := c.ListAuditFindingsRequest(input)
  7800. req.SetContext(ctx)
  7801. req.ApplyOptions(opts...)
  7802. return out, req.Send()
  7803. }
  7804. const opListAuditTasks = "ListAuditTasks"
  7805. // ListAuditTasksRequest generates a "aws/request.Request" representing the
  7806. // client's request for the ListAuditTasks operation. The "output" return
  7807. // value will be populated with the request's response once the request completes
  7808. // successfully.
  7809. //
  7810. // Use "Send" method on the returned Request to send the API call to the service.
  7811. // the "output" return value is not valid until after Send returns without error.
  7812. //
  7813. // See ListAuditTasks for more information on using the ListAuditTasks
  7814. // API call, and error handling.
  7815. //
  7816. // This method is useful when you want to inject custom logic or configuration
  7817. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7818. //
  7819. //
  7820. // // Example sending a request using the ListAuditTasksRequest method.
  7821. // req, resp := client.ListAuditTasksRequest(params)
  7822. //
  7823. // err := req.Send()
  7824. // if err == nil { // resp is now filled
  7825. // fmt.Println(resp)
  7826. // }
  7827. func (c *IoT) ListAuditTasksRequest(input *ListAuditTasksInput) (req *request.Request, output *ListAuditTasksOutput) {
  7828. op := &request.Operation{
  7829. Name: opListAuditTasks,
  7830. HTTPMethod: "GET",
  7831. HTTPPath: "/audit/tasks",
  7832. }
  7833. if input == nil {
  7834. input = &ListAuditTasksInput{}
  7835. }
  7836. output = &ListAuditTasksOutput{}
  7837. req = c.newRequest(op, input, output)
  7838. return
  7839. }
  7840. // ListAuditTasks API operation for AWS IoT.
  7841. //
  7842. // Lists the Device Defender audits that have been performed during a given
  7843. // time period.
  7844. //
  7845. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7846. // with awserr.Error's Code and Message methods to get detailed information about
  7847. // the error.
  7848. //
  7849. // See the AWS API reference guide for AWS IoT's
  7850. // API operation ListAuditTasks for usage and error information.
  7851. //
  7852. // Returned Error Codes:
  7853. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7854. // The request is not valid.
  7855. //
  7856. // * ErrCodeThrottlingException "ThrottlingException"
  7857. // The rate exceeds the limit.
  7858. //
  7859. // * ErrCodeInternalFailureException "InternalFailureException"
  7860. // An unexpected error has occurred.
  7861. //
  7862. func (c *IoT) ListAuditTasks(input *ListAuditTasksInput) (*ListAuditTasksOutput, error) {
  7863. req, out := c.ListAuditTasksRequest(input)
  7864. return out, req.Send()
  7865. }
  7866. // ListAuditTasksWithContext is the same as ListAuditTasks with the addition of
  7867. // the ability to pass a context and additional request options.
  7868. //
  7869. // See ListAuditTasks for details on how to use this API operation.
  7870. //
  7871. // The context must be non-nil and will be used for request cancellation. If
  7872. // the context is nil a panic will occur. In the future the SDK may create
  7873. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7874. // for more information on using Contexts.
  7875. func (c *IoT) ListAuditTasksWithContext(ctx aws.Context, input *ListAuditTasksInput, opts ...request.Option) (*ListAuditTasksOutput, error) {
  7876. req, out := c.ListAuditTasksRequest(input)
  7877. req.SetContext(ctx)
  7878. req.ApplyOptions(opts...)
  7879. return out, req.Send()
  7880. }
  7881. const opListAuthorizers = "ListAuthorizers"
  7882. // ListAuthorizersRequest generates a "aws/request.Request" representing the
  7883. // client's request for the ListAuthorizers operation. The "output" return
  7884. // value will be populated with the request's response once the request completes
  7885. // successfully.
  7886. //
  7887. // Use "Send" method on the returned Request to send the API call to the service.
  7888. // the "output" return value is not valid until after Send returns without error.
  7889. //
  7890. // See ListAuthorizers for more information on using the ListAuthorizers
  7891. // API call, and error handling.
  7892. //
  7893. // This method is useful when you want to inject custom logic or configuration
  7894. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7895. //
  7896. //
  7897. // // Example sending a request using the ListAuthorizersRequest method.
  7898. // req, resp := client.ListAuthorizersRequest(params)
  7899. //
  7900. // err := req.Send()
  7901. // if err == nil { // resp is now filled
  7902. // fmt.Println(resp)
  7903. // }
  7904. func (c *IoT) ListAuthorizersRequest(input *ListAuthorizersInput) (req *request.Request, output *ListAuthorizersOutput) {
  7905. op := &request.Operation{
  7906. Name: opListAuthorizers,
  7907. HTTPMethod: "GET",
  7908. HTTPPath: "/authorizers/",
  7909. }
  7910. if input == nil {
  7911. input = &ListAuthorizersInput{}
  7912. }
  7913. output = &ListAuthorizersOutput{}
  7914. req = c.newRequest(op, input, output)
  7915. return
  7916. }
  7917. // ListAuthorizers API operation for AWS IoT.
  7918. //
  7919. // Lists the authorizers registered in your account.
  7920. //
  7921. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7922. // with awserr.Error's Code and Message methods to get detailed information about
  7923. // the error.
  7924. //
  7925. // See the AWS API reference guide for AWS IoT's
  7926. // API operation ListAuthorizers for usage and error information.
  7927. //
  7928. // Returned Error Codes:
  7929. // * ErrCodeInvalidRequestException "InvalidRequestException"
  7930. // The request is not valid.
  7931. //
  7932. // * ErrCodeThrottlingException "ThrottlingException"
  7933. // The rate exceeds the limit.
  7934. //
  7935. // * ErrCodeUnauthorizedException "UnauthorizedException"
  7936. // You are not authorized to perform this operation.
  7937. //
  7938. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  7939. // The service is temporarily unavailable.
  7940. //
  7941. // * ErrCodeInternalFailureException "InternalFailureException"
  7942. // An unexpected error has occurred.
  7943. //
  7944. func (c *IoT) ListAuthorizers(input *ListAuthorizersInput) (*ListAuthorizersOutput, error) {
  7945. req, out := c.ListAuthorizersRequest(input)
  7946. return out, req.Send()
  7947. }
  7948. // ListAuthorizersWithContext is the same as ListAuthorizers with the addition of
  7949. // the ability to pass a context and additional request options.
  7950. //
  7951. // See ListAuthorizers for details on how to use this API operation.
  7952. //
  7953. // The context must be non-nil and will be used for request cancellation. If
  7954. // the context is nil a panic will occur. In the future the SDK may create
  7955. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7956. // for more information on using Contexts.
  7957. func (c *IoT) ListAuthorizersWithContext(ctx aws.Context, input *ListAuthorizersInput, opts ...request.Option) (*ListAuthorizersOutput, error) {
  7958. req, out := c.ListAuthorizersRequest(input)
  7959. req.SetContext(ctx)
  7960. req.ApplyOptions(opts...)
  7961. return out, req.Send()
  7962. }
  7963. const opListBillingGroups = "ListBillingGroups"
  7964. // ListBillingGroupsRequest generates a "aws/request.Request" representing the
  7965. // client's request for the ListBillingGroups operation. The "output" return
  7966. // value will be populated with the request's response once the request completes
  7967. // successfully.
  7968. //
  7969. // Use "Send" method on the returned Request to send the API call to the service.
  7970. // the "output" return value is not valid until after Send returns without error.
  7971. //
  7972. // See ListBillingGroups for more information on using the ListBillingGroups
  7973. // API call, and error handling.
  7974. //
  7975. // This method is useful when you want to inject custom logic or configuration
  7976. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7977. //
  7978. //
  7979. // // Example sending a request using the ListBillingGroupsRequest method.
  7980. // req, resp := client.ListBillingGroupsRequest(params)
  7981. //
  7982. // err := req.Send()
  7983. // if err == nil { // resp is now filled
  7984. // fmt.Println(resp)
  7985. // }
  7986. func (c *IoT) ListBillingGroupsRequest(input *ListBillingGroupsInput) (req *request.Request, output *ListBillingGroupsOutput) {
  7987. op := &request.Operation{
  7988. Name: opListBillingGroups,
  7989. HTTPMethod: "GET",
  7990. HTTPPath: "/billing-groups",
  7991. }
  7992. if input == nil {
  7993. input = &ListBillingGroupsInput{}
  7994. }
  7995. output = &ListBillingGroupsOutput{}
  7996. req = c.newRequest(op, input, output)
  7997. return
  7998. }
  7999. // ListBillingGroups API operation for AWS IoT.
  8000. //
  8001. // Lists the billing groups you have created.
  8002. //
  8003. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8004. // with awserr.Error's Code and Message methods to get detailed information about
  8005. // the error.
  8006. //
  8007. // See the AWS API reference guide for AWS IoT's
  8008. // API operation ListBillingGroups for usage and error information.
  8009. //
  8010. // Returned Error Codes:
  8011. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8012. // The request is not valid.
  8013. //
  8014. // * ErrCodeInternalFailureException "InternalFailureException"
  8015. // An unexpected error has occurred.
  8016. //
  8017. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  8018. // The specified resource does not exist.
  8019. //
  8020. // * ErrCodeThrottlingException "ThrottlingException"
  8021. // The rate exceeds the limit.
  8022. //
  8023. func (c *IoT) ListBillingGroups(input *ListBillingGroupsInput) (*ListBillingGroupsOutput, error) {
  8024. req, out := c.ListBillingGroupsRequest(input)
  8025. return out, req.Send()
  8026. }
  8027. // ListBillingGroupsWithContext is the same as ListBillingGroups with the addition of
  8028. // the ability to pass a context and additional request options.
  8029. //
  8030. // See ListBillingGroups for details on how to use this API operation.
  8031. //
  8032. // The context must be non-nil and will be used for request cancellation. If
  8033. // the context is nil a panic will occur. In the future the SDK may create
  8034. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8035. // for more information on using Contexts.
  8036. func (c *IoT) ListBillingGroupsWithContext(ctx aws.Context, input *ListBillingGroupsInput, opts ...request.Option) (*ListBillingGroupsOutput, error) {
  8037. req, out := c.ListBillingGroupsRequest(input)
  8038. req.SetContext(ctx)
  8039. req.ApplyOptions(opts...)
  8040. return out, req.Send()
  8041. }
  8042. const opListCACertificates = "ListCACertificates"
  8043. // ListCACertificatesRequest generates a "aws/request.Request" representing the
  8044. // client's request for the ListCACertificates operation. The "output" return
  8045. // value will be populated with the request's response once the request completes
  8046. // successfully.
  8047. //
  8048. // Use "Send" method on the returned Request to send the API call to the service.
  8049. // the "output" return value is not valid until after Send returns without error.
  8050. //
  8051. // See ListCACertificates for more information on using the ListCACertificates
  8052. // API call, and error handling.
  8053. //
  8054. // This method is useful when you want to inject custom logic or configuration
  8055. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8056. //
  8057. //
  8058. // // Example sending a request using the ListCACertificatesRequest method.
  8059. // req, resp := client.ListCACertificatesRequest(params)
  8060. //
  8061. // err := req.Send()
  8062. // if err == nil { // resp is now filled
  8063. // fmt.Println(resp)
  8064. // }
  8065. func (c *IoT) ListCACertificatesRequest(input *ListCACertificatesInput) (req *request.Request, output *ListCACertificatesOutput) {
  8066. op := &request.Operation{
  8067. Name: opListCACertificates,
  8068. HTTPMethod: "GET",
  8069. HTTPPath: "/cacertificates",
  8070. }
  8071. if input == nil {
  8072. input = &ListCACertificatesInput{}
  8073. }
  8074. output = &ListCACertificatesOutput{}
  8075. req = c.newRequest(op, input, output)
  8076. return
  8077. }
  8078. // ListCACertificates API operation for AWS IoT.
  8079. //
  8080. // Lists the CA certificates registered for your AWS account.
  8081. //
  8082. // The results are paginated with a default page size of 25. You can use the
  8083. // returned marker to retrieve additional results.
  8084. //
  8085. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8086. // with awserr.Error's Code and Message methods to get detailed information about
  8087. // the error.
  8088. //
  8089. // See the AWS API reference guide for AWS IoT's
  8090. // API operation ListCACertificates for usage and error information.
  8091. //
  8092. // Returned Error Codes:
  8093. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8094. // The request is not valid.
  8095. //
  8096. // * ErrCodeThrottlingException "ThrottlingException"
  8097. // The rate exceeds the limit.
  8098. //
  8099. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8100. // You are not authorized to perform this operation.
  8101. //
  8102. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8103. // The service is temporarily unavailable.
  8104. //
  8105. // * ErrCodeInternalFailureException "InternalFailureException"
  8106. // An unexpected error has occurred.
  8107. //
  8108. func (c *IoT) ListCACertificates(input *ListCACertificatesInput) (*ListCACertificatesOutput, error) {
  8109. req, out := c.ListCACertificatesRequest(input)
  8110. return out, req.Send()
  8111. }
  8112. // ListCACertificatesWithContext is the same as ListCACertificates with the addition of
  8113. // the ability to pass a context and additional request options.
  8114. //
  8115. // See ListCACertificates for details on how to use this API operation.
  8116. //
  8117. // The context must be non-nil and will be used for request cancellation. If
  8118. // the context is nil a panic will occur. In the future the SDK may create
  8119. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8120. // for more information on using Contexts.
  8121. func (c *IoT) ListCACertificatesWithContext(ctx aws.Context, input *ListCACertificatesInput, opts ...request.Option) (*ListCACertificatesOutput, error) {
  8122. req, out := c.ListCACertificatesRequest(input)
  8123. req.SetContext(ctx)
  8124. req.ApplyOptions(opts...)
  8125. return out, req.Send()
  8126. }
  8127. const opListCertificates = "ListCertificates"
  8128. // ListCertificatesRequest generates a "aws/request.Request" representing the
  8129. // client's request for the ListCertificates operation. The "output" return
  8130. // value will be populated with the request's response once the request completes
  8131. // successfully.
  8132. //
  8133. // Use "Send" method on the returned Request to send the API call to the service.
  8134. // the "output" return value is not valid until after Send returns without error.
  8135. //
  8136. // See ListCertificates for more information on using the ListCertificates
  8137. // API call, and error handling.
  8138. //
  8139. // This method is useful when you want to inject custom logic or configuration
  8140. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8141. //
  8142. //
  8143. // // Example sending a request using the ListCertificatesRequest method.
  8144. // req, resp := client.ListCertificatesRequest(params)
  8145. //
  8146. // err := req.Send()
  8147. // if err == nil { // resp is now filled
  8148. // fmt.Println(resp)
  8149. // }
  8150. func (c *IoT) ListCertificatesRequest(input *ListCertificatesInput) (req *request.Request, output *ListCertificatesOutput) {
  8151. op := &request.Operation{
  8152. Name: opListCertificates,
  8153. HTTPMethod: "GET",
  8154. HTTPPath: "/certificates",
  8155. }
  8156. if input == nil {
  8157. input = &ListCertificatesInput{}
  8158. }
  8159. output = &ListCertificatesOutput{}
  8160. req = c.newRequest(op, input, output)
  8161. return
  8162. }
  8163. // ListCertificates API operation for AWS IoT.
  8164. //
  8165. // Lists the certificates registered in your AWS account.
  8166. //
  8167. // The results are paginated with a default page size of 25. You can use the
  8168. // returned marker to retrieve additional results.
  8169. //
  8170. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8171. // with awserr.Error's Code and Message methods to get detailed information about
  8172. // the error.
  8173. //
  8174. // See the AWS API reference guide for AWS IoT's
  8175. // API operation ListCertificates for usage and error information.
  8176. //
  8177. // Returned Error Codes:
  8178. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8179. // The request is not valid.
  8180. //
  8181. // * ErrCodeThrottlingException "ThrottlingException"
  8182. // The rate exceeds the limit.
  8183. //
  8184. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8185. // You are not authorized to perform this operation.
  8186. //
  8187. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8188. // The service is temporarily unavailable.
  8189. //
  8190. // * ErrCodeInternalFailureException "InternalFailureException"
  8191. // An unexpected error has occurred.
  8192. //
  8193. func (c *IoT) ListCertificates(input *ListCertificatesInput) (*ListCertificatesOutput, error) {
  8194. req, out := c.ListCertificatesRequest(input)
  8195. return out, req.Send()
  8196. }
  8197. // ListCertificatesWithContext is the same as ListCertificates with the addition of
  8198. // the ability to pass a context and additional request options.
  8199. //
  8200. // See ListCertificates for details on how to use this API operation.
  8201. //
  8202. // The context must be non-nil and will be used for request cancellation. If
  8203. // the context is nil a panic will occur. In the future the SDK may create
  8204. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8205. // for more information on using Contexts.
  8206. func (c *IoT) ListCertificatesWithContext(ctx aws.Context, input *ListCertificatesInput, opts ...request.Option) (*ListCertificatesOutput, error) {
  8207. req, out := c.ListCertificatesRequest(input)
  8208. req.SetContext(ctx)
  8209. req.ApplyOptions(opts...)
  8210. return out, req.Send()
  8211. }
  8212. const opListCertificatesByCA = "ListCertificatesByCA"
  8213. // ListCertificatesByCARequest generates a "aws/request.Request" representing the
  8214. // client's request for the ListCertificatesByCA operation. The "output" return
  8215. // value will be populated with the request's response once the request completes
  8216. // successfully.
  8217. //
  8218. // Use "Send" method on the returned Request to send the API call to the service.
  8219. // the "output" return value is not valid until after Send returns without error.
  8220. //
  8221. // See ListCertificatesByCA for more information on using the ListCertificatesByCA
  8222. // API call, and error handling.
  8223. //
  8224. // This method is useful when you want to inject custom logic or configuration
  8225. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8226. //
  8227. //
  8228. // // Example sending a request using the ListCertificatesByCARequest method.
  8229. // req, resp := client.ListCertificatesByCARequest(params)
  8230. //
  8231. // err := req.Send()
  8232. // if err == nil { // resp is now filled
  8233. // fmt.Println(resp)
  8234. // }
  8235. func (c *IoT) ListCertificatesByCARequest(input *ListCertificatesByCAInput) (req *request.Request, output *ListCertificatesByCAOutput) {
  8236. op := &request.Operation{
  8237. Name: opListCertificatesByCA,
  8238. HTTPMethod: "GET",
  8239. HTTPPath: "/certificates-by-ca/{caCertificateId}",
  8240. }
  8241. if input == nil {
  8242. input = &ListCertificatesByCAInput{}
  8243. }
  8244. output = &ListCertificatesByCAOutput{}
  8245. req = c.newRequest(op, input, output)
  8246. return
  8247. }
  8248. // ListCertificatesByCA API operation for AWS IoT.
  8249. //
  8250. // List the device certificates signed by the specified CA certificate.
  8251. //
  8252. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8253. // with awserr.Error's Code and Message methods to get detailed information about
  8254. // the error.
  8255. //
  8256. // See the AWS API reference guide for AWS IoT's
  8257. // API operation ListCertificatesByCA for usage and error information.
  8258. //
  8259. // Returned Error Codes:
  8260. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8261. // The request is not valid.
  8262. //
  8263. // * ErrCodeThrottlingException "ThrottlingException"
  8264. // The rate exceeds the limit.
  8265. //
  8266. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8267. // You are not authorized to perform this operation.
  8268. //
  8269. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8270. // The service is temporarily unavailable.
  8271. //
  8272. // * ErrCodeInternalFailureException "InternalFailureException"
  8273. // An unexpected error has occurred.
  8274. //
  8275. func (c *IoT) ListCertificatesByCA(input *ListCertificatesByCAInput) (*ListCertificatesByCAOutput, error) {
  8276. req, out := c.ListCertificatesByCARequest(input)
  8277. return out, req.Send()
  8278. }
  8279. // ListCertificatesByCAWithContext is the same as ListCertificatesByCA with the addition of
  8280. // the ability to pass a context and additional request options.
  8281. //
  8282. // See ListCertificatesByCA for details on how to use this API operation.
  8283. //
  8284. // The context must be non-nil and will be used for request cancellation. If
  8285. // the context is nil a panic will occur. In the future the SDK may create
  8286. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8287. // for more information on using Contexts.
  8288. func (c *IoT) ListCertificatesByCAWithContext(ctx aws.Context, input *ListCertificatesByCAInput, opts ...request.Option) (*ListCertificatesByCAOutput, error) {
  8289. req, out := c.ListCertificatesByCARequest(input)
  8290. req.SetContext(ctx)
  8291. req.ApplyOptions(opts...)
  8292. return out, req.Send()
  8293. }
  8294. const opListIndices = "ListIndices"
  8295. // ListIndicesRequest generates a "aws/request.Request" representing the
  8296. // client's request for the ListIndices operation. The "output" return
  8297. // value will be populated with the request's response once the request completes
  8298. // successfully.
  8299. //
  8300. // Use "Send" method on the returned Request to send the API call to the service.
  8301. // the "output" return value is not valid until after Send returns without error.
  8302. //
  8303. // See ListIndices for more information on using the ListIndices
  8304. // API call, and error handling.
  8305. //
  8306. // This method is useful when you want to inject custom logic or configuration
  8307. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8308. //
  8309. //
  8310. // // Example sending a request using the ListIndicesRequest method.
  8311. // req, resp := client.ListIndicesRequest(params)
  8312. //
  8313. // err := req.Send()
  8314. // if err == nil { // resp is now filled
  8315. // fmt.Println(resp)
  8316. // }
  8317. func (c *IoT) ListIndicesRequest(input *ListIndicesInput) (req *request.Request, output *ListIndicesOutput) {
  8318. op := &request.Operation{
  8319. Name: opListIndices,
  8320. HTTPMethod: "GET",
  8321. HTTPPath: "/indices",
  8322. }
  8323. if input == nil {
  8324. input = &ListIndicesInput{}
  8325. }
  8326. output = &ListIndicesOutput{}
  8327. req = c.newRequest(op, input, output)
  8328. return
  8329. }
  8330. // ListIndices API operation for AWS IoT.
  8331. //
  8332. // Lists the search indices.
  8333. //
  8334. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8335. // with awserr.Error's Code and Message methods to get detailed information about
  8336. // the error.
  8337. //
  8338. // See the AWS API reference guide for AWS IoT's
  8339. // API operation ListIndices for usage and error information.
  8340. //
  8341. // Returned Error Codes:
  8342. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8343. // The request is not valid.
  8344. //
  8345. // * ErrCodeThrottlingException "ThrottlingException"
  8346. // The rate exceeds the limit.
  8347. //
  8348. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8349. // You are not authorized to perform this operation.
  8350. //
  8351. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8352. // The service is temporarily unavailable.
  8353. //
  8354. // * ErrCodeInternalFailureException "InternalFailureException"
  8355. // An unexpected error has occurred.
  8356. //
  8357. func (c *IoT) ListIndices(input *ListIndicesInput) (*ListIndicesOutput, error) {
  8358. req, out := c.ListIndicesRequest(input)
  8359. return out, req.Send()
  8360. }
  8361. // ListIndicesWithContext is the same as ListIndices with the addition of
  8362. // the ability to pass a context and additional request options.
  8363. //
  8364. // See ListIndices for details on how to use this API operation.
  8365. //
  8366. // The context must be non-nil and will be used for request cancellation. If
  8367. // the context is nil a panic will occur. In the future the SDK may create
  8368. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8369. // for more information on using Contexts.
  8370. func (c *IoT) ListIndicesWithContext(ctx aws.Context, input *ListIndicesInput, opts ...request.Option) (*ListIndicesOutput, error) {
  8371. req, out := c.ListIndicesRequest(input)
  8372. req.SetContext(ctx)
  8373. req.ApplyOptions(opts...)
  8374. return out, req.Send()
  8375. }
  8376. const opListJobExecutionsForJob = "ListJobExecutionsForJob"
  8377. // ListJobExecutionsForJobRequest generates a "aws/request.Request" representing the
  8378. // client's request for the ListJobExecutionsForJob operation. The "output" return
  8379. // value will be populated with the request's response once the request completes
  8380. // successfully.
  8381. //
  8382. // Use "Send" method on the returned Request to send the API call to the service.
  8383. // the "output" return value is not valid until after Send returns without error.
  8384. //
  8385. // See ListJobExecutionsForJob for more information on using the ListJobExecutionsForJob
  8386. // API call, and error handling.
  8387. //
  8388. // This method is useful when you want to inject custom logic or configuration
  8389. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8390. //
  8391. //
  8392. // // Example sending a request using the ListJobExecutionsForJobRequest method.
  8393. // req, resp := client.ListJobExecutionsForJobRequest(params)
  8394. //
  8395. // err := req.Send()
  8396. // if err == nil { // resp is now filled
  8397. // fmt.Println(resp)
  8398. // }
  8399. func (c *IoT) ListJobExecutionsForJobRequest(input *ListJobExecutionsForJobInput) (req *request.Request, output *ListJobExecutionsForJobOutput) {
  8400. op := &request.Operation{
  8401. Name: opListJobExecutionsForJob,
  8402. HTTPMethod: "GET",
  8403. HTTPPath: "/jobs/{jobId}/things",
  8404. }
  8405. if input == nil {
  8406. input = &ListJobExecutionsForJobInput{}
  8407. }
  8408. output = &ListJobExecutionsForJobOutput{}
  8409. req = c.newRequest(op, input, output)
  8410. return
  8411. }
  8412. // ListJobExecutionsForJob API operation for AWS IoT.
  8413. //
  8414. // Lists the job executions for a job.
  8415. //
  8416. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8417. // with awserr.Error's Code and Message methods to get detailed information about
  8418. // the error.
  8419. //
  8420. // See the AWS API reference guide for AWS IoT's
  8421. // API operation ListJobExecutionsForJob for usage and error information.
  8422. //
  8423. // Returned Error Codes:
  8424. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8425. // The request is not valid.
  8426. //
  8427. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  8428. // The specified resource does not exist.
  8429. //
  8430. // * ErrCodeThrottlingException "ThrottlingException"
  8431. // The rate exceeds the limit.
  8432. //
  8433. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8434. // The service is temporarily unavailable.
  8435. //
  8436. func (c *IoT) ListJobExecutionsForJob(input *ListJobExecutionsForJobInput) (*ListJobExecutionsForJobOutput, error) {
  8437. req, out := c.ListJobExecutionsForJobRequest(input)
  8438. return out, req.Send()
  8439. }
  8440. // ListJobExecutionsForJobWithContext is the same as ListJobExecutionsForJob with the addition of
  8441. // the ability to pass a context and additional request options.
  8442. //
  8443. // See ListJobExecutionsForJob for details on how to use this API operation.
  8444. //
  8445. // The context must be non-nil and will be used for request cancellation. If
  8446. // the context is nil a panic will occur. In the future the SDK may create
  8447. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8448. // for more information on using Contexts.
  8449. func (c *IoT) ListJobExecutionsForJobWithContext(ctx aws.Context, input *ListJobExecutionsForJobInput, opts ...request.Option) (*ListJobExecutionsForJobOutput, error) {
  8450. req, out := c.ListJobExecutionsForJobRequest(input)
  8451. req.SetContext(ctx)
  8452. req.ApplyOptions(opts...)
  8453. return out, req.Send()
  8454. }
  8455. const opListJobExecutionsForThing = "ListJobExecutionsForThing"
  8456. // ListJobExecutionsForThingRequest generates a "aws/request.Request" representing the
  8457. // client's request for the ListJobExecutionsForThing operation. The "output" return
  8458. // value will be populated with the request's response once the request completes
  8459. // successfully.
  8460. //
  8461. // Use "Send" method on the returned Request to send the API call to the service.
  8462. // the "output" return value is not valid until after Send returns without error.
  8463. //
  8464. // See ListJobExecutionsForThing for more information on using the ListJobExecutionsForThing
  8465. // API call, and error handling.
  8466. //
  8467. // This method is useful when you want to inject custom logic or configuration
  8468. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8469. //
  8470. //
  8471. // // Example sending a request using the ListJobExecutionsForThingRequest method.
  8472. // req, resp := client.ListJobExecutionsForThingRequest(params)
  8473. //
  8474. // err := req.Send()
  8475. // if err == nil { // resp is now filled
  8476. // fmt.Println(resp)
  8477. // }
  8478. func (c *IoT) ListJobExecutionsForThingRequest(input *ListJobExecutionsForThingInput) (req *request.Request, output *ListJobExecutionsForThingOutput) {
  8479. op := &request.Operation{
  8480. Name: opListJobExecutionsForThing,
  8481. HTTPMethod: "GET",
  8482. HTTPPath: "/things/{thingName}/jobs",
  8483. }
  8484. if input == nil {
  8485. input = &ListJobExecutionsForThingInput{}
  8486. }
  8487. output = &ListJobExecutionsForThingOutput{}
  8488. req = c.newRequest(op, input, output)
  8489. return
  8490. }
  8491. // ListJobExecutionsForThing API operation for AWS IoT.
  8492. //
  8493. // Lists the job executions for the specified thing.
  8494. //
  8495. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8496. // with awserr.Error's Code and Message methods to get detailed information about
  8497. // the error.
  8498. //
  8499. // See the AWS API reference guide for AWS IoT's
  8500. // API operation ListJobExecutionsForThing for usage and error information.
  8501. //
  8502. // Returned Error Codes:
  8503. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8504. // The request is not valid.
  8505. //
  8506. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  8507. // The specified resource does not exist.
  8508. //
  8509. // * ErrCodeThrottlingException "ThrottlingException"
  8510. // The rate exceeds the limit.
  8511. //
  8512. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8513. // The service is temporarily unavailable.
  8514. //
  8515. func (c *IoT) ListJobExecutionsForThing(input *ListJobExecutionsForThingInput) (*ListJobExecutionsForThingOutput, error) {
  8516. req, out := c.ListJobExecutionsForThingRequest(input)
  8517. return out, req.Send()
  8518. }
  8519. // ListJobExecutionsForThingWithContext is the same as ListJobExecutionsForThing with the addition of
  8520. // the ability to pass a context and additional request options.
  8521. //
  8522. // See ListJobExecutionsForThing for details on how to use this API operation.
  8523. //
  8524. // The context must be non-nil and will be used for request cancellation. If
  8525. // the context is nil a panic will occur. In the future the SDK may create
  8526. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8527. // for more information on using Contexts.
  8528. func (c *IoT) ListJobExecutionsForThingWithContext(ctx aws.Context, input *ListJobExecutionsForThingInput, opts ...request.Option) (*ListJobExecutionsForThingOutput, error) {
  8529. req, out := c.ListJobExecutionsForThingRequest(input)
  8530. req.SetContext(ctx)
  8531. req.ApplyOptions(opts...)
  8532. return out, req.Send()
  8533. }
  8534. const opListJobs = "ListJobs"
  8535. // ListJobsRequest generates a "aws/request.Request" representing the
  8536. // client's request for the ListJobs operation. The "output" return
  8537. // value will be populated with the request's response once the request completes
  8538. // successfully.
  8539. //
  8540. // Use "Send" method on the returned Request to send the API call to the service.
  8541. // the "output" return value is not valid until after Send returns without error.
  8542. //
  8543. // See ListJobs for more information on using the ListJobs
  8544. // API call, and error handling.
  8545. //
  8546. // This method is useful when you want to inject custom logic or configuration
  8547. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8548. //
  8549. //
  8550. // // Example sending a request using the ListJobsRequest method.
  8551. // req, resp := client.ListJobsRequest(params)
  8552. //
  8553. // err := req.Send()
  8554. // if err == nil { // resp is now filled
  8555. // fmt.Println(resp)
  8556. // }
  8557. func (c *IoT) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) {
  8558. op := &request.Operation{
  8559. Name: opListJobs,
  8560. HTTPMethod: "GET",
  8561. HTTPPath: "/jobs",
  8562. }
  8563. if input == nil {
  8564. input = &ListJobsInput{}
  8565. }
  8566. output = &ListJobsOutput{}
  8567. req = c.newRequest(op, input, output)
  8568. return
  8569. }
  8570. // ListJobs API operation for AWS IoT.
  8571. //
  8572. // Lists jobs.
  8573. //
  8574. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8575. // with awserr.Error's Code and Message methods to get detailed information about
  8576. // the error.
  8577. //
  8578. // See the AWS API reference guide for AWS IoT's
  8579. // API operation ListJobs for usage and error information.
  8580. //
  8581. // Returned Error Codes:
  8582. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8583. // The request is not valid.
  8584. //
  8585. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  8586. // The specified resource does not exist.
  8587. //
  8588. // * ErrCodeThrottlingException "ThrottlingException"
  8589. // The rate exceeds the limit.
  8590. //
  8591. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8592. // The service is temporarily unavailable.
  8593. //
  8594. func (c *IoT) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) {
  8595. req, out := c.ListJobsRequest(input)
  8596. return out, req.Send()
  8597. }
  8598. // ListJobsWithContext is the same as ListJobs with the addition of
  8599. // the ability to pass a context and additional request options.
  8600. //
  8601. // See ListJobs for details on how to use this API operation.
  8602. //
  8603. // The context must be non-nil and will be used for request cancellation. If
  8604. // the context is nil a panic will occur. In the future the SDK may create
  8605. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8606. // for more information on using Contexts.
  8607. func (c *IoT) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) {
  8608. req, out := c.ListJobsRequest(input)
  8609. req.SetContext(ctx)
  8610. req.ApplyOptions(opts...)
  8611. return out, req.Send()
  8612. }
  8613. const opListOTAUpdates = "ListOTAUpdates"
  8614. // ListOTAUpdatesRequest generates a "aws/request.Request" representing the
  8615. // client's request for the ListOTAUpdates operation. The "output" return
  8616. // value will be populated with the request's response once the request completes
  8617. // successfully.
  8618. //
  8619. // Use "Send" method on the returned Request to send the API call to the service.
  8620. // the "output" return value is not valid until after Send returns without error.
  8621. //
  8622. // See ListOTAUpdates for more information on using the ListOTAUpdates
  8623. // API call, and error handling.
  8624. //
  8625. // This method is useful when you want to inject custom logic or configuration
  8626. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8627. //
  8628. //
  8629. // // Example sending a request using the ListOTAUpdatesRequest method.
  8630. // req, resp := client.ListOTAUpdatesRequest(params)
  8631. //
  8632. // err := req.Send()
  8633. // if err == nil { // resp is now filled
  8634. // fmt.Println(resp)
  8635. // }
  8636. func (c *IoT) ListOTAUpdatesRequest(input *ListOTAUpdatesInput) (req *request.Request, output *ListOTAUpdatesOutput) {
  8637. op := &request.Operation{
  8638. Name: opListOTAUpdates,
  8639. HTTPMethod: "GET",
  8640. HTTPPath: "/otaUpdates",
  8641. }
  8642. if input == nil {
  8643. input = &ListOTAUpdatesInput{}
  8644. }
  8645. output = &ListOTAUpdatesOutput{}
  8646. req = c.newRequest(op, input, output)
  8647. return
  8648. }
  8649. // ListOTAUpdates API operation for AWS IoT.
  8650. //
  8651. // Lists OTA updates.
  8652. //
  8653. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8654. // with awserr.Error's Code and Message methods to get detailed information about
  8655. // the error.
  8656. //
  8657. // See the AWS API reference guide for AWS IoT's
  8658. // API operation ListOTAUpdates for usage and error information.
  8659. //
  8660. // Returned Error Codes:
  8661. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8662. // The request is not valid.
  8663. //
  8664. // * ErrCodeThrottlingException "ThrottlingException"
  8665. // The rate exceeds the limit.
  8666. //
  8667. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8668. // You are not authorized to perform this operation.
  8669. //
  8670. // * ErrCodeInternalFailureException "InternalFailureException"
  8671. // An unexpected error has occurred.
  8672. //
  8673. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8674. // The service is temporarily unavailable.
  8675. //
  8676. func (c *IoT) ListOTAUpdates(input *ListOTAUpdatesInput) (*ListOTAUpdatesOutput, error) {
  8677. req, out := c.ListOTAUpdatesRequest(input)
  8678. return out, req.Send()
  8679. }
  8680. // ListOTAUpdatesWithContext is the same as ListOTAUpdates with the addition of
  8681. // the ability to pass a context and additional request options.
  8682. //
  8683. // See ListOTAUpdates for details on how to use this API operation.
  8684. //
  8685. // The context must be non-nil and will be used for request cancellation. If
  8686. // the context is nil a panic will occur. In the future the SDK may create
  8687. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8688. // for more information on using Contexts.
  8689. func (c *IoT) ListOTAUpdatesWithContext(ctx aws.Context, input *ListOTAUpdatesInput, opts ...request.Option) (*ListOTAUpdatesOutput, error) {
  8690. req, out := c.ListOTAUpdatesRequest(input)
  8691. req.SetContext(ctx)
  8692. req.ApplyOptions(opts...)
  8693. return out, req.Send()
  8694. }
  8695. const opListOutgoingCertificates = "ListOutgoingCertificates"
  8696. // ListOutgoingCertificatesRequest generates a "aws/request.Request" representing the
  8697. // client's request for the ListOutgoingCertificates operation. The "output" return
  8698. // value will be populated with the request's response once the request completes
  8699. // successfully.
  8700. //
  8701. // Use "Send" method on the returned Request to send the API call to the service.
  8702. // the "output" return value is not valid until after Send returns without error.
  8703. //
  8704. // See ListOutgoingCertificates for more information on using the ListOutgoingCertificates
  8705. // API call, and error handling.
  8706. //
  8707. // This method is useful when you want to inject custom logic or configuration
  8708. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8709. //
  8710. //
  8711. // // Example sending a request using the ListOutgoingCertificatesRequest method.
  8712. // req, resp := client.ListOutgoingCertificatesRequest(params)
  8713. //
  8714. // err := req.Send()
  8715. // if err == nil { // resp is now filled
  8716. // fmt.Println(resp)
  8717. // }
  8718. func (c *IoT) ListOutgoingCertificatesRequest(input *ListOutgoingCertificatesInput) (req *request.Request, output *ListOutgoingCertificatesOutput) {
  8719. op := &request.Operation{
  8720. Name: opListOutgoingCertificates,
  8721. HTTPMethod: "GET",
  8722. HTTPPath: "/certificates-out-going",
  8723. }
  8724. if input == nil {
  8725. input = &ListOutgoingCertificatesInput{}
  8726. }
  8727. output = &ListOutgoingCertificatesOutput{}
  8728. req = c.newRequest(op, input, output)
  8729. return
  8730. }
  8731. // ListOutgoingCertificates API operation for AWS IoT.
  8732. //
  8733. // Lists certificates that are being transferred but not yet accepted.
  8734. //
  8735. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8736. // with awserr.Error's Code and Message methods to get detailed information about
  8737. // the error.
  8738. //
  8739. // See the AWS API reference guide for AWS IoT's
  8740. // API operation ListOutgoingCertificates for usage and error information.
  8741. //
  8742. // Returned Error Codes:
  8743. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8744. // The request is not valid.
  8745. //
  8746. // * ErrCodeThrottlingException "ThrottlingException"
  8747. // The rate exceeds the limit.
  8748. //
  8749. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8750. // You are not authorized to perform this operation.
  8751. //
  8752. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8753. // The service is temporarily unavailable.
  8754. //
  8755. // * ErrCodeInternalFailureException "InternalFailureException"
  8756. // An unexpected error has occurred.
  8757. //
  8758. func (c *IoT) ListOutgoingCertificates(input *ListOutgoingCertificatesInput) (*ListOutgoingCertificatesOutput, error) {
  8759. req, out := c.ListOutgoingCertificatesRequest(input)
  8760. return out, req.Send()
  8761. }
  8762. // ListOutgoingCertificatesWithContext is the same as ListOutgoingCertificates with the addition of
  8763. // the ability to pass a context and additional request options.
  8764. //
  8765. // See ListOutgoingCertificates for details on how to use this API operation.
  8766. //
  8767. // The context must be non-nil and will be used for request cancellation. If
  8768. // the context is nil a panic will occur. In the future the SDK may create
  8769. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8770. // for more information on using Contexts.
  8771. func (c *IoT) ListOutgoingCertificatesWithContext(ctx aws.Context, input *ListOutgoingCertificatesInput, opts ...request.Option) (*ListOutgoingCertificatesOutput, error) {
  8772. req, out := c.ListOutgoingCertificatesRequest(input)
  8773. req.SetContext(ctx)
  8774. req.ApplyOptions(opts...)
  8775. return out, req.Send()
  8776. }
  8777. const opListPolicies = "ListPolicies"
  8778. // ListPoliciesRequest generates a "aws/request.Request" representing the
  8779. // client's request for the ListPolicies operation. The "output" return
  8780. // value will be populated with the request's response once the request completes
  8781. // successfully.
  8782. //
  8783. // Use "Send" method on the returned Request to send the API call to the service.
  8784. // the "output" return value is not valid until after Send returns without error.
  8785. //
  8786. // See ListPolicies for more information on using the ListPolicies
  8787. // API call, and error handling.
  8788. //
  8789. // This method is useful when you want to inject custom logic or configuration
  8790. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8791. //
  8792. //
  8793. // // Example sending a request using the ListPoliciesRequest method.
  8794. // req, resp := client.ListPoliciesRequest(params)
  8795. //
  8796. // err := req.Send()
  8797. // if err == nil { // resp is now filled
  8798. // fmt.Println(resp)
  8799. // }
  8800. func (c *IoT) ListPoliciesRequest(input *ListPoliciesInput) (req *request.Request, output *ListPoliciesOutput) {
  8801. op := &request.Operation{
  8802. Name: opListPolicies,
  8803. HTTPMethod: "GET",
  8804. HTTPPath: "/policies",
  8805. }
  8806. if input == nil {
  8807. input = &ListPoliciesInput{}
  8808. }
  8809. output = &ListPoliciesOutput{}
  8810. req = c.newRequest(op, input, output)
  8811. return
  8812. }
  8813. // ListPolicies API operation for AWS IoT.
  8814. //
  8815. // Lists your policies.
  8816. //
  8817. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8818. // with awserr.Error's Code and Message methods to get detailed information about
  8819. // the error.
  8820. //
  8821. // See the AWS API reference guide for AWS IoT's
  8822. // API operation ListPolicies for usage and error information.
  8823. //
  8824. // Returned Error Codes:
  8825. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8826. // The request is not valid.
  8827. //
  8828. // * ErrCodeThrottlingException "ThrottlingException"
  8829. // The rate exceeds the limit.
  8830. //
  8831. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8832. // You are not authorized to perform this operation.
  8833. //
  8834. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8835. // The service is temporarily unavailable.
  8836. //
  8837. // * ErrCodeInternalFailureException "InternalFailureException"
  8838. // An unexpected error has occurred.
  8839. //
  8840. func (c *IoT) ListPolicies(input *ListPoliciesInput) (*ListPoliciesOutput, error) {
  8841. req, out := c.ListPoliciesRequest(input)
  8842. return out, req.Send()
  8843. }
  8844. // ListPoliciesWithContext is the same as ListPolicies with the addition of
  8845. // the ability to pass a context and additional request options.
  8846. //
  8847. // See ListPolicies for details on how to use this API operation.
  8848. //
  8849. // The context must be non-nil and will be used for request cancellation. If
  8850. // the context is nil a panic will occur. In the future the SDK may create
  8851. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8852. // for more information on using Contexts.
  8853. func (c *IoT) ListPoliciesWithContext(ctx aws.Context, input *ListPoliciesInput, opts ...request.Option) (*ListPoliciesOutput, error) {
  8854. req, out := c.ListPoliciesRequest(input)
  8855. req.SetContext(ctx)
  8856. req.ApplyOptions(opts...)
  8857. return out, req.Send()
  8858. }
  8859. const opListPolicyPrincipals = "ListPolicyPrincipals"
  8860. // ListPolicyPrincipalsRequest generates a "aws/request.Request" representing the
  8861. // client's request for the ListPolicyPrincipals operation. The "output" return
  8862. // value will be populated with the request's response once the request completes
  8863. // successfully.
  8864. //
  8865. // Use "Send" method on the returned Request to send the API call to the service.
  8866. // the "output" return value is not valid until after Send returns without error.
  8867. //
  8868. // See ListPolicyPrincipals for more information on using the ListPolicyPrincipals
  8869. // API call, and error handling.
  8870. //
  8871. // This method is useful when you want to inject custom logic or configuration
  8872. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8873. //
  8874. //
  8875. // // Example sending a request using the ListPolicyPrincipalsRequest method.
  8876. // req, resp := client.ListPolicyPrincipalsRequest(params)
  8877. //
  8878. // err := req.Send()
  8879. // if err == nil { // resp is now filled
  8880. // fmt.Println(resp)
  8881. // }
  8882. //
  8883. // Deprecated: ListPolicyPrincipals has been deprecated
  8884. func (c *IoT) ListPolicyPrincipalsRequest(input *ListPolicyPrincipalsInput) (req *request.Request, output *ListPolicyPrincipalsOutput) {
  8885. if c.Client.Config.Logger != nil {
  8886. c.Client.Config.Logger.Log("This operation, ListPolicyPrincipals, has been deprecated")
  8887. }
  8888. op := &request.Operation{
  8889. Name: opListPolicyPrincipals,
  8890. HTTPMethod: "GET",
  8891. HTTPPath: "/policy-principals",
  8892. }
  8893. if input == nil {
  8894. input = &ListPolicyPrincipalsInput{}
  8895. }
  8896. output = &ListPolicyPrincipalsOutput{}
  8897. req = c.newRequest(op, input, output)
  8898. return
  8899. }
  8900. // ListPolicyPrincipals API operation for AWS IoT.
  8901. //
  8902. // Lists the principals associated with the specified policy.
  8903. //
  8904. // Note: This API is deprecated. Please use ListTargetsForPolicy instead.
  8905. //
  8906. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8907. // with awserr.Error's Code and Message methods to get detailed information about
  8908. // the error.
  8909. //
  8910. // See the AWS API reference guide for AWS IoT's
  8911. // API operation ListPolicyPrincipals for usage and error information.
  8912. //
  8913. // Returned Error Codes:
  8914. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  8915. // The specified resource does not exist.
  8916. //
  8917. // * ErrCodeInvalidRequestException "InvalidRequestException"
  8918. // The request is not valid.
  8919. //
  8920. // * ErrCodeThrottlingException "ThrottlingException"
  8921. // The rate exceeds the limit.
  8922. //
  8923. // * ErrCodeUnauthorizedException "UnauthorizedException"
  8924. // You are not authorized to perform this operation.
  8925. //
  8926. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  8927. // The service is temporarily unavailable.
  8928. //
  8929. // * ErrCodeInternalFailureException "InternalFailureException"
  8930. // An unexpected error has occurred.
  8931. //
  8932. //
  8933. // Deprecated: ListPolicyPrincipals has been deprecated
  8934. func (c *IoT) ListPolicyPrincipals(input *ListPolicyPrincipalsInput) (*ListPolicyPrincipalsOutput, error) {
  8935. req, out := c.ListPolicyPrincipalsRequest(input)
  8936. return out, req.Send()
  8937. }
  8938. // ListPolicyPrincipalsWithContext is the same as ListPolicyPrincipals with the addition of
  8939. // the ability to pass a context and additional request options.
  8940. //
  8941. // See ListPolicyPrincipals for details on how to use this API operation.
  8942. //
  8943. // The context must be non-nil and will be used for request cancellation. If
  8944. // the context is nil a panic will occur. In the future the SDK may create
  8945. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8946. // for more information on using Contexts.
  8947. //
  8948. // Deprecated: ListPolicyPrincipalsWithContext has been deprecated
  8949. func (c *IoT) ListPolicyPrincipalsWithContext(ctx aws.Context, input *ListPolicyPrincipalsInput, opts ...request.Option) (*ListPolicyPrincipalsOutput, error) {
  8950. req, out := c.ListPolicyPrincipalsRequest(input)
  8951. req.SetContext(ctx)
  8952. req.ApplyOptions(opts...)
  8953. return out, req.Send()
  8954. }
  8955. const opListPolicyVersions = "ListPolicyVersions"
  8956. // ListPolicyVersionsRequest generates a "aws/request.Request" representing the
  8957. // client's request for the ListPolicyVersions operation. The "output" return
  8958. // value will be populated with the request's response once the request completes
  8959. // successfully.
  8960. //
  8961. // Use "Send" method on the returned Request to send the API call to the service.
  8962. // the "output" return value is not valid until after Send returns without error.
  8963. //
  8964. // See ListPolicyVersions for more information on using the ListPolicyVersions
  8965. // API call, and error handling.
  8966. //
  8967. // This method is useful when you want to inject custom logic or configuration
  8968. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8969. //
  8970. //
  8971. // // Example sending a request using the ListPolicyVersionsRequest method.
  8972. // req, resp := client.ListPolicyVersionsRequest(params)
  8973. //
  8974. // err := req.Send()
  8975. // if err == nil { // resp is now filled
  8976. // fmt.Println(resp)
  8977. // }
  8978. func (c *IoT) ListPolicyVersionsRequest(input *ListPolicyVersionsInput) (req *request.Request, output *ListPolicyVersionsOutput) {
  8979. op := &request.Operation{
  8980. Name: opListPolicyVersions,
  8981. HTTPMethod: "GET",
  8982. HTTPPath: "/policies/{policyName}/version",
  8983. }
  8984. if input == nil {
  8985. input = &ListPolicyVersionsInput{}
  8986. }
  8987. output = &ListPolicyVersionsOutput{}
  8988. req = c.newRequest(op, input, output)
  8989. return
  8990. }
  8991. // ListPolicyVersions API operation for AWS IoT.
  8992. //
  8993. // Lists the versions of the specified policy and identifies the default version.
  8994. //
  8995. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8996. // with awserr.Error's Code and Message methods to get detailed information about
  8997. // the error.
  8998. //
  8999. // See the AWS API reference guide for AWS IoT's
  9000. // API operation ListPolicyVersions for usage and error information.
  9001. //
  9002. // Returned Error Codes:
  9003. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9004. // The specified resource does not exist.
  9005. //
  9006. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9007. // The request is not valid.
  9008. //
  9009. // * ErrCodeThrottlingException "ThrottlingException"
  9010. // The rate exceeds the limit.
  9011. //
  9012. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9013. // You are not authorized to perform this operation.
  9014. //
  9015. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9016. // The service is temporarily unavailable.
  9017. //
  9018. // * ErrCodeInternalFailureException "InternalFailureException"
  9019. // An unexpected error has occurred.
  9020. //
  9021. func (c *IoT) ListPolicyVersions(input *ListPolicyVersionsInput) (*ListPolicyVersionsOutput, error) {
  9022. req, out := c.ListPolicyVersionsRequest(input)
  9023. return out, req.Send()
  9024. }
  9025. // ListPolicyVersionsWithContext is the same as ListPolicyVersions with the addition of
  9026. // the ability to pass a context and additional request options.
  9027. //
  9028. // See ListPolicyVersions for details on how to use this API operation.
  9029. //
  9030. // The context must be non-nil and will be used for request cancellation. If
  9031. // the context is nil a panic will occur. In the future the SDK may create
  9032. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9033. // for more information on using Contexts.
  9034. func (c *IoT) ListPolicyVersionsWithContext(ctx aws.Context, input *ListPolicyVersionsInput, opts ...request.Option) (*ListPolicyVersionsOutput, error) {
  9035. req, out := c.ListPolicyVersionsRequest(input)
  9036. req.SetContext(ctx)
  9037. req.ApplyOptions(opts...)
  9038. return out, req.Send()
  9039. }
  9040. const opListPrincipalPolicies = "ListPrincipalPolicies"
  9041. // ListPrincipalPoliciesRequest generates a "aws/request.Request" representing the
  9042. // client's request for the ListPrincipalPolicies operation. The "output" return
  9043. // value will be populated with the request's response once the request completes
  9044. // successfully.
  9045. //
  9046. // Use "Send" method on the returned Request to send the API call to the service.
  9047. // the "output" return value is not valid until after Send returns without error.
  9048. //
  9049. // See ListPrincipalPolicies for more information on using the ListPrincipalPolicies
  9050. // API call, and error handling.
  9051. //
  9052. // This method is useful when you want to inject custom logic or configuration
  9053. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9054. //
  9055. //
  9056. // // Example sending a request using the ListPrincipalPoliciesRequest method.
  9057. // req, resp := client.ListPrincipalPoliciesRequest(params)
  9058. //
  9059. // err := req.Send()
  9060. // if err == nil { // resp is now filled
  9061. // fmt.Println(resp)
  9062. // }
  9063. //
  9064. // Deprecated: ListPrincipalPolicies has been deprecated
  9065. func (c *IoT) ListPrincipalPoliciesRequest(input *ListPrincipalPoliciesInput) (req *request.Request, output *ListPrincipalPoliciesOutput) {
  9066. if c.Client.Config.Logger != nil {
  9067. c.Client.Config.Logger.Log("This operation, ListPrincipalPolicies, has been deprecated")
  9068. }
  9069. op := &request.Operation{
  9070. Name: opListPrincipalPolicies,
  9071. HTTPMethod: "GET",
  9072. HTTPPath: "/principal-policies",
  9073. }
  9074. if input == nil {
  9075. input = &ListPrincipalPoliciesInput{}
  9076. }
  9077. output = &ListPrincipalPoliciesOutput{}
  9078. req = c.newRequest(op, input, output)
  9079. return
  9080. }
  9081. // ListPrincipalPolicies API operation for AWS IoT.
  9082. //
  9083. // Lists the policies attached to the specified principal. If you use an Cognito
  9084. // identity, the ID must be in AmazonCognito Identity format (http://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html#API_GetCredentialsForIdentity_RequestSyntax).
  9085. //
  9086. // Note: This API is deprecated. Please use ListAttachedPolicies instead.
  9087. //
  9088. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9089. // with awserr.Error's Code and Message methods to get detailed information about
  9090. // the error.
  9091. //
  9092. // See the AWS API reference guide for AWS IoT's
  9093. // API operation ListPrincipalPolicies for usage and error information.
  9094. //
  9095. // Returned Error Codes:
  9096. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9097. // The specified resource does not exist.
  9098. //
  9099. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9100. // The request is not valid.
  9101. //
  9102. // * ErrCodeThrottlingException "ThrottlingException"
  9103. // The rate exceeds the limit.
  9104. //
  9105. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9106. // You are not authorized to perform this operation.
  9107. //
  9108. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9109. // The service is temporarily unavailable.
  9110. //
  9111. // * ErrCodeInternalFailureException "InternalFailureException"
  9112. // An unexpected error has occurred.
  9113. //
  9114. //
  9115. // Deprecated: ListPrincipalPolicies has been deprecated
  9116. func (c *IoT) ListPrincipalPolicies(input *ListPrincipalPoliciesInput) (*ListPrincipalPoliciesOutput, error) {
  9117. req, out := c.ListPrincipalPoliciesRequest(input)
  9118. return out, req.Send()
  9119. }
  9120. // ListPrincipalPoliciesWithContext is the same as ListPrincipalPolicies with the addition of
  9121. // the ability to pass a context and additional request options.
  9122. //
  9123. // See ListPrincipalPolicies for details on how to use this API operation.
  9124. //
  9125. // The context must be non-nil and will be used for request cancellation. If
  9126. // the context is nil a panic will occur. In the future the SDK may create
  9127. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9128. // for more information on using Contexts.
  9129. //
  9130. // Deprecated: ListPrincipalPoliciesWithContext has been deprecated
  9131. func (c *IoT) ListPrincipalPoliciesWithContext(ctx aws.Context, input *ListPrincipalPoliciesInput, opts ...request.Option) (*ListPrincipalPoliciesOutput, error) {
  9132. req, out := c.ListPrincipalPoliciesRequest(input)
  9133. req.SetContext(ctx)
  9134. req.ApplyOptions(opts...)
  9135. return out, req.Send()
  9136. }
  9137. const opListPrincipalThings = "ListPrincipalThings"
  9138. // ListPrincipalThingsRequest generates a "aws/request.Request" representing the
  9139. // client's request for the ListPrincipalThings operation. The "output" return
  9140. // value will be populated with the request's response once the request completes
  9141. // successfully.
  9142. //
  9143. // Use "Send" method on the returned Request to send the API call to the service.
  9144. // the "output" return value is not valid until after Send returns without error.
  9145. //
  9146. // See ListPrincipalThings for more information on using the ListPrincipalThings
  9147. // API call, and error handling.
  9148. //
  9149. // This method is useful when you want to inject custom logic or configuration
  9150. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9151. //
  9152. //
  9153. // // Example sending a request using the ListPrincipalThingsRequest method.
  9154. // req, resp := client.ListPrincipalThingsRequest(params)
  9155. //
  9156. // err := req.Send()
  9157. // if err == nil { // resp is now filled
  9158. // fmt.Println(resp)
  9159. // }
  9160. func (c *IoT) ListPrincipalThingsRequest(input *ListPrincipalThingsInput) (req *request.Request, output *ListPrincipalThingsOutput) {
  9161. op := &request.Operation{
  9162. Name: opListPrincipalThings,
  9163. HTTPMethod: "GET",
  9164. HTTPPath: "/principals/things",
  9165. }
  9166. if input == nil {
  9167. input = &ListPrincipalThingsInput{}
  9168. }
  9169. output = &ListPrincipalThingsOutput{}
  9170. req = c.newRequest(op, input, output)
  9171. return
  9172. }
  9173. // ListPrincipalThings API operation for AWS IoT.
  9174. //
  9175. // Lists the things associated with the specified principal.
  9176. //
  9177. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9178. // with awserr.Error's Code and Message methods to get detailed information about
  9179. // the error.
  9180. //
  9181. // See the AWS API reference guide for AWS IoT's
  9182. // API operation ListPrincipalThings for usage and error information.
  9183. //
  9184. // Returned Error Codes:
  9185. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9186. // The request is not valid.
  9187. //
  9188. // * ErrCodeThrottlingException "ThrottlingException"
  9189. // The rate exceeds the limit.
  9190. //
  9191. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9192. // You are not authorized to perform this operation.
  9193. //
  9194. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9195. // The service is temporarily unavailable.
  9196. //
  9197. // * ErrCodeInternalFailureException "InternalFailureException"
  9198. // An unexpected error has occurred.
  9199. //
  9200. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9201. // The specified resource does not exist.
  9202. //
  9203. func (c *IoT) ListPrincipalThings(input *ListPrincipalThingsInput) (*ListPrincipalThingsOutput, error) {
  9204. req, out := c.ListPrincipalThingsRequest(input)
  9205. return out, req.Send()
  9206. }
  9207. // ListPrincipalThingsWithContext is the same as ListPrincipalThings with the addition of
  9208. // the ability to pass a context and additional request options.
  9209. //
  9210. // See ListPrincipalThings for details on how to use this API operation.
  9211. //
  9212. // The context must be non-nil and will be used for request cancellation. If
  9213. // the context is nil a panic will occur. In the future the SDK may create
  9214. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9215. // for more information on using Contexts.
  9216. func (c *IoT) ListPrincipalThingsWithContext(ctx aws.Context, input *ListPrincipalThingsInput, opts ...request.Option) (*ListPrincipalThingsOutput, error) {
  9217. req, out := c.ListPrincipalThingsRequest(input)
  9218. req.SetContext(ctx)
  9219. req.ApplyOptions(opts...)
  9220. return out, req.Send()
  9221. }
  9222. const opListRoleAliases = "ListRoleAliases"
  9223. // ListRoleAliasesRequest generates a "aws/request.Request" representing the
  9224. // client's request for the ListRoleAliases operation. The "output" return
  9225. // value will be populated with the request's response once the request completes
  9226. // successfully.
  9227. //
  9228. // Use "Send" method on the returned Request to send the API call to the service.
  9229. // the "output" return value is not valid until after Send returns without error.
  9230. //
  9231. // See ListRoleAliases for more information on using the ListRoleAliases
  9232. // API call, and error handling.
  9233. //
  9234. // This method is useful when you want to inject custom logic or configuration
  9235. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9236. //
  9237. //
  9238. // // Example sending a request using the ListRoleAliasesRequest method.
  9239. // req, resp := client.ListRoleAliasesRequest(params)
  9240. //
  9241. // err := req.Send()
  9242. // if err == nil { // resp is now filled
  9243. // fmt.Println(resp)
  9244. // }
  9245. func (c *IoT) ListRoleAliasesRequest(input *ListRoleAliasesInput) (req *request.Request, output *ListRoleAliasesOutput) {
  9246. op := &request.Operation{
  9247. Name: opListRoleAliases,
  9248. HTTPMethod: "GET",
  9249. HTTPPath: "/role-aliases",
  9250. }
  9251. if input == nil {
  9252. input = &ListRoleAliasesInput{}
  9253. }
  9254. output = &ListRoleAliasesOutput{}
  9255. req = c.newRequest(op, input, output)
  9256. return
  9257. }
  9258. // ListRoleAliases API operation for AWS IoT.
  9259. //
  9260. // Lists the role aliases registered in your account.
  9261. //
  9262. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9263. // with awserr.Error's Code and Message methods to get detailed information about
  9264. // the error.
  9265. //
  9266. // See the AWS API reference guide for AWS IoT's
  9267. // API operation ListRoleAliases for usage and error information.
  9268. //
  9269. // Returned Error Codes:
  9270. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9271. // The request is not valid.
  9272. //
  9273. // * ErrCodeThrottlingException "ThrottlingException"
  9274. // The rate exceeds the limit.
  9275. //
  9276. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9277. // You are not authorized to perform this operation.
  9278. //
  9279. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9280. // The service is temporarily unavailable.
  9281. //
  9282. // * ErrCodeInternalFailureException "InternalFailureException"
  9283. // An unexpected error has occurred.
  9284. //
  9285. func (c *IoT) ListRoleAliases(input *ListRoleAliasesInput) (*ListRoleAliasesOutput, error) {
  9286. req, out := c.ListRoleAliasesRequest(input)
  9287. return out, req.Send()
  9288. }
  9289. // ListRoleAliasesWithContext is the same as ListRoleAliases with the addition of
  9290. // the ability to pass a context and additional request options.
  9291. //
  9292. // See ListRoleAliases for details on how to use this API operation.
  9293. //
  9294. // The context must be non-nil and will be used for request cancellation. If
  9295. // the context is nil a panic will occur. In the future the SDK may create
  9296. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9297. // for more information on using Contexts.
  9298. func (c *IoT) ListRoleAliasesWithContext(ctx aws.Context, input *ListRoleAliasesInput, opts ...request.Option) (*ListRoleAliasesOutput, error) {
  9299. req, out := c.ListRoleAliasesRequest(input)
  9300. req.SetContext(ctx)
  9301. req.ApplyOptions(opts...)
  9302. return out, req.Send()
  9303. }
  9304. const opListScheduledAudits = "ListScheduledAudits"
  9305. // ListScheduledAuditsRequest generates a "aws/request.Request" representing the
  9306. // client's request for the ListScheduledAudits operation. The "output" return
  9307. // value will be populated with the request's response once the request completes
  9308. // successfully.
  9309. //
  9310. // Use "Send" method on the returned Request to send the API call to the service.
  9311. // the "output" return value is not valid until after Send returns without error.
  9312. //
  9313. // See ListScheduledAudits for more information on using the ListScheduledAudits
  9314. // API call, and error handling.
  9315. //
  9316. // This method is useful when you want to inject custom logic or configuration
  9317. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9318. //
  9319. //
  9320. // // Example sending a request using the ListScheduledAuditsRequest method.
  9321. // req, resp := client.ListScheduledAuditsRequest(params)
  9322. //
  9323. // err := req.Send()
  9324. // if err == nil { // resp is now filled
  9325. // fmt.Println(resp)
  9326. // }
  9327. func (c *IoT) ListScheduledAuditsRequest(input *ListScheduledAuditsInput) (req *request.Request, output *ListScheduledAuditsOutput) {
  9328. op := &request.Operation{
  9329. Name: opListScheduledAudits,
  9330. HTTPMethod: "GET",
  9331. HTTPPath: "/audit/scheduledaudits",
  9332. }
  9333. if input == nil {
  9334. input = &ListScheduledAuditsInput{}
  9335. }
  9336. output = &ListScheduledAuditsOutput{}
  9337. req = c.newRequest(op, input, output)
  9338. return
  9339. }
  9340. // ListScheduledAudits API operation for AWS IoT.
  9341. //
  9342. // Lists all of your scheduled audits.
  9343. //
  9344. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9345. // with awserr.Error's Code and Message methods to get detailed information about
  9346. // the error.
  9347. //
  9348. // See the AWS API reference guide for AWS IoT's
  9349. // API operation ListScheduledAudits for usage and error information.
  9350. //
  9351. // Returned Error Codes:
  9352. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9353. // The request is not valid.
  9354. //
  9355. // * ErrCodeThrottlingException "ThrottlingException"
  9356. // The rate exceeds the limit.
  9357. //
  9358. // * ErrCodeInternalFailureException "InternalFailureException"
  9359. // An unexpected error has occurred.
  9360. //
  9361. func (c *IoT) ListScheduledAudits(input *ListScheduledAuditsInput) (*ListScheduledAuditsOutput, error) {
  9362. req, out := c.ListScheduledAuditsRequest(input)
  9363. return out, req.Send()
  9364. }
  9365. // ListScheduledAuditsWithContext is the same as ListScheduledAudits with the addition of
  9366. // the ability to pass a context and additional request options.
  9367. //
  9368. // See ListScheduledAudits for details on how to use this API operation.
  9369. //
  9370. // The context must be non-nil and will be used for request cancellation. If
  9371. // the context is nil a panic will occur. In the future the SDK may create
  9372. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9373. // for more information on using Contexts.
  9374. func (c *IoT) ListScheduledAuditsWithContext(ctx aws.Context, input *ListScheduledAuditsInput, opts ...request.Option) (*ListScheduledAuditsOutput, error) {
  9375. req, out := c.ListScheduledAuditsRequest(input)
  9376. req.SetContext(ctx)
  9377. req.ApplyOptions(opts...)
  9378. return out, req.Send()
  9379. }
  9380. const opListSecurityProfiles = "ListSecurityProfiles"
  9381. // ListSecurityProfilesRequest generates a "aws/request.Request" representing the
  9382. // client's request for the ListSecurityProfiles operation. The "output" return
  9383. // value will be populated with the request's response once the request completes
  9384. // successfully.
  9385. //
  9386. // Use "Send" method on the returned Request to send the API call to the service.
  9387. // the "output" return value is not valid until after Send returns without error.
  9388. //
  9389. // See ListSecurityProfiles for more information on using the ListSecurityProfiles
  9390. // API call, and error handling.
  9391. //
  9392. // This method is useful when you want to inject custom logic or configuration
  9393. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9394. //
  9395. //
  9396. // // Example sending a request using the ListSecurityProfilesRequest method.
  9397. // req, resp := client.ListSecurityProfilesRequest(params)
  9398. //
  9399. // err := req.Send()
  9400. // if err == nil { // resp is now filled
  9401. // fmt.Println(resp)
  9402. // }
  9403. func (c *IoT) ListSecurityProfilesRequest(input *ListSecurityProfilesInput) (req *request.Request, output *ListSecurityProfilesOutput) {
  9404. op := &request.Operation{
  9405. Name: opListSecurityProfiles,
  9406. HTTPMethod: "GET",
  9407. HTTPPath: "/security-profiles",
  9408. }
  9409. if input == nil {
  9410. input = &ListSecurityProfilesInput{}
  9411. }
  9412. output = &ListSecurityProfilesOutput{}
  9413. req = c.newRequest(op, input, output)
  9414. return
  9415. }
  9416. // ListSecurityProfiles API operation for AWS IoT.
  9417. //
  9418. // Lists the Device Defender security profiles you have created. You can use
  9419. // filters to list only those security profiles associated with a thing group
  9420. // or only those associated with your account.
  9421. //
  9422. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9423. // with awserr.Error's Code and Message methods to get detailed information about
  9424. // the error.
  9425. //
  9426. // See the AWS API reference guide for AWS IoT's
  9427. // API operation ListSecurityProfiles for usage and error information.
  9428. //
  9429. // Returned Error Codes:
  9430. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9431. // The request is not valid.
  9432. //
  9433. // * ErrCodeThrottlingException "ThrottlingException"
  9434. // The rate exceeds the limit.
  9435. //
  9436. // * ErrCodeInternalFailureException "InternalFailureException"
  9437. // An unexpected error has occurred.
  9438. //
  9439. func (c *IoT) ListSecurityProfiles(input *ListSecurityProfilesInput) (*ListSecurityProfilesOutput, error) {
  9440. req, out := c.ListSecurityProfilesRequest(input)
  9441. return out, req.Send()
  9442. }
  9443. // ListSecurityProfilesWithContext is the same as ListSecurityProfiles with the addition of
  9444. // the ability to pass a context and additional request options.
  9445. //
  9446. // See ListSecurityProfiles for details on how to use this API operation.
  9447. //
  9448. // The context must be non-nil and will be used for request cancellation. If
  9449. // the context is nil a panic will occur. In the future the SDK may create
  9450. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9451. // for more information on using Contexts.
  9452. func (c *IoT) ListSecurityProfilesWithContext(ctx aws.Context, input *ListSecurityProfilesInput, opts ...request.Option) (*ListSecurityProfilesOutput, error) {
  9453. req, out := c.ListSecurityProfilesRequest(input)
  9454. req.SetContext(ctx)
  9455. req.ApplyOptions(opts...)
  9456. return out, req.Send()
  9457. }
  9458. const opListSecurityProfilesForTarget = "ListSecurityProfilesForTarget"
  9459. // ListSecurityProfilesForTargetRequest generates a "aws/request.Request" representing the
  9460. // client's request for the ListSecurityProfilesForTarget operation. The "output" return
  9461. // value will be populated with the request's response once the request completes
  9462. // successfully.
  9463. //
  9464. // Use "Send" method on the returned Request to send the API call to the service.
  9465. // the "output" return value is not valid until after Send returns without error.
  9466. //
  9467. // See ListSecurityProfilesForTarget for more information on using the ListSecurityProfilesForTarget
  9468. // API call, and error handling.
  9469. //
  9470. // This method is useful when you want to inject custom logic or configuration
  9471. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9472. //
  9473. //
  9474. // // Example sending a request using the ListSecurityProfilesForTargetRequest method.
  9475. // req, resp := client.ListSecurityProfilesForTargetRequest(params)
  9476. //
  9477. // err := req.Send()
  9478. // if err == nil { // resp is now filled
  9479. // fmt.Println(resp)
  9480. // }
  9481. func (c *IoT) ListSecurityProfilesForTargetRequest(input *ListSecurityProfilesForTargetInput) (req *request.Request, output *ListSecurityProfilesForTargetOutput) {
  9482. op := &request.Operation{
  9483. Name: opListSecurityProfilesForTarget,
  9484. HTTPMethod: "GET",
  9485. HTTPPath: "/security-profiles-for-target",
  9486. }
  9487. if input == nil {
  9488. input = &ListSecurityProfilesForTargetInput{}
  9489. }
  9490. output = &ListSecurityProfilesForTargetOutput{}
  9491. req = c.newRequest(op, input, output)
  9492. return
  9493. }
  9494. // ListSecurityProfilesForTarget API operation for AWS IoT.
  9495. //
  9496. // Lists the Device Defender security profiles attached to a target (thing group).
  9497. //
  9498. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9499. // with awserr.Error's Code and Message methods to get detailed information about
  9500. // the error.
  9501. //
  9502. // See the AWS API reference guide for AWS IoT's
  9503. // API operation ListSecurityProfilesForTarget for usage and error information.
  9504. //
  9505. // Returned Error Codes:
  9506. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9507. // The request is not valid.
  9508. //
  9509. // * ErrCodeThrottlingException "ThrottlingException"
  9510. // The rate exceeds the limit.
  9511. //
  9512. // * ErrCodeInternalFailureException "InternalFailureException"
  9513. // An unexpected error has occurred.
  9514. //
  9515. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9516. // The specified resource does not exist.
  9517. //
  9518. func (c *IoT) ListSecurityProfilesForTarget(input *ListSecurityProfilesForTargetInput) (*ListSecurityProfilesForTargetOutput, error) {
  9519. req, out := c.ListSecurityProfilesForTargetRequest(input)
  9520. return out, req.Send()
  9521. }
  9522. // ListSecurityProfilesForTargetWithContext is the same as ListSecurityProfilesForTarget with the addition of
  9523. // the ability to pass a context and additional request options.
  9524. //
  9525. // See ListSecurityProfilesForTarget for details on how to use this API operation.
  9526. //
  9527. // The context must be non-nil and will be used for request cancellation. If
  9528. // the context is nil a panic will occur. In the future the SDK may create
  9529. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9530. // for more information on using Contexts.
  9531. func (c *IoT) ListSecurityProfilesForTargetWithContext(ctx aws.Context, input *ListSecurityProfilesForTargetInput, opts ...request.Option) (*ListSecurityProfilesForTargetOutput, error) {
  9532. req, out := c.ListSecurityProfilesForTargetRequest(input)
  9533. req.SetContext(ctx)
  9534. req.ApplyOptions(opts...)
  9535. return out, req.Send()
  9536. }
  9537. const opListStreams = "ListStreams"
  9538. // ListStreamsRequest generates a "aws/request.Request" representing the
  9539. // client's request for the ListStreams operation. The "output" return
  9540. // value will be populated with the request's response once the request completes
  9541. // successfully.
  9542. //
  9543. // Use "Send" method on the returned Request to send the API call to the service.
  9544. // the "output" return value is not valid until after Send returns without error.
  9545. //
  9546. // See ListStreams for more information on using the ListStreams
  9547. // API call, and error handling.
  9548. //
  9549. // This method is useful when you want to inject custom logic or configuration
  9550. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9551. //
  9552. //
  9553. // // Example sending a request using the ListStreamsRequest method.
  9554. // req, resp := client.ListStreamsRequest(params)
  9555. //
  9556. // err := req.Send()
  9557. // if err == nil { // resp is now filled
  9558. // fmt.Println(resp)
  9559. // }
  9560. func (c *IoT) ListStreamsRequest(input *ListStreamsInput) (req *request.Request, output *ListStreamsOutput) {
  9561. op := &request.Operation{
  9562. Name: opListStreams,
  9563. HTTPMethod: "GET",
  9564. HTTPPath: "/streams",
  9565. }
  9566. if input == nil {
  9567. input = &ListStreamsInput{}
  9568. }
  9569. output = &ListStreamsOutput{}
  9570. req = c.newRequest(op, input, output)
  9571. return
  9572. }
  9573. // ListStreams API operation for AWS IoT.
  9574. //
  9575. // Lists all of the streams in your AWS account.
  9576. //
  9577. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9578. // with awserr.Error's Code and Message methods to get detailed information about
  9579. // the error.
  9580. //
  9581. // See the AWS API reference guide for AWS IoT's
  9582. // API operation ListStreams for usage and error information.
  9583. //
  9584. // Returned Error Codes:
  9585. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9586. // The request is not valid.
  9587. //
  9588. // * ErrCodeThrottlingException "ThrottlingException"
  9589. // The rate exceeds the limit.
  9590. //
  9591. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9592. // You are not authorized to perform this operation.
  9593. //
  9594. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9595. // The service is temporarily unavailable.
  9596. //
  9597. // * ErrCodeInternalFailureException "InternalFailureException"
  9598. // An unexpected error has occurred.
  9599. //
  9600. func (c *IoT) ListStreams(input *ListStreamsInput) (*ListStreamsOutput, error) {
  9601. req, out := c.ListStreamsRequest(input)
  9602. return out, req.Send()
  9603. }
  9604. // ListStreamsWithContext is the same as ListStreams with the addition of
  9605. // the ability to pass a context and additional request options.
  9606. //
  9607. // See ListStreams for details on how to use this API operation.
  9608. //
  9609. // The context must be non-nil and will be used for request cancellation. If
  9610. // the context is nil a panic will occur. In the future the SDK may create
  9611. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9612. // for more information on using Contexts.
  9613. func (c *IoT) ListStreamsWithContext(ctx aws.Context, input *ListStreamsInput, opts ...request.Option) (*ListStreamsOutput, error) {
  9614. req, out := c.ListStreamsRequest(input)
  9615. req.SetContext(ctx)
  9616. req.ApplyOptions(opts...)
  9617. return out, req.Send()
  9618. }
  9619. const opListTagsForResource = "ListTagsForResource"
  9620. // ListTagsForResourceRequest generates a "aws/request.Request" representing the
  9621. // client's request for the ListTagsForResource operation. The "output" return
  9622. // value will be populated with the request's response once the request completes
  9623. // successfully.
  9624. //
  9625. // Use "Send" method on the returned Request to send the API call to the service.
  9626. // the "output" return value is not valid until after Send returns without error.
  9627. //
  9628. // See ListTagsForResource for more information on using the ListTagsForResource
  9629. // API call, and error handling.
  9630. //
  9631. // This method is useful when you want to inject custom logic or configuration
  9632. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9633. //
  9634. //
  9635. // // Example sending a request using the ListTagsForResourceRequest method.
  9636. // req, resp := client.ListTagsForResourceRequest(params)
  9637. //
  9638. // err := req.Send()
  9639. // if err == nil { // resp is now filled
  9640. // fmt.Println(resp)
  9641. // }
  9642. func (c *IoT) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
  9643. op := &request.Operation{
  9644. Name: opListTagsForResource,
  9645. HTTPMethod: "GET",
  9646. HTTPPath: "/tags",
  9647. }
  9648. if input == nil {
  9649. input = &ListTagsForResourceInput{}
  9650. }
  9651. output = &ListTagsForResourceOutput{}
  9652. req = c.newRequest(op, input, output)
  9653. return
  9654. }
  9655. // ListTagsForResource API operation for AWS IoT.
  9656. //
  9657. // Lists the tags (metadata) you have assigned to the resource.
  9658. //
  9659. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9660. // with awserr.Error's Code and Message methods to get detailed information about
  9661. // the error.
  9662. //
  9663. // See the AWS API reference guide for AWS IoT's
  9664. // API operation ListTagsForResource for usage and error information.
  9665. //
  9666. // Returned Error Codes:
  9667. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9668. // The request is not valid.
  9669. //
  9670. // * ErrCodeInternalFailureException "InternalFailureException"
  9671. // An unexpected error has occurred.
  9672. //
  9673. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9674. // The specified resource does not exist.
  9675. //
  9676. // * ErrCodeThrottlingException "ThrottlingException"
  9677. // The rate exceeds the limit.
  9678. //
  9679. func (c *IoT) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
  9680. req, out := c.ListTagsForResourceRequest(input)
  9681. return out, req.Send()
  9682. }
  9683. // ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
  9684. // the ability to pass a context and additional request options.
  9685. //
  9686. // See ListTagsForResource for details on how to use this API operation.
  9687. //
  9688. // The context must be non-nil and will be used for request cancellation. If
  9689. // the context is nil a panic will occur. In the future the SDK may create
  9690. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9691. // for more information on using Contexts.
  9692. func (c *IoT) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
  9693. req, out := c.ListTagsForResourceRequest(input)
  9694. req.SetContext(ctx)
  9695. req.ApplyOptions(opts...)
  9696. return out, req.Send()
  9697. }
  9698. const opListTargetsForPolicy = "ListTargetsForPolicy"
  9699. // ListTargetsForPolicyRequest generates a "aws/request.Request" representing the
  9700. // client's request for the ListTargetsForPolicy operation. The "output" return
  9701. // value will be populated with the request's response once the request completes
  9702. // successfully.
  9703. //
  9704. // Use "Send" method on the returned Request to send the API call to the service.
  9705. // the "output" return value is not valid until after Send returns without error.
  9706. //
  9707. // See ListTargetsForPolicy for more information on using the ListTargetsForPolicy
  9708. // API call, and error handling.
  9709. //
  9710. // This method is useful when you want to inject custom logic or configuration
  9711. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9712. //
  9713. //
  9714. // // Example sending a request using the ListTargetsForPolicyRequest method.
  9715. // req, resp := client.ListTargetsForPolicyRequest(params)
  9716. //
  9717. // err := req.Send()
  9718. // if err == nil { // resp is now filled
  9719. // fmt.Println(resp)
  9720. // }
  9721. func (c *IoT) ListTargetsForPolicyRequest(input *ListTargetsForPolicyInput) (req *request.Request, output *ListTargetsForPolicyOutput) {
  9722. op := &request.Operation{
  9723. Name: opListTargetsForPolicy,
  9724. HTTPMethod: "POST",
  9725. HTTPPath: "/policy-targets/{policyName}",
  9726. }
  9727. if input == nil {
  9728. input = &ListTargetsForPolicyInput{}
  9729. }
  9730. output = &ListTargetsForPolicyOutput{}
  9731. req = c.newRequest(op, input, output)
  9732. return
  9733. }
  9734. // ListTargetsForPolicy API operation for AWS IoT.
  9735. //
  9736. // List targets for the specified policy.
  9737. //
  9738. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9739. // with awserr.Error's Code and Message methods to get detailed information about
  9740. // the error.
  9741. //
  9742. // See the AWS API reference guide for AWS IoT's
  9743. // API operation ListTargetsForPolicy for usage and error information.
  9744. //
  9745. // Returned Error Codes:
  9746. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9747. // The specified resource does not exist.
  9748. //
  9749. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9750. // The request is not valid.
  9751. //
  9752. // * ErrCodeThrottlingException "ThrottlingException"
  9753. // The rate exceeds the limit.
  9754. //
  9755. // * ErrCodeUnauthorizedException "UnauthorizedException"
  9756. // You are not authorized to perform this operation.
  9757. //
  9758. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  9759. // The service is temporarily unavailable.
  9760. //
  9761. // * ErrCodeInternalFailureException "InternalFailureException"
  9762. // An unexpected error has occurred.
  9763. //
  9764. // * ErrCodeLimitExceededException "LimitExceededException"
  9765. // A limit has been exceeded.
  9766. //
  9767. func (c *IoT) ListTargetsForPolicy(input *ListTargetsForPolicyInput) (*ListTargetsForPolicyOutput, error) {
  9768. req, out := c.ListTargetsForPolicyRequest(input)
  9769. return out, req.Send()
  9770. }
  9771. // ListTargetsForPolicyWithContext is the same as ListTargetsForPolicy with the addition of
  9772. // the ability to pass a context and additional request options.
  9773. //
  9774. // See ListTargetsForPolicy for details on how to use this API operation.
  9775. //
  9776. // The context must be non-nil and will be used for request cancellation. If
  9777. // the context is nil a panic will occur. In the future the SDK may create
  9778. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9779. // for more information on using Contexts.
  9780. func (c *IoT) ListTargetsForPolicyWithContext(ctx aws.Context, input *ListTargetsForPolicyInput, opts ...request.Option) (*ListTargetsForPolicyOutput, error) {
  9781. req, out := c.ListTargetsForPolicyRequest(input)
  9782. req.SetContext(ctx)
  9783. req.ApplyOptions(opts...)
  9784. return out, req.Send()
  9785. }
  9786. const opListTargetsForSecurityProfile = "ListTargetsForSecurityProfile"
  9787. // ListTargetsForSecurityProfileRequest generates a "aws/request.Request" representing the
  9788. // client's request for the ListTargetsForSecurityProfile operation. The "output" return
  9789. // value will be populated with the request's response once the request completes
  9790. // successfully.
  9791. //
  9792. // Use "Send" method on the returned Request to send the API call to the service.
  9793. // the "output" return value is not valid until after Send returns without error.
  9794. //
  9795. // See ListTargetsForSecurityProfile for more information on using the ListTargetsForSecurityProfile
  9796. // API call, and error handling.
  9797. //
  9798. // This method is useful when you want to inject custom logic or configuration
  9799. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9800. //
  9801. //
  9802. // // Example sending a request using the ListTargetsForSecurityProfileRequest method.
  9803. // req, resp := client.ListTargetsForSecurityProfileRequest(params)
  9804. //
  9805. // err := req.Send()
  9806. // if err == nil { // resp is now filled
  9807. // fmt.Println(resp)
  9808. // }
  9809. func (c *IoT) ListTargetsForSecurityProfileRequest(input *ListTargetsForSecurityProfileInput) (req *request.Request, output *ListTargetsForSecurityProfileOutput) {
  9810. op := &request.Operation{
  9811. Name: opListTargetsForSecurityProfile,
  9812. HTTPMethod: "GET",
  9813. HTTPPath: "/security-profiles/{securityProfileName}/targets",
  9814. }
  9815. if input == nil {
  9816. input = &ListTargetsForSecurityProfileInput{}
  9817. }
  9818. output = &ListTargetsForSecurityProfileOutput{}
  9819. req = c.newRequest(op, input, output)
  9820. return
  9821. }
  9822. // ListTargetsForSecurityProfile API operation for AWS IoT.
  9823. //
  9824. // Lists the targets (thing groups) associated with a given Device Defender
  9825. // security profile.
  9826. //
  9827. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9828. // with awserr.Error's Code and Message methods to get detailed information about
  9829. // the error.
  9830. //
  9831. // See the AWS API reference guide for AWS IoT's
  9832. // API operation ListTargetsForSecurityProfile for usage and error information.
  9833. //
  9834. // Returned Error Codes:
  9835. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9836. // The request is not valid.
  9837. //
  9838. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9839. // The specified resource does not exist.
  9840. //
  9841. // * ErrCodeThrottlingException "ThrottlingException"
  9842. // The rate exceeds the limit.
  9843. //
  9844. // * ErrCodeInternalFailureException "InternalFailureException"
  9845. // An unexpected error has occurred.
  9846. //
  9847. func (c *IoT) ListTargetsForSecurityProfile(input *ListTargetsForSecurityProfileInput) (*ListTargetsForSecurityProfileOutput, error) {
  9848. req, out := c.ListTargetsForSecurityProfileRequest(input)
  9849. return out, req.Send()
  9850. }
  9851. // ListTargetsForSecurityProfileWithContext is the same as ListTargetsForSecurityProfile with the addition of
  9852. // the ability to pass a context and additional request options.
  9853. //
  9854. // See ListTargetsForSecurityProfile for details on how to use this API operation.
  9855. //
  9856. // The context must be non-nil and will be used for request cancellation. If
  9857. // the context is nil a panic will occur. In the future the SDK may create
  9858. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9859. // for more information on using Contexts.
  9860. func (c *IoT) ListTargetsForSecurityProfileWithContext(ctx aws.Context, input *ListTargetsForSecurityProfileInput, opts ...request.Option) (*ListTargetsForSecurityProfileOutput, error) {
  9861. req, out := c.ListTargetsForSecurityProfileRequest(input)
  9862. req.SetContext(ctx)
  9863. req.ApplyOptions(opts...)
  9864. return out, req.Send()
  9865. }
  9866. const opListThingGroups = "ListThingGroups"
  9867. // ListThingGroupsRequest generates a "aws/request.Request" representing the
  9868. // client's request for the ListThingGroups operation. The "output" return
  9869. // value will be populated with the request's response once the request completes
  9870. // successfully.
  9871. //
  9872. // Use "Send" method on the returned Request to send the API call to the service.
  9873. // the "output" return value is not valid until after Send returns without error.
  9874. //
  9875. // See ListThingGroups for more information on using the ListThingGroups
  9876. // API call, and error handling.
  9877. //
  9878. // This method is useful when you want to inject custom logic or configuration
  9879. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9880. //
  9881. //
  9882. // // Example sending a request using the ListThingGroupsRequest method.
  9883. // req, resp := client.ListThingGroupsRequest(params)
  9884. //
  9885. // err := req.Send()
  9886. // if err == nil { // resp is now filled
  9887. // fmt.Println(resp)
  9888. // }
  9889. func (c *IoT) ListThingGroupsRequest(input *ListThingGroupsInput) (req *request.Request, output *ListThingGroupsOutput) {
  9890. op := &request.Operation{
  9891. Name: opListThingGroups,
  9892. HTTPMethod: "GET",
  9893. HTTPPath: "/thing-groups",
  9894. }
  9895. if input == nil {
  9896. input = &ListThingGroupsInput{}
  9897. }
  9898. output = &ListThingGroupsOutput{}
  9899. req = c.newRequest(op, input, output)
  9900. return
  9901. }
  9902. // ListThingGroups API operation for AWS IoT.
  9903. //
  9904. // List the thing groups in your account.
  9905. //
  9906. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9907. // with awserr.Error's Code and Message methods to get detailed information about
  9908. // the error.
  9909. //
  9910. // See the AWS API reference guide for AWS IoT's
  9911. // API operation ListThingGroups for usage and error information.
  9912. //
  9913. // Returned Error Codes:
  9914. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9915. // The request is not valid.
  9916. //
  9917. // * ErrCodeInternalFailureException "InternalFailureException"
  9918. // An unexpected error has occurred.
  9919. //
  9920. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9921. // The specified resource does not exist.
  9922. //
  9923. func (c *IoT) ListThingGroups(input *ListThingGroupsInput) (*ListThingGroupsOutput, error) {
  9924. req, out := c.ListThingGroupsRequest(input)
  9925. return out, req.Send()
  9926. }
  9927. // ListThingGroupsWithContext is the same as ListThingGroups with the addition of
  9928. // the ability to pass a context and additional request options.
  9929. //
  9930. // See ListThingGroups for details on how to use this API operation.
  9931. //
  9932. // The context must be non-nil and will be used for request cancellation. If
  9933. // the context is nil a panic will occur. In the future the SDK may create
  9934. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  9935. // for more information on using Contexts.
  9936. func (c *IoT) ListThingGroupsWithContext(ctx aws.Context, input *ListThingGroupsInput, opts ...request.Option) (*ListThingGroupsOutput, error) {
  9937. req, out := c.ListThingGroupsRequest(input)
  9938. req.SetContext(ctx)
  9939. req.ApplyOptions(opts...)
  9940. return out, req.Send()
  9941. }
  9942. const opListThingGroupsForThing = "ListThingGroupsForThing"
  9943. // ListThingGroupsForThingRequest generates a "aws/request.Request" representing the
  9944. // client's request for the ListThingGroupsForThing operation. The "output" return
  9945. // value will be populated with the request's response once the request completes
  9946. // successfully.
  9947. //
  9948. // Use "Send" method on the returned Request to send the API call to the service.
  9949. // the "output" return value is not valid until after Send returns without error.
  9950. //
  9951. // See ListThingGroupsForThing for more information on using the ListThingGroupsForThing
  9952. // API call, and error handling.
  9953. //
  9954. // This method is useful when you want to inject custom logic or configuration
  9955. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  9956. //
  9957. //
  9958. // // Example sending a request using the ListThingGroupsForThingRequest method.
  9959. // req, resp := client.ListThingGroupsForThingRequest(params)
  9960. //
  9961. // err := req.Send()
  9962. // if err == nil { // resp is now filled
  9963. // fmt.Println(resp)
  9964. // }
  9965. func (c *IoT) ListThingGroupsForThingRequest(input *ListThingGroupsForThingInput) (req *request.Request, output *ListThingGroupsForThingOutput) {
  9966. op := &request.Operation{
  9967. Name: opListThingGroupsForThing,
  9968. HTTPMethod: "GET",
  9969. HTTPPath: "/things/{thingName}/thing-groups",
  9970. }
  9971. if input == nil {
  9972. input = &ListThingGroupsForThingInput{}
  9973. }
  9974. output = &ListThingGroupsForThingOutput{}
  9975. req = c.newRequest(op, input, output)
  9976. return
  9977. }
  9978. // ListThingGroupsForThing API operation for AWS IoT.
  9979. //
  9980. // List the thing groups to which the specified thing belongs.
  9981. //
  9982. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  9983. // with awserr.Error's Code and Message methods to get detailed information about
  9984. // the error.
  9985. //
  9986. // See the AWS API reference guide for AWS IoT's
  9987. // API operation ListThingGroupsForThing for usage and error information.
  9988. //
  9989. // Returned Error Codes:
  9990. // * ErrCodeInvalidRequestException "InvalidRequestException"
  9991. // The request is not valid.
  9992. //
  9993. // * ErrCodeInternalFailureException "InternalFailureException"
  9994. // An unexpected error has occurred.
  9995. //
  9996. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  9997. // The specified resource does not exist.
  9998. //
  9999. func (c *IoT) ListThingGroupsForThing(input *ListThingGroupsForThingInput) (*ListThingGroupsForThingOutput, error) {
  10000. req, out := c.ListThingGroupsForThingRequest(input)
  10001. return out, req.Send()
  10002. }
  10003. // ListThingGroupsForThingWithContext is the same as ListThingGroupsForThing with the addition of
  10004. // the ability to pass a context and additional request options.
  10005. //
  10006. // See ListThingGroupsForThing for details on how to use this API operation.
  10007. //
  10008. // The context must be non-nil and will be used for request cancellation. If
  10009. // the context is nil a panic will occur. In the future the SDK may create
  10010. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10011. // for more information on using Contexts.
  10012. func (c *IoT) ListThingGroupsForThingWithContext(ctx aws.Context, input *ListThingGroupsForThingInput, opts ...request.Option) (*ListThingGroupsForThingOutput, error) {
  10013. req, out := c.ListThingGroupsForThingRequest(input)
  10014. req.SetContext(ctx)
  10015. req.ApplyOptions(opts...)
  10016. return out, req.Send()
  10017. }
  10018. const opListThingPrincipals = "ListThingPrincipals"
  10019. // ListThingPrincipalsRequest generates a "aws/request.Request" representing the
  10020. // client's request for the ListThingPrincipals operation. The "output" return
  10021. // value will be populated with the request's response once the request completes
  10022. // successfully.
  10023. //
  10024. // Use "Send" method on the returned Request to send the API call to the service.
  10025. // the "output" return value is not valid until after Send returns without error.
  10026. //
  10027. // See ListThingPrincipals for more information on using the ListThingPrincipals
  10028. // API call, and error handling.
  10029. //
  10030. // This method is useful when you want to inject custom logic or configuration
  10031. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10032. //
  10033. //
  10034. // // Example sending a request using the ListThingPrincipalsRequest method.
  10035. // req, resp := client.ListThingPrincipalsRequest(params)
  10036. //
  10037. // err := req.Send()
  10038. // if err == nil { // resp is now filled
  10039. // fmt.Println(resp)
  10040. // }
  10041. func (c *IoT) ListThingPrincipalsRequest(input *ListThingPrincipalsInput) (req *request.Request, output *ListThingPrincipalsOutput) {
  10042. op := &request.Operation{
  10043. Name: opListThingPrincipals,
  10044. HTTPMethod: "GET",
  10045. HTTPPath: "/things/{thingName}/principals",
  10046. }
  10047. if input == nil {
  10048. input = &ListThingPrincipalsInput{}
  10049. }
  10050. output = &ListThingPrincipalsOutput{}
  10051. req = c.newRequest(op, input, output)
  10052. return
  10053. }
  10054. // ListThingPrincipals API operation for AWS IoT.
  10055. //
  10056. // Lists the principals associated with the specified thing.
  10057. //
  10058. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10059. // with awserr.Error's Code and Message methods to get detailed information about
  10060. // the error.
  10061. //
  10062. // See the AWS API reference guide for AWS IoT's
  10063. // API operation ListThingPrincipals for usage and error information.
  10064. //
  10065. // Returned Error Codes:
  10066. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10067. // The request is not valid.
  10068. //
  10069. // * ErrCodeThrottlingException "ThrottlingException"
  10070. // The rate exceeds the limit.
  10071. //
  10072. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10073. // You are not authorized to perform this operation.
  10074. //
  10075. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10076. // The service is temporarily unavailable.
  10077. //
  10078. // * ErrCodeInternalFailureException "InternalFailureException"
  10079. // An unexpected error has occurred.
  10080. //
  10081. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  10082. // The specified resource does not exist.
  10083. //
  10084. func (c *IoT) ListThingPrincipals(input *ListThingPrincipalsInput) (*ListThingPrincipalsOutput, error) {
  10085. req, out := c.ListThingPrincipalsRequest(input)
  10086. return out, req.Send()
  10087. }
  10088. // ListThingPrincipalsWithContext is the same as ListThingPrincipals with the addition of
  10089. // the ability to pass a context and additional request options.
  10090. //
  10091. // See ListThingPrincipals for details on how to use this API operation.
  10092. //
  10093. // The context must be non-nil and will be used for request cancellation. If
  10094. // the context is nil a panic will occur. In the future the SDK may create
  10095. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10096. // for more information on using Contexts.
  10097. func (c *IoT) ListThingPrincipalsWithContext(ctx aws.Context, input *ListThingPrincipalsInput, opts ...request.Option) (*ListThingPrincipalsOutput, error) {
  10098. req, out := c.ListThingPrincipalsRequest(input)
  10099. req.SetContext(ctx)
  10100. req.ApplyOptions(opts...)
  10101. return out, req.Send()
  10102. }
  10103. const opListThingRegistrationTaskReports = "ListThingRegistrationTaskReports"
  10104. // ListThingRegistrationTaskReportsRequest generates a "aws/request.Request" representing the
  10105. // client's request for the ListThingRegistrationTaskReports operation. The "output" return
  10106. // value will be populated with the request's response once the request completes
  10107. // successfully.
  10108. //
  10109. // Use "Send" method on the returned Request to send the API call to the service.
  10110. // the "output" return value is not valid until after Send returns without error.
  10111. //
  10112. // See ListThingRegistrationTaskReports for more information on using the ListThingRegistrationTaskReports
  10113. // API call, and error handling.
  10114. //
  10115. // This method is useful when you want to inject custom logic or configuration
  10116. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10117. //
  10118. //
  10119. // // Example sending a request using the ListThingRegistrationTaskReportsRequest method.
  10120. // req, resp := client.ListThingRegistrationTaskReportsRequest(params)
  10121. //
  10122. // err := req.Send()
  10123. // if err == nil { // resp is now filled
  10124. // fmt.Println(resp)
  10125. // }
  10126. func (c *IoT) ListThingRegistrationTaskReportsRequest(input *ListThingRegistrationTaskReportsInput) (req *request.Request, output *ListThingRegistrationTaskReportsOutput) {
  10127. op := &request.Operation{
  10128. Name: opListThingRegistrationTaskReports,
  10129. HTTPMethod: "GET",
  10130. HTTPPath: "/thing-registration-tasks/{taskId}/reports",
  10131. }
  10132. if input == nil {
  10133. input = &ListThingRegistrationTaskReportsInput{}
  10134. }
  10135. output = &ListThingRegistrationTaskReportsOutput{}
  10136. req = c.newRequest(op, input, output)
  10137. return
  10138. }
  10139. // ListThingRegistrationTaskReports API operation for AWS IoT.
  10140. //
  10141. // Information about the thing registration tasks.
  10142. //
  10143. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10144. // with awserr.Error's Code and Message methods to get detailed information about
  10145. // the error.
  10146. //
  10147. // See the AWS API reference guide for AWS IoT's
  10148. // API operation ListThingRegistrationTaskReports for usage and error information.
  10149. //
  10150. // Returned Error Codes:
  10151. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10152. // The request is not valid.
  10153. //
  10154. // * ErrCodeThrottlingException "ThrottlingException"
  10155. // The rate exceeds the limit.
  10156. //
  10157. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10158. // You are not authorized to perform this operation.
  10159. //
  10160. // * ErrCodeInternalFailureException "InternalFailureException"
  10161. // An unexpected error has occurred.
  10162. //
  10163. func (c *IoT) ListThingRegistrationTaskReports(input *ListThingRegistrationTaskReportsInput) (*ListThingRegistrationTaskReportsOutput, error) {
  10164. req, out := c.ListThingRegistrationTaskReportsRequest(input)
  10165. return out, req.Send()
  10166. }
  10167. // ListThingRegistrationTaskReportsWithContext is the same as ListThingRegistrationTaskReports with the addition of
  10168. // the ability to pass a context and additional request options.
  10169. //
  10170. // See ListThingRegistrationTaskReports for details on how to use this API operation.
  10171. //
  10172. // The context must be non-nil and will be used for request cancellation. If
  10173. // the context is nil a panic will occur. In the future the SDK may create
  10174. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10175. // for more information on using Contexts.
  10176. func (c *IoT) ListThingRegistrationTaskReportsWithContext(ctx aws.Context, input *ListThingRegistrationTaskReportsInput, opts ...request.Option) (*ListThingRegistrationTaskReportsOutput, error) {
  10177. req, out := c.ListThingRegistrationTaskReportsRequest(input)
  10178. req.SetContext(ctx)
  10179. req.ApplyOptions(opts...)
  10180. return out, req.Send()
  10181. }
  10182. const opListThingRegistrationTasks = "ListThingRegistrationTasks"
  10183. // ListThingRegistrationTasksRequest generates a "aws/request.Request" representing the
  10184. // client's request for the ListThingRegistrationTasks operation. The "output" return
  10185. // value will be populated with the request's response once the request completes
  10186. // successfully.
  10187. //
  10188. // Use "Send" method on the returned Request to send the API call to the service.
  10189. // the "output" return value is not valid until after Send returns without error.
  10190. //
  10191. // See ListThingRegistrationTasks for more information on using the ListThingRegistrationTasks
  10192. // API call, and error handling.
  10193. //
  10194. // This method is useful when you want to inject custom logic or configuration
  10195. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10196. //
  10197. //
  10198. // // Example sending a request using the ListThingRegistrationTasksRequest method.
  10199. // req, resp := client.ListThingRegistrationTasksRequest(params)
  10200. //
  10201. // err := req.Send()
  10202. // if err == nil { // resp is now filled
  10203. // fmt.Println(resp)
  10204. // }
  10205. func (c *IoT) ListThingRegistrationTasksRequest(input *ListThingRegistrationTasksInput) (req *request.Request, output *ListThingRegistrationTasksOutput) {
  10206. op := &request.Operation{
  10207. Name: opListThingRegistrationTasks,
  10208. HTTPMethod: "GET",
  10209. HTTPPath: "/thing-registration-tasks",
  10210. }
  10211. if input == nil {
  10212. input = &ListThingRegistrationTasksInput{}
  10213. }
  10214. output = &ListThingRegistrationTasksOutput{}
  10215. req = c.newRequest(op, input, output)
  10216. return
  10217. }
  10218. // ListThingRegistrationTasks API operation for AWS IoT.
  10219. //
  10220. // List bulk thing provisioning tasks.
  10221. //
  10222. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10223. // with awserr.Error's Code and Message methods to get detailed information about
  10224. // the error.
  10225. //
  10226. // See the AWS API reference guide for AWS IoT's
  10227. // API operation ListThingRegistrationTasks for usage and error information.
  10228. //
  10229. // Returned Error Codes:
  10230. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10231. // The request is not valid.
  10232. //
  10233. // * ErrCodeThrottlingException "ThrottlingException"
  10234. // The rate exceeds the limit.
  10235. //
  10236. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10237. // You are not authorized to perform this operation.
  10238. //
  10239. // * ErrCodeInternalFailureException "InternalFailureException"
  10240. // An unexpected error has occurred.
  10241. //
  10242. func (c *IoT) ListThingRegistrationTasks(input *ListThingRegistrationTasksInput) (*ListThingRegistrationTasksOutput, error) {
  10243. req, out := c.ListThingRegistrationTasksRequest(input)
  10244. return out, req.Send()
  10245. }
  10246. // ListThingRegistrationTasksWithContext is the same as ListThingRegistrationTasks with the addition of
  10247. // the ability to pass a context and additional request options.
  10248. //
  10249. // See ListThingRegistrationTasks for details on how to use this API operation.
  10250. //
  10251. // The context must be non-nil and will be used for request cancellation. If
  10252. // the context is nil a panic will occur. In the future the SDK may create
  10253. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10254. // for more information on using Contexts.
  10255. func (c *IoT) ListThingRegistrationTasksWithContext(ctx aws.Context, input *ListThingRegistrationTasksInput, opts ...request.Option) (*ListThingRegistrationTasksOutput, error) {
  10256. req, out := c.ListThingRegistrationTasksRequest(input)
  10257. req.SetContext(ctx)
  10258. req.ApplyOptions(opts...)
  10259. return out, req.Send()
  10260. }
  10261. const opListThingTypes = "ListThingTypes"
  10262. // ListThingTypesRequest generates a "aws/request.Request" representing the
  10263. // client's request for the ListThingTypes operation. The "output" return
  10264. // value will be populated with the request's response once the request completes
  10265. // successfully.
  10266. //
  10267. // Use "Send" method on the returned Request to send the API call to the service.
  10268. // the "output" return value is not valid until after Send returns without error.
  10269. //
  10270. // See ListThingTypes for more information on using the ListThingTypes
  10271. // API call, and error handling.
  10272. //
  10273. // This method is useful when you want to inject custom logic or configuration
  10274. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10275. //
  10276. //
  10277. // // Example sending a request using the ListThingTypesRequest method.
  10278. // req, resp := client.ListThingTypesRequest(params)
  10279. //
  10280. // err := req.Send()
  10281. // if err == nil { // resp is now filled
  10282. // fmt.Println(resp)
  10283. // }
  10284. func (c *IoT) ListThingTypesRequest(input *ListThingTypesInput) (req *request.Request, output *ListThingTypesOutput) {
  10285. op := &request.Operation{
  10286. Name: opListThingTypes,
  10287. HTTPMethod: "GET",
  10288. HTTPPath: "/thing-types",
  10289. }
  10290. if input == nil {
  10291. input = &ListThingTypesInput{}
  10292. }
  10293. output = &ListThingTypesOutput{}
  10294. req = c.newRequest(op, input, output)
  10295. return
  10296. }
  10297. // ListThingTypes API operation for AWS IoT.
  10298. //
  10299. // Lists the existing thing types.
  10300. //
  10301. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10302. // with awserr.Error's Code and Message methods to get detailed information about
  10303. // the error.
  10304. //
  10305. // See the AWS API reference guide for AWS IoT's
  10306. // API operation ListThingTypes for usage and error information.
  10307. //
  10308. // Returned Error Codes:
  10309. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10310. // The request is not valid.
  10311. //
  10312. // * ErrCodeThrottlingException "ThrottlingException"
  10313. // The rate exceeds the limit.
  10314. //
  10315. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10316. // You are not authorized to perform this operation.
  10317. //
  10318. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10319. // The service is temporarily unavailable.
  10320. //
  10321. // * ErrCodeInternalFailureException "InternalFailureException"
  10322. // An unexpected error has occurred.
  10323. //
  10324. func (c *IoT) ListThingTypes(input *ListThingTypesInput) (*ListThingTypesOutput, error) {
  10325. req, out := c.ListThingTypesRequest(input)
  10326. return out, req.Send()
  10327. }
  10328. // ListThingTypesWithContext is the same as ListThingTypes with the addition of
  10329. // the ability to pass a context and additional request options.
  10330. //
  10331. // See ListThingTypes for details on how to use this API operation.
  10332. //
  10333. // The context must be non-nil and will be used for request cancellation. If
  10334. // the context is nil a panic will occur. In the future the SDK may create
  10335. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10336. // for more information on using Contexts.
  10337. func (c *IoT) ListThingTypesWithContext(ctx aws.Context, input *ListThingTypesInput, opts ...request.Option) (*ListThingTypesOutput, error) {
  10338. req, out := c.ListThingTypesRequest(input)
  10339. req.SetContext(ctx)
  10340. req.ApplyOptions(opts...)
  10341. return out, req.Send()
  10342. }
  10343. const opListThings = "ListThings"
  10344. // ListThingsRequest generates a "aws/request.Request" representing the
  10345. // client's request for the ListThings operation. The "output" return
  10346. // value will be populated with the request's response once the request completes
  10347. // successfully.
  10348. //
  10349. // Use "Send" method on the returned Request to send the API call to the service.
  10350. // the "output" return value is not valid until after Send returns without error.
  10351. //
  10352. // See ListThings for more information on using the ListThings
  10353. // API call, and error handling.
  10354. //
  10355. // This method is useful when you want to inject custom logic or configuration
  10356. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10357. //
  10358. //
  10359. // // Example sending a request using the ListThingsRequest method.
  10360. // req, resp := client.ListThingsRequest(params)
  10361. //
  10362. // err := req.Send()
  10363. // if err == nil { // resp is now filled
  10364. // fmt.Println(resp)
  10365. // }
  10366. func (c *IoT) ListThingsRequest(input *ListThingsInput) (req *request.Request, output *ListThingsOutput) {
  10367. op := &request.Operation{
  10368. Name: opListThings,
  10369. HTTPMethod: "GET",
  10370. HTTPPath: "/things",
  10371. }
  10372. if input == nil {
  10373. input = &ListThingsInput{}
  10374. }
  10375. output = &ListThingsOutput{}
  10376. req = c.newRequest(op, input, output)
  10377. return
  10378. }
  10379. // ListThings API operation for AWS IoT.
  10380. //
  10381. // Lists your things. Use the attributeName and attributeValue parameters to
  10382. // filter your things. For example, calling ListThings with attributeName=Color
  10383. // and attributeValue=Red retrieves all things in the registry that contain
  10384. // an attribute Color with the value Red.
  10385. //
  10386. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10387. // with awserr.Error's Code and Message methods to get detailed information about
  10388. // the error.
  10389. //
  10390. // See the AWS API reference guide for AWS IoT's
  10391. // API operation ListThings for usage and error information.
  10392. //
  10393. // Returned Error Codes:
  10394. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10395. // The request is not valid.
  10396. //
  10397. // * ErrCodeThrottlingException "ThrottlingException"
  10398. // The rate exceeds the limit.
  10399. //
  10400. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10401. // You are not authorized to perform this operation.
  10402. //
  10403. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10404. // The service is temporarily unavailable.
  10405. //
  10406. // * ErrCodeInternalFailureException "InternalFailureException"
  10407. // An unexpected error has occurred.
  10408. //
  10409. func (c *IoT) ListThings(input *ListThingsInput) (*ListThingsOutput, error) {
  10410. req, out := c.ListThingsRequest(input)
  10411. return out, req.Send()
  10412. }
  10413. // ListThingsWithContext is the same as ListThings with the addition of
  10414. // the ability to pass a context and additional request options.
  10415. //
  10416. // See ListThings for details on how to use this API operation.
  10417. //
  10418. // The context must be non-nil and will be used for request cancellation. If
  10419. // the context is nil a panic will occur. In the future the SDK may create
  10420. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10421. // for more information on using Contexts.
  10422. func (c *IoT) ListThingsWithContext(ctx aws.Context, input *ListThingsInput, opts ...request.Option) (*ListThingsOutput, error) {
  10423. req, out := c.ListThingsRequest(input)
  10424. req.SetContext(ctx)
  10425. req.ApplyOptions(opts...)
  10426. return out, req.Send()
  10427. }
  10428. const opListThingsInBillingGroup = "ListThingsInBillingGroup"
  10429. // ListThingsInBillingGroupRequest generates a "aws/request.Request" representing the
  10430. // client's request for the ListThingsInBillingGroup operation. The "output" return
  10431. // value will be populated with the request's response once the request completes
  10432. // successfully.
  10433. //
  10434. // Use "Send" method on the returned Request to send the API call to the service.
  10435. // the "output" return value is not valid until after Send returns without error.
  10436. //
  10437. // See ListThingsInBillingGroup for more information on using the ListThingsInBillingGroup
  10438. // API call, and error handling.
  10439. //
  10440. // This method is useful when you want to inject custom logic or configuration
  10441. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10442. //
  10443. //
  10444. // // Example sending a request using the ListThingsInBillingGroupRequest method.
  10445. // req, resp := client.ListThingsInBillingGroupRequest(params)
  10446. //
  10447. // err := req.Send()
  10448. // if err == nil { // resp is now filled
  10449. // fmt.Println(resp)
  10450. // }
  10451. func (c *IoT) ListThingsInBillingGroupRequest(input *ListThingsInBillingGroupInput) (req *request.Request, output *ListThingsInBillingGroupOutput) {
  10452. op := &request.Operation{
  10453. Name: opListThingsInBillingGroup,
  10454. HTTPMethod: "GET",
  10455. HTTPPath: "/billing-groups/{billingGroupName}/things",
  10456. }
  10457. if input == nil {
  10458. input = &ListThingsInBillingGroupInput{}
  10459. }
  10460. output = &ListThingsInBillingGroupOutput{}
  10461. req = c.newRequest(op, input, output)
  10462. return
  10463. }
  10464. // ListThingsInBillingGroup API operation for AWS IoT.
  10465. //
  10466. // Lists the things you have added to the given billing group.
  10467. //
  10468. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10469. // with awserr.Error's Code and Message methods to get detailed information about
  10470. // the error.
  10471. //
  10472. // See the AWS API reference guide for AWS IoT's
  10473. // API operation ListThingsInBillingGroup for usage and error information.
  10474. //
  10475. // Returned Error Codes:
  10476. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10477. // The request is not valid.
  10478. //
  10479. // * ErrCodeInternalFailureException "InternalFailureException"
  10480. // An unexpected error has occurred.
  10481. //
  10482. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  10483. // The specified resource does not exist.
  10484. //
  10485. // * ErrCodeThrottlingException "ThrottlingException"
  10486. // The rate exceeds the limit.
  10487. //
  10488. func (c *IoT) ListThingsInBillingGroup(input *ListThingsInBillingGroupInput) (*ListThingsInBillingGroupOutput, error) {
  10489. req, out := c.ListThingsInBillingGroupRequest(input)
  10490. return out, req.Send()
  10491. }
  10492. // ListThingsInBillingGroupWithContext is the same as ListThingsInBillingGroup with the addition of
  10493. // the ability to pass a context and additional request options.
  10494. //
  10495. // See ListThingsInBillingGroup for details on how to use this API operation.
  10496. //
  10497. // The context must be non-nil and will be used for request cancellation. If
  10498. // the context is nil a panic will occur. In the future the SDK may create
  10499. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10500. // for more information on using Contexts.
  10501. func (c *IoT) ListThingsInBillingGroupWithContext(ctx aws.Context, input *ListThingsInBillingGroupInput, opts ...request.Option) (*ListThingsInBillingGroupOutput, error) {
  10502. req, out := c.ListThingsInBillingGroupRequest(input)
  10503. req.SetContext(ctx)
  10504. req.ApplyOptions(opts...)
  10505. return out, req.Send()
  10506. }
  10507. const opListThingsInThingGroup = "ListThingsInThingGroup"
  10508. // ListThingsInThingGroupRequest generates a "aws/request.Request" representing the
  10509. // client's request for the ListThingsInThingGroup operation. The "output" return
  10510. // value will be populated with the request's response once the request completes
  10511. // successfully.
  10512. //
  10513. // Use "Send" method on the returned Request to send the API call to the service.
  10514. // the "output" return value is not valid until after Send returns without error.
  10515. //
  10516. // See ListThingsInThingGroup for more information on using the ListThingsInThingGroup
  10517. // API call, and error handling.
  10518. //
  10519. // This method is useful when you want to inject custom logic or configuration
  10520. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10521. //
  10522. //
  10523. // // Example sending a request using the ListThingsInThingGroupRequest method.
  10524. // req, resp := client.ListThingsInThingGroupRequest(params)
  10525. //
  10526. // err := req.Send()
  10527. // if err == nil { // resp is now filled
  10528. // fmt.Println(resp)
  10529. // }
  10530. func (c *IoT) ListThingsInThingGroupRequest(input *ListThingsInThingGroupInput) (req *request.Request, output *ListThingsInThingGroupOutput) {
  10531. op := &request.Operation{
  10532. Name: opListThingsInThingGroup,
  10533. HTTPMethod: "GET",
  10534. HTTPPath: "/thing-groups/{thingGroupName}/things",
  10535. }
  10536. if input == nil {
  10537. input = &ListThingsInThingGroupInput{}
  10538. }
  10539. output = &ListThingsInThingGroupOutput{}
  10540. req = c.newRequest(op, input, output)
  10541. return
  10542. }
  10543. // ListThingsInThingGroup API operation for AWS IoT.
  10544. //
  10545. // Lists the things in the specified group.
  10546. //
  10547. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10548. // with awserr.Error's Code and Message methods to get detailed information about
  10549. // the error.
  10550. //
  10551. // See the AWS API reference guide for AWS IoT's
  10552. // API operation ListThingsInThingGroup for usage and error information.
  10553. //
  10554. // Returned Error Codes:
  10555. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10556. // The request is not valid.
  10557. //
  10558. // * ErrCodeInternalFailureException "InternalFailureException"
  10559. // An unexpected error has occurred.
  10560. //
  10561. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  10562. // The specified resource does not exist.
  10563. //
  10564. func (c *IoT) ListThingsInThingGroup(input *ListThingsInThingGroupInput) (*ListThingsInThingGroupOutput, error) {
  10565. req, out := c.ListThingsInThingGroupRequest(input)
  10566. return out, req.Send()
  10567. }
  10568. // ListThingsInThingGroupWithContext is the same as ListThingsInThingGroup with the addition of
  10569. // the ability to pass a context and additional request options.
  10570. //
  10571. // See ListThingsInThingGroup for details on how to use this API operation.
  10572. //
  10573. // The context must be non-nil and will be used for request cancellation. If
  10574. // the context is nil a panic will occur. In the future the SDK may create
  10575. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10576. // for more information on using Contexts.
  10577. func (c *IoT) ListThingsInThingGroupWithContext(ctx aws.Context, input *ListThingsInThingGroupInput, opts ...request.Option) (*ListThingsInThingGroupOutput, error) {
  10578. req, out := c.ListThingsInThingGroupRequest(input)
  10579. req.SetContext(ctx)
  10580. req.ApplyOptions(opts...)
  10581. return out, req.Send()
  10582. }
  10583. const opListTopicRules = "ListTopicRules"
  10584. // ListTopicRulesRequest generates a "aws/request.Request" representing the
  10585. // client's request for the ListTopicRules operation. The "output" return
  10586. // value will be populated with the request's response once the request completes
  10587. // successfully.
  10588. //
  10589. // Use "Send" method on the returned Request to send the API call to the service.
  10590. // the "output" return value is not valid until after Send returns without error.
  10591. //
  10592. // See ListTopicRules for more information on using the ListTopicRules
  10593. // API call, and error handling.
  10594. //
  10595. // This method is useful when you want to inject custom logic or configuration
  10596. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10597. //
  10598. //
  10599. // // Example sending a request using the ListTopicRulesRequest method.
  10600. // req, resp := client.ListTopicRulesRequest(params)
  10601. //
  10602. // err := req.Send()
  10603. // if err == nil { // resp is now filled
  10604. // fmt.Println(resp)
  10605. // }
  10606. func (c *IoT) ListTopicRulesRequest(input *ListTopicRulesInput) (req *request.Request, output *ListTopicRulesOutput) {
  10607. op := &request.Operation{
  10608. Name: opListTopicRules,
  10609. HTTPMethod: "GET",
  10610. HTTPPath: "/rules",
  10611. }
  10612. if input == nil {
  10613. input = &ListTopicRulesInput{}
  10614. }
  10615. output = &ListTopicRulesOutput{}
  10616. req = c.newRequest(op, input, output)
  10617. return
  10618. }
  10619. // ListTopicRules API operation for AWS IoT.
  10620. //
  10621. // Lists the rules for the specific topic.
  10622. //
  10623. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10624. // with awserr.Error's Code and Message methods to get detailed information about
  10625. // the error.
  10626. //
  10627. // See the AWS API reference guide for AWS IoT's
  10628. // API operation ListTopicRules for usage and error information.
  10629. //
  10630. // Returned Error Codes:
  10631. // * ErrCodeInternalException "InternalException"
  10632. // An unexpected error has occurred.
  10633. //
  10634. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10635. // The request is not valid.
  10636. //
  10637. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10638. // The service is temporarily unavailable.
  10639. //
  10640. func (c *IoT) ListTopicRules(input *ListTopicRulesInput) (*ListTopicRulesOutput, error) {
  10641. req, out := c.ListTopicRulesRequest(input)
  10642. return out, req.Send()
  10643. }
  10644. // ListTopicRulesWithContext is the same as ListTopicRules with the addition of
  10645. // the ability to pass a context and additional request options.
  10646. //
  10647. // See ListTopicRules for details on how to use this API operation.
  10648. //
  10649. // The context must be non-nil and will be used for request cancellation. If
  10650. // the context is nil a panic will occur. In the future the SDK may create
  10651. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10652. // for more information on using Contexts.
  10653. func (c *IoT) ListTopicRulesWithContext(ctx aws.Context, input *ListTopicRulesInput, opts ...request.Option) (*ListTopicRulesOutput, error) {
  10654. req, out := c.ListTopicRulesRequest(input)
  10655. req.SetContext(ctx)
  10656. req.ApplyOptions(opts...)
  10657. return out, req.Send()
  10658. }
  10659. const opListV2LoggingLevels = "ListV2LoggingLevels"
  10660. // ListV2LoggingLevelsRequest generates a "aws/request.Request" representing the
  10661. // client's request for the ListV2LoggingLevels operation. The "output" return
  10662. // value will be populated with the request's response once the request completes
  10663. // successfully.
  10664. //
  10665. // Use "Send" method on the returned Request to send the API call to the service.
  10666. // the "output" return value is not valid until after Send returns without error.
  10667. //
  10668. // See ListV2LoggingLevels for more information on using the ListV2LoggingLevels
  10669. // API call, and error handling.
  10670. //
  10671. // This method is useful when you want to inject custom logic or configuration
  10672. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10673. //
  10674. //
  10675. // // Example sending a request using the ListV2LoggingLevelsRequest method.
  10676. // req, resp := client.ListV2LoggingLevelsRequest(params)
  10677. //
  10678. // err := req.Send()
  10679. // if err == nil { // resp is now filled
  10680. // fmt.Println(resp)
  10681. // }
  10682. func (c *IoT) ListV2LoggingLevelsRequest(input *ListV2LoggingLevelsInput) (req *request.Request, output *ListV2LoggingLevelsOutput) {
  10683. op := &request.Operation{
  10684. Name: opListV2LoggingLevels,
  10685. HTTPMethod: "GET",
  10686. HTTPPath: "/v2LoggingLevel",
  10687. }
  10688. if input == nil {
  10689. input = &ListV2LoggingLevelsInput{}
  10690. }
  10691. output = &ListV2LoggingLevelsOutput{}
  10692. req = c.newRequest(op, input, output)
  10693. return
  10694. }
  10695. // ListV2LoggingLevels API operation for AWS IoT.
  10696. //
  10697. // Lists logging levels.
  10698. //
  10699. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10700. // with awserr.Error's Code and Message methods to get detailed information about
  10701. // the error.
  10702. //
  10703. // See the AWS API reference guide for AWS IoT's
  10704. // API operation ListV2LoggingLevels for usage and error information.
  10705. //
  10706. // Returned Error Codes:
  10707. // * ErrCodeInternalException "InternalException"
  10708. // An unexpected error has occurred.
  10709. //
  10710. // * ErrCodeNotConfiguredException "NotConfiguredException"
  10711. // The resource is not configured.
  10712. //
  10713. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10714. // The request is not valid.
  10715. //
  10716. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10717. // The service is temporarily unavailable.
  10718. //
  10719. func (c *IoT) ListV2LoggingLevels(input *ListV2LoggingLevelsInput) (*ListV2LoggingLevelsOutput, error) {
  10720. req, out := c.ListV2LoggingLevelsRequest(input)
  10721. return out, req.Send()
  10722. }
  10723. // ListV2LoggingLevelsWithContext is the same as ListV2LoggingLevels with the addition of
  10724. // the ability to pass a context and additional request options.
  10725. //
  10726. // See ListV2LoggingLevels for details on how to use this API operation.
  10727. //
  10728. // The context must be non-nil and will be used for request cancellation. If
  10729. // the context is nil a panic will occur. In the future the SDK may create
  10730. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10731. // for more information on using Contexts.
  10732. func (c *IoT) ListV2LoggingLevelsWithContext(ctx aws.Context, input *ListV2LoggingLevelsInput, opts ...request.Option) (*ListV2LoggingLevelsOutput, error) {
  10733. req, out := c.ListV2LoggingLevelsRequest(input)
  10734. req.SetContext(ctx)
  10735. req.ApplyOptions(opts...)
  10736. return out, req.Send()
  10737. }
  10738. const opListViolationEvents = "ListViolationEvents"
  10739. // ListViolationEventsRequest generates a "aws/request.Request" representing the
  10740. // client's request for the ListViolationEvents operation. The "output" return
  10741. // value will be populated with the request's response once the request completes
  10742. // successfully.
  10743. //
  10744. // Use "Send" method on the returned Request to send the API call to the service.
  10745. // the "output" return value is not valid until after Send returns without error.
  10746. //
  10747. // See ListViolationEvents for more information on using the ListViolationEvents
  10748. // API call, and error handling.
  10749. //
  10750. // This method is useful when you want to inject custom logic or configuration
  10751. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10752. //
  10753. //
  10754. // // Example sending a request using the ListViolationEventsRequest method.
  10755. // req, resp := client.ListViolationEventsRequest(params)
  10756. //
  10757. // err := req.Send()
  10758. // if err == nil { // resp is now filled
  10759. // fmt.Println(resp)
  10760. // }
  10761. func (c *IoT) ListViolationEventsRequest(input *ListViolationEventsInput) (req *request.Request, output *ListViolationEventsOutput) {
  10762. op := &request.Operation{
  10763. Name: opListViolationEvents,
  10764. HTTPMethod: "GET",
  10765. HTTPPath: "/violation-events",
  10766. }
  10767. if input == nil {
  10768. input = &ListViolationEventsInput{}
  10769. }
  10770. output = &ListViolationEventsOutput{}
  10771. req = c.newRequest(op, input, output)
  10772. return
  10773. }
  10774. // ListViolationEvents API operation for AWS IoT.
  10775. //
  10776. // Lists the Device Defender security profile violations discovered during the
  10777. // given time period. You can use filters to limit the results to those alerts
  10778. // issued for a particular security profile, behavior or thing (device).
  10779. //
  10780. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10781. // with awserr.Error's Code and Message methods to get detailed information about
  10782. // the error.
  10783. //
  10784. // See the AWS API reference guide for AWS IoT's
  10785. // API operation ListViolationEvents for usage and error information.
  10786. //
  10787. // Returned Error Codes:
  10788. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10789. // The request is not valid.
  10790. //
  10791. // * ErrCodeThrottlingException "ThrottlingException"
  10792. // The rate exceeds the limit.
  10793. //
  10794. // * ErrCodeInternalFailureException "InternalFailureException"
  10795. // An unexpected error has occurred.
  10796. //
  10797. func (c *IoT) ListViolationEvents(input *ListViolationEventsInput) (*ListViolationEventsOutput, error) {
  10798. req, out := c.ListViolationEventsRequest(input)
  10799. return out, req.Send()
  10800. }
  10801. // ListViolationEventsWithContext is the same as ListViolationEvents with the addition of
  10802. // the ability to pass a context and additional request options.
  10803. //
  10804. // See ListViolationEvents for details on how to use this API operation.
  10805. //
  10806. // The context must be non-nil and will be used for request cancellation. If
  10807. // the context is nil a panic will occur. In the future the SDK may create
  10808. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10809. // for more information on using Contexts.
  10810. func (c *IoT) ListViolationEventsWithContext(ctx aws.Context, input *ListViolationEventsInput, opts ...request.Option) (*ListViolationEventsOutput, error) {
  10811. req, out := c.ListViolationEventsRequest(input)
  10812. req.SetContext(ctx)
  10813. req.ApplyOptions(opts...)
  10814. return out, req.Send()
  10815. }
  10816. const opRegisterCACertificate = "RegisterCACertificate"
  10817. // RegisterCACertificateRequest generates a "aws/request.Request" representing the
  10818. // client's request for the RegisterCACertificate operation. The "output" return
  10819. // value will be populated with the request's response once the request completes
  10820. // successfully.
  10821. //
  10822. // Use "Send" method on the returned Request to send the API call to the service.
  10823. // the "output" return value is not valid until after Send returns without error.
  10824. //
  10825. // See RegisterCACertificate for more information on using the RegisterCACertificate
  10826. // API call, and error handling.
  10827. //
  10828. // This method is useful when you want to inject custom logic or configuration
  10829. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10830. //
  10831. //
  10832. // // Example sending a request using the RegisterCACertificateRequest method.
  10833. // req, resp := client.RegisterCACertificateRequest(params)
  10834. //
  10835. // err := req.Send()
  10836. // if err == nil { // resp is now filled
  10837. // fmt.Println(resp)
  10838. // }
  10839. func (c *IoT) RegisterCACertificateRequest(input *RegisterCACertificateInput) (req *request.Request, output *RegisterCACertificateOutput) {
  10840. op := &request.Operation{
  10841. Name: opRegisterCACertificate,
  10842. HTTPMethod: "POST",
  10843. HTTPPath: "/cacertificate",
  10844. }
  10845. if input == nil {
  10846. input = &RegisterCACertificateInput{}
  10847. }
  10848. output = &RegisterCACertificateOutput{}
  10849. req = c.newRequest(op, input, output)
  10850. return
  10851. }
  10852. // RegisterCACertificate API operation for AWS IoT.
  10853. //
  10854. // Registers a CA certificate with AWS IoT. This CA certificate can then be
  10855. // used to sign device certificates, which can be then registered with AWS IoT.
  10856. // You can register up to 10 CA certificates per AWS account that have the same
  10857. // subject field. This enables you to have up to 10 certificate authorities
  10858. // sign your device certificates. If you have more than one CA certificate registered,
  10859. // make sure you pass the CA certificate when you register your device certificates
  10860. // with the RegisterCertificate API.
  10861. //
  10862. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10863. // with awserr.Error's Code and Message methods to get detailed information about
  10864. // the error.
  10865. //
  10866. // See the AWS API reference guide for AWS IoT's
  10867. // API operation RegisterCACertificate for usage and error information.
  10868. //
  10869. // Returned Error Codes:
  10870. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  10871. // The resource already exists.
  10872. //
  10873. // * ErrCodeRegistrationCodeValidationException "RegistrationCodeValidationException"
  10874. // The registration code is invalid.
  10875. //
  10876. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10877. // The request is not valid.
  10878. //
  10879. // * ErrCodeCertificateValidationException "CertificateValidationException"
  10880. // The certificate is invalid.
  10881. //
  10882. // * ErrCodeThrottlingException "ThrottlingException"
  10883. // The rate exceeds the limit.
  10884. //
  10885. // * ErrCodeLimitExceededException "LimitExceededException"
  10886. // A limit has been exceeded.
  10887. //
  10888. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10889. // You are not authorized to perform this operation.
  10890. //
  10891. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10892. // The service is temporarily unavailable.
  10893. //
  10894. // * ErrCodeInternalFailureException "InternalFailureException"
  10895. // An unexpected error has occurred.
  10896. //
  10897. func (c *IoT) RegisterCACertificate(input *RegisterCACertificateInput) (*RegisterCACertificateOutput, error) {
  10898. req, out := c.RegisterCACertificateRequest(input)
  10899. return out, req.Send()
  10900. }
  10901. // RegisterCACertificateWithContext is the same as RegisterCACertificate with the addition of
  10902. // the ability to pass a context and additional request options.
  10903. //
  10904. // See RegisterCACertificate for details on how to use this API operation.
  10905. //
  10906. // The context must be non-nil and will be used for request cancellation. If
  10907. // the context is nil a panic will occur. In the future the SDK may create
  10908. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  10909. // for more information on using Contexts.
  10910. func (c *IoT) RegisterCACertificateWithContext(ctx aws.Context, input *RegisterCACertificateInput, opts ...request.Option) (*RegisterCACertificateOutput, error) {
  10911. req, out := c.RegisterCACertificateRequest(input)
  10912. req.SetContext(ctx)
  10913. req.ApplyOptions(opts...)
  10914. return out, req.Send()
  10915. }
  10916. const opRegisterCertificate = "RegisterCertificate"
  10917. // RegisterCertificateRequest generates a "aws/request.Request" representing the
  10918. // client's request for the RegisterCertificate operation. The "output" return
  10919. // value will be populated with the request's response once the request completes
  10920. // successfully.
  10921. //
  10922. // Use "Send" method on the returned Request to send the API call to the service.
  10923. // the "output" return value is not valid until after Send returns without error.
  10924. //
  10925. // See RegisterCertificate for more information on using the RegisterCertificate
  10926. // API call, and error handling.
  10927. //
  10928. // This method is useful when you want to inject custom logic or configuration
  10929. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  10930. //
  10931. //
  10932. // // Example sending a request using the RegisterCertificateRequest method.
  10933. // req, resp := client.RegisterCertificateRequest(params)
  10934. //
  10935. // err := req.Send()
  10936. // if err == nil { // resp is now filled
  10937. // fmt.Println(resp)
  10938. // }
  10939. func (c *IoT) RegisterCertificateRequest(input *RegisterCertificateInput) (req *request.Request, output *RegisterCertificateOutput) {
  10940. op := &request.Operation{
  10941. Name: opRegisterCertificate,
  10942. HTTPMethod: "POST",
  10943. HTTPPath: "/certificate/register",
  10944. }
  10945. if input == nil {
  10946. input = &RegisterCertificateInput{}
  10947. }
  10948. output = &RegisterCertificateOutput{}
  10949. req = c.newRequest(op, input, output)
  10950. return
  10951. }
  10952. // RegisterCertificate API operation for AWS IoT.
  10953. //
  10954. // Registers a device certificate with AWS IoT. If you have more than one CA
  10955. // certificate that has the same subject field, you must specify the CA certificate
  10956. // that was used to sign the device certificate being registered.
  10957. //
  10958. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  10959. // with awserr.Error's Code and Message methods to get detailed information about
  10960. // the error.
  10961. //
  10962. // See the AWS API reference guide for AWS IoT's
  10963. // API operation RegisterCertificate for usage and error information.
  10964. //
  10965. // Returned Error Codes:
  10966. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  10967. // The resource already exists.
  10968. //
  10969. // * ErrCodeInvalidRequestException "InvalidRequestException"
  10970. // The request is not valid.
  10971. //
  10972. // * ErrCodeCertificateValidationException "CertificateValidationException"
  10973. // The certificate is invalid.
  10974. //
  10975. // * ErrCodeCertificateStateException "CertificateStateException"
  10976. // The certificate operation is not allowed.
  10977. //
  10978. // * ErrCodeCertificateConflictException "CertificateConflictException"
  10979. // Unable to verify the CA certificate used to sign the device certificate you
  10980. // are attempting to register. This is happens when you have registered more
  10981. // than one CA certificate that has the same subject field and public key.
  10982. //
  10983. // * ErrCodeThrottlingException "ThrottlingException"
  10984. // The rate exceeds the limit.
  10985. //
  10986. // * ErrCodeUnauthorizedException "UnauthorizedException"
  10987. // You are not authorized to perform this operation.
  10988. //
  10989. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  10990. // The service is temporarily unavailable.
  10991. //
  10992. // * ErrCodeInternalFailureException "InternalFailureException"
  10993. // An unexpected error has occurred.
  10994. //
  10995. func (c *IoT) RegisterCertificate(input *RegisterCertificateInput) (*RegisterCertificateOutput, error) {
  10996. req, out := c.RegisterCertificateRequest(input)
  10997. return out, req.Send()
  10998. }
  10999. // RegisterCertificateWithContext is the same as RegisterCertificate with the addition of
  11000. // the ability to pass a context and additional request options.
  11001. //
  11002. // See RegisterCertificate for details on how to use this API operation.
  11003. //
  11004. // The context must be non-nil and will be used for request cancellation. If
  11005. // the context is nil a panic will occur. In the future the SDK may create
  11006. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11007. // for more information on using Contexts.
  11008. func (c *IoT) RegisterCertificateWithContext(ctx aws.Context, input *RegisterCertificateInput, opts ...request.Option) (*RegisterCertificateOutput, error) {
  11009. req, out := c.RegisterCertificateRequest(input)
  11010. req.SetContext(ctx)
  11011. req.ApplyOptions(opts...)
  11012. return out, req.Send()
  11013. }
  11014. const opRegisterThing = "RegisterThing"
  11015. // RegisterThingRequest generates a "aws/request.Request" representing the
  11016. // client's request for the RegisterThing operation. The "output" return
  11017. // value will be populated with the request's response once the request completes
  11018. // successfully.
  11019. //
  11020. // Use "Send" method on the returned Request to send the API call to the service.
  11021. // the "output" return value is not valid until after Send returns without error.
  11022. //
  11023. // See RegisterThing for more information on using the RegisterThing
  11024. // API call, and error handling.
  11025. //
  11026. // This method is useful when you want to inject custom logic or configuration
  11027. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11028. //
  11029. //
  11030. // // Example sending a request using the RegisterThingRequest method.
  11031. // req, resp := client.RegisterThingRequest(params)
  11032. //
  11033. // err := req.Send()
  11034. // if err == nil { // resp is now filled
  11035. // fmt.Println(resp)
  11036. // }
  11037. func (c *IoT) RegisterThingRequest(input *RegisterThingInput) (req *request.Request, output *RegisterThingOutput) {
  11038. op := &request.Operation{
  11039. Name: opRegisterThing,
  11040. HTTPMethod: "POST",
  11041. HTTPPath: "/things",
  11042. }
  11043. if input == nil {
  11044. input = &RegisterThingInput{}
  11045. }
  11046. output = &RegisterThingOutput{}
  11047. req = c.newRequest(op, input, output)
  11048. return
  11049. }
  11050. // RegisterThing API operation for AWS IoT.
  11051. //
  11052. // Provisions a thing.
  11053. //
  11054. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11055. // with awserr.Error's Code and Message methods to get detailed information about
  11056. // the error.
  11057. //
  11058. // See the AWS API reference guide for AWS IoT's
  11059. // API operation RegisterThing for usage and error information.
  11060. //
  11061. // Returned Error Codes:
  11062. // * ErrCodeInternalFailureException "InternalFailureException"
  11063. // An unexpected error has occurred.
  11064. //
  11065. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11066. // The service is temporarily unavailable.
  11067. //
  11068. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11069. // The request is not valid.
  11070. //
  11071. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11072. // You are not authorized to perform this operation.
  11073. //
  11074. // * ErrCodeThrottlingException "ThrottlingException"
  11075. // The rate exceeds the limit.
  11076. //
  11077. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  11078. // A conflicting resource update exception. This exception is thrown when two
  11079. // pending updates cause a conflict.
  11080. //
  11081. // * ErrCodeResourceRegistrationFailureException "ResourceRegistrationFailureException"
  11082. // The resource registration failed.
  11083. //
  11084. func (c *IoT) RegisterThing(input *RegisterThingInput) (*RegisterThingOutput, error) {
  11085. req, out := c.RegisterThingRequest(input)
  11086. return out, req.Send()
  11087. }
  11088. // RegisterThingWithContext is the same as RegisterThing with the addition of
  11089. // the ability to pass a context and additional request options.
  11090. //
  11091. // See RegisterThing for details on how to use this API operation.
  11092. //
  11093. // The context must be non-nil and will be used for request cancellation. If
  11094. // the context is nil a panic will occur. In the future the SDK may create
  11095. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11096. // for more information on using Contexts.
  11097. func (c *IoT) RegisterThingWithContext(ctx aws.Context, input *RegisterThingInput, opts ...request.Option) (*RegisterThingOutput, error) {
  11098. req, out := c.RegisterThingRequest(input)
  11099. req.SetContext(ctx)
  11100. req.ApplyOptions(opts...)
  11101. return out, req.Send()
  11102. }
  11103. const opRejectCertificateTransfer = "RejectCertificateTransfer"
  11104. // RejectCertificateTransferRequest generates a "aws/request.Request" representing the
  11105. // client's request for the RejectCertificateTransfer operation. The "output" return
  11106. // value will be populated with the request's response once the request completes
  11107. // successfully.
  11108. //
  11109. // Use "Send" method on the returned Request to send the API call to the service.
  11110. // the "output" return value is not valid until after Send returns without error.
  11111. //
  11112. // See RejectCertificateTransfer for more information on using the RejectCertificateTransfer
  11113. // API call, and error handling.
  11114. //
  11115. // This method is useful when you want to inject custom logic or configuration
  11116. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11117. //
  11118. //
  11119. // // Example sending a request using the RejectCertificateTransferRequest method.
  11120. // req, resp := client.RejectCertificateTransferRequest(params)
  11121. //
  11122. // err := req.Send()
  11123. // if err == nil { // resp is now filled
  11124. // fmt.Println(resp)
  11125. // }
  11126. func (c *IoT) RejectCertificateTransferRequest(input *RejectCertificateTransferInput) (req *request.Request, output *RejectCertificateTransferOutput) {
  11127. op := &request.Operation{
  11128. Name: opRejectCertificateTransfer,
  11129. HTTPMethod: "PATCH",
  11130. HTTPPath: "/reject-certificate-transfer/{certificateId}",
  11131. }
  11132. if input == nil {
  11133. input = &RejectCertificateTransferInput{}
  11134. }
  11135. output = &RejectCertificateTransferOutput{}
  11136. req = c.newRequest(op, input, output)
  11137. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11138. return
  11139. }
  11140. // RejectCertificateTransfer API operation for AWS IoT.
  11141. //
  11142. // Rejects a pending certificate transfer. After AWS IoT rejects a certificate
  11143. // transfer, the certificate status changes from PENDING_TRANSFER to INACTIVE.
  11144. //
  11145. // To check for pending certificate transfers, call ListCertificates to enumerate
  11146. // your certificates.
  11147. //
  11148. // This operation can only be called by the transfer destination. After it is
  11149. // called, the certificate will be returned to the source's account in the INACTIVE
  11150. // state.
  11151. //
  11152. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11153. // with awserr.Error's Code and Message methods to get detailed information about
  11154. // the error.
  11155. //
  11156. // See the AWS API reference guide for AWS IoT's
  11157. // API operation RejectCertificateTransfer for usage and error information.
  11158. //
  11159. // Returned Error Codes:
  11160. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11161. // The specified resource does not exist.
  11162. //
  11163. // * ErrCodeTransferAlreadyCompletedException "TransferAlreadyCompletedException"
  11164. // You can't revert the certificate transfer because the transfer is already
  11165. // complete.
  11166. //
  11167. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11168. // The request is not valid.
  11169. //
  11170. // * ErrCodeThrottlingException "ThrottlingException"
  11171. // The rate exceeds the limit.
  11172. //
  11173. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11174. // You are not authorized to perform this operation.
  11175. //
  11176. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11177. // The service is temporarily unavailable.
  11178. //
  11179. // * ErrCodeInternalFailureException "InternalFailureException"
  11180. // An unexpected error has occurred.
  11181. //
  11182. func (c *IoT) RejectCertificateTransfer(input *RejectCertificateTransferInput) (*RejectCertificateTransferOutput, error) {
  11183. req, out := c.RejectCertificateTransferRequest(input)
  11184. return out, req.Send()
  11185. }
  11186. // RejectCertificateTransferWithContext is the same as RejectCertificateTransfer with the addition of
  11187. // the ability to pass a context and additional request options.
  11188. //
  11189. // See RejectCertificateTransfer for details on how to use this API operation.
  11190. //
  11191. // The context must be non-nil and will be used for request cancellation. If
  11192. // the context is nil a panic will occur. In the future the SDK may create
  11193. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11194. // for more information on using Contexts.
  11195. func (c *IoT) RejectCertificateTransferWithContext(ctx aws.Context, input *RejectCertificateTransferInput, opts ...request.Option) (*RejectCertificateTransferOutput, error) {
  11196. req, out := c.RejectCertificateTransferRequest(input)
  11197. req.SetContext(ctx)
  11198. req.ApplyOptions(opts...)
  11199. return out, req.Send()
  11200. }
  11201. const opRemoveThingFromBillingGroup = "RemoveThingFromBillingGroup"
  11202. // RemoveThingFromBillingGroupRequest generates a "aws/request.Request" representing the
  11203. // client's request for the RemoveThingFromBillingGroup operation. The "output" return
  11204. // value will be populated with the request's response once the request completes
  11205. // successfully.
  11206. //
  11207. // Use "Send" method on the returned Request to send the API call to the service.
  11208. // the "output" return value is not valid until after Send returns without error.
  11209. //
  11210. // See RemoveThingFromBillingGroup for more information on using the RemoveThingFromBillingGroup
  11211. // API call, and error handling.
  11212. //
  11213. // This method is useful when you want to inject custom logic or configuration
  11214. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11215. //
  11216. //
  11217. // // Example sending a request using the RemoveThingFromBillingGroupRequest method.
  11218. // req, resp := client.RemoveThingFromBillingGroupRequest(params)
  11219. //
  11220. // err := req.Send()
  11221. // if err == nil { // resp is now filled
  11222. // fmt.Println(resp)
  11223. // }
  11224. func (c *IoT) RemoveThingFromBillingGroupRequest(input *RemoveThingFromBillingGroupInput) (req *request.Request, output *RemoveThingFromBillingGroupOutput) {
  11225. op := &request.Operation{
  11226. Name: opRemoveThingFromBillingGroup,
  11227. HTTPMethod: "PUT",
  11228. HTTPPath: "/billing-groups/removeThingFromBillingGroup",
  11229. }
  11230. if input == nil {
  11231. input = &RemoveThingFromBillingGroupInput{}
  11232. }
  11233. output = &RemoveThingFromBillingGroupOutput{}
  11234. req = c.newRequest(op, input, output)
  11235. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11236. return
  11237. }
  11238. // RemoveThingFromBillingGroup API operation for AWS IoT.
  11239. //
  11240. // Removes the given thing from the billing group.
  11241. //
  11242. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11243. // with awserr.Error's Code and Message methods to get detailed information about
  11244. // the error.
  11245. //
  11246. // See the AWS API reference guide for AWS IoT's
  11247. // API operation RemoveThingFromBillingGroup for usage and error information.
  11248. //
  11249. // Returned Error Codes:
  11250. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11251. // The request is not valid.
  11252. //
  11253. // * ErrCodeThrottlingException "ThrottlingException"
  11254. // The rate exceeds the limit.
  11255. //
  11256. // * ErrCodeInternalFailureException "InternalFailureException"
  11257. // An unexpected error has occurred.
  11258. //
  11259. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11260. // The specified resource does not exist.
  11261. //
  11262. func (c *IoT) RemoveThingFromBillingGroup(input *RemoveThingFromBillingGroupInput) (*RemoveThingFromBillingGroupOutput, error) {
  11263. req, out := c.RemoveThingFromBillingGroupRequest(input)
  11264. return out, req.Send()
  11265. }
  11266. // RemoveThingFromBillingGroupWithContext is the same as RemoveThingFromBillingGroup with the addition of
  11267. // the ability to pass a context and additional request options.
  11268. //
  11269. // See RemoveThingFromBillingGroup for details on how to use this API operation.
  11270. //
  11271. // The context must be non-nil and will be used for request cancellation. If
  11272. // the context is nil a panic will occur. In the future the SDK may create
  11273. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11274. // for more information on using Contexts.
  11275. func (c *IoT) RemoveThingFromBillingGroupWithContext(ctx aws.Context, input *RemoveThingFromBillingGroupInput, opts ...request.Option) (*RemoveThingFromBillingGroupOutput, error) {
  11276. req, out := c.RemoveThingFromBillingGroupRequest(input)
  11277. req.SetContext(ctx)
  11278. req.ApplyOptions(opts...)
  11279. return out, req.Send()
  11280. }
  11281. const opRemoveThingFromThingGroup = "RemoveThingFromThingGroup"
  11282. // RemoveThingFromThingGroupRequest generates a "aws/request.Request" representing the
  11283. // client's request for the RemoveThingFromThingGroup operation. The "output" return
  11284. // value will be populated with the request's response once the request completes
  11285. // successfully.
  11286. //
  11287. // Use "Send" method on the returned Request to send the API call to the service.
  11288. // the "output" return value is not valid until after Send returns without error.
  11289. //
  11290. // See RemoveThingFromThingGroup for more information on using the RemoveThingFromThingGroup
  11291. // API call, and error handling.
  11292. //
  11293. // This method is useful when you want to inject custom logic or configuration
  11294. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11295. //
  11296. //
  11297. // // Example sending a request using the RemoveThingFromThingGroupRequest method.
  11298. // req, resp := client.RemoveThingFromThingGroupRequest(params)
  11299. //
  11300. // err := req.Send()
  11301. // if err == nil { // resp is now filled
  11302. // fmt.Println(resp)
  11303. // }
  11304. func (c *IoT) RemoveThingFromThingGroupRequest(input *RemoveThingFromThingGroupInput) (req *request.Request, output *RemoveThingFromThingGroupOutput) {
  11305. op := &request.Operation{
  11306. Name: opRemoveThingFromThingGroup,
  11307. HTTPMethod: "PUT",
  11308. HTTPPath: "/thing-groups/removeThingFromThingGroup",
  11309. }
  11310. if input == nil {
  11311. input = &RemoveThingFromThingGroupInput{}
  11312. }
  11313. output = &RemoveThingFromThingGroupOutput{}
  11314. req = c.newRequest(op, input, output)
  11315. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11316. return
  11317. }
  11318. // RemoveThingFromThingGroup API operation for AWS IoT.
  11319. //
  11320. // Remove the specified thing from the specified group.
  11321. //
  11322. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11323. // with awserr.Error's Code and Message methods to get detailed information about
  11324. // the error.
  11325. //
  11326. // See the AWS API reference guide for AWS IoT's
  11327. // API operation RemoveThingFromThingGroup for usage and error information.
  11328. //
  11329. // Returned Error Codes:
  11330. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11331. // The request is not valid.
  11332. //
  11333. // * ErrCodeThrottlingException "ThrottlingException"
  11334. // The rate exceeds the limit.
  11335. //
  11336. // * ErrCodeInternalFailureException "InternalFailureException"
  11337. // An unexpected error has occurred.
  11338. //
  11339. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11340. // The specified resource does not exist.
  11341. //
  11342. func (c *IoT) RemoveThingFromThingGroup(input *RemoveThingFromThingGroupInput) (*RemoveThingFromThingGroupOutput, error) {
  11343. req, out := c.RemoveThingFromThingGroupRequest(input)
  11344. return out, req.Send()
  11345. }
  11346. // RemoveThingFromThingGroupWithContext is the same as RemoveThingFromThingGroup with the addition of
  11347. // the ability to pass a context and additional request options.
  11348. //
  11349. // See RemoveThingFromThingGroup for details on how to use this API operation.
  11350. //
  11351. // The context must be non-nil and will be used for request cancellation. If
  11352. // the context is nil a panic will occur. In the future the SDK may create
  11353. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11354. // for more information on using Contexts.
  11355. func (c *IoT) RemoveThingFromThingGroupWithContext(ctx aws.Context, input *RemoveThingFromThingGroupInput, opts ...request.Option) (*RemoveThingFromThingGroupOutput, error) {
  11356. req, out := c.RemoveThingFromThingGroupRequest(input)
  11357. req.SetContext(ctx)
  11358. req.ApplyOptions(opts...)
  11359. return out, req.Send()
  11360. }
  11361. const opReplaceTopicRule = "ReplaceTopicRule"
  11362. // ReplaceTopicRuleRequest generates a "aws/request.Request" representing the
  11363. // client's request for the ReplaceTopicRule operation. The "output" return
  11364. // value will be populated with the request's response once the request completes
  11365. // successfully.
  11366. //
  11367. // Use "Send" method on the returned Request to send the API call to the service.
  11368. // the "output" return value is not valid until after Send returns without error.
  11369. //
  11370. // See ReplaceTopicRule for more information on using the ReplaceTopicRule
  11371. // API call, and error handling.
  11372. //
  11373. // This method is useful when you want to inject custom logic or configuration
  11374. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11375. //
  11376. //
  11377. // // Example sending a request using the ReplaceTopicRuleRequest method.
  11378. // req, resp := client.ReplaceTopicRuleRequest(params)
  11379. //
  11380. // err := req.Send()
  11381. // if err == nil { // resp is now filled
  11382. // fmt.Println(resp)
  11383. // }
  11384. func (c *IoT) ReplaceTopicRuleRequest(input *ReplaceTopicRuleInput) (req *request.Request, output *ReplaceTopicRuleOutput) {
  11385. op := &request.Operation{
  11386. Name: opReplaceTopicRule,
  11387. HTTPMethod: "PATCH",
  11388. HTTPPath: "/rules/{ruleName}",
  11389. }
  11390. if input == nil {
  11391. input = &ReplaceTopicRuleInput{}
  11392. }
  11393. output = &ReplaceTopicRuleOutput{}
  11394. req = c.newRequest(op, input, output)
  11395. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11396. return
  11397. }
  11398. // ReplaceTopicRule API operation for AWS IoT.
  11399. //
  11400. // Replaces the rule. You must specify all parameters for the new rule. Creating
  11401. // rules is an administrator-level action. Any user who has permission to create
  11402. // rules will be able to access data processed by the rule.
  11403. //
  11404. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11405. // with awserr.Error's Code and Message methods to get detailed information about
  11406. // the error.
  11407. //
  11408. // See the AWS API reference guide for AWS IoT's
  11409. // API operation ReplaceTopicRule for usage and error information.
  11410. //
  11411. // Returned Error Codes:
  11412. // * ErrCodeSqlParseException "SqlParseException"
  11413. // The Rule-SQL expression can't be parsed correctly.
  11414. //
  11415. // * ErrCodeInternalException "InternalException"
  11416. // An unexpected error has occurred.
  11417. //
  11418. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11419. // The request is not valid.
  11420. //
  11421. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11422. // The service is temporarily unavailable.
  11423. //
  11424. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11425. // You are not authorized to perform this operation.
  11426. //
  11427. // * ErrCodeConflictingResourceUpdateException "ConflictingResourceUpdateException"
  11428. // A conflicting resource update exception. This exception is thrown when two
  11429. // pending updates cause a conflict.
  11430. //
  11431. func (c *IoT) ReplaceTopicRule(input *ReplaceTopicRuleInput) (*ReplaceTopicRuleOutput, error) {
  11432. req, out := c.ReplaceTopicRuleRequest(input)
  11433. return out, req.Send()
  11434. }
  11435. // ReplaceTopicRuleWithContext is the same as ReplaceTopicRule with the addition of
  11436. // the ability to pass a context and additional request options.
  11437. //
  11438. // See ReplaceTopicRule for details on how to use this API operation.
  11439. //
  11440. // The context must be non-nil and will be used for request cancellation. If
  11441. // the context is nil a panic will occur. In the future the SDK may create
  11442. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11443. // for more information on using Contexts.
  11444. func (c *IoT) ReplaceTopicRuleWithContext(ctx aws.Context, input *ReplaceTopicRuleInput, opts ...request.Option) (*ReplaceTopicRuleOutput, error) {
  11445. req, out := c.ReplaceTopicRuleRequest(input)
  11446. req.SetContext(ctx)
  11447. req.ApplyOptions(opts...)
  11448. return out, req.Send()
  11449. }
  11450. const opSearchIndex = "SearchIndex"
  11451. // SearchIndexRequest generates a "aws/request.Request" representing the
  11452. // client's request for the SearchIndex operation. The "output" return
  11453. // value will be populated with the request's response once the request completes
  11454. // successfully.
  11455. //
  11456. // Use "Send" method on the returned Request to send the API call to the service.
  11457. // the "output" return value is not valid until after Send returns without error.
  11458. //
  11459. // See SearchIndex for more information on using the SearchIndex
  11460. // API call, and error handling.
  11461. //
  11462. // This method is useful when you want to inject custom logic or configuration
  11463. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11464. //
  11465. //
  11466. // // Example sending a request using the SearchIndexRequest method.
  11467. // req, resp := client.SearchIndexRequest(params)
  11468. //
  11469. // err := req.Send()
  11470. // if err == nil { // resp is now filled
  11471. // fmt.Println(resp)
  11472. // }
  11473. func (c *IoT) SearchIndexRequest(input *SearchIndexInput) (req *request.Request, output *SearchIndexOutput) {
  11474. op := &request.Operation{
  11475. Name: opSearchIndex,
  11476. HTTPMethod: "POST",
  11477. HTTPPath: "/indices/search",
  11478. }
  11479. if input == nil {
  11480. input = &SearchIndexInput{}
  11481. }
  11482. output = &SearchIndexOutput{}
  11483. req = c.newRequest(op, input, output)
  11484. return
  11485. }
  11486. // SearchIndex API operation for AWS IoT.
  11487. //
  11488. // The query search index.
  11489. //
  11490. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11491. // with awserr.Error's Code and Message methods to get detailed information about
  11492. // the error.
  11493. //
  11494. // See the AWS API reference guide for AWS IoT's
  11495. // API operation SearchIndex for usage and error information.
  11496. //
  11497. // Returned Error Codes:
  11498. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11499. // The request is not valid.
  11500. //
  11501. // * ErrCodeThrottlingException "ThrottlingException"
  11502. // The rate exceeds the limit.
  11503. //
  11504. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11505. // You are not authorized to perform this operation.
  11506. //
  11507. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11508. // The service is temporarily unavailable.
  11509. //
  11510. // * ErrCodeInternalFailureException "InternalFailureException"
  11511. // An unexpected error has occurred.
  11512. //
  11513. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11514. // The specified resource does not exist.
  11515. //
  11516. // * ErrCodeInvalidQueryException "InvalidQueryException"
  11517. // The query is invalid.
  11518. //
  11519. // * ErrCodeIndexNotReadyException "IndexNotReadyException"
  11520. // The index is not ready.
  11521. //
  11522. func (c *IoT) SearchIndex(input *SearchIndexInput) (*SearchIndexOutput, error) {
  11523. req, out := c.SearchIndexRequest(input)
  11524. return out, req.Send()
  11525. }
  11526. // SearchIndexWithContext is the same as SearchIndex with the addition of
  11527. // the ability to pass a context and additional request options.
  11528. //
  11529. // See SearchIndex for details on how to use this API operation.
  11530. //
  11531. // The context must be non-nil and will be used for request cancellation. If
  11532. // the context is nil a panic will occur. In the future the SDK may create
  11533. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11534. // for more information on using Contexts.
  11535. func (c *IoT) SearchIndexWithContext(ctx aws.Context, input *SearchIndexInput, opts ...request.Option) (*SearchIndexOutput, error) {
  11536. req, out := c.SearchIndexRequest(input)
  11537. req.SetContext(ctx)
  11538. req.ApplyOptions(opts...)
  11539. return out, req.Send()
  11540. }
  11541. const opSetDefaultAuthorizer = "SetDefaultAuthorizer"
  11542. // SetDefaultAuthorizerRequest generates a "aws/request.Request" representing the
  11543. // client's request for the SetDefaultAuthorizer operation. The "output" return
  11544. // value will be populated with the request's response once the request completes
  11545. // successfully.
  11546. //
  11547. // Use "Send" method on the returned Request to send the API call to the service.
  11548. // the "output" return value is not valid until after Send returns without error.
  11549. //
  11550. // See SetDefaultAuthorizer for more information on using the SetDefaultAuthorizer
  11551. // API call, and error handling.
  11552. //
  11553. // This method is useful when you want to inject custom logic or configuration
  11554. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11555. //
  11556. //
  11557. // // Example sending a request using the SetDefaultAuthorizerRequest method.
  11558. // req, resp := client.SetDefaultAuthorizerRequest(params)
  11559. //
  11560. // err := req.Send()
  11561. // if err == nil { // resp is now filled
  11562. // fmt.Println(resp)
  11563. // }
  11564. func (c *IoT) SetDefaultAuthorizerRequest(input *SetDefaultAuthorizerInput) (req *request.Request, output *SetDefaultAuthorizerOutput) {
  11565. op := &request.Operation{
  11566. Name: opSetDefaultAuthorizer,
  11567. HTTPMethod: "POST",
  11568. HTTPPath: "/default-authorizer",
  11569. }
  11570. if input == nil {
  11571. input = &SetDefaultAuthorizerInput{}
  11572. }
  11573. output = &SetDefaultAuthorizerOutput{}
  11574. req = c.newRequest(op, input, output)
  11575. return
  11576. }
  11577. // SetDefaultAuthorizer API operation for AWS IoT.
  11578. //
  11579. // Sets the default authorizer. This will be used if a websocket connection
  11580. // is made without specifying an authorizer.
  11581. //
  11582. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11583. // with awserr.Error's Code and Message methods to get detailed information about
  11584. // the error.
  11585. //
  11586. // See the AWS API reference guide for AWS IoT's
  11587. // API operation SetDefaultAuthorizer for usage and error information.
  11588. //
  11589. // Returned Error Codes:
  11590. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11591. // The specified resource does not exist.
  11592. //
  11593. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11594. // The request is not valid.
  11595. //
  11596. // * ErrCodeThrottlingException "ThrottlingException"
  11597. // The rate exceeds the limit.
  11598. //
  11599. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11600. // You are not authorized to perform this operation.
  11601. //
  11602. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11603. // The service is temporarily unavailable.
  11604. //
  11605. // * ErrCodeInternalFailureException "InternalFailureException"
  11606. // An unexpected error has occurred.
  11607. //
  11608. // * ErrCodeResourceAlreadyExistsException "ResourceAlreadyExistsException"
  11609. // The resource already exists.
  11610. //
  11611. func (c *IoT) SetDefaultAuthorizer(input *SetDefaultAuthorizerInput) (*SetDefaultAuthorizerOutput, error) {
  11612. req, out := c.SetDefaultAuthorizerRequest(input)
  11613. return out, req.Send()
  11614. }
  11615. // SetDefaultAuthorizerWithContext is the same as SetDefaultAuthorizer with the addition of
  11616. // the ability to pass a context and additional request options.
  11617. //
  11618. // See SetDefaultAuthorizer for details on how to use this API operation.
  11619. //
  11620. // The context must be non-nil and will be used for request cancellation. If
  11621. // the context is nil a panic will occur. In the future the SDK may create
  11622. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11623. // for more information on using Contexts.
  11624. func (c *IoT) SetDefaultAuthorizerWithContext(ctx aws.Context, input *SetDefaultAuthorizerInput, opts ...request.Option) (*SetDefaultAuthorizerOutput, error) {
  11625. req, out := c.SetDefaultAuthorizerRequest(input)
  11626. req.SetContext(ctx)
  11627. req.ApplyOptions(opts...)
  11628. return out, req.Send()
  11629. }
  11630. const opSetDefaultPolicyVersion = "SetDefaultPolicyVersion"
  11631. // SetDefaultPolicyVersionRequest generates a "aws/request.Request" representing the
  11632. // client's request for the SetDefaultPolicyVersion operation. The "output" return
  11633. // value will be populated with the request's response once the request completes
  11634. // successfully.
  11635. //
  11636. // Use "Send" method on the returned Request to send the API call to the service.
  11637. // the "output" return value is not valid until after Send returns without error.
  11638. //
  11639. // See SetDefaultPolicyVersion for more information on using the SetDefaultPolicyVersion
  11640. // API call, and error handling.
  11641. //
  11642. // This method is useful when you want to inject custom logic or configuration
  11643. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11644. //
  11645. //
  11646. // // Example sending a request using the SetDefaultPolicyVersionRequest method.
  11647. // req, resp := client.SetDefaultPolicyVersionRequest(params)
  11648. //
  11649. // err := req.Send()
  11650. // if err == nil { // resp is now filled
  11651. // fmt.Println(resp)
  11652. // }
  11653. func (c *IoT) SetDefaultPolicyVersionRequest(input *SetDefaultPolicyVersionInput) (req *request.Request, output *SetDefaultPolicyVersionOutput) {
  11654. op := &request.Operation{
  11655. Name: opSetDefaultPolicyVersion,
  11656. HTTPMethod: "PATCH",
  11657. HTTPPath: "/policies/{policyName}/version/{policyVersionId}",
  11658. }
  11659. if input == nil {
  11660. input = &SetDefaultPolicyVersionInput{}
  11661. }
  11662. output = &SetDefaultPolicyVersionOutput{}
  11663. req = c.newRequest(op, input, output)
  11664. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11665. return
  11666. }
  11667. // SetDefaultPolicyVersion API operation for AWS IoT.
  11668. //
  11669. // Sets the specified version of the specified policy as the policy's default
  11670. // (operative) version. This action affects all certificates to which the policy
  11671. // is attached. To list the principals the policy is attached to, use the ListPrincipalPolicy
  11672. // API.
  11673. //
  11674. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11675. // with awserr.Error's Code and Message methods to get detailed information about
  11676. // the error.
  11677. //
  11678. // See the AWS API reference guide for AWS IoT's
  11679. // API operation SetDefaultPolicyVersion for usage and error information.
  11680. //
  11681. // Returned Error Codes:
  11682. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  11683. // The specified resource does not exist.
  11684. //
  11685. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11686. // The request is not valid.
  11687. //
  11688. // * ErrCodeThrottlingException "ThrottlingException"
  11689. // The rate exceeds the limit.
  11690. //
  11691. // * ErrCodeUnauthorizedException "UnauthorizedException"
  11692. // You are not authorized to perform this operation.
  11693. //
  11694. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11695. // The service is temporarily unavailable.
  11696. //
  11697. // * ErrCodeInternalFailureException "InternalFailureException"
  11698. // An unexpected error has occurred.
  11699. //
  11700. func (c *IoT) SetDefaultPolicyVersion(input *SetDefaultPolicyVersionInput) (*SetDefaultPolicyVersionOutput, error) {
  11701. req, out := c.SetDefaultPolicyVersionRequest(input)
  11702. return out, req.Send()
  11703. }
  11704. // SetDefaultPolicyVersionWithContext is the same as SetDefaultPolicyVersion with the addition of
  11705. // the ability to pass a context and additional request options.
  11706. //
  11707. // See SetDefaultPolicyVersion for details on how to use this API operation.
  11708. //
  11709. // The context must be non-nil and will be used for request cancellation. If
  11710. // the context is nil a panic will occur. In the future the SDK may create
  11711. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11712. // for more information on using Contexts.
  11713. func (c *IoT) SetDefaultPolicyVersionWithContext(ctx aws.Context, input *SetDefaultPolicyVersionInput, opts ...request.Option) (*SetDefaultPolicyVersionOutput, error) {
  11714. req, out := c.SetDefaultPolicyVersionRequest(input)
  11715. req.SetContext(ctx)
  11716. req.ApplyOptions(opts...)
  11717. return out, req.Send()
  11718. }
  11719. const opSetLoggingOptions = "SetLoggingOptions"
  11720. // SetLoggingOptionsRequest generates a "aws/request.Request" representing the
  11721. // client's request for the SetLoggingOptions operation. The "output" return
  11722. // value will be populated with the request's response once the request completes
  11723. // successfully.
  11724. //
  11725. // Use "Send" method on the returned Request to send the API call to the service.
  11726. // the "output" return value is not valid until after Send returns without error.
  11727. //
  11728. // See SetLoggingOptions for more information on using the SetLoggingOptions
  11729. // API call, and error handling.
  11730. //
  11731. // This method is useful when you want to inject custom logic or configuration
  11732. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11733. //
  11734. //
  11735. // // Example sending a request using the SetLoggingOptionsRequest method.
  11736. // req, resp := client.SetLoggingOptionsRequest(params)
  11737. //
  11738. // err := req.Send()
  11739. // if err == nil { // resp is now filled
  11740. // fmt.Println(resp)
  11741. // }
  11742. func (c *IoT) SetLoggingOptionsRequest(input *SetLoggingOptionsInput) (req *request.Request, output *SetLoggingOptionsOutput) {
  11743. op := &request.Operation{
  11744. Name: opSetLoggingOptions,
  11745. HTTPMethod: "POST",
  11746. HTTPPath: "/loggingOptions",
  11747. }
  11748. if input == nil {
  11749. input = &SetLoggingOptionsInput{}
  11750. }
  11751. output = &SetLoggingOptionsOutput{}
  11752. req = c.newRequest(op, input, output)
  11753. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11754. return
  11755. }
  11756. // SetLoggingOptions API operation for AWS IoT.
  11757. //
  11758. // Sets the logging options.
  11759. //
  11760. // NOTE: use of this command is not recommended. Use SetV2LoggingOptions instead.
  11761. //
  11762. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11763. // with awserr.Error's Code and Message methods to get detailed information about
  11764. // the error.
  11765. //
  11766. // See the AWS API reference guide for AWS IoT's
  11767. // API operation SetLoggingOptions for usage and error information.
  11768. //
  11769. // Returned Error Codes:
  11770. // * ErrCodeInternalException "InternalException"
  11771. // An unexpected error has occurred.
  11772. //
  11773. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11774. // The request is not valid.
  11775. //
  11776. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11777. // The service is temporarily unavailable.
  11778. //
  11779. func (c *IoT) SetLoggingOptions(input *SetLoggingOptionsInput) (*SetLoggingOptionsOutput, error) {
  11780. req, out := c.SetLoggingOptionsRequest(input)
  11781. return out, req.Send()
  11782. }
  11783. // SetLoggingOptionsWithContext is the same as SetLoggingOptions with the addition of
  11784. // the ability to pass a context and additional request options.
  11785. //
  11786. // See SetLoggingOptions for details on how to use this API operation.
  11787. //
  11788. // The context must be non-nil and will be used for request cancellation. If
  11789. // the context is nil a panic will occur. In the future the SDK may create
  11790. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11791. // for more information on using Contexts.
  11792. func (c *IoT) SetLoggingOptionsWithContext(ctx aws.Context, input *SetLoggingOptionsInput, opts ...request.Option) (*SetLoggingOptionsOutput, error) {
  11793. req, out := c.SetLoggingOptionsRequest(input)
  11794. req.SetContext(ctx)
  11795. req.ApplyOptions(opts...)
  11796. return out, req.Send()
  11797. }
  11798. const opSetV2LoggingLevel = "SetV2LoggingLevel"
  11799. // SetV2LoggingLevelRequest generates a "aws/request.Request" representing the
  11800. // client's request for the SetV2LoggingLevel operation. The "output" return
  11801. // value will be populated with the request's response once the request completes
  11802. // successfully.
  11803. //
  11804. // Use "Send" method on the returned Request to send the API call to the service.
  11805. // the "output" return value is not valid until after Send returns without error.
  11806. //
  11807. // See SetV2LoggingLevel for more information on using the SetV2LoggingLevel
  11808. // API call, and error handling.
  11809. //
  11810. // This method is useful when you want to inject custom logic or configuration
  11811. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11812. //
  11813. //
  11814. // // Example sending a request using the SetV2LoggingLevelRequest method.
  11815. // req, resp := client.SetV2LoggingLevelRequest(params)
  11816. //
  11817. // err := req.Send()
  11818. // if err == nil { // resp is now filled
  11819. // fmt.Println(resp)
  11820. // }
  11821. func (c *IoT) SetV2LoggingLevelRequest(input *SetV2LoggingLevelInput) (req *request.Request, output *SetV2LoggingLevelOutput) {
  11822. op := &request.Operation{
  11823. Name: opSetV2LoggingLevel,
  11824. HTTPMethod: "POST",
  11825. HTTPPath: "/v2LoggingLevel",
  11826. }
  11827. if input == nil {
  11828. input = &SetV2LoggingLevelInput{}
  11829. }
  11830. output = &SetV2LoggingLevelOutput{}
  11831. req = c.newRequest(op, input, output)
  11832. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11833. return
  11834. }
  11835. // SetV2LoggingLevel API operation for AWS IoT.
  11836. //
  11837. // Sets the logging level.
  11838. //
  11839. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11840. // with awserr.Error's Code and Message methods to get detailed information about
  11841. // the error.
  11842. //
  11843. // See the AWS API reference guide for AWS IoT's
  11844. // API operation SetV2LoggingLevel for usage and error information.
  11845. //
  11846. // Returned Error Codes:
  11847. // * ErrCodeInternalException "InternalException"
  11848. // An unexpected error has occurred.
  11849. //
  11850. // * ErrCodeNotConfiguredException "NotConfiguredException"
  11851. // The resource is not configured.
  11852. //
  11853. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11854. // The request is not valid.
  11855. //
  11856. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11857. // The service is temporarily unavailable.
  11858. //
  11859. func (c *IoT) SetV2LoggingLevel(input *SetV2LoggingLevelInput) (*SetV2LoggingLevelOutput, error) {
  11860. req, out := c.SetV2LoggingLevelRequest(input)
  11861. return out, req.Send()
  11862. }
  11863. // SetV2LoggingLevelWithContext is the same as SetV2LoggingLevel with the addition of
  11864. // the ability to pass a context and additional request options.
  11865. //
  11866. // See SetV2LoggingLevel for details on how to use this API operation.
  11867. //
  11868. // The context must be non-nil and will be used for request cancellation. If
  11869. // the context is nil a panic will occur. In the future the SDK may create
  11870. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11871. // for more information on using Contexts.
  11872. func (c *IoT) SetV2LoggingLevelWithContext(ctx aws.Context, input *SetV2LoggingLevelInput, opts ...request.Option) (*SetV2LoggingLevelOutput, error) {
  11873. req, out := c.SetV2LoggingLevelRequest(input)
  11874. req.SetContext(ctx)
  11875. req.ApplyOptions(opts...)
  11876. return out, req.Send()
  11877. }
  11878. const opSetV2LoggingOptions = "SetV2LoggingOptions"
  11879. // SetV2LoggingOptionsRequest generates a "aws/request.Request" representing the
  11880. // client's request for the SetV2LoggingOptions operation. The "output" return
  11881. // value will be populated with the request's response once the request completes
  11882. // successfully.
  11883. //
  11884. // Use "Send" method on the returned Request to send the API call to the service.
  11885. // the "output" return value is not valid until after Send returns without error.
  11886. //
  11887. // See SetV2LoggingOptions for more information on using the SetV2LoggingOptions
  11888. // API call, and error handling.
  11889. //
  11890. // This method is useful when you want to inject custom logic or configuration
  11891. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11892. //
  11893. //
  11894. // // Example sending a request using the SetV2LoggingOptionsRequest method.
  11895. // req, resp := client.SetV2LoggingOptionsRequest(params)
  11896. //
  11897. // err := req.Send()
  11898. // if err == nil { // resp is now filled
  11899. // fmt.Println(resp)
  11900. // }
  11901. func (c *IoT) SetV2LoggingOptionsRequest(input *SetV2LoggingOptionsInput) (req *request.Request, output *SetV2LoggingOptionsOutput) {
  11902. op := &request.Operation{
  11903. Name: opSetV2LoggingOptions,
  11904. HTTPMethod: "POST",
  11905. HTTPPath: "/v2LoggingOptions",
  11906. }
  11907. if input == nil {
  11908. input = &SetV2LoggingOptionsInput{}
  11909. }
  11910. output = &SetV2LoggingOptionsOutput{}
  11911. req = c.newRequest(op, input, output)
  11912. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  11913. return
  11914. }
  11915. // SetV2LoggingOptions API operation for AWS IoT.
  11916. //
  11917. // Sets the logging options for the V2 logging service.
  11918. //
  11919. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11920. // with awserr.Error's Code and Message methods to get detailed information about
  11921. // the error.
  11922. //
  11923. // See the AWS API reference guide for AWS IoT's
  11924. // API operation SetV2LoggingOptions for usage and error information.
  11925. //
  11926. // Returned Error Codes:
  11927. // * ErrCodeInternalException "InternalException"
  11928. // An unexpected error has occurred.
  11929. //
  11930. // * ErrCodeInvalidRequestException "InvalidRequestException"
  11931. // The request is not valid.
  11932. //
  11933. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  11934. // The service is temporarily unavailable.
  11935. //
  11936. func (c *IoT) SetV2LoggingOptions(input *SetV2LoggingOptionsInput) (*SetV2LoggingOptionsOutput, error) {
  11937. req, out := c.SetV2LoggingOptionsRequest(input)
  11938. return out, req.Send()
  11939. }
  11940. // SetV2LoggingOptionsWithContext is the same as SetV2LoggingOptions with the addition of
  11941. // the ability to pass a context and additional request options.
  11942. //
  11943. // See SetV2LoggingOptions for details on how to use this API operation.
  11944. //
  11945. // The context must be non-nil and will be used for request cancellation. If
  11946. // the context is nil a panic will occur. In the future the SDK may create
  11947. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  11948. // for more information on using Contexts.
  11949. func (c *IoT) SetV2LoggingOptionsWithContext(ctx aws.Context, input *SetV2LoggingOptionsInput, opts ...request.Option) (*SetV2LoggingOptionsOutput, error) {
  11950. req, out := c.SetV2LoggingOptionsRequest(input)
  11951. req.SetContext(ctx)
  11952. req.ApplyOptions(opts...)
  11953. return out, req.Send()
  11954. }
  11955. const opStartOnDemandAuditTask = "StartOnDemandAuditTask"
  11956. // StartOnDemandAuditTaskRequest generates a "aws/request.Request" representing the
  11957. // client's request for the StartOnDemandAuditTask operation. The "output" return
  11958. // value will be populated with the request's response once the request completes
  11959. // successfully.
  11960. //
  11961. // Use "Send" method on the returned Request to send the API call to the service.
  11962. // the "output" return value is not valid until after Send returns without error.
  11963. //
  11964. // See StartOnDemandAuditTask for more information on using the StartOnDemandAuditTask
  11965. // API call, and error handling.
  11966. //
  11967. // This method is useful when you want to inject custom logic or configuration
  11968. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  11969. //
  11970. //
  11971. // // Example sending a request using the StartOnDemandAuditTaskRequest method.
  11972. // req, resp := client.StartOnDemandAuditTaskRequest(params)
  11973. //
  11974. // err := req.Send()
  11975. // if err == nil { // resp is now filled
  11976. // fmt.Println(resp)
  11977. // }
  11978. func (c *IoT) StartOnDemandAuditTaskRequest(input *StartOnDemandAuditTaskInput) (req *request.Request, output *StartOnDemandAuditTaskOutput) {
  11979. op := &request.Operation{
  11980. Name: opStartOnDemandAuditTask,
  11981. HTTPMethod: "POST",
  11982. HTTPPath: "/audit/tasks",
  11983. }
  11984. if input == nil {
  11985. input = &StartOnDemandAuditTaskInput{}
  11986. }
  11987. output = &StartOnDemandAuditTaskOutput{}
  11988. req = c.newRequest(op, input, output)
  11989. return
  11990. }
  11991. // StartOnDemandAuditTask API operation for AWS IoT.
  11992. //
  11993. // Starts an on-demand Device Defender audit.
  11994. //
  11995. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  11996. // with awserr.Error's Code and Message methods to get detailed information about
  11997. // the error.
  11998. //
  11999. // See the AWS API reference guide for AWS IoT's
  12000. // API operation StartOnDemandAuditTask for usage and error information.
  12001. //
  12002. // Returned Error Codes:
  12003. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12004. // The request is not valid.
  12005. //
  12006. // * ErrCodeThrottlingException "ThrottlingException"
  12007. // The rate exceeds the limit.
  12008. //
  12009. // * ErrCodeInternalFailureException "InternalFailureException"
  12010. // An unexpected error has occurred.
  12011. //
  12012. // * ErrCodeLimitExceededException "LimitExceededException"
  12013. // A limit has been exceeded.
  12014. //
  12015. func (c *IoT) StartOnDemandAuditTask(input *StartOnDemandAuditTaskInput) (*StartOnDemandAuditTaskOutput, error) {
  12016. req, out := c.StartOnDemandAuditTaskRequest(input)
  12017. return out, req.Send()
  12018. }
  12019. // StartOnDemandAuditTaskWithContext is the same as StartOnDemandAuditTask with the addition of
  12020. // the ability to pass a context and additional request options.
  12021. //
  12022. // See StartOnDemandAuditTask for details on how to use this API operation.
  12023. //
  12024. // The context must be non-nil and will be used for request cancellation. If
  12025. // the context is nil a panic will occur. In the future the SDK may create
  12026. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12027. // for more information on using Contexts.
  12028. func (c *IoT) StartOnDemandAuditTaskWithContext(ctx aws.Context, input *StartOnDemandAuditTaskInput, opts ...request.Option) (*StartOnDemandAuditTaskOutput, error) {
  12029. req, out := c.StartOnDemandAuditTaskRequest(input)
  12030. req.SetContext(ctx)
  12031. req.ApplyOptions(opts...)
  12032. return out, req.Send()
  12033. }
  12034. const opStartThingRegistrationTask = "StartThingRegistrationTask"
  12035. // StartThingRegistrationTaskRequest generates a "aws/request.Request" representing the
  12036. // client's request for the StartThingRegistrationTask operation. The "output" return
  12037. // value will be populated with the request's response once the request completes
  12038. // successfully.
  12039. //
  12040. // Use "Send" method on the returned Request to send the API call to the service.
  12041. // the "output" return value is not valid until after Send returns without error.
  12042. //
  12043. // See StartThingRegistrationTask for more information on using the StartThingRegistrationTask
  12044. // API call, and error handling.
  12045. //
  12046. // This method is useful when you want to inject custom logic or configuration
  12047. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12048. //
  12049. //
  12050. // // Example sending a request using the StartThingRegistrationTaskRequest method.
  12051. // req, resp := client.StartThingRegistrationTaskRequest(params)
  12052. //
  12053. // err := req.Send()
  12054. // if err == nil { // resp is now filled
  12055. // fmt.Println(resp)
  12056. // }
  12057. func (c *IoT) StartThingRegistrationTaskRequest(input *StartThingRegistrationTaskInput) (req *request.Request, output *StartThingRegistrationTaskOutput) {
  12058. op := &request.Operation{
  12059. Name: opStartThingRegistrationTask,
  12060. HTTPMethod: "POST",
  12061. HTTPPath: "/thing-registration-tasks",
  12062. }
  12063. if input == nil {
  12064. input = &StartThingRegistrationTaskInput{}
  12065. }
  12066. output = &StartThingRegistrationTaskOutput{}
  12067. req = c.newRequest(op, input, output)
  12068. return
  12069. }
  12070. // StartThingRegistrationTask API operation for AWS IoT.
  12071. //
  12072. // Creates a bulk thing provisioning task.
  12073. //
  12074. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12075. // with awserr.Error's Code and Message methods to get detailed information about
  12076. // the error.
  12077. //
  12078. // See the AWS API reference guide for AWS IoT's
  12079. // API operation StartThingRegistrationTask for usage and error information.
  12080. //
  12081. // Returned Error Codes:
  12082. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12083. // The request is not valid.
  12084. //
  12085. // * ErrCodeThrottlingException "ThrottlingException"
  12086. // The rate exceeds the limit.
  12087. //
  12088. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12089. // You are not authorized to perform this operation.
  12090. //
  12091. // * ErrCodeInternalFailureException "InternalFailureException"
  12092. // An unexpected error has occurred.
  12093. //
  12094. func (c *IoT) StartThingRegistrationTask(input *StartThingRegistrationTaskInput) (*StartThingRegistrationTaskOutput, error) {
  12095. req, out := c.StartThingRegistrationTaskRequest(input)
  12096. return out, req.Send()
  12097. }
  12098. // StartThingRegistrationTaskWithContext is the same as StartThingRegistrationTask with the addition of
  12099. // the ability to pass a context and additional request options.
  12100. //
  12101. // See StartThingRegistrationTask for details on how to use this API operation.
  12102. //
  12103. // The context must be non-nil and will be used for request cancellation. If
  12104. // the context is nil a panic will occur. In the future the SDK may create
  12105. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12106. // for more information on using Contexts.
  12107. func (c *IoT) StartThingRegistrationTaskWithContext(ctx aws.Context, input *StartThingRegistrationTaskInput, opts ...request.Option) (*StartThingRegistrationTaskOutput, error) {
  12108. req, out := c.StartThingRegistrationTaskRequest(input)
  12109. req.SetContext(ctx)
  12110. req.ApplyOptions(opts...)
  12111. return out, req.Send()
  12112. }
  12113. const opStopThingRegistrationTask = "StopThingRegistrationTask"
  12114. // StopThingRegistrationTaskRequest generates a "aws/request.Request" representing the
  12115. // client's request for the StopThingRegistrationTask operation. The "output" return
  12116. // value will be populated with the request's response once the request completes
  12117. // successfully.
  12118. //
  12119. // Use "Send" method on the returned Request to send the API call to the service.
  12120. // the "output" return value is not valid until after Send returns without error.
  12121. //
  12122. // See StopThingRegistrationTask for more information on using the StopThingRegistrationTask
  12123. // API call, and error handling.
  12124. //
  12125. // This method is useful when you want to inject custom logic or configuration
  12126. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12127. //
  12128. //
  12129. // // Example sending a request using the StopThingRegistrationTaskRequest method.
  12130. // req, resp := client.StopThingRegistrationTaskRequest(params)
  12131. //
  12132. // err := req.Send()
  12133. // if err == nil { // resp is now filled
  12134. // fmt.Println(resp)
  12135. // }
  12136. func (c *IoT) StopThingRegistrationTaskRequest(input *StopThingRegistrationTaskInput) (req *request.Request, output *StopThingRegistrationTaskOutput) {
  12137. op := &request.Operation{
  12138. Name: opStopThingRegistrationTask,
  12139. HTTPMethod: "PUT",
  12140. HTTPPath: "/thing-registration-tasks/{taskId}/cancel",
  12141. }
  12142. if input == nil {
  12143. input = &StopThingRegistrationTaskInput{}
  12144. }
  12145. output = &StopThingRegistrationTaskOutput{}
  12146. req = c.newRequest(op, input, output)
  12147. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  12148. return
  12149. }
  12150. // StopThingRegistrationTask API operation for AWS IoT.
  12151. //
  12152. // Cancels a bulk thing provisioning task.
  12153. //
  12154. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12155. // with awserr.Error's Code and Message methods to get detailed information about
  12156. // the error.
  12157. //
  12158. // See the AWS API reference guide for AWS IoT's
  12159. // API operation StopThingRegistrationTask for usage and error information.
  12160. //
  12161. // Returned Error Codes:
  12162. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12163. // The request is not valid.
  12164. //
  12165. // * ErrCodeThrottlingException "ThrottlingException"
  12166. // The rate exceeds the limit.
  12167. //
  12168. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12169. // You are not authorized to perform this operation.
  12170. //
  12171. // * ErrCodeInternalFailureException "InternalFailureException"
  12172. // An unexpected error has occurred.
  12173. //
  12174. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12175. // The specified resource does not exist.
  12176. //
  12177. func (c *IoT) StopThingRegistrationTask(input *StopThingRegistrationTaskInput) (*StopThingRegistrationTaskOutput, error) {
  12178. req, out := c.StopThingRegistrationTaskRequest(input)
  12179. return out, req.Send()
  12180. }
  12181. // StopThingRegistrationTaskWithContext is the same as StopThingRegistrationTask with the addition of
  12182. // the ability to pass a context and additional request options.
  12183. //
  12184. // See StopThingRegistrationTask for details on how to use this API operation.
  12185. //
  12186. // The context must be non-nil and will be used for request cancellation. If
  12187. // the context is nil a panic will occur. In the future the SDK may create
  12188. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12189. // for more information on using Contexts.
  12190. func (c *IoT) StopThingRegistrationTaskWithContext(ctx aws.Context, input *StopThingRegistrationTaskInput, opts ...request.Option) (*StopThingRegistrationTaskOutput, error) {
  12191. req, out := c.StopThingRegistrationTaskRequest(input)
  12192. req.SetContext(ctx)
  12193. req.ApplyOptions(opts...)
  12194. return out, req.Send()
  12195. }
  12196. const opTagResource = "TagResource"
  12197. // TagResourceRequest generates a "aws/request.Request" representing the
  12198. // client's request for the TagResource operation. The "output" return
  12199. // value will be populated with the request's response once the request completes
  12200. // successfully.
  12201. //
  12202. // Use "Send" method on the returned Request to send the API call to the service.
  12203. // the "output" return value is not valid until after Send returns without error.
  12204. //
  12205. // See TagResource for more information on using the TagResource
  12206. // API call, and error handling.
  12207. //
  12208. // This method is useful when you want to inject custom logic or configuration
  12209. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12210. //
  12211. //
  12212. // // Example sending a request using the TagResourceRequest method.
  12213. // req, resp := client.TagResourceRequest(params)
  12214. //
  12215. // err := req.Send()
  12216. // if err == nil { // resp is now filled
  12217. // fmt.Println(resp)
  12218. // }
  12219. func (c *IoT) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  12220. op := &request.Operation{
  12221. Name: opTagResource,
  12222. HTTPMethod: "POST",
  12223. HTTPPath: "/tags",
  12224. }
  12225. if input == nil {
  12226. input = &TagResourceInput{}
  12227. }
  12228. output = &TagResourceOutput{}
  12229. req = c.newRequest(op, input, output)
  12230. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  12231. return
  12232. }
  12233. // TagResource API operation for AWS IoT.
  12234. //
  12235. // Adds to or modifies the tags of the given resource. Tags are metadata which
  12236. // can be used to manage a resource.
  12237. //
  12238. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12239. // with awserr.Error's Code and Message methods to get detailed information about
  12240. // the error.
  12241. //
  12242. // See the AWS API reference guide for AWS IoT's
  12243. // API operation TagResource for usage and error information.
  12244. //
  12245. // Returned Error Codes:
  12246. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12247. // The request is not valid.
  12248. //
  12249. // * ErrCodeInternalFailureException "InternalFailureException"
  12250. // An unexpected error has occurred.
  12251. //
  12252. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12253. // The specified resource does not exist.
  12254. //
  12255. // * ErrCodeThrottlingException "ThrottlingException"
  12256. // The rate exceeds the limit.
  12257. //
  12258. // * ErrCodeLimitExceededException "LimitExceededException"
  12259. // A limit has been exceeded.
  12260. //
  12261. func (c *IoT) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  12262. req, out := c.TagResourceRequest(input)
  12263. return out, req.Send()
  12264. }
  12265. // TagResourceWithContext is the same as TagResource with the addition of
  12266. // the ability to pass a context and additional request options.
  12267. //
  12268. // See TagResource for details on how to use this API operation.
  12269. //
  12270. // The context must be non-nil and will be used for request cancellation. If
  12271. // the context is nil a panic will occur. In the future the SDK may create
  12272. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12273. // for more information on using Contexts.
  12274. func (c *IoT) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  12275. req, out := c.TagResourceRequest(input)
  12276. req.SetContext(ctx)
  12277. req.ApplyOptions(opts...)
  12278. return out, req.Send()
  12279. }
  12280. const opTestAuthorization = "TestAuthorization"
  12281. // TestAuthorizationRequest generates a "aws/request.Request" representing the
  12282. // client's request for the TestAuthorization operation. The "output" return
  12283. // value will be populated with the request's response once the request completes
  12284. // successfully.
  12285. //
  12286. // Use "Send" method on the returned Request to send the API call to the service.
  12287. // the "output" return value is not valid until after Send returns without error.
  12288. //
  12289. // See TestAuthorization for more information on using the TestAuthorization
  12290. // API call, and error handling.
  12291. //
  12292. // This method is useful when you want to inject custom logic or configuration
  12293. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12294. //
  12295. //
  12296. // // Example sending a request using the TestAuthorizationRequest method.
  12297. // req, resp := client.TestAuthorizationRequest(params)
  12298. //
  12299. // err := req.Send()
  12300. // if err == nil { // resp is now filled
  12301. // fmt.Println(resp)
  12302. // }
  12303. func (c *IoT) TestAuthorizationRequest(input *TestAuthorizationInput) (req *request.Request, output *TestAuthorizationOutput) {
  12304. op := &request.Operation{
  12305. Name: opTestAuthorization,
  12306. HTTPMethod: "POST",
  12307. HTTPPath: "/test-authorization",
  12308. }
  12309. if input == nil {
  12310. input = &TestAuthorizationInput{}
  12311. }
  12312. output = &TestAuthorizationOutput{}
  12313. req = c.newRequest(op, input, output)
  12314. return
  12315. }
  12316. // TestAuthorization API operation for AWS IoT.
  12317. //
  12318. // Tests if a specified principal is authorized to perform an AWS IoT action
  12319. // on a specified resource. Use this to test and debug the authorization behavior
  12320. // of devices that connect to the AWS IoT device gateway.
  12321. //
  12322. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12323. // with awserr.Error's Code and Message methods to get detailed information about
  12324. // the error.
  12325. //
  12326. // See the AWS API reference guide for AWS IoT's
  12327. // API operation TestAuthorization for usage and error information.
  12328. //
  12329. // Returned Error Codes:
  12330. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12331. // The specified resource does not exist.
  12332. //
  12333. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12334. // The request is not valid.
  12335. //
  12336. // * ErrCodeThrottlingException "ThrottlingException"
  12337. // The rate exceeds the limit.
  12338. //
  12339. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12340. // You are not authorized to perform this operation.
  12341. //
  12342. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  12343. // The service is temporarily unavailable.
  12344. //
  12345. // * ErrCodeInternalFailureException "InternalFailureException"
  12346. // An unexpected error has occurred.
  12347. //
  12348. // * ErrCodeLimitExceededException "LimitExceededException"
  12349. // A limit has been exceeded.
  12350. //
  12351. func (c *IoT) TestAuthorization(input *TestAuthorizationInput) (*TestAuthorizationOutput, error) {
  12352. req, out := c.TestAuthorizationRequest(input)
  12353. return out, req.Send()
  12354. }
  12355. // TestAuthorizationWithContext is the same as TestAuthorization with the addition of
  12356. // the ability to pass a context and additional request options.
  12357. //
  12358. // See TestAuthorization for details on how to use this API operation.
  12359. //
  12360. // The context must be non-nil and will be used for request cancellation. If
  12361. // the context is nil a panic will occur. In the future the SDK may create
  12362. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12363. // for more information on using Contexts.
  12364. func (c *IoT) TestAuthorizationWithContext(ctx aws.Context, input *TestAuthorizationInput, opts ...request.Option) (*TestAuthorizationOutput, error) {
  12365. req, out := c.TestAuthorizationRequest(input)
  12366. req.SetContext(ctx)
  12367. req.ApplyOptions(opts...)
  12368. return out, req.Send()
  12369. }
  12370. const opTestInvokeAuthorizer = "TestInvokeAuthorizer"
  12371. // TestInvokeAuthorizerRequest generates a "aws/request.Request" representing the
  12372. // client's request for the TestInvokeAuthorizer operation. The "output" return
  12373. // value will be populated with the request's response once the request completes
  12374. // successfully.
  12375. //
  12376. // Use "Send" method on the returned Request to send the API call to the service.
  12377. // the "output" return value is not valid until after Send returns without error.
  12378. //
  12379. // See TestInvokeAuthorizer for more information on using the TestInvokeAuthorizer
  12380. // API call, and error handling.
  12381. //
  12382. // This method is useful when you want to inject custom logic or configuration
  12383. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12384. //
  12385. //
  12386. // // Example sending a request using the TestInvokeAuthorizerRequest method.
  12387. // req, resp := client.TestInvokeAuthorizerRequest(params)
  12388. //
  12389. // err := req.Send()
  12390. // if err == nil { // resp is now filled
  12391. // fmt.Println(resp)
  12392. // }
  12393. func (c *IoT) TestInvokeAuthorizerRequest(input *TestInvokeAuthorizerInput) (req *request.Request, output *TestInvokeAuthorizerOutput) {
  12394. op := &request.Operation{
  12395. Name: opTestInvokeAuthorizer,
  12396. HTTPMethod: "POST",
  12397. HTTPPath: "/authorizer/{authorizerName}/test",
  12398. }
  12399. if input == nil {
  12400. input = &TestInvokeAuthorizerInput{}
  12401. }
  12402. output = &TestInvokeAuthorizerOutput{}
  12403. req = c.newRequest(op, input, output)
  12404. return
  12405. }
  12406. // TestInvokeAuthorizer API operation for AWS IoT.
  12407. //
  12408. // Tests a custom authorization behavior by invoking a specified custom authorizer.
  12409. // Use this to test and debug the custom authorization behavior of devices that
  12410. // connect to the AWS IoT device gateway.
  12411. //
  12412. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12413. // with awserr.Error's Code and Message methods to get detailed information about
  12414. // the error.
  12415. //
  12416. // See the AWS API reference guide for AWS IoT's
  12417. // API operation TestInvokeAuthorizer for usage and error information.
  12418. //
  12419. // Returned Error Codes:
  12420. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12421. // The specified resource does not exist.
  12422. //
  12423. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12424. // The request is not valid.
  12425. //
  12426. // * ErrCodeThrottlingException "ThrottlingException"
  12427. // The rate exceeds the limit.
  12428. //
  12429. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12430. // You are not authorized to perform this operation.
  12431. //
  12432. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  12433. // The service is temporarily unavailable.
  12434. //
  12435. // * ErrCodeInternalFailureException "InternalFailureException"
  12436. // An unexpected error has occurred.
  12437. //
  12438. // * ErrCodeInvalidResponseException "InvalidResponseException"
  12439. // The response is invalid.
  12440. //
  12441. func (c *IoT) TestInvokeAuthorizer(input *TestInvokeAuthorizerInput) (*TestInvokeAuthorizerOutput, error) {
  12442. req, out := c.TestInvokeAuthorizerRequest(input)
  12443. return out, req.Send()
  12444. }
  12445. // TestInvokeAuthorizerWithContext is the same as TestInvokeAuthorizer with the addition of
  12446. // the ability to pass a context and additional request options.
  12447. //
  12448. // See TestInvokeAuthorizer for details on how to use this API operation.
  12449. //
  12450. // The context must be non-nil and will be used for request cancellation. If
  12451. // the context is nil a panic will occur. In the future the SDK may create
  12452. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12453. // for more information on using Contexts.
  12454. func (c *IoT) TestInvokeAuthorizerWithContext(ctx aws.Context, input *TestInvokeAuthorizerInput, opts ...request.Option) (*TestInvokeAuthorizerOutput, error) {
  12455. req, out := c.TestInvokeAuthorizerRequest(input)
  12456. req.SetContext(ctx)
  12457. req.ApplyOptions(opts...)
  12458. return out, req.Send()
  12459. }
  12460. const opTransferCertificate = "TransferCertificate"
  12461. // TransferCertificateRequest generates a "aws/request.Request" representing the
  12462. // client's request for the TransferCertificate operation. The "output" return
  12463. // value will be populated with the request's response once the request completes
  12464. // successfully.
  12465. //
  12466. // Use "Send" method on the returned Request to send the API call to the service.
  12467. // the "output" return value is not valid until after Send returns without error.
  12468. //
  12469. // See TransferCertificate for more information on using the TransferCertificate
  12470. // API call, and error handling.
  12471. //
  12472. // This method is useful when you want to inject custom logic or configuration
  12473. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12474. //
  12475. //
  12476. // // Example sending a request using the TransferCertificateRequest method.
  12477. // req, resp := client.TransferCertificateRequest(params)
  12478. //
  12479. // err := req.Send()
  12480. // if err == nil { // resp is now filled
  12481. // fmt.Println(resp)
  12482. // }
  12483. func (c *IoT) TransferCertificateRequest(input *TransferCertificateInput) (req *request.Request, output *TransferCertificateOutput) {
  12484. op := &request.Operation{
  12485. Name: opTransferCertificate,
  12486. HTTPMethod: "PATCH",
  12487. HTTPPath: "/transfer-certificate/{certificateId}",
  12488. }
  12489. if input == nil {
  12490. input = &TransferCertificateInput{}
  12491. }
  12492. output = &TransferCertificateOutput{}
  12493. req = c.newRequest(op, input, output)
  12494. return
  12495. }
  12496. // TransferCertificate API operation for AWS IoT.
  12497. //
  12498. // Transfers the specified certificate to the specified AWS account.
  12499. //
  12500. // You can cancel the transfer until it is acknowledged by the recipient.
  12501. //
  12502. // No notification is sent to the transfer destination's account. It is up to
  12503. // the caller to notify the transfer target.
  12504. //
  12505. // The certificate being transferred must not be in the ACTIVE state. You can
  12506. // use the UpdateCertificate API to deactivate it.
  12507. //
  12508. // The certificate must not have any policies attached to it. You can use the
  12509. // DetachPrincipalPolicy API to detach them.
  12510. //
  12511. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12512. // with awserr.Error's Code and Message methods to get detailed information about
  12513. // the error.
  12514. //
  12515. // See the AWS API reference guide for AWS IoT's
  12516. // API operation TransferCertificate for usage and error information.
  12517. //
  12518. // Returned Error Codes:
  12519. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12520. // The request is not valid.
  12521. //
  12522. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12523. // The specified resource does not exist.
  12524. //
  12525. // * ErrCodeCertificateStateException "CertificateStateException"
  12526. // The certificate operation is not allowed.
  12527. //
  12528. // * ErrCodeTransferConflictException "TransferConflictException"
  12529. // You can't transfer the certificate because authorization policies are still
  12530. // attached.
  12531. //
  12532. // * ErrCodeThrottlingException "ThrottlingException"
  12533. // The rate exceeds the limit.
  12534. //
  12535. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12536. // You are not authorized to perform this operation.
  12537. //
  12538. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  12539. // The service is temporarily unavailable.
  12540. //
  12541. // * ErrCodeInternalFailureException "InternalFailureException"
  12542. // An unexpected error has occurred.
  12543. //
  12544. func (c *IoT) TransferCertificate(input *TransferCertificateInput) (*TransferCertificateOutput, error) {
  12545. req, out := c.TransferCertificateRequest(input)
  12546. return out, req.Send()
  12547. }
  12548. // TransferCertificateWithContext is the same as TransferCertificate with the addition of
  12549. // the ability to pass a context and additional request options.
  12550. //
  12551. // See TransferCertificate for details on how to use this API operation.
  12552. //
  12553. // The context must be non-nil and will be used for request cancellation. If
  12554. // the context is nil a panic will occur. In the future the SDK may create
  12555. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12556. // for more information on using Contexts.
  12557. func (c *IoT) TransferCertificateWithContext(ctx aws.Context, input *TransferCertificateInput, opts ...request.Option) (*TransferCertificateOutput, error) {
  12558. req, out := c.TransferCertificateRequest(input)
  12559. req.SetContext(ctx)
  12560. req.ApplyOptions(opts...)
  12561. return out, req.Send()
  12562. }
  12563. const opUntagResource = "UntagResource"
  12564. // UntagResourceRequest generates a "aws/request.Request" representing the
  12565. // client's request for the UntagResource operation. The "output" return
  12566. // value will be populated with the request's response once the request completes
  12567. // successfully.
  12568. //
  12569. // Use "Send" method on the returned Request to send the API call to the service.
  12570. // the "output" return value is not valid until after Send returns without error.
  12571. //
  12572. // See UntagResource for more information on using the UntagResource
  12573. // API call, and error handling.
  12574. //
  12575. // This method is useful when you want to inject custom logic or configuration
  12576. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12577. //
  12578. //
  12579. // // Example sending a request using the UntagResourceRequest method.
  12580. // req, resp := client.UntagResourceRequest(params)
  12581. //
  12582. // err := req.Send()
  12583. // if err == nil { // resp is now filled
  12584. // fmt.Println(resp)
  12585. // }
  12586. func (c *IoT) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  12587. op := &request.Operation{
  12588. Name: opUntagResource,
  12589. HTTPMethod: "POST",
  12590. HTTPPath: "/untag",
  12591. }
  12592. if input == nil {
  12593. input = &UntagResourceInput{}
  12594. }
  12595. output = &UntagResourceOutput{}
  12596. req = c.newRequest(op, input, output)
  12597. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  12598. return
  12599. }
  12600. // UntagResource API operation for AWS IoT.
  12601. //
  12602. // Removes the given tags (metadata) from the resource.
  12603. //
  12604. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12605. // with awserr.Error's Code and Message methods to get detailed information about
  12606. // the error.
  12607. //
  12608. // See the AWS API reference guide for AWS IoT's
  12609. // API operation UntagResource for usage and error information.
  12610. //
  12611. // Returned Error Codes:
  12612. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12613. // The request is not valid.
  12614. //
  12615. // * ErrCodeInternalFailureException "InternalFailureException"
  12616. // An unexpected error has occurred.
  12617. //
  12618. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12619. // The specified resource does not exist.
  12620. //
  12621. // * ErrCodeThrottlingException "ThrottlingException"
  12622. // The rate exceeds the limit.
  12623. //
  12624. func (c *IoT) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  12625. req, out := c.UntagResourceRequest(input)
  12626. return out, req.Send()
  12627. }
  12628. // UntagResourceWithContext is the same as UntagResource with the addition of
  12629. // the ability to pass a context and additional request options.
  12630. //
  12631. // See UntagResource for details on how to use this API operation.
  12632. //
  12633. // The context must be non-nil and will be used for request cancellation. If
  12634. // the context is nil a panic will occur. In the future the SDK may create
  12635. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12636. // for more information on using Contexts.
  12637. func (c *IoT) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  12638. req, out := c.UntagResourceRequest(input)
  12639. req.SetContext(ctx)
  12640. req.ApplyOptions(opts...)
  12641. return out, req.Send()
  12642. }
  12643. const opUpdateAccountAuditConfiguration = "UpdateAccountAuditConfiguration"
  12644. // UpdateAccountAuditConfigurationRequest generates a "aws/request.Request" representing the
  12645. // client's request for the UpdateAccountAuditConfiguration operation. The "output" return
  12646. // value will be populated with the request's response once the request completes
  12647. // successfully.
  12648. //
  12649. // Use "Send" method on the returned Request to send the API call to the service.
  12650. // the "output" return value is not valid until after Send returns without error.
  12651. //
  12652. // See UpdateAccountAuditConfiguration for more information on using the UpdateAccountAuditConfiguration
  12653. // API call, and error handling.
  12654. //
  12655. // This method is useful when you want to inject custom logic or configuration
  12656. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12657. //
  12658. //
  12659. // // Example sending a request using the UpdateAccountAuditConfigurationRequest method.
  12660. // req, resp := client.UpdateAccountAuditConfigurationRequest(params)
  12661. //
  12662. // err := req.Send()
  12663. // if err == nil { // resp is now filled
  12664. // fmt.Println(resp)
  12665. // }
  12666. func (c *IoT) UpdateAccountAuditConfigurationRequest(input *UpdateAccountAuditConfigurationInput) (req *request.Request, output *UpdateAccountAuditConfigurationOutput) {
  12667. op := &request.Operation{
  12668. Name: opUpdateAccountAuditConfiguration,
  12669. HTTPMethod: "PATCH",
  12670. HTTPPath: "/audit/configuration",
  12671. }
  12672. if input == nil {
  12673. input = &UpdateAccountAuditConfigurationInput{}
  12674. }
  12675. output = &UpdateAccountAuditConfigurationOutput{}
  12676. req = c.newRequest(op, input, output)
  12677. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  12678. return
  12679. }
  12680. // UpdateAccountAuditConfiguration API operation for AWS IoT.
  12681. //
  12682. // Configures or reconfigures the Device Defender audit settings for this account.
  12683. // Settings include how audit notifications are sent and which audit checks
  12684. // are enabled or disabled.
  12685. //
  12686. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12687. // with awserr.Error's Code and Message methods to get detailed information about
  12688. // the error.
  12689. //
  12690. // See the AWS API reference guide for AWS IoT's
  12691. // API operation UpdateAccountAuditConfiguration for usage and error information.
  12692. //
  12693. // Returned Error Codes:
  12694. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12695. // The request is not valid.
  12696. //
  12697. // * ErrCodeThrottlingException "ThrottlingException"
  12698. // The rate exceeds the limit.
  12699. //
  12700. // * ErrCodeInternalFailureException "InternalFailureException"
  12701. // An unexpected error has occurred.
  12702. //
  12703. func (c *IoT) UpdateAccountAuditConfiguration(input *UpdateAccountAuditConfigurationInput) (*UpdateAccountAuditConfigurationOutput, error) {
  12704. req, out := c.UpdateAccountAuditConfigurationRequest(input)
  12705. return out, req.Send()
  12706. }
  12707. // UpdateAccountAuditConfigurationWithContext is the same as UpdateAccountAuditConfiguration with the addition of
  12708. // the ability to pass a context and additional request options.
  12709. //
  12710. // See UpdateAccountAuditConfiguration for details on how to use this API operation.
  12711. //
  12712. // The context must be non-nil and will be used for request cancellation. If
  12713. // the context is nil a panic will occur. In the future the SDK may create
  12714. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12715. // for more information on using Contexts.
  12716. func (c *IoT) UpdateAccountAuditConfigurationWithContext(ctx aws.Context, input *UpdateAccountAuditConfigurationInput, opts ...request.Option) (*UpdateAccountAuditConfigurationOutput, error) {
  12717. req, out := c.UpdateAccountAuditConfigurationRequest(input)
  12718. req.SetContext(ctx)
  12719. req.ApplyOptions(opts...)
  12720. return out, req.Send()
  12721. }
  12722. const opUpdateAuthorizer = "UpdateAuthorizer"
  12723. // UpdateAuthorizerRequest generates a "aws/request.Request" representing the
  12724. // client's request for the UpdateAuthorizer operation. The "output" return
  12725. // value will be populated with the request's response once the request completes
  12726. // successfully.
  12727. //
  12728. // Use "Send" method on the returned Request to send the API call to the service.
  12729. // the "output" return value is not valid until after Send returns without error.
  12730. //
  12731. // See UpdateAuthorizer for more information on using the UpdateAuthorizer
  12732. // API call, and error handling.
  12733. //
  12734. // This method is useful when you want to inject custom logic or configuration
  12735. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12736. //
  12737. //
  12738. // // Example sending a request using the UpdateAuthorizerRequest method.
  12739. // req, resp := client.UpdateAuthorizerRequest(params)
  12740. //
  12741. // err := req.Send()
  12742. // if err == nil { // resp is now filled
  12743. // fmt.Println(resp)
  12744. // }
  12745. func (c *IoT) UpdateAuthorizerRequest(input *UpdateAuthorizerInput) (req *request.Request, output *UpdateAuthorizerOutput) {
  12746. op := &request.Operation{
  12747. Name: opUpdateAuthorizer,
  12748. HTTPMethod: "PUT",
  12749. HTTPPath: "/authorizer/{authorizerName}",
  12750. }
  12751. if input == nil {
  12752. input = &UpdateAuthorizerInput{}
  12753. }
  12754. output = &UpdateAuthorizerOutput{}
  12755. req = c.newRequest(op, input, output)
  12756. return
  12757. }
  12758. // UpdateAuthorizer API operation for AWS IoT.
  12759. //
  12760. // Updates an authorizer.
  12761. //
  12762. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12763. // with awserr.Error's Code and Message methods to get detailed information about
  12764. // the error.
  12765. //
  12766. // See the AWS API reference guide for AWS IoT's
  12767. // API operation UpdateAuthorizer for usage and error information.
  12768. //
  12769. // Returned Error Codes:
  12770. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12771. // The specified resource does not exist.
  12772. //
  12773. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12774. // The request is not valid.
  12775. //
  12776. // * ErrCodeLimitExceededException "LimitExceededException"
  12777. // A limit has been exceeded.
  12778. //
  12779. // * ErrCodeThrottlingException "ThrottlingException"
  12780. // The rate exceeds the limit.
  12781. //
  12782. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12783. // You are not authorized to perform this operation.
  12784. //
  12785. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  12786. // The service is temporarily unavailable.
  12787. //
  12788. // * ErrCodeInternalFailureException "InternalFailureException"
  12789. // An unexpected error has occurred.
  12790. //
  12791. func (c *IoT) UpdateAuthorizer(input *UpdateAuthorizerInput) (*UpdateAuthorizerOutput, error) {
  12792. req, out := c.UpdateAuthorizerRequest(input)
  12793. return out, req.Send()
  12794. }
  12795. // UpdateAuthorizerWithContext is the same as UpdateAuthorizer with the addition of
  12796. // the ability to pass a context and additional request options.
  12797. //
  12798. // See UpdateAuthorizer for details on how to use this API operation.
  12799. //
  12800. // The context must be non-nil and will be used for request cancellation. If
  12801. // the context is nil a panic will occur. In the future the SDK may create
  12802. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12803. // for more information on using Contexts.
  12804. func (c *IoT) UpdateAuthorizerWithContext(ctx aws.Context, input *UpdateAuthorizerInput, opts ...request.Option) (*UpdateAuthorizerOutput, error) {
  12805. req, out := c.UpdateAuthorizerRequest(input)
  12806. req.SetContext(ctx)
  12807. req.ApplyOptions(opts...)
  12808. return out, req.Send()
  12809. }
  12810. const opUpdateBillingGroup = "UpdateBillingGroup"
  12811. // UpdateBillingGroupRequest generates a "aws/request.Request" representing the
  12812. // client's request for the UpdateBillingGroup operation. The "output" return
  12813. // value will be populated with the request's response once the request completes
  12814. // successfully.
  12815. //
  12816. // Use "Send" method on the returned Request to send the API call to the service.
  12817. // the "output" return value is not valid until after Send returns without error.
  12818. //
  12819. // See UpdateBillingGroup for more information on using the UpdateBillingGroup
  12820. // API call, and error handling.
  12821. //
  12822. // This method is useful when you want to inject custom logic or configuration
  12823. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12824. //
  12825. //
  12826. // // Example sending a request using the UpdateBillingGroupRequest method.
  12827. // req, resp := client.UpdateBillingGroupRequest(params)
  12828. //
  12829. // err := req.Send()
  12830. // if err == nil { // resp is now filled
  12831. // fmt.Println(resp)
  12832. // }
  12833. func (c *IoT) UpdateBillingGroupRequest(input *UpdateBillingGroupInput) (req *request.Request, output *UpdateBillingGroupOutput) {
  12834. op := &request.Operation{
  12835. Name: opUpdateBillingGroup,
  12836. HTTPMethod: "PATCH",
  12837. HTTPPath: "/billing-groups/{billingGroupName}",
  12838. }
  12839. if input == nil {
  12840. input = &UpdateBillingGroupInput{}
  12841. }
  12842. output = &UpdateBillingGroupOutput{}
  12843. req = c.newRequest(op, input, output)
  12844. return
  12845. }
  12846. // UpdateBillingGroup API operation for AWS IoT.
  12847. //
  12848. // Updates information about the billing group.
  12849. //
  12850. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12851. // with awserr.Error's Code and Message methods to get detailed information about
  12852. // the error.
  12853. //
  12854. // See the AWS API reference guide for AWS IoT's
  12855. // API operation UpdateBillingGroup for usage and error information.
  12856. //
  12857. // Returned Error Codes:
  12858. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12859. // The request is not valid.
  12860. //
  12861. // * ErrCodeVersionConflictException "VersionConflictException"
  12862. // An exception thrown when the version of an entity specified with the expectedVersion
  12863. // parameter does not match the latest version in the system.
  12864. //
  12865. // * ErrCodeThrottlingException "ThrottlingException"
  12866. // The rate exceeds the limit.
  12867. //
  12868. // * ErrCodeInternalFailureException "InternalFailureException"
  12869. // An unexpected error has occurred.
  12870. //
  12871. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12872. // The specified resource does not exist.
  12873. //
  12874. func (c *IoT) UpdateBillingGroup(input *UpdateBillingGroupInput) (*UpdateBillingGroupOutput, error) {
  12875. req, out := c.UpdateBillingGroupRequest(input)
  12876. return out, req.Send()
  12877. }
  12878. // UpdateBillingGroupWithContext is the same as UpdateBillingGroup with the addition of
  12879. // the ability to pass a context and additional request options.
  12880. //
  12881. // See UpdateBillingGroup for details on how to use this API operation.
  12882. //
  12883. // The context must be non-nil and will be used for request cancellation. If
  12884. // the context is nil a panic will occur. In the future the SDK may create
  12885. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12886. // for more information on using Contexts.
  12887. func (c *IoT) UpdateBillingGroupWithContext(ctx aws.Context, input *UpdateBillingGroupInput, opts ...request.Option) (*UpdateBillingGroupOutput, error) {
  12888. req, out := c.UpdateBillingGroupRequest(input)
  12889. req.SetContext(ctx)
  12890. req.ApplyOptions(opts...)
  12891. return out, req.Send()
  12892. }
  12893. const opUpdateCACertificate = "UpdateCACertificate"
  12894. // UpdateCACertificateRequest generates a "aws/request.Request" representing the
  12895. // client's request for the UpdateCACertificate operation. The "output" return
  12896. // value will be populated with the request's response once the request completes
  12897. // successfully.
  12898. //
  12899. // Use "Send" method on the returned Request to send the API call to the service.
  12900. // the "output" return value is not valid until after Send returns without error.
  12901. //
  12902. // See UpdateCACertificate for more information on using the UpdateCACertificate
  12903. // API call, and error handling.
  12904. //
  12905. // This method is useful when you want to inject custom logic or configuration
  12906. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12907. //
  12908. //
  12909. // // Example sending a request using the UpdateCACertificateRequest method.
  12910. // req, resp := client.UpdateCACertificateRequest(params)
  12911. //
  12912. // err := req.Send()
  12913. // if err == nil { // resp is now filled
  12914. // fmt.Println(resp)
  12915. // }
  12916. func (c *IoT) UpdateCACertificateRequest(input *UpdateCACertificateInput) (req *request.Request, output *UpdateCACertificateOutput) {
  12917. op := &request.Operation{
  12918. Name: opUpdateCACertificate,
  12919. HTTPMethod: "PUT",
  12920. HTTPPath: "/cacertificate/{caCertificateId}",
  12921. }
  12922. if input == nil {
  12923. input = &UpdateCACertificateInput{}
  12924. }
  12925. output = &UpdateCACertificateOutput{}
  12926. req = c.newRequest(op, input, output)
  12927. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  12928. return
  12929. }
  12930. // UpdateCACertificate API operation for AWS IoT.
  12931. //
  12932. // Updates a registered CA certificate.
  12933. //
  12934. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  12935. // with awserr.Error's Code and Message methods to get detailed information about
  12936. // the error.
  12937. //
  12938. // See the AWS API reference guide for AWS IoT's
  12939. // API operation UpdateCACertificate for usage and error information.
  12940. //
  12941. // Returned Error Codes:
  12942. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  12943. // The specified resource does not exist.
  12944. //
  12945. // * ErrCodeInvalidRequestException "InvalidRequestException"
  12946. // The request is not valid.
  12947. //
  12948. // * ErrCodeThrottlingException "ThrottlingException"
  12949. // The rate exceeds the limit.
  12950. //
  12951. // * ErrCodeUnauthorizedException "UnauthorizedException"
  12952. // You are not authorized to perform this operation.
  12953. //
  12954. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  12955. // The service is temporarily unavailable.
  12956. //
  12957. // * ErrCodeInternalFailureException "InternalFailureException"
  12958. // An unexpected error has occurred.
  12959. //
  12960. func (c *IoT) UpdateCACertificate(input *UpdateCACertificateInput) (*UpdateCACertificateOutput, error) {
  12961. req, out := c.UpdateCACertificateRequest(input)
  12962. return out, req.Send()
  12963. }
  12964. // UpdateCACertificateWithContext is the same as UpdateCACertificate with the addition of
  12965. // the ability to pass a context and additional request options.
  12966. //
  12967. // See UpdateCACertificate for details on how to use this API operation.
  12968. //
  12969. // The context must be non-nil and will be used for request cancellation. If
  12970. // the context is nil a panic will occur. In the future the SDK may create
  12971. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  12972. // for more information on using Contexts.
  12973. func (c *IoT) UpdateCACertificateWithContext(ctx aws.Context, input *UpdateCACertificateInput, opts ...request.Option) (*UpdateCACertificateOutput, error) {
  12974. req, out := c.UpdateCACertificateRequest(input)
  12975. req.SetContext(ctx)
  12976. req.ApplyOptions(opts...)
  12977. return out, req.Send()
  12978. }
  12979. const opUpdateCertificate = "UpdateCertificate"
  12980. // UpdateCertificateRequest generates a "aws/request.Request" representing the
  12981. // client's request for the UpdateCertificate operation. The "output" return
  12982. // value will be populated with the request's response once the request completes
  12983. // successfully.
  12984. //
  12985. // Use "Send" method on the returned Request to send the API call to the service.
  12986. // the "output" return value is not valid until after Send returns without error.
  12987. //
  12988. // See UpdateCertificate for more information on using the UpdateCertificate
  12989. // API call, and error handling.
  12990. //
  12991. // This method is useful when you want to inject custom logic or configuration
  12992. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  12993. //
  12994. //
  12995. // // Example sending a request using the UpdateCertificateRequest method.
  12996. // req, resp := client.UpdateCertificateRequest(params)
  12997. //
  12998. // err := req.Send()
  12999. // if err == nil { // resp is now filled
  13000. // fmt.Println(resp)
  13001. // }
  13002. func (c *IoT) UpdateCertificateRequest(input *UpdateCertificateInput) (req *request.Request, output *UpdateCertificateOutput) {
  13003. op := &request.Operation{
  13004. Name: opUpdateCertificate,
  13005. HTTPMethod: "PUT",
  13006. HTTPPath: "/certificates/{certificateId}",
  13007. }
  13008. if input == nil {
  13009. input = &UpdateCertificateInput{}
  13010. }
  13011. output = &UpdateCertificateOutput{}
  13012. req = c.newRequest(op, input, output)
  13013. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13014. return
  13015. }
  13016. // UpdateCertificate API operation for AWS IoT.
  13017. //
  13018. // Updates the status of the specified certificate. This operation is idempotent.
  13019. //
  13020. // Moving a certificate from the ACTIVE state (including REVOKED) will not disconnect
  13021. // currently connected devices, but these devices will be unable to reconnect.
  13022. //
  13023. // The ACTIVE state is required to authenticate devices connecting to AWS IoT
  13024. // using a certificate.
  13025. //
  13026. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13027. // with awserr.Error's Code and Message methods to get detailed information about
  13028. // the error.
  13029. //
  13030. // See the AWS API reference guide for AWS IoT's
  13031. // API operation UpdateCertificate for usage and error information.
  13032. //
  13033. // Returned Error Codes:
  13034. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13035. // The specified resource does not exist.
  13036. //
  13037. // * ErrCodeCertificateStateException "CertificateStateException"
  13038. // The certificate operation is not allowed.
  13039. //
  13040. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13041. // The request is not valid.
  13042. //
  13043. // * ErrCodeThrottlingException "ThrottlingException"
  13044. // The rate exceeds the limit.
  13045. //
  13046. // * ErrCodeUnauthorizedException "UnauthorizedException"
  13047. // You are not authorized to perform this operation.
  13048. //
  13049. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13050. // The service is temporarily unavailable.
  13051. //
  13052. // * ErrCodeInternalFailureException "InternalFailureException"
  13053. // An unexpected error has occurred.
  13054. //
  13055. func (c *IoT) UpdateCertificate(input *UpdateCertificateInput) (*UpdateCertificateOutput, error) {
  13056. req, out := c.UpdateCertificateRequest(input)
  13057. return out, req.Send()
  13058. }
  13059. // UpdateCertificateWithContext is the same as UpdateCertificate with the addition of
  13060. // the ability to pass a context and additional request options.
  13061. //
  13062. // See UpdateCertificate for details on how to use this API operation.
  13063. //
  13064. // The context must be non-nil and will be used for request cancellation. If
  13065. // the context is nil a panic will occur. In the future the SDK may create
  13066. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13067. // for more information on using Contexts.
  13068. func (c *IoT) UpdateCertificateWithContext(ctx aws.Context, input *UpdateCertificateInput, opts ...request.Option) (*UpdateCertificateOutput, error) {
  13069. req, out := c.UpdateCertificateRequest(input)
  13070. req.SetContext(ctx)
  13071. req.ApplyOptions(opts...)
  13072. return out, req.Send()
  13073. }
  13074. const opUpdateDynamicThingGroup = "UpdateDynamicThingGroup"
  13075. // UpdateDynamicThingGroupRequest generates a "aws/request.Request" representing the
  13076. // client's request for the UpdateDynamicThingGroup operation. The "output" return
  13077. // value will be populated with the request's response once the request completes
  13078. // successfully.
  13079. //
  13080. // Use "Send" method on the returned Request to send the API call to the service.
  13081. // the "output" return value is not valid until after Send returns without error.
  13082. //
  13083. // See UpdateDynamicThingGroup for more information on using the UpdateDynamicThingGroup
  13084. // API call, and error handling.
  13085. //
  13086. // This method is useful when you want to inject custom logic or configuration
  13087. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13088. //
  13089. //
  13090. // // Example sending a request using the UpdateDynamicThingGroupRequest method.
  13091. // req, resp := client.UpdateDynamicThingGroupRequest(params)
  13092. //
  13093. // err := req.Send()
  13094. // if err == nil { // resp is now filled
  13095. // fmt.Println(resp)
  13096. // }
  13097. func (c *IoT) UpdateDynamicThingGroupRequest(input *UpdateDynamicThingGroupInput) (req *request.Request, output *UpdateDynamicThingGroupOutput) {
  13098. op := &request.Operation{
  13099. Name: opUpdateDynamicThingGroup,
  13100. HTTPMethod: "PATCH",
  13101. HTTPPath: "/dynamic-thing-groups/{thingGroupName}",
  13102. }
  13103. if input == nil {
  13104. input = &UpdateDynamicThingGroupInput{}
  13105. }
  13106. output = &UpdateDynamicThingGroupOutput{}
  13107. req = c.newRequest(op, input, output)
  13108. return
  13109. }
  13110. // UpdateDynamicThingGroup API operation for AWS IoT.
  13111. //
  13112. // Updates a dynamic thing group.
  13113. //
  13114. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13115. // with awserr.Error's Code and Message methods to get detailed information about
  13116. // the error.
  13117. //
  13118. // See the AWS API reference guide for AWS IoT's
  13119. // API operation UpdateDynamicThingGroup for usage and error information.
  13120. //
  13121. // Returned Error Codes:
  13122. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13123. // The request is not valid.
  13124. //
  13125. // * ErrCodeVersionConflictException "VersionConflictException"
  13126. // An exception thrown when the version of an entity specified with the expectedVersion
  13127. // parameter does not match the latest version in the system.
  13128. //
  13129. // * ErrCodeThrottlingException "ThrottlingException"
  13130. // The rate exceeds the limit.
  13131. //
  13132. // * ErrCodeInternalFailureException "InternalFailureException"
  13133. // An unexpected error has occurred.
  13134. //
  13135. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13136. // The specified resource does not exist.
  13137. //
  13138. // * ErrCodeInvalidQueryException "InvalidQueryException"
  13139. // The query is invalid.
  13140. //
  13141. func (c *IoT) UpdateDynamicThingGroup(input *UpdateDynamicThingGroupInput) (*UpdateDynamicThingGroupOutput, error) {
  13142. req, out := c.UpdateDynamicThingGroupRequest(input)
  13143. return out, req.Send()
  13144. }
  13145. // UpdateDynamicThingGroupWithContext is the same as UpdateDynamicThingGroup with the addition of
  13146. // the ability to pass a context and additional request options.
  13147. //
  13148. // See UpdateDynamicThingGroup for details on how to use this API operation.
  13149. //
  13150. // The context must be non-nil and will be used for request cancellation. If
  13151. // the context is nil a panic will occur. In the future the SDK may create
  13152. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13153. // for more information on using Contexts.
  13154. func (c *IoT) UpdateDynamicThingGroupWithContext(ctx aws.Context, input *UpdateDynamicThingGroupInput, opts ...request.Option) (*UpdateDynamicThingGroupOutput, error) {
  13155. req, out := c.UpdateDynamicThingGroupRequest(input)
  13156. req.SetContext(ctx)
  13157. req.ApplyOptions(opts...)
  13158. return out, req.Send()
  13159. }
  13160. const opUpdateEventConfigurations = "UpdateEventConfigurations"
  13161. // UpdateEventConfigurationsRequest generates a "aws/request.Request" representing the
  13162. // client's request for the UpdateEventConfigurations operation. The "output" return
  13163. // value will be populated with the request's response once the request completes
  13164. // successfully.
  13165. //
  13166. // Use "Send" method on the returned Request to send the API call to the service.
  13167. // the "output" return value is not valid until after Send returns without error.
  13168. //
  13169. // See UpdateEventConfigurations for more information on using the UpdateEventConfigurations
  13170. // API call, and error handling.
  13171. //
  13172. // This method is useful when you want to inject custom logic or configuration
  13173. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13174. //
  13175. //
  13176. // // Example sending a request using the UpdateEventConfigurationsRequest method.
  13177. // req, resp := client.UpdateEventConfigurationsRequest(params)
  13178. //
  13179. // err := req.Send()
  13180. // if err == nil { // resp is now filled
  13181. // fmt.Println(resp)
  13182. // }
  13183. func (c *IoT) UpdateEventConfigurationsRequest(input *UpdateEventConfigurationsInput) (req *request.Request, output *UpdateEventConfigurationsOutput) {
  13184. op := &request.Operation{
  13185. Name: opUpdateEventConfigurations,
  13186. HTTPMethod: "PATCH",
  13187. HTTPPath: "/event-configurations",
  13188. }
  13189. if input == nil {
  13190. input = &UpdateEventConfigurationsInput{}
  13191. }
  13192. output = &UpdateEventConfigurationsOutput{}
  13193. req = c.newRequest(op, input, output)
  13194. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13195. return
  13196. }
  13197. // UpdateEventConfigurations API operation for AWS IoT.
  13198. //
  13199. // Updates the event configurations.
  13200. //
  13201. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13202. // with awserr.Error's Code and Message methods to get detailed information about
  13203. // the error.
  13204. //
  13205. // See the AWS API reference guide for AWS IoT's
  13206. // API operation UpdateEventConfigurations for usage and error information.
  13207. //
  13208. // Returned Error Codes:
  13209. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13210. // The request is not valid.
  13211. //
  13212. // * ErrCodeInternalFailureException "InternalFailureException"
  13213. // An unexpected error has occurred.
  13214. //
  13215. // * ErrCodeThrottlingException "ThrottlingException"
  13216. // The rate exceeds the limit.
  13217. //
  13218. func (c *IoT) UpdateEventConfigurations(input *UpdateEventConfigurationsInput) (*UpdateEventConfigurationsOutput, error) {
  13219. req, out := c.UpdateEventConfigurationsRequest(input)
  13220. return out, req.Send()
  13221. }
  13222. // UpdateEventConfigurationsWithContext is the same as UpdateEventConfigurations with the addition of
  13223. // the ability to pass a context and additional request options.
  13224. //
  13225. // See UpdateEventConfigurations for details on how to use this API operation.
  13226. //
  13227. // The context must be non-nil and will be used for request cancellation. If
  13228. // the context is nil a panic will occur. In the future the SDK may create
  13229. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13230. // for more information on using Contexts.
  13231. func (c *IoT) UpdateEventConfigurationsWithContext(ctx aws.Context, input *UpdateEventConfigurationsInput, opts ...request.Option) (*UpdateEventConfigurationsOutput, error) {
  13232. req, out := c.UpdateEventConfigurationsRequest(input)
  13233. req.SetContext(ctx)
  13234. req.ApplyOptions(opts...)
  13235. return out, req.Send()
  13236. }
  13237. const opUpdateIndexingConfiguration = "UpdateIndexingConfiguration"
  13238. // UpdateIndexingConfigurationRequest generates a "aws/request.Request" representing the
  13239. // client's request for the UpdateIndexingConfiguration operation. The "output" return
  13240. // value will be populated with the request's response once the request completes
  13241. // successfully.
  13242. //
  13243. // Use "Send" method on the returned Request to send the API call to the service.
  13244. // the "output" return value is not valid until after Send returns without error.
  13245. //
  13246. // See UpdateIndexingConfiguration for more information on using the UpdateIndexingConfiguration
  13247. // API call, and error handling.
  13248. //
  13249. // This method is useful when you want to inject custom logic or configuration
  13250. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13251. //
  13252. //
  13253. // // Example sending a request using the UpdateIndexingConfigurationRequest method.
  13254. // req, resp := client.UpdateIndexingConfigurationRequest(params)
  13255. //
  13256. // err := req.Send()
  13257. // if err == nil { // resp is now filled
  13258. // fmt.Println(resp)
  13259. // }
  13260. func (c *IoT) UpdateIndexingConfigurationRequest(input *UpdateIndexingConfigurationInput) (req *request.Request, output *UpdateIndexingConfigurationOutput) {
  13261. op := &request.Operation{
  13262. Name: opUpdateIndexingConfiguration,
  13263. HTTPMethod: "POST",
  13264. HTTPPath: "/indexing/config",
  13265. }
  13266. if input == nil {
  13267. input = &UpdateIndexingConfigurationInput{}
  13268. }
  13269. output = &UpdateIndexingConfigurationOutput{}
  13270. req = c.newRequest(op, input, output)
  13271. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13272. return
  13273. }
  13274. // UpdateIndexingConfiguration API operation for AWS IoT.
  13275. //
  13276. // Updates the search configuration.
  13277. //
  13278. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13279. // with awserr.Error's Code and Message methods to get detailed information about
  13280. // the error.
  13281. //
  13282. // See the AWS API reference guide for AWS IoT's
  13283. // API operation UpdateIndexingConfiguration for usage and error information.
  13284. //
  13285. // Returned Error Codes:
  13286. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13287. // The request is not valid.
  13288. //
  13289. // * ErrCodeThrottlingException "ThrottlingException"
  13290. // The rate exceeds the limit.
  13291. //
  13292. // * ErrCodeUnauthorizedException "UnauthorizedException"
  13293. // You are not authorized to perform this operation.
  13294. //
  13295. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13296. // The service is temporarily unavailable.
  13297. //
  13298. // * ErrCodeInternalFailureException "InternalFailureException"
  13299. // An unexpected error has occurred.
  13300. //
  13301. func (c *IoT) UpdateIndexingConfiguration(input *UpdateIndexingConfigurationInput) (*UpdateIndexingConfigurationOutput, error) {
  13302. req, out := c.UpdateIndexingConfigurationRequest(input)
  13303. return out, req.Send()
  13304. }
  13305. // UpdateIndexingConfigurationWithContext is the same as UpdateIndexingConfiguration with the addition of
  13306. // the ability to pass a context and additional request options.
  13307. //
  13308. // See UpdateIndexingConfiguration for details on how to use this API operation.
  13309. //
  13310. // The context must be non-nil and will be used for request cancellation. If
  13311. // the context is nil a panic will occur. In the future the SDK may create
  13312. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13313. // for more information on using Contexts.
  13314. func (c *IoT) UpdateIndexingConfigurationWithContext(ctx aws.Context, input *UpdateIndexingConfigurationInput, opts ...request.Option) (*UpdateIndexingConfigurationOutput, error) {
  13315. req, out := c.UpdateIndexingConfigurationRequest(input)
  13316. req.SetContext(ctx)
  13317. req.ApplyOptions(opts...)
  13318. return out, req.Send()
  13319. }
  13320. const opUpdateJob = "UpdateJob"
  13321. // UpdateJobRequest generates a "aws/request.Request" representing the
  13322. // client's request for the UpdateJob operation. The "output" return
  13323. // value will be populated with the request's response once the request completes
  13324. // successfully.
  13325. //
  13326. // Use "Send" method on the returned Request to send the API call to the service.
  13327. // the "output" return value is not valid until after Send returns without error.
  13328. //
  13329. // See UpdateJob for more information on using the UpdateJob
  13330. // API call, and error handling.
  13331. //
  13332. // This method is useful when you want to inject custom logic or configuration
  13333. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13334. //
  13335. //
  13336. // // Example sending a request using the UpdateJobRequest method.
  13337. // req, resp := client.UpdateJobRequest(params)
  13338. //
  13339. // err := req.Send()
  13340. // if err == nil { // resp is now filled
  13341. // fmt.Println(resp)
  13342. // }
  13343. func (c *IoT) UpdateJobRequest(input *UpdateJobInput) (req *request.Request, output *UpdateJobOutput) {
  13344. op := &request.Operation{
  13345. Name: opUpdateJob,
  13346. HTTPMethod: "PATCH",
  13347. HTTPPath: "/jobs/{jobId}",
  13348. }
  13349. if input == nil {
  13350. input = &UpdateJobInput{}
  13351. }
  13352. output = &UpdateJobOutput{}
  13353. req = c.newRequest(op, input, output)
  13354. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13355. return
  13356. }
  13357. // UpdateJob API operation for AWS IoT.
  13358. //
  13359. // Updates supported fields of the specified job.
  13360. //
  13361. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13362. // with awserr.Error's Code and Message methods to get detailed information about
  13363. // the error.
  13364. //
  13365. // See the AWS API reference guide for AWS IoT's
  13366. // API operation UpdateJob for usage and error information.
  13367. //
  13368. // Returned Error Codes:
  13369. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13370. // The request is not valid.
  13371. //
  13372. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13373. // The specified resource does not exist.
  13374. //
  13375. // * ErrCodeThrottlingException "ThrottlingException"
  13376. // The rate exceeds the limit.
  13377. //
  13378. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13379. // The service is temporarily unavailable.
  13380. //
  13381. func (c *IoT) UpdateJob(input *UpdateJobInput) (*UpdateJobOutput, error) {
  13382. req, out := c.UpdateJobRequest(input)
  13383. return out, req.Send()
  13384. }
  13385. // UpdateJobWithContext is the same as UpdateJob with the addition of
  13386. // the ability to pass a context and additional request options.
  13387. //
  13388. // See UpdateJob for details on how to use this API operation.
  13389. //
  13390. // The context must be non-nil and will be used for request cancellation. If
  13391. // the context is nil a panic will occur. In the future the SDK may create
  13392. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13393. // for more information on using Contexts.
  13394. func (c *IoT) UpdateJobWithContext(ctx aws.Context, input *UpdateJobInput, opts ...request.Option) (*UpdateJobOutput, error) {
  13395. req, out := c.UpdateJobRequest(input)
  13396. req.SetContext(ctx)
  13397. req.ApplyOptions(opts...)
  13398. return out, req.Send()
  13399. }
  13400. const opUpdateRoleAlias = "UpdateRoleAlias"
  13401. // UpdateRoleAliasRequest generates a "aws/request.Request" representing the
  13402. // client's request for the UpdateRoleAlias operation. The "output" return
  13403. // value will be populated with the request's response once the request completes
  13404. // successfully.
  13405. //
  13406. // Use "Send" method on the returned Request to send the API call to the service.
  13407. // the "output" return value is not valid until after Send returns without error.
  13408. //
  13409. // See UpdateRoleAlias for more information on using the UpdateRoleAlias
  13410. // API call, and error handling.
  13411. //
  13412. // This method is useful when you want to inject custom logic or configuration
  13413. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13414. //
  13415. //
  13416. // // Example sending a request using the UpdateRoleAliasRequest method.
  13417. // req, resp := client.UpdateRoleAliasRequest(params)
  13418. //
  13419. // err := req.Send()
  13420. // if err == nil { // resp is now filled
  13421. // fmt.Println(resp)
  13422. // }
  13423. func (c *IoT) UpdateRoleAliasRequest(input *UpdateRoleAliasInput) (req *request.Request, output *UpdateRoleAliasOutput) {
  13424. op := &request.Operation{
  13425. Name: opUpdateRoleAlias,
  13426. HTTPMethod: "PUT",
  13427. HTTPPath: "/role-aliases/{roleAlias}",
  13428. }
  13429. if input == nil {
  13430. input = &UpdateRoleAliasInput{}
  13431. }
  13432. output = &UpdateRoleAliasOutput{}
  13433. req = c.newRequest(op, input, output)
  13434. return
  13435. }
  13436. // UpdateRoleAlias API operation for AWS IoT.
  13437. //
  13438. // Updates a role alias.
  13439. //
  13440. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13441. // with awserr.Error's Code and Message methods to get detailed information about
  13442. // the error.
  13443. //
  13444. // See the AWS API reference guide for AWS IoT's
  13445. // API operation UpdateRoleAlias for usage and error information.
  13446. //
  13447. // Returned Error Codes:
  13448. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13449. // The specified resource does not exist.
  13450. //
  13451. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13452. // The request is not valid.
  13453. //
  13454. // * ErrCodeThrottlingException "ThrottlingException"
  13455. // The rate exceeds the limit.
  13456. //
  13457. // * ErrCodeUnauthorizedException "UnauthorizedException"
  13458. // You are not authorized to perform this operation.
  13459. //
  13460. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13461. // The service is temporarily unavailable.
  13462. //
  13463. // * ErrCodeInternalFailureException "InternalFailureException"
  13464. // An unexpected error has occurred.
  13465. //
  13466. func (c *IoT) UpdateRoleAlias(input *UpdateRoleAliasInput) (*UpdateRoleAliasOutput, error) {
  13467. req, out := c.UpdateRoleAliasRequest(input)
  13468. return out, req.Send()
  13469. }
  13470. // UpdateRoleAliasWithContext is the same as UpdateRoleAlias with the addition of
  13471. // the ability to pass a context and additional request options.
  13472. //
  13473. // See UpdateRoleAlias for details on how to use this API operation.
  13474. //
  13475. // The context must be non-nil and will be used for request cancellation. If
  13476. // the context is nil a panic will occur. In the future the SDK may create
  13477. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13478. // for more information on using Contexts.
  13479. func (c *IoT) UpdateRoleAliasWithContext(ctx aws.Context, input *UpdateRoleAliasInput, opts ...request.Option) (*UpdateRoleAliasOutput, error) {
  13480. req, out := c.UpdateRoleAliasRequest(input)
  13481. req.SetContext(ctx)
  13482. req.ApplyOptions(opts...)
  13483. return out, req.Send()
  13484. }
  13485. const opUpdateScheduledAudit = "UpdateScheduledAudit"
  13486. // UpdateScheduledAuditRequest generates a "aws/request.Request" representing the
  13487. // client's request for the UpdateScheduledAudit operation. The "output" return
  13488. // value will be populated with the request's response once the request completes
  13489. // successfully.
  13490. //
  13491. // Use "Send" method on the returned Request to send the API call to the service.
  13492. // the "output" return value is not valid until after Send returns without error.
  13493. //
  13494. // See UpdateScheduledAudit for more information on using the UpdateScheduledAudit
  13495. // API call, and error handling.
  13496. //
  13497. // This method is useful when you want to inject custom logic or configuration
  13498. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13499. //
  13500. //
  13501. // // Example sending a request using the UpdateScheduledAuditRequest method.
  13502. // req, resp := client.UpdateScheduledAuditRequest(params)
  13503. //
  13504. // err := req.Send()
  13505. // if err == nil { // resp is now filled
  13506. // fmt.Println(resp)
  13507. // }
  13508. func (c *IoT) UpdateScheduledAuditRequest(input *UpdateScheduledAuditInput) (req *request.Request, output *UpdateScheduledAuditOutput) {
  13509. op := &request.Operation{
  13510. Name: opUpdateScheduledAudit,
  13511. HTTPMethod: "PATCH",
  13512. HTTPPath: "/audit/scheduledaudits/{scheduledAuditName}",
  13513. }
  13514. if input == nil {
  13515. input = &UpdateScheduledAuditInput{}
  13516. }
  13517. output = &UpdateScheduledAuditOutput{}
  13518. req = c.newRequest(op, input, output)
  13519. return
  13520. }
  13521. // UpdateScheduledAudit API operation for AWS IoT.
  13522. //
  13523. // Updates a scheduled audit, including what checks are performed and how often
  13524. // the audit takes place.
  13525. //
  13526. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13527. // with awserr.Error's Code and Message methods to get detailed information about
  13528. // the error.
  13529. //
  13530. // See the AWS API reference guide for AWS IoT's
  13531. // API operation UpdateScheduledAudit for usage and error information.
  13532. //
  13533. // Returned Error Codes:
  13534. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13535. // The request is not valid.
  13536. //
  13537. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13538. // The specified resource does not exist.
  13539. //
  13540. // * ErrCodeThrottlingException "ThrottlingException"
  13541. // The rate exceeds the limit.
  13542. //
  13543. // * ErrCodeInternalFailureException "InternalFailureException"
  13544. // An unexpected error has occurred.
  13545. //
  13546. func (c *IoT) UpdateScheduledAudit(input *UpdateScheduledAuditInput) (*UpdateScheduledAuditOutput, error) {
  13547. req, out := c.UpdateScheduledAuditRequest(input)
  13548. return out, req.Send()
  13549. }
  13550. // UpdateScheduledAuditWithContext is the same as UpdateScheduledAudit with the addition of
  13551. // the ability to pass a context and additional request options.
  13552. //
  13553. // See UpdateScheduledAudit for details on how to use this API operation.
  13554. //
  13555. // The context must be non-nil and will be used for request cancellation. If
  13556. // the context is nil a panic will occur. In the future the SDK may create
  13557. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13558. // for more information on using Contexts.
  13559. func (c *IoT) UpdateScheduledAuditWithContext(ctx aws.Context, input *UpdateScheduledAuditInput, opts ...request.Option) (*UpdateScheduledAuditOutput, error) {
  13560. req, out := c.UpdateScheduledAuditRequest(input)
  13561. req.SetContext(ctx)
  13562. req.ApplyOptions(opts...)
  13563. return out, req.Send()
  13564. }
  13565. const opUpdateSecurityProfile = "UpdateSecurityProfile"
  13566. // UpdateSecurityProfileRequest generates a "aws/request.Request" representing the
  13567. // client's request for the UpdateSecurityProfile operation. The "output" return
  13568. // value will be populated with the request's response once the request completes
  13569. // successfully.
  13570. //
  13571. // Use "Send" method on the returned Request to send the API call to the service.
  13572. // the "output" return value is not valid until after Send returns without error.
  13573. //
  13574. // See UpdateSecurityProfile for more information on using the UpdateSecurityProfile
  13575. // API call, and error handling.
  13576. //
  13577. // This method is useful when you want to inject custom logic or configuration
  13578. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13579. //
  13580. //
  13581. // // Example sending a request using the UpdateSecurityProfileRequest method.
  13582. // req, resp := client.UpdateSecurityProfileRequest(params)
  13583. //
  13584. // err := req.Send()
  13585. // if err == nil { // resp is now filled
  13586. // fmt.Println(resp)
  13587. // }
  13588. func (c *IoT) UpdateSecurityProfileRequest(input *UpdateSecurityProfileInput) (req *request.Request, output *UpdateSecurityProfileOutput) {
  13589. op := &request.Operation{
  13590. Name: opUpdateSecurityProfile,
  13591. HTTPMethod: "PATCH",
  13592. HTTPPath: "/security-profiles/{securityProfileName}",
  13593. }
  13594. if input == nil {
  13595. input = &UpdateSecurityProfileInput{}
  13596. }
  13597. output = &UpdateSecurityProfileOutput{}
  13598. req = c.newRequest(op, input, output)
  13599. return
  13600. }
  13601. // UpdateSecurityProfile API operation for AWS IoT.
  13602. //
  13603. // Updates a Device Defender security profile.
  13604. //
  13605. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13606. // with awserr.Error's Code and Message methods to get detailed information about
  13607. // the error.
  13608. //
  13609. // See the AWS API reference guide for AWS IoT's
  13610. // API operation UpdateSecurityProfile for usage and error information.
  13611. //
  13612. // Returned Error Codes:
  13613. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13614. // The request is not valid.
  13615. //
  13616. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13617. // The specified resource does not exist.
  13618. //
  13619. // * ErrCodeVersionConflictException "VersionConflictException"
  13620. // An exception thrown when the version of an entity specified with the expectedVersion
  13621. // parameter does not match the latest version in the system.
  13622. //
  13623. // * ErrCodeThrottlingException "ThrottlingException"
  13624. // The rate exceeds the limit.
  13625. //
  13626. // * ErrCodeInternalFailureException "InternalFailureException"
  13627. // An unexpected error has occurred.
  13628. //
  13629. func (c *IoT) UpdateSecurityProfile(input *UpdateSecurityProfileInput) (*UpdateSecurityProfileOutput, error) {
  13630. req, out := c.UpdateSecurityProfileRequest(input)
  13631. return out, req.Send()
  13632. }
  13633. // UpdateSecurityProfileWithContext is the same as UpdateSecurityProfile with the addition of
  13634. // the ability to pass a context and additional request options.
  13635. //
  13636. // See UpdateSecurityProfile for details on how to use this API operation.
  13637. //
  13638. // The context must be non-nil and will be used for request cancellation. If
  13639. // the context is nil a panic will occur. In the future the SDK may create
  13640. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13641. // for more information on using Contexts.
  13642. func (c *IoT) UpdateSecurityProfileWithContext(ctx aws.Context, input *UpdateSecurityProfileInput, opts ...request.Option) (*UpdateSecurityProfileOutput, error) {
  13643. req, out := c.UpdateSecurityProfileRequest(input)
  13644. req.SetContext(ctx)
  13645. req.ApplyOptions(opts...)
  13646. return out, req.Send()
  13647. }
  13648. const opUpdateStream = "UpdateStream"
  13649. // UpdateStreamRequest generates a "aws/request.Request" representing the
  13650. // client's request for the UpdateStream operation. The "output" return
  13651. // value will be populated with the request's response once the request completes
  13652. // successfully.
  13653. //
  13654. // Use "Send" method on the returned Request to send the API call to the service.
  13655. // the "output" return value is not valid until after Send returns without error.
  13656. //
  13657. // See UpdateStream for more information on using the UpdateStream
  13658. // API call, and error handling.
  13659. //
  13660. // This method is useful when you want to inject custom logic or configuration
  13661. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13662. //
  13663. //
  13664. // // Example sending a request using the UpdateStreamRequest method.
  13665. // req, resp := client.UpdateStreamRequest(params)
  13666. //
  13667. // err := req.Send()
  13668. // if err == nil { // resp is now filled
  13669. // fmt.Println(resp)
  13670. // }
  13671. func (c *IoT) UpdateStreamRequest(input *UpdateStreamInput) (req *request.Request, output *UpdateStreamOutput) {
  13672. op := &request.Operation{
  13673. Name: opUpdateStream,
  13674. HTTPMethod: "PUT",
  13675. HTTPPath: "/streams/{streamId}",
  13676. }
  13677. if input == nil {
  13678. input = &UpdateStreamInput{}
  13679. }
  13680. output = &UpdateStreamOutput{}
  13681. req = c.newRequest(op, input, output)
  13682. return
  13683. }
  13684. // UpdateStream API operation for AWS IoT.
  13685. //
  13686. // Updates an existing stream. The stream version will be incremented by one.
  13687. //
  13688. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13689. // with awserr.Error's Code and Message methods to get detailed information about
  13690. // the error.
  13691. //
  13692. // See the AWS API reference guide for AWS IoT's
  13693. // API operation UpdateStream for usage and error information.
  13694. //
  13695. // Returned Error Codes:
  13696. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13697. // The request is not valid.
  13698. //
  13699. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13700. // The specified resource does not exist.
  13701. //
  13702. // * ErrCodeThrottlingException "ThrottlingException"
  13703. // The rate exceeds the limit.
  13704. //
  13705. // * ErrCodeUnauthorizedException "UnauthorizedException"
  13706. // You are not authorized to perform this operation.
  13707. //
  13708. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13709. // The service is temporarily unavailable.
  13710. //
  13711. // * ErrCodeInternalFailureException "InternalFailureException"
  13712. // An unexpected error has occurred.
  13713. //
  13714. func (c *IoT) UpdateStream(input *UpdateStreamInput) (*UpdateStreamOutput, error) {
  13715. req, out := c.UpdateStreamRequest(input)
  13716. return out, req.Send()
  13717. }
  13718. // UpdateStreamWithContext is the same as UpdateStream with the addition of
  13719. // the ability to pass a context and additional request options.
  13720. //
  13721. // See UpdateStream for details on how to use this API operation.
  13722. //
  13723. // The context must be non-nil and will be used for request cancellation. If
  13724. // the context is nil a panic will occur. In the future the SDK may create
  13725. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13726. // for more information on using Contexts.
  13727. func (c *IoT) UpdateStreamWithContext(ctx aws.Context, input *UpdateStreamInput, opts ...request.Option) (*UpdateStreamOutput, error) {
  13728. req, out := c.UpdateStreamRequest(input)
  13729. req.SetContext(ctx)
  13730. req.ApplyOptions(opts...)
  13731. return out, req.Send()
  13732. }
  13733. const opUpdateThing = "UpdateThing"
  13734. // UpdateThingRequest generates a "aws/request.Request" representing the
  13735. // client's request for the UpdateThing operation. The "output" return
  13736. // value will be populated with the request's response once the request completes
  13737. // successfully.
  13738. //
  13739. // Use "Send" method on the returned Request to send the API call to the service.
  13740. // the "output" return value is not valid until after Send returns without error.
  13741. //
  13742. // See UpdateThing for more information on using the UpdateThing
  13743. // API call, and error handling.
  13744. //
  13745. // This method is useful when you want to inject custom logic or configuration
  13746. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13747. //
  13748. //
  13749. // // Example sending a request using the UpdateThingRequest method.
  13750. // req, resp := client.UpdateThingRequest(params)
  13751. //
  13752. // err := req.Send()
  13753. // if err == nil { // resp is now filled
  13754. // fmt.Println(resp)
  13755. // }
  13756. func (c *IoT) UpdateThingRequest(input *UpdateThingInput) (req *request.Request, output *UpdateThingOutput) {
  13757. op := &request.Operation{
  13758. Name: opUpdateThing,
  13759. HTTPMethod: "PATCH",
  13760. HTTPPath: "/things/{thingName}",
  13761. }
  13762. if input == nil {
  13763. input = &UpdateThingInput{}
  13764. }
  13765. output = &UpdateThingOutput{}
  13766. req = c.newRequest(op, input, output)
  13767. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13768. return
  13769. }
  13770. // UpdateThing API operation for AWS IoT.
  13771. //
  13772. // Updates the data for a thing.
  13773. //
  13774. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13775. // with awserr.Error's Code and Message methods to get detailed information about
  13776. // the error.
  13777. //
  13778. // See the AWS API reference guide for AWS IoT's
  13779. // API operation UpdateThing for usage and error information.
  13780. //
  13781. // Returned Error Codes:
  13782. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13783. // The request is not valid.
  13784. //
  13785. // * ErrCodeVersionConflictException "VersionConflictException"
  13786. // An exception thrown when the version of an entity specified with the expectedVersion
  13787. // parameter does not match the latest version in the system.
  13788. //
  13789. // * ErrCodeThrottlingException "ThrottlingException"
  13790. // The rate exceeds the limit.
  13791. //
  13792. // * ErrCodeUnauthorizedException "UnauthorizedException"
  13793. // You are not authorized to perform this operation.
  13794. //
  13795. // * ErrCodeServiceUnavailableException "ServiceUnavailableException"
  13796. // The service is temporarily unavailable.
  13797. //
  13798. // * ErrCodeInternalFailureException "InternalFailureException"
  13799. // An unexpected error has occurred.
  13800. //
  13801. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13802. // The specified resource does not exist.
  13803. //
  13804. func (c *IoT) UpdateThing(input *UpdateThingInput) (*UpdateThingOutput, error) {
  13805. req, out := c.UpdateThingRequest(input)
  13806. return out, req.Send()
  13807. }
  13808. // UpdateThingWithContext is the same as UpdateThing with the addition of
  13809. // the ability to pass a context and additional request options.
  13810. //
  13811. // See UpdateThing for details on how to use this API operation.
  13812. //
  13813. // The context must be non-nil and will be used for request cancellation. If
  13814. // the context is nil a panic will occur. In the future the SDK may create
  13815. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13816. // for more information on using Contexts.
  13817. func (c *IoT) UpdateThingWithContext(ctx aws.Context, input *UpdateThingInput, opts ...request.Option) (*UpdateThingOutput, error) {
  13818. req, out := c.UpdateThingRequest(input)
  13819. req.SetContext(ctx)
  13820. req.ApplyOptions(opts...)
  13821. return out, req.Send()
  13822. }
  13823. const opUpdateThingGroup = "UpdateThingGroup"
  13824. // UpdateThingGroupRequest generates a "aws/request.Request" representing the
  13825. // client's request for the UpdateThingGroup operation. The "output" return
  13826. // value will be populated with the request's response once the request completes
  13827. // successfully.
  13828. //
  13829. // Use "Send" method on the returned Request to send the API call to the service.
  13830. // the "output" return value is not valid until after Send returns without error.
  13831. //
  13832. // See UpdateThingGroup for more information on using the UpdateThingGroup
  13833. // API call, and error handling.
  13834. //
  13835. // This method is useful when you want to inject custom logic or configuration
  13836. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13837. //
  13838. //
  13839. // // Example sending a request using the UpdateThingGroupRequest method.
  13840. // req, resp := client.UpdateThingGroupRequest(params)
  13841. //
  13842. // err := req.Send()
  13843. // if err == nil { // resp is now filled
  13844. // fmt.Println(resp)
  13845. // }
  13846. func (c *IoT) UpdateThingGroupRequest(input *UpdateThingGroupInput) (req *request.Request, output *UpdateThingGroupOutput) {
  13847. op := &request.Operation{
  13848. Name: opUpdateThingGroup,
  13849. HTTPMethod: "PATCH",
  13850. HTTPPath: "/thing-groups/{thingGroupName}",
  13851. }
  13852. if input == nil {
  13853. input = &UpdateThingGroupInput{}
  13854. }
  13855. output = &UpdateThingGroupOutput{}
  13856. req = c.newRequest(op, input, output)
  13857. return
  13858. }
  13859. // UpdateThingGroup API operation for AWS IoT.
  13860. //
  13861. // Update a thing group.
  13862. //
  13863. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13864. // with awserr.Error's Code and Message methods to get detailed information about
  13865. // the error.
  13866. //
  13867. // See the AWS API reference guide for AWS IoT's
  13868. // API operation UpdateThingGroup for usage and error information.
  13869. //
  13870. // Returned Error Codes:
  13871. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13872. // The request is not valid.
  13873. //
  13874. // * ErrCodeVersionConflictException "VersionConflictException"
  13875. // An exception thrown when the version of an entity specified with the expectedVersion
  13876. // parameter does not match the latest version in the system.
  13877. //
  13878. // * ErrCodeThrottlingException "ThrottlingException"
  13879. // The rate exceeds the limit.
  13880. //
  13881. // * ErrCodeInternalFailureException "InternalFailureException"
  13882. // An unexpected error has occurred.
  13883. //
  13884. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13885. // The specified resource does not exist.
  13886. //
  13887. func (c *IoT) UpdateThingGroup(input *UpdateThingGroupInput) (*UpdateThingGroupOutput, error) {
  13888. req, out := c.UpdateThingGroupRequest(input)
  13889. return out, req.Send()
  13890. }
  13891. // UpdateThingGroupWithContext is the same as UpdateThingGroup with the addition of
  13892. // the ability to pass a context and additional request options.
  13893. //
  13894. // See UpdateThingGroup for details on how to use this API operation.
  13895. //
  13896. // The context must be non-nil and will be used for request cancellation. If
  13897. // the context is nil a panic will occur. In the future the SDK may create
  13898. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13899. // for more information on using Contexts.
  13900. func (c *IoT) UpdateThingGroupWithContext(ctx aws.Context, input *UpdateThingGroupInput, opts ...request.Option) (*UpdateThingGroupOutput, error) {
  13901. req, out := c.UpdateThingGroupRequest(input)
  13902. req.SetContext(ctx)
  13903. req.ApplyOptions(opts...)
  13904. return out, req.Send()
  13905. }
  13906. const opUpdateThingGroupsForThing = "UpdateThingGroupsForThing"
  13907. // UpdateThingGroupsForThingRequest generates a "aws/request.Request" representing the
  13908. // client's request for the UpdateThingGroupsForThing operation. The "output" return
  13909. // value will be populated with the request's response once the request completes
  13910. // successfully.
  13911. //
  13912. // Use "Send" method on the returned Request to send the API call to the service.
  13913. // the "output" return value is not valid until after Send returns without error.
  13914. //
  13915. // See UpdateThingGroupsForThing for more information on using the UpdateThingGroupsForThing
  13916. // API call, and error handling.
  13917. //
  13918. // This method is useful when you want to inject custom logic or configuration
  13919. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  13920. //
  13921. //
  13922. // // Example sending a request using the UpdateThingGroupsForThingRequest method.
  13923. // req, resp := client.UpdateThingGroupsForThingRequest(params)
  13924. //
  13925. // err := req.Send()
  13926. // if err == nil { // resp is now filled
  13927. // fmt.Println(resp)
  13928. // }
  13929. func (c *IoT) UpdateThingGroupsForThingRequest(input *UpdateThingGroupsForThingInput) (req *request.Request, output *UpdateThingGroupsForThingOutput) {
  13930. op := &request.Operation{
  13931. Name: opUpdateThingGroupsForThing,
  13932. HTTPMethod: "PUT",
  13933. HTTPPath: "/thing-groups/updateThingGroupsForThing",
  13934. }
  13935. if input == nil {
  13936. input = &UpdateThingGroupsForThingInput{}
  13937. }
  13938. output = &UpdateThingGroupsForThingOutput{}
  13939. req = c.newRequest(op, input, output)
  13940. req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  13941. return
  13942. }
  13943. // UpdateThingGroupsForThing API operation for AWS IoT.
  13944. //
  13945. // Updates the groups to which the thing belongs.
  13946. //
  13947. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  13948. // with awserr.Error's Code and Message methods to get detailed information about
  13949. // the error.
  13950. //
  13951. // See the AWS API reference guide for AWS IoT's
  13952. // API operation UpdateThingGroupsForThing for usage and error information.
  13953. //
  13954. // Returned Error Codes:
  13955. // * ErrCodeInvalidRequestException "InvalidRequestException"
  13956. // The request is not valid.
  13957. //
  13958. // * ErrCodeThrottlingException "ThrottlingException"
  13959. // The rate exceeds the limit.
  13960. //
  13961. // * ErrCodeInternalFailureException "InternalFailureException"
  13962. // An unexpected error has occurred.
  13963. //
  13964. // * ErrCodeResourceNotFoundException "ResourceNotFoundException"
  13965. // The specified resource does not exist.
  13966. //
  13967. func (c *IoT) UpdateThingGroupsForThing(input *UpdateThingGroupsForThingInput) (*UpdateThingGroupsForThingOutput, error) {
  13968. req, out := c.UpdateThingGroupsForThingRequest(input)
  13969. return out, req.Send()
  13970. }
  13971. // UpdateThingGroupsForThingWithContext is the same as UpdateThingGroupsForThing with the addition of
  13972. // the ability to pass a context and additional request options.
  13973. //
  13974. // See UpdateThingGroupsForThing for details on how to use this API operation.
  13975. //
  13976. // The context must be non-nil and will be used for request cancellation. If
  13977. // the context is nil a panic will occur. In the future the SDK may create
  13978. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  13979. // for more information on using Contexts.
  13980. func (c *IoT) UpdateThingGroupsForThingWithContext(ctx aws.Context, input *UpdateThingGroupsForThingInput, opts ...request.Option) (*UpdateThingGroupsForThingOutput, error) {
  13981. req, out := c.UpdateThingGroupsForThingRequest(input)
  13982. req.SetContext(ctx)
  13983. req.ApplyOptions(opts...)
  13984. return out, req.Send()
  13985. }
  13986. const opValidateSecurityProfileBehaviors = "ValidateSecurityProfileBehaviors"
  13987. // ValidateSecurityProfileBehaviorsRequest generates a "aws/request.Request" representing the
  13988. // client's request for the ValidateSecurityProfileBehaviors operation. The "output" return
  13989. // value will be populated with the request's response once the request completes
  13990. // successfully.
  13991. //
  13992. // Use "Send" method on the returned Request to send the API call to the service.
  13993. // the "output" return value is not valid until after Send returns without error.
  13994. //
  13995. // See ValidateSecurityProfileBehaviors for more information on using the ValidateSecurityProfileBehaviors
  13996. // API call, and error handling.
  13997. //
  13998. // This method is useful when you want to inject custom logic or configuration
  13999. // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  14000. //
  14001. //
  14002. // // Example sending a request using the ValidateSecurityProfileBehaviorsRequest method.
  14003. // req, resp := client.ValidateSecurityProfileBehaviorsRequest(params)
  14004. //
  14005. // err := req.Send()
  14006. // if err == nil { // resp is now filled
  14007. // fmt.Println(resp)
  14008. // }
  14009. func (c *IoT) ValidateSecurityProfileBehaviorsRequest(input *ValidateSecurityProfileBehaviorsInput) (req *request.Request, output *ValidateSecurityProfileBehaviorsOutput) {
  14010. op := &request.Operation{
  14011. Name: opValidateSecurityProfileBehaviors,
  14012. HTTPMethod: "POST",
  14013. HTTPPath: "/security-profile-behaviors/validate",
  14014. }
  14015. if input == nil {
  14016. input = &ValidateSecurityProfileBehaviorsInput{}
  14017. }
  14018. output = &ValidateSecurityProfileBehaviorsOutput{}
  14019. req = c.newRequest(op, input, output)
  14020. return
  14021. }
  14022. // ValidateSecurityProfileBehaviors API operation for AWS IoT.
  14023. //
  14024. // Validates a Device Defender security profile behaviors specification.
  14025. //
  14026. // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  14027. // with awserr.Error's Code and Message methods to get detailed information about
  14028. // the error.
  14029. //
  14030. // See the AWS API reference guide for AWS IoT's
  14031. // API operation ValidateSecurityProfileBehaviors for usage and error information.
  14032. //
  14033. // Returned Error Codes:
  14034. // * ErrCodeInvalidRequestException "InvalidRequestException"
  14035. // The request is not valid.
  14036. //
  14037. // * ErrCodeThrottlingException "ThrottlingException"
  14038. // The rate exceeds the limit.
  14039. //
  14040. // * ErrCodeInternalFailureException "InternalFailureException"
  14041. // An unexpected error has occurred.
  14042. //
  14043. func (c *IoT) ValidateSecurityProfileBehaviors(input *ValidateSecurityProfileBehaviorsInput) (*ValidateSecurityProfileBehaviorsOutput, error) {
  14044. req, out := c.ValidateSecurityProfileBehaviorsRequest(input)
  14045. return out, req.Send()
  14046. }
  14047. // ValidateSecurityProfileBehaviorsWithContext is the same as ValidateSecurityProfileBehaviors with the addition of
  14048. // the ability to pass a context and additional request options.
  14049. //
  14050. // See ValidateSecurityProfileBehaviors for details on how to use this API operation.
  14051. //
  14052. // The context must be non-nil and will be used for request cancellation. If
  14053. // the context is nil a panic will occur. In the future the SDK may create
  14054. // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  14055. // for more information on using Contexts.
  14056. func (c *IoT) ValidateSecurityProfileBehaviorsWithContext(ctx aws.Context, input *ValidateSecurityProfileBehaviorsInput, opts ...request.Option) (*ValidateSecurityProfileBehaviorsOutput, error) {
  14057. req, out := c.ValidateSecurityProfileBehaviorsRequest(input)
  14058. req.SetContext(ctx)
  14059. req.ApplyOptions(opts...)
  14060. return out, req.Send()
  14061. }
  14062. // Details of abort criteria to abort the job.
  14063. type AbortConfig struct {
  14064. _ struct{} `type:"structure"`
  14065. // The list of abort criteria to define rules to abort the job.
  14066. //
  14067. // CriteriaList is a required field
  14068. CriteriaList []*AbortCriteria `locationName:"criteriaList" min:"1" type:"list" required:"true"`
  14069. }
  14070. // String returns the string representation
  14071. func (s AbortConfig) String() string {
  14072. return awsutil.Prettify(s)
  14073. }
  14074. // GoString returns the string representation
  14075. func (s AbortConfig) GoString() string {
  14076. return s.String()
  14077. }
  14078. // Validate inspects the fields of the type to determine if they are valid.
  14079. func (s *AbortConfig) Validate() error {
  14080. invalidParams := request.ErrInvalidParams{Context: "AbortConfig"}
  14081. if s.CriteriaList == nil {
  14082. invalidParams.Add(request.NewErrParamRequired("CriteriaList"))
  14083. }
  14084. if s.CriteriaList != nil && len(s.CriteriaList) < 1 {
  14085. invalidParams.Add(request.NewErrParamMinLen("CriteriaList", 1))
  14086. }
  14087. if s.CriteriaList != nil {
  14088. for i, v := range s.CriteriaList {
  14089. if v == nil {
  14090. continue
  14091. }
  14092. if err := v.Validate(); err != nil {
  14093. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CriteriaList", i), err.(request.ErrInvalidParams))
  14094. }
  14095. }
  14096. }
  14097. if invalidParams.Len() > 0 {
  14098. return invalidParams
  14099. }
  14100. return nil
  14101. }
  14102. // SetCriteriaList sets the CriteriaList field's value.
  14103. func (s *AbortConfig) SetCriteriaList(v []*AbortCriteria) *AbortConfig {
  14104. s.CriteriaList = v
  14105. return s
  14106. }
  14107. // Details of abort criteria to define rules to abort the job.
  14108. type AbortCriteria struct {
  14109. _ struct{} `type:"structure"`
  14110. // The type of abort action to initiate a job abort.
  14111. //
  14112. // Action is a required field
  14113. Action *string `locationName:"action" type:"string" required:"true" enum:"AbortAction"`
  14114. // The type of job execution failure to define a rule to initiate a job abort.
  14115. //
  14116. // FailureType is a required field
  14117. FailureType *string `locationName:"failureType" type:"string" required:"true" enum:"JobExecutionFailureType"`
  14118. // Minimum number of executed things before evaluating an abort rule.
  14119. //
  14120. // MinNumberOfExecutedThings is a required field
  14121. MinNumberOfExecutedThings *int64 `locationName:"minNumberOfExecutedThings" min:"1" type:"integer" required:"true"`
  14122. // The threshold as a percentage of the total number of executed things that
  14123. // will initiate a job abort.
  14124. //
  14125. // AWS IoT supports up to two digits after the decimal (for example, 10.9 and
  14126. // 10.99, but not 10.999).
  14127. //
  14128. // ThresholdPercentage is a required field
  14129. ThresholdPercentage *float64 `locationName:"thresholdPercentage" type:"double" required:"true"`
  14130. }
  14131. // String returns the string representation
  14132. func (s AbortCriteria) String() string {
  14133. return awsutil.Prettify(s)
  14134. }
  14135. // GoString returns the string representation
  14136. func (s AbortCriteria) GoString() string {
  14137. return s.String()
  14138. }
  14139. // Validate inspects the fields of the type to determine if they are valid.
  14140. func (s *AbortCriteria) Validate() error {
  14141. invalidParams := request.ErrInvalidParams{Context: "AbortCriteria"}
  14142. if s.Action == nil {
  14143. invalidParams.Add(request.NewErrParamRequired("Action"))
  14144. }
  14145. if s.FailureType == nil {
  14146. invalidParams.Add(request.NewErrParamRequired("FailureType"))
  14147. }
  14148. if s.MinNumberOfExecutedThings == nil {
  14149. invalidParams.Add(request.NewErrParamRequired("MinNumberOfExecutedThings"))
  14150. }
  14151. if s.MinNumberOfExecutedThings != nil && *s.MinNumberOfExecutedThings < 1 {
  14152. invalidParams.Add(request.NewErrParamMinValue("MinNumberOfExecutedThings", 1))
  14153. }
  14154. if s.ThresholdPercentage == nil {
  14155. invalidParams.Add(request.NewErrParamRequired("ThresholdPercentage"))
  14156. }
  14157. if invalidParams.Len() > 0 {
  14158. return invalidParams
  14159. }
  14160. return nil
  14161. }
  14162. // SetAction sets the Action field's value.
  14163. func (s *AbortCriteria) SetAction(v string) *AbortCriteria {
  14164. s.Action = &v
  14165. return s
  14166. }
  14167. // SetFailureType sets the FailureType field's value.
  14168. func (s *AbortCriteria) SetFailureType(v string) *AbortCriteria {
  14169. s.FailureType = &v
  14170. return s
  14171. }
  14172. // SetMinNumberOfExecutedThings sets the MinNumberOfExecutedThings field's value.
  14173. func (s *AbortCriteria) SetMinNumberOfExecutedThings(v int64) *AbortCriteria {
  14174. s.MinNumberOfExecutedThings = &v
  14175. return s
  14176. }
  14177. // SetThresholdPercentage sets the ThresholdPercentage field's value.
  14178. func (s *AbortCriteria) SetThresholdPercentage(v float64) *AbortCriteria {
  14179. s.ThresholdPercentage = &v
  14180. return s
  14181. }
  14182. // The input for the AcceptCertificateTransfer operation.
  14183. type AcceptCertificateTransferInput struct {
  14184. _ struct{} `type:"structure"`
  14185. // The ID of the certificate. (The last part of the certificate ARN contains
  14186. // the certificate ID.)
  14187. //
  14188. // CertificateId is a required field
  14189. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  14190. // Specifies whether the certificate is active.
  14191. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"`
  14192. }
  14193. // String returns the string representation
  14194. func (s AcceptCertificateTransferInput) String() string {
  14195. return awsutil.Prettify(s)
  14196. }
  14197. // GoString returns the string representation
  14198. func (s AcceptCertificateTransferInput) GoString() string {
  14199. return s.String()
  14200. }
  14201. // Validate inspects the fields of the type to determine if they are valid.
  14202. func (s *AcceptCertificateTransferInput) Validate() error {
  14203. invalidParams := request.ErrInvalidParams{Context: "AcceptCertificateTransferInput"}
  14204. if s.CertificateId == nil {
  14205. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  14206. }
  14207. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  14208. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  14209. }
  14210. if invalidParams.Len() > 0 {
  14211. return invalidParams
  14212. }
  14213. return nil
  14214. }
  14215. // SetCertificateId sets the CertificateId field's value.
  14216. func (s *AcceptCertificateTransferInput) SetCertificateId(v string) *AcceptCertificateTransferInput {
  14217. s.CertificateId = &v
  14218. return s
  14219. }
  14220. // SetSetAsActive sets the SetAsActive field's value.
  14221. func (s *AcceptCertificateTransferInput) SetSetAsActive(v bool) *AcceptCertificateTransferInput {
  14222. s.SetAsActive = &v
  14223. return s
  14224. }
  14225. type AcceptCertificateTransferOutput struct {
  14226. _ struct{} `type:"structure"`
  14227. }
  14228. // String returns the string representation
  14229. func (s AcceptCertificateTransferOutput) String() string {
  14230. return awsutil.Prettify(s)
  14231. }
  14232. // GoString returns the string representation
  14233. func (s AcceptCertificateTransferOutput) GoString() string {
  14234. return s.String()
  14235. }
  14236. // Describes the actions associated with a rule.
  14237. type Action struct {
  14238. _ struct{} `type:"structure"`
  14239. // Change the state of a CloudWatch alarm.
  14240. CloudwatchAlarm *CloudwatchAlarmAction `locationName:"cloudwatchAlarm" type:"structure"`
  14241. // Capture a CloudWatch metric.
  14242. CloudwatchMetric *CloudwatchMetricAction `locationName:"cloudwatchMetric" type:"structure"`
  14243. // Write to a DynamoDB table.
  14244. DynamoDB *DynamoDBAction `locationName:"dynamoDB" type:"structure"`
  14245. // Write to a DynamoDB table. This is a new version of the DynamoDB action.
  14246. // It allows you to write each attribute in an MQTT message payload into a separate
  14247. // DynamoDB column.
  14248. DynamoDBv2 *DynamoDBv2Action `locationName:"dynamoDBv2" type:"structure"`
  14249. // Write data to an Amazon Elasticsearch Service domain.
  14250. Elasticsearch *ElasticsearchAction `locationName:"elasticsearch" type:"structure"`
  14251. // Write to an Amazon Kinesis Firehose stream.
  14252. Firehose *FirehoseAction `locationName:"firehose" type:"structure"`
  14253. // Sends message data to an AWS IoT Analytics channel.
  14254. IotAnalytics *IotAnalyticsAction `locationName:"iotAnalytics" type:"structure"`
  14255. // Sends an input to an AWS IoT Events detector.
  14256. IotEvents *IotEventsAction `locationName:"iotEvents" type:"structure"`
  14257. // Write data to an Amazon Kinesis stream.
  14258. Kinesis *KinesisAction `locationName:"kinesis" type:"structure"`
  14259. // Invoke a Lambda function.
  14260. Lambda *LambdaAction `locationName:"lambda" type:"structure"`
  14261. // Publish to another MQTT topic.
  14262. Republish *RepublishAction `locationName:"republish" type:"structure"`
  14263. // Write to an Amazon S3 bucket.
  14264. S3 *S3Action `locationName:"s3" type:"structure"`
  14265. // Send a message to a Salesforce IoT Cloud Input Stream.
  14266. Salesforce *SalesforceAction `locationName:"salesforce" type:"structure"`
  14267. // Publish to an Amazon SNS topic.
  14268. Sns *SnsAction `locationName:"sns" type:"structure"`
  14269. // Publish to an Amazon SQS queue.
  14270. Sqs *SqsAction `locationName:"sqs" type:"structure"`
  14271. // Starts execution of a Step Functions state machine.
  14272. StepFunctions *StepFunctionsAction `locationName:"stepFunctions" type:"structure"`
  14273. }
  14274. // String returns the string representation
  14275. func (s Action) String() string {
  14276. return awsutil.Prettify(s)
  14277. }
  14278. // GoString returns the string representation
  14279. func (s Action) GoString() string {
  14280. return s.String()
  14281. }
  14282. // Validate inspects the fields of the type to determine if they are valid.
  14283. func (s *Action) Validate() error {
  14284. invalidParams := request.ErrInvalidParams{Context: "Action"}
  14285. if s.CloudwatchAlarm != nil {
  14286. if err := s.CloudwatchAlarm.Validate(); err != nil {
  14287. invalidParams.AddNested("CloudwatchAlarm", err.(request.ErrInvalidParams))
  14288. }
  14289. }
  14290. if s.CloudwatchMetric != nil {
  14291. if err := s.CloudwatchMetric.Validate(); err != nil {
  14292. invalidParams.AddNested("CloudwatchMetric", err.(request.ErrInvalidParams))
  14293. }
  14294. }
  14295. if s.DynamoDB != nil {
  14296. if err := s.DynamoDB.Validate(); err != nil {
  14297. invalidParams.AddNested("DynamoDB", err.(request.ErrInvalidParams))
  14298. }
  14299. }
  14300. if s.DynamoDBv2 != nil {
  14301. if err := s.DynamoDBv2.Validate(); err != nil {
  14302. invalidParams.AddNested("DynamoDBv2", err.(request.ErrInvalidParams))
  14303. }
  14304. }
  14305. if s.Elasticsearch != nil {
  14306. if err := s.Elasticsearch.Validate(); err != nil {
  14307. invalidParams.AddNested("Elasticsearch", err.(request.ErrInvalidParams))
  14308. }
  14309. }
  14310. if s.Firehose != nil {
  14311. if err := s.Firehose.Validate(); err != nil {
  14312. invalidParams.AddNested("Firehose", err.(request.ErrInvalidParams))
  14313. }
  14314. }
  14315. if s.IotEvents != nil {
  14316. if err := s.IotEvents.Validate(); err != nil {
  14317. invalidParams.AddNested("IotEvents", err.(request.ErrInvalidParams))
  14318. }
  14319. }
  14320. if s.Kinesis != nil {
  14321. if err := s.Kinesis.Validate(); err != nil {
  14322. invalidParams.AddNested("Kinesis", err.(request.ErrInvalidParams))
  14323. }
  14324. }
  14325. if s.Lambda != nil {
  14326. if err := s.Lambda.Validate(); err != nil {
  14327. invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams))
  14328. }
  14329. }
  14330. if s.Republish != nil {
  14331. if err := s.Republish.Validate(); err != nil {
  14332. invalidParams.AddNested("Republish", err.(request.ErrInvalidParams))
  14333. }
  14334. }
  14335. if s.S3 != nil {
  14336. if err := s.S3.Validate(); err != nil {
  14337. invalidParams.AddNested("S3", err.(request.ErrInvalidParams))
  14338. }
  14339. }
  14340. if s.Salesforce != nil {
  14341. if err := s.Salesforce.Validate(); err != nil {
  14342. invalidParams.AddNested("Salesforce", err.(request.ErrInvalidParams))
  14343. }
  14344. }
  14345. if s.Sns != nil {
  14346. if err := s.Sns.Validate(); err != nil {
  14347. invalidParams.AddNested("Sns", err.(request.ErrInvalidParams))
  14348. }
  14349. }
  14350. if s.Sqs != nil {
  14351. if err := s.Sqs.Validate(); err != nil {
  14352. invalidParams.AddNested("Sqs", err.(request.ErrInvalidParams))
  14353. }
  14354. }
  14355. if s.StepFunctions != nil {
  14356. if err := s.StepFunctions.Validate(); err != nil {
  14357. invalidParams.AddNested("StepFunctions", err.(request.ErrInvalidParams))
  14358. }
  14359. }
  14360. if invalidParams.Len() > 0 {
  14361. return invalidParams
  14362. }
  14363. return nil
  14364. }
  14365. // SetCloudwatchAlarm sets the CloudwatchAlarm field's value.
  14366. func (s *Action) SetCloudwatchAlarm(v *CloudwatchAlarmAction) *Action {
  14367. s.CloudwatchAlarm = v
  14368. return s
  14369. }
  14370. // SetCloudwatchMetric sets the CloudwatchMetric field's value.
  14371. func (s *Action) SetCloudwatchMetric(v *CloudwatchMetricAction) *Action {
  14372. s.CloudwatchMetric = v
  14373. return s
  14374. }
  14375. // SetDynamoDB sets the DynamoDB field's value.
  14376. func (s *Action) SetDynamoDB(v *DynamoDBAction) *Action {
  14377. s.DynamoDB = v
  14378. return s
  14379. }
  14380. // SetDynamoDBv2 sets the DynamoDBv2 field's value.
  14381. func (s *Action) SetDynamoDBv2(v *DynamoDBv2Action) *Action {
  14382. s.DynamoDBv2 = v
  14383. return s
  14384. }
  14385. // SetElasticsearch sets the Elasticsearch field's value.
  14386. func (s *Action) SetElasticsearch(v *ElasticsearchAction) *Action {
  14387. s.Elasticsearch = v
  14388. return s
  14389. }
  14390. // SetFirehose sets the Firehose field's value.
  14391. func (s *Action) SetFirehose(v *FirehoseAction) *Action {
  14392. s.Firehose = v
  14393. return s
  14394. }
  14395. // SetIotAnalytics sets the IotAnalytics field's value.
  14396. func (s *Action) SetIotAnalytics(v *IotAnalyticsAction) *Action {
  14397. s.IotAnalytics = v
  14398. return s
  14399. }
  14400. // SetIotEvents sets the IotEvents field's value.
  14401. func (s *Action) SetIotEvents(v *IotEventsAction) *Action {
  14402. s.IotEvents = v
  14403. return s
  14404. }
  14405. // SetKinesis sets the Kinesis field's value.
  14406. func (s *Action) SetKinesis(v *KinesisAction) *Action {
  14407. s.Kinesis = v
  14408. return s
  14409. }
  14410. // SetLambda sets the Lambda field's value.
  14411. func (s *Action) SetLambda(v *LambdaAction) *Action {
  14412. s.Lambda = v
  14413. return s
  14414. }
  14415. // SetRepublish sets the Republish field's value.
  14416. func (s *Action) SetRepublish(v *RepublishAction) *Action {
  14417. s.Republish = v
  14418. return s
  14419. }
  14420. // SetS3 sets the S3 field's value.
  14421. func (s *Action) SetS3(v *S3Action) *Action {
  14422. s.S3 = v
  14423. return s
  14424. }
  14425. // SetSalesforce sets the Salesforce field's value.
  14426. func (s *Action) SetSalesforce(v *SalesforceAction) *Action {
  14427. s.Salesforce = v
  14428. return s
  14429. }
  14430. // SetSns sets the Sns field's value.
  14431. func (s *Action) SetSns(v *SnsAction) *Action {
  14432. s.Sns = v
  14433. return s
  14434. }
  14435. // SetSqs sets the Sqs field's value.
  14436. func (s *Action) SetSqs(v *SqsAction) *Action {
  14437. s.Sqs = v
  14438. return s
  14439. }
  14440. // SetStepFunctions sets the StepFunctions field's value.
  14441. func (s *Action) SetStepFunctions(v *StepFunctionsAction) *Action {
  14442. s.StepFunctions = v
  14443. return s
  14444. }
  14445. // Information about an active Device Defender security profile behavior violation.
  14446. type ActiveViolation struct {
  14447. _ struct{} `type:"structure"`
  14448. // The behavior which is being violated.
  14449. Behavior *Behavior `locationName:"behavior" type:"structure"`
  14450. // The time the most recent violation occurred.
  14451. LastViolationTime *time.Time `locationName:"lastViolationTime" type:"timestamp"`
  14452. // The value of the metric (the measurement) which caused the most recent violation.
  14453. LastViolationValue *MetricValue `locationName:"lastViolationValue" type:"structure"`
  14454. // The security profile whose behavior is in violation.
  14455. SecurityProfileName *string `locationName:"securityProfileName" min:"1" type:"string"`
  14456. // The name of the thing responsible for the active violation.
  14457. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  14458. // The ID of the active violation.
  14459. ViolationId *string `locationName:"violationId" min:"1" type:"string"`
  14460. // The time the violation started.
  14461. ViolationStartTime *time.Time `locationName:"violationStartTime" type:"timestamp"`
  14462. }
  14463. // String returns the string representation
  14464. func (s ActiveViolation) String() string {
  14465. return awsutil.Prettify(s)
  14466. }
  14467. // GoString returns the string representation
  14468. func (s ActiveViolation) GoString() string {
  14469. return s.String()
  14470. }
  14471. // SetBehavior sets the Behavior field's value.
  14472. func (s *ActiveViolation) SetBehavior(v *Behavior) *ActiveViolation {
  14473. s.Behavior = v
  14474. return s
  14475. }
  14476. // SetLastViolationTime sets the LastViolationTime field's value.
  14477. func (s *ActiveViolation) SetLastViolationTime(v time.Time) *ActiveViolation {
  14478. s.LastViolationTime = &v
  14479. return s
  14480. }
  14481. // SetLastViolationValue sets the LastViolationValue field's value.
  14482. func (s *ActiveViolation) SetLastViolationValue(v *MetricValue) *ActiveViolation {
  14483. s.LastViolationValue = v
  14484. return s
  14485. }
  14486. // SetSecurityProfileName sets the SecurityProfileName field's value.
  14487. func (s *ActiveViolation) SetSecurityProfileName(v string) *ActiveViolation {
  14488. s.SecurityProfileName = &v
  14489. return s
  14490. }
  14491. // SetThingName sets the ThingName field's value.
  14492. func (s *ActiveViolation) SetThingName(v string) *ActiveViolation {
  14493. s.ThingName = &v
  14494. return s
  14495. }
  14496. // SetViolationId sets the ViolationId field's value.
  14497. func (s *ActiveViolation) SetViolationId(v string) *ActiveViolation {
  14498. s.ViolationId = &v
  14499. return s
  14500. }
  14501. // SetViolationStartTime sets the ViolationStartTime field's value.
  14502. func (s *ActiveViolation) SetViolationStartTime(v time.Time) *ActiveViolation {
  14503. s.ViolationStartTime = &v
  14504. return s
  14505. }
  14506. type AddThingToBillingGroupInput struct {
  14507. _ struct{} `type:"structure"`
  14508. // The ARN of the billing group.
  14509. BillingGroupArn *string `locationName:"billingGroupArn" type:"string"`
  14510. // The name of the billing group.
  14511. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  14512. // The ARN of the thing to be added to the billing group.
  14513. ThingArn *string `locationName:"thingArn" type:"string"`
  14514. // The name of the thing to be added to the billing group.
  14515. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  14516. }
  14517. // String returns the string representation
  14518. func (s AddThingToBillingGroupInput) String() string {
  14519. return awsutil.Prettify(s)
  14520. }
  14521. // GoString returns the string representation
  14522. func (s AddThingToBillingGroupInput) GoString() string {
  14523. return s.String()
  14524. }
  14525. // Validate inspects the fields of the type to determine if they are valid.
  14526. func (s *AddThingToBillingGroupInput) Validate() error {
  14527. invalidParams := request.ErrInvalidParams{Context: "AddThingToBillingGroupInput"}
  14528. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  14529. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  14530. }
  14531. if s.ThingName != nil && len(*s.ThingName) < 1 {
  14532. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  14533. }
  14534. if invalidParams.Len() > 0 {
  14535. return invalidParams
  14536. }
  14537. return nil
  14538. }
  14539. // SetBillingGroupArn sets the BillingGroupArn field's value.
  14540. func (s *AddThingToBillingGroupInput) SetBillingGroupArn(v string) *AddThingToBillingGroupInput {
  14541. s.BillingGroupArn = &v
  14542. return s
  14543. }
  14544. // SetBillingGroupName sets the BillingGroupName field's value.
  14545. func (s *AddThingToBillingGroupInput) SetBillingGroupName(v string) *AddThingToBillingGroupInput {
  14546. s.BillingGroupName = &v
  14547. return s
  14548. }
  14549. // SetThingArn sets the ThingArn field's value.
  14550. func (s *AddThingToBillingGroupInput) SetThingArn(v string) *AddThingToBillingGroupInput {
  14551. s.ThingArn = &v
  14552. return s
  14553. }
  14554. // SetThingName sets the ThingName field's value.
  14555. func (s *AddThingToBillingGroupInput) SetThingName(v string) *AddThingToBillingGroupInput {
  14556. s.ThingName = &v
  14557. return s
  14558. }
  14559. type AddThingToBillingGroupOutput struct {
  14560. _ struct{} `type:"structure"`
  14561. }
  14562. // String returns the string representation
  14563. func (s AddThingToBillingGroupOutput) String() string {
  14564. return awsutil.Prettify(s)
  14565. }
  14566. // GoString returns the string representation
  14567. func (s AddThingToBillingGroupOutput) GoString() string {
  14568. return s.String()
  14569. }
  14570. type AddThingToThingGroupInput struct {
  14571. _ struct{} `type:"structure"`
  14572. // Override dynamic thing groups with static thing groups when 10-group limit
  14573. // is reached. If a thing belongs to 10 thing groups, and one or more of those
  14574. // groups are dynamic thing groups, adding a thing to a static group removes
  14575. // the thing from the last dynamic group.
  14576. OverrideDynamicGroups *bool `locationName:"overrideDynamicGroups" type:"boolean"`
  14577. // The ARN of the thing to add to a group.
  14578. ThingArn *string `locationName:"thingArn" type:"string"`
  14579. // The ARN of the group to which you are adding a thing.
  14580. ThingGroupArn *string `locationName:"thingGroupArn" type:"string"`
  14581. // The name of the group to which you are adding a thing.
  14582. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  14583. // The name of the thing to add to a group.
  14584. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  14585. }
  14586. // String returns the string representation
  14587. func (s AddThingToThingGroupInput) String() string {
  14588. return awsutil.Prettify(s)
  14589. }
  14590. // GoString returns the string representation
  14591. func (s AddThingToThingGroupInput) GoString() string {
  14592. return s.String()
  14593. }
  14594. // Validate inspects the fields of the type to determine if they are valid.
  14595. func (s *AddThingToThingGroupInput) Validate() error {
  14596. invalidParams := request.ErrInvalidParams{Context: "AddThingToThingGroupInput"}
  14597. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  14598. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  14599. }
  14600. if s.ThingName != nil && len(*s.ThingName) < 1 {
  14601. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  14602. }
  14603. if invalidParams.Len() > 0 {
  14604. return invalidParams
  14605. }
  14606. return nil
  14607. }
  14608. // SetOverrideDynamicGroups sets the OverrideDynamicGroups field's value.
  14609. func (s *AddThingToThingGroupInput) SetOverrideDynamicGroups(v bool) *AddThingToThingGroupInput {
  14610. s.OverrideDynamicGroups = &v
  14611. return s
  14612. }
  14613. // SetThingArn sets the ThingArn field's value.
  14614. func (s *AddThingToThingGroupInput) SetThingArn(v string) *AddThingToThingGroupInput {
  14615. s.ThingArn = &v
  14616. return s
  14617. }
  14618. // SetThingGroupArn sets the ThingGroupArn field's value.
  14619. func (s *AddThingToThingGroupInput) SetThingGroupArn(v string) *AddThingToThingGroupInput {
  14620. s.ThingGroupArn = &v
  14621. return s
  14622. }
  14623. // SetThingGroupName sets the ThingGroupName field's value.
  14624. func (s *AddThingToThingGroupInput) SetThingGroupName(v string) *AddThingToThingGroupInput {
  14625. s.ThingGroupName = &v
  14626. return s
  14627. }
  14628. // SetThingName sets the ThingName field's value.
  14629. func (s *AddThingToThingGroupInput) SetThingName(v string) *AddThingToThingGroupInput {
  14630. s.ThingName = &v
  14631. return s
  14632. }
  14633. type AddThingToThingGroupOutput struct {
  14634. _ struct{} `type:"structure"`
  14635. }
  14636. // String returns the string representation
  14637. func (s AddThingToThingGroupOutput) String() string {
  14638. return awsutil.Prettify(s)
  14639. }
  14640. // GoString returns the string representation
  14641. func (s AddThingToThingGroupOutput) GoString() string {
  14642. return s.String()
  14643. }
  14644. // A structure containing the alert target ARN and the role ARN.
  14645. type AlertTarget struct {
  14646. _ struct{} `type:"structure"`
  14647. // The ARN of the notification target to which alerts are sent.
  14648. //
  14649. // AlertTargetArn is a required field
  14650. AlertTargetArn *string `locationName:"alertTargetArn" type:"string" required:"true"`
  14651. // The ARN of the role that grants permission to send alerts to the notification
  14652. // target.
  14653. //
  14654. // RoleArn is a required field
  14655. RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"`
  14656. }
  14657. // String returns the string representation
  14658. func (s AlertTarget) String() string {
  14659. return awsutil.Prettify(s)
  14660. }
  14661. // GoString returns the string representation
  14662. func (s AlertTarget) GoString() string {
  14663. return s.String()
  14664. }
  14665. // Validate inspects the fields of the type to determine if they are valid.
  14666. func (s *AlertTarget) Validate() error {
  14667. invalidParams := request.ErrInvalidParams{Context: "AlertTarget"}
  14668. if s.AlertTargetArn == nil {
  14669. invalidParams.Add(request.NewErrParamRequired("AlertTargetArn"))
  14670. }
  14671. if s.RoleArn == nil {
  14672. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  14673. }
  14674. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  14675. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  14676. }
  14677. if invalidParams.Len() > 0 {
  14678. return invalidParams
  14679. }
  14680. return nil
  14681. }
  14682. // SetAlertTargetArn sets the AlertTargetArn field's value.
  14683. func (s *AlertTarget) SetAlertTargetArn(v string) *AlertTarget {
  14684. s.AlertTargetArn = &v
  14685. return s
  14686. }
  14687. // SetRoleArn sets the RoleArn field's value.
  14688. func (s *AlertTarget) SetRoleArn(v string) *AlertTarget {
  14689. s.RoleArn = &v
  14690. return s
  14691. }
  14692. // Contains information that allowed the authorization.
  14693. type Allowed struct {
  14694. _ struct{} `type:"structure"`
  14695. // A list of policies that allowed the authentication.
  14696. Policies []*Policy `locationName:"policies" type:"list"`
  14697. }
  14698. // String returns the string representation
  14699. func (s Allowed) String() string {
  14700. return awsutil.Prettify(s)
  14701. }
  14702. // GoString returns the string representation
  14703. func (s Allowed) GoString() string {
  14704. return s.String()
  14705. }
  14706. // SetPolicies sets the Policies field's value.
  14707. func (s *Allowed) SetPolicies(v []*Policy) *Allowed {
  14708. s.Policies = v
  14709. return s
  14710. }
  14711. type AssociateTargetsWithJobInput struct {
  14712. _ struct{} `type:"structure"`
  14713. // An optional comment string describing why the job was associated with the
  14714. // targets.
  14715. Comment *string `locationName:"comment" type:"string"`
  14716. // The unique identifier you assigned to this job when it was created.
  14717. //
  14718. // JobId is a required field
  14719. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  14720. // A list of thing group ARNs that define the targets of the job.
  14721. //
  14722. // Targets is a required field
  14723. Targets []*string `locationName:"targets" min:"1" type:"list" required:"true"`
  14724. }
  14725. // String returns the string representation
  14726. func (s AssociateTargetsWithJobInput) String() string {
  14727. return awsutil.Prettify(s)
  14728. }
  14729. // GoString returns the string representation
  14730. func (s AssociateTargetsWithJobInput) GoString() string {
  14731. return s.String()
  14732. }
  14733. // Validate inspects the fields of the type to determine if they are valid.
  14734. func (s *AssociateTargetsWithJobInput) Validate() error {
  14735. invalidParams := request.ErrInvalidParams{Context: "AssociateTargetsWithJobInput"}
  14736. if s.JobId == nil {
  14737. invalidParams.Add(request.NewErrParamRequired("JobId"))
  14738. }
  14739. if s.JobId != nil && len(*s.JobId) < 1 {
  14740. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  14741. }
  14742. if s.Targets == nil {
  14743. invalidParams.Add(request.NewErrParamRequired("Targets"))
  14744. }
  14745. if s.Targets != nil && len(s.Targets) < 1 {
  14746. invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
  14747. }
  14748. if invalidParams.Len() > 0 {
  14749. return invalidParams
  14750. }
  14751. return nil
  14752. }
  14753. // SetComment sets the Comment field's value.
  14754. func (s *AssociateTargetsWithJobInput) SetComment(v string) *AssociateTargetsWithJobInput {
  14755. s.Comment = &v
  14756. return s
  14757. }
  14758. // SetJobId sets the JobId field's value.
  14759. func (s *AssociateTargetsWithJobInput) SetJobId(v string) *AssociateTargetsWithJobInput {
  14760. s.JobId = &v
  14761. return s
  14762. }
  14763. // SetTargets sets the Targets field's value.
  14764. func (s *AssociateTargetsWithJobInput) SetTargets(v []*string) *AssociateTargetsWithJobInput {
  14765. s.Targets = v
  14766. return s
  14767. }
  14768. type AssociateTargetsWithJobOutput struct {
  14769. _ struct{} `type:"structure"`
  14770. // A short text description of the job.
  14771. Description *string `locationName:"description" type:"string"`
  14772. // An ARN identifying the job.
  14773. JobArn *string `locationName:"jobArn" type:"string"`
  14774. // The unique identifier you assigned to this job when it was created.
  14775. JobId *string `locationName:"jobId" min:"1" type:"string"`
  14776. }
  14777. // String returns the string representation
  14778. func (s AssociateTargetsWithJobOutput) String() string {
  14779. return awsutil.Prettify(s)
  14780. }
  14781. // GoString returns the string representation
  14782. func (s AssociateTargetsWithJobOutput) GoString() string {
  14783. return s.String()
  14784. }
  14785. // SetDescription sets the Description field's value.
  14786. func (s *AssociateTargetsWithJobOutput) SetDescription(v string) *AssociateTargetsWithJobOutput {
  14787. s.Description = &v
  14788. return s
  14789. }
  14790. // SetJobArn sets the JobArn field's value.
  14791. func (s *AssociateTargetsWithJobOutput) SetJobArn(v string) *AssociateTargetsWithJobOutput {
  14792. s.JobArn = &v
  14793. return s
  14794. }
  14795. // SetJobId sets the JobId field's value.
  14796. func (s *AssociateTargetsWithJobOutput) SetJobId(v string) *AssociateTargetsWithJobOutput {
  14797. s.JobId = &v
  14798. return s
  14799. }
  14800. type AttachPolicyInput struct {
  14801. _ struct{} `type:"structure"`
  14802. // The name of the policy to attach.
  14803. //
  14804. // PolicyName is a required field
  14805. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  14806. // The identity (https://docs.aws.amazon.com/iot/latest/developerguide/iot-security-identity.html)
  14807. // to which the policy is attached.
  14808. //
  14809. // Target is a required field
  14810. Target *string `locationName:"target" type:"string" required:"true"`
  14811. }
  14812. // String returns the string representation
  14813. func (s AttachPolicyInput) String() string {
  14814. return awsutil.Prettify(s)
  14815. }
  14816. // GoString returns the string representation
  14817. func (s AttachPolicyInput) GoString() string {
  14818. return s.String()
  14819. }
  14820. // Validate inspects the fields of the type to determine if they are valid.
  14821. func (s *AttachPolicyInput) Validate() error {
  14822. invalidParams := request.ErrInvalidParams{Context: "AttachPolicyInput"}
  14823. if s.PolicyName == nil {
  14824. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  14825. }
  14826. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  14827. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  14828. }
  14829. if s.Target == nil {
  14830. invalidParams.Add(request.NewErrParamRequired("Target"))
  14831. }
  14832. if invalidParams.Len() > 0 {
  14833. return invalidParams
  14834. }
  14835. return nil
  14836. }
  14837. // SetPolicyName sets the PolicyName field's value.
  14838. func (s *AttachPolicyInput) SetPolicyName(v string) *AttachPolicyInput {
  14839. s.PolicyName = &v
  14840. return s
  14841. }
  14842. // SetTarget sets the Target field's value.
  14843. func (s *AttachPolicyInput) SetTarget(v string) *AttachPolicyInput {
  14844. s.Target = &v
  14845. return s
  14846. }
  14847. type AttachPolicyOutput struct {
  14848. _ struct{} `type:"structure"`
  14849. }
  14850. // String returns the string representation
  14851. func (s AttachPolicyOutput) String() string {
  14852. return awsutil.Prettify(s)
  14853. }
  14854. // GoString returns the string representation
  14855. func (s AttachPolicyOutput) GoString() string {
  14856. return s.String()
  14857. }
  14858. // The input for the AttachPrincipalPolicy operation.
  14859. type AttachPrincipalPolicyInput struct {
  14860. _ struct{} `type:"structure"`
  14861. // The policy name.
  14862. //
  14863. // PolicyName is a required field
  14864. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  14865. // The principal, which can be a certificate ARN (as returned from the CreateCertificate
  14866. // operation) or an Amazon Cognito ID.
  14867. //
  14868. // Principal is a required field
  14869. Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"`
  14870. }
  14871. // String returns the string representation
  14872. func (s AttachPrincipalPolicyInput) String() string {
  14873. return awsutil.Prettify(s)
  14874. }
  14875. // GoString returns the string representation
  14876. func (s AttachPrincipalPolicyInput) GoString() string {
  14877. return s.String()
  14878. }
  14879. // Validate inspects the fields of the type to determine if they are valid.
  14880. func (s *AttachPrincipalPolicyInput) Validate() error {
  14881. invalidParams := request.ErrInvalidParams{Context: "AttachPrincipalPolicyInput"}
  14882. if s.PolicyName == nil {
  14883. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  14884. }
  14885. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  14886. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  14887. }
  14888. if s.Principal == nil {
  14889. invalidParams.Add(request.NewErrParamRequired("Principal"))
  14890. }
  14891. if invalidParams.Len() > 0 {
  14892. return invalidParams
  14893. }
  14894. return nil
  14895. }
  14896. // SetPolicyName sets the PolicyName field's value.
  14897. func (s *AttachPrincipalPolicyInput) SetPolicyName(v string) *AttachPrincipalPolicyInput {
  14898. s.PolicyName = &v
  14899. return s
  14900. }
  14901. // SetPrincipal sets the Principal field's value.
  14902. func (s *AttachPrincipalPolicyInput) SetPrincipal(v string) *AttachPrincipalPolicyInput {
  14903. s.Principal = &v
  14904. return s
  14905. }
  14906. type AttachPrincipalPolicyOutput struct {
  14907. _ struct{} `type:"structure"`
  14908. }
  14909. // String returns the string representation
  14910. func (s AttachPrincipalPolicyOutput) String() string {
  14911. return awsutil.Prettify(s)
  14912. }
  14913. // GoString returns the string representation
  14914. func (s AttachPrincipalPolicyOutput) GoString() string {
  14915. return s.String()
  14916. }
  14917. type AttachSecurityProfileInput struct {
  14918. _ struct{} `type:"structure"`
  14919. // The security profile that is attached.
  14920. //
  14921. // SecurityProfileName is a required field
  14922. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  14923. // The ARN of the target (thing group) to which the security profile is attached.
  14924. //
  14925. // SecurityProfileTargetArn is a required field
  14926. SecurityProfileTargetArn *string `location:"querystring" locationName:"securityProfileTargetArn" type:"string" required:"true"`
  14927. }
  14928. // String returns the string representation
  14929. func (s AttachSecurityProfileInput) String() string {
  14930. return awsutil.Prettify(s)
  14931. }
  14932. // GoString returns the string representation
  14933. func (s AttachSecurityProfileInput) GoString() string {
  14934. return s.String()
  14935. }
  14936. // Validate inspects the fields of the type to determine if they are valid.
  14937. func (s *AttachSecurityProfileInput) Validate() error {
  14938. invalidParams := request.ErrInvalidParams{Context: "AttachSecurityProfileInput"}
  14939. if s.SecurityProfileName == nil {
  14940. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  14941. }
  14942. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  14943. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  14944. }
  14945. if s.SecurityProfileTargetArn == nil {
  14946. invalidParams.Add(request.NewErrParamRequired("SecurityProfileTargetArn"))
  14947. }
  14948. if invalidParams.Len() > 0 {
  14949. return invalidParams
  14950. }
  14951. return nil
  14952. }
  14953. // SetSecurityProfileName sets the SecurityProfileName field's value.
  14954. func (s *AttachSecurityProfileInput) SetSecurityProfileName(v string) *AttachSecurityProfileInput {
  14955. s.SecurityProfileName = &v
  14956. return s
  14957. }
  14958. // SetSecurityProfileTargetArn sets the SecurityProfileTargetArn field's value.
  14959. func (s *AttachSecurityProfileInput) SetSecurityProfileTargetArn(v string) *AttachSecurityProfileInput {
  14960. s.SecurityProfileTargetArn = &v
  14961. return s
  14962. }
  14963. type AttachSecurityProfileOutput struct {
  14964. _ struct{} `type:"structure"`
  14965. }
  14966. // String returns the string representation
  14967. func (s AttachSecurityProfileOutput) String() string {
  14968. return awsutil.Prettify(s)
  14969. }
  14970. // GoString returns the string representation
  14971. func (s AttachSecurityProfileOutput) GoString() string {
  14972. return s.String()
  14973. }
  14974. // The input for the AttachThingPrincipal operation.
  14975. type AttachThingPrincipalInput struct {
  14976. _ struct{} `type:"structure"`
  14977. // The principal, such as a certificate or other credential.
  14978. //
  14979. // Principal is a required field
  14980. Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"`
  14981. // The name of the thing.
  14982. //
  14983. // ThingName is a required field
  14984. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  14985. }
  14986. // String returns the string representation
  14987. func (s AttachThingPrincipalInput) String() string {
  14988. return awsutil.Prettify(s)
  14989. }
  14990. // GoString returns the string representation
  14991. func (s AttachThingPrincipalInput) GoString() string {
  14992. return s.String()
  14993. }
  14994. // Validate inspects the fields of the type to determine if they are valid.
  14995. func (s *AttachThingPrincipalInput) Validate() error {
  14996. invalidParams := request.ErrInvalidParams{Context: "AttachThingPrincipalInput"}
  14997. if s.Principal == nil {
  14998. invalidParams.Add(request.NewErrParamRequired("Principal"))
  14999. }
  15000. if s.ThingName == nil {
  15001. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  15002. }
  15003. if s.ThingName != nil && len(*s.ThingName) < 1 {
  15004. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  15005. }
  15006. if invalidParams.Len() > 0 {
  15007. return invalidParams
  15008. }
  15009. return nil
  15010. }
  15011. // SetPrincipal sets the Principal field's value.
  15012. func (s *AttachThingPrincipalInput) SetPrincipal(v string) *AttachThingPrincipalInput {
  15013. s.Principal = &v
  15014. return s
  15015. }
  15016. // SetThingName sets the ThingName field's value.
  15017. func (s *AttachThingPrincipalInput) SetThingName(v string) *AttachThingPrincipalInput {
  15018. s.ThingName = &v
  15019. return s
  15020. }
  15021. // The output from the AttachThingPrincipal operation.
  15022. type AttachThingPrincipalOutput struct {
  15023. _ struct{} `type:"structure"`
  15024. }
  15025. // String returns the string representation
  15026. func (s AttachThingPrincipalOutput) String() string {
  15027. return awsutil.Prettify(s)
  15028. }
  15029. // GoString returns the string representation
  15030. func (s AttachThingPrincipalOutput) GoString() string {
  15031. return s.String()
  15032. }
  15033. // The attribute payload.
  15034. type AttributePayload struct {
  15035. _ struct{} `type:"structure"`
  15036. // A JSON string containing up to three key-value pair in JSON format. For example:
  15037. //
  15038. // {\"attributes\":{\"string1\":\"string2\"}}
  15039. Attributes map[string]*string `locationName:"attributes" type:"map"`
  15040. // Specifies whether the list of attributes provided in the AttributePayload
  15041. // is merged with the attributes stored in the registry, instead of overwriting
  15042. // them.
  15043. //
  15044. // To remove an attribute, call UpdateThing with an empty attribute value.
  15045. //
  15046. // The merge attribute is only valid when calling UpdateThing.
  15047. Merge *bool `locationName:"merge" type:"boolean"`
  15048. }
  15049. // String returns the string representation
  15050. func (s AttributePayload) String() string {
  15051. return awsutil.Prettify(s)
  15052. }
  15053. // GoString returns the string representation
  15054. func (s AttributePayload) GoString() string {
  15055. return s.String()
  15056. }
  15057. // SetAttributes sets the Attributes field's value.
  15058. func (s *AttributePayload) SetAttributes(v map[string]*string) *AttributePayload {
  15059. s.Attributes = v
  15060. return s
  15061. }
  15062. // SetMerge sets the Merge field's value.
  15063. func (s *AttributePayload) SetMerge(v bool) *AttributePayload {
  15064. s.Merge = &v
  15065. return s
  15066. }
  15067. // Which audit checks are enabled and disabled for this account.
  15068. type AuditCheckConfiguration struct {
  15069. _ struct{} `type:"structure"`
  15070. // True if this audit check is enabled for this account.
  15071. Enabled *bool `locationName:"enabled" type:"boolean"`
  15072. }
  15073. // String returns the string representation
  15074. func (s AuditCheckConfiguration) String() string {
  15075. return awsutil.Prettify(s)
  15076. }
  15077. // GoString returns the string representation
  15078. func (s AuditCheckConfiguration) GoString() string {
  15079. return s.String()
  15080. }
  15081. // SetEnabled sets the Enabled field's value.
  15082. func (s *AuditCheckConfiguration) SetEnabled(v bool) *AuditCheckConfiguration {
  15083. s.Enabled = &v
  15084. return s
  15085. }
  15086. // Information about the audit check.
  15087. type AuditCheckDetails struct {
  15088. _ struct{} `type:"structure"`
  15089. // True if the check completed and found all resources compliant.
  15090. CheckCompliant *bool `locationName:"checkCompliant" type:"boolean"`
  15091. // The completion status of this check, one of "IN_PROGRESS", "WAITING_FOR_DATA_COLLECTION",
  15092. // "CANCELED", "COMPLETED_COMPLIANT", "COMPLETED_NON_COMPLIANT", or "FAILED".
  15093. CheckRunStatus *string `locationName:"checkRunStatus" type:"string" enum:"AuditCheckRunStatus"`
  15094. // The code of any error encountered when performing this check during this
  15095. // audit. One of "INSUFFICIENT_PERMISSIONS", or "AUDIT_CHECK_DISABLED".
  15096. ErrorCode *string `locationName:"errorCode" type:"string"`
  15097. // The message associated with any error encountered when performing this check
  15098. // during this audit.
  15099. Message *string `locationName:"message" type:"string"`
  15100. // The number of resources that the check found non-compliant.
  15101. NonCompliantResourcesCount *int64 `locationName:"nonCompliantResourcesCount" type:"long"`
  15102. // The number of resources on which the check was performed.
  15103. TotalResourcesCount *int64 `locationName:"totalResourcesCount" type:"long"`
  15104. }
  15105. // String returns the string representation
  15106. func (s AuditCheckDetails) String() string {
  15107. return awsutil.Prettify(s)
  15108. }
  15109. // GoString returns the string representation
  15110. func (s AuditCheckDetails) GoString() string {
  15111. return s.String()
  15112. }
  15113. // SetCheckCompliant sets the CheckCompliant field's value.
  15114. func (s *AuditCheckDetails) SetCheckCompliant(v bool) *AuditCheckDetails {
  15115. s.CheckCompliant = &v
  15116. return s
  15117. }
  15118. // SetCheckRunStatus sets the CheckRunStatus field's value.
  15119. func (s *AuditCheckDetails) SetCheckRunStatus(v string) *AuditCheckDetails {
  15120. s.CheckRunStatus = &v
  15121. return s
  15122. }
  15123. // SetErrorCode sets the ErrorCode field's value.
  15124. func (s *AuditCheckDetails) SetErrorCode(v string) *AuditCheckDetails {
  15125. s.ErrorCode = &v
  15126. return s
  15127. }
  15128. // SetMessage sets the Message field's value.
  15129. func (s *AuditCheckDetails) SetMessage(v string) *AuditCheckDetails {
  15130. s.Message = &v
  15131. return s
  15132. }
  15133. // SetNonCompliantResourcesCount sets the NonCompliantResourcesCount field's value.
  15134. func (s *AuditCheckDetails) SetNonCompliantResourcesCount(v int64) *AuditCheckDetails {
  15135. s.NonCompliantResourcesCount = &v
  15136. return s
  15137. }
  15138. // SetTotalResourcesCount sets the TotalResourcesCount field's value.
  15139. func (s *AuditCheckDetails) SetTotalResourcesCount(v int64) *AuditCheckDetails {
  15140. s.TotalResourcesCount = &v
  15141. return s
  15142. }
  15143. // The findings (results) of the audit.
  15144. type AuditFinding struct {
  15145. _ struct{} `type:"structure"`
  15146. // The audit check that generated this result.
  15147. CheckName *string `locationName:"checkName" type:"string"`
  15148. // The time the result (finding) was discovered.
  15149. FindingTime *time.Time `locationName:"findingTime" type:"timestamp"`
  15150. // The resource that was found to be non-compliant with the audit check.
  15151. NonCompliantResource *NonCompliantResource `locationName:"nonCompliantResource" type:"structure"`
  15152. // The reason the resource was non-compliant.
  15153. ReasonForNonCompliance *string `locationName:"reasonForNonCompliance" type:"string"`
  15154. // A code which indicates the reason that the resource was non-compliant.
  15155. ReasonForNonComplianceCode *string `locationName:"reasonForNonComplianceCode" type:"string"`
  15156. // The list of related resources.
  15157. RelatedResources []*RelatedResource `locationName:"relatedResources" type:"list"`
  15158. // The severity of the result (finding).
  15159. Severity *string `locationName:"severity" type:"string" enum:"AuditFindingSeverity"`
  15160. // The ID of the audit that generated this result (finding)
  15161. TaskId *string `locationName:"taskId" min:"1" type:"string"`
  15162. // The time the audit started.
  15163. TaskStartTime *time.Time `locationName:"taskStartTime" type:"timestamp"`
  15164. }
  15165. // String returns the string representation
  15166. func (s AuditFinding) String() string {
  15167. return awsutil.Prettify(s)
  15168. }
  15169. // GoString returns the string representation
  15170. func (s AuditFinding) GoString() string {
  15171. return s.String()
  15172. }
  15173. // SetCheckName sets the CheckName field's value.
  15174. func (s *AuditFinding) SetCheckName(v string) *AuditFinding {
  15175. s.CheckName = &v
  15176. return s
  15177. }
  15178. // SetFindingTime sets the FindingTime field's value.
  15179. func (s *AuditFinding) SetFindingTime(v time.Time) *AuditFinding {
  15180. s.FindingTime = &v
  15181. return s
  15182. }
  15183. // SetNonCompliantResource sets the NonCompliantResource field's value.
  15184. func (s *AuditFinding) SetNonCompliantResource(v *NonCompliantResource) *AuditFinding {
  15185. s.NonCompliantResource = v
  15186. return s
  15187. }
  15188. // SetReasonForNonCompliance sets the ReasonForNonCompliance field's value.
  15189. func (s *AuditFinding) SetReasonForNonCompliance(v string) *AuditFinding {
  15190. s.ReasonForNonCompliance = &v
  15191. return s
  15192. }
  15193. // SetReasonForNonComplianceCode sets the ReasonForNonComplianceCode field's value.
  15194. func (s *AuditFinding) SetReasonForNonComplianceCode(v string) *AuditFinding {
  15195. s.ReasonForNonComplianceCode = &v
  15196. return s
  15197. }
  15198. // SetRelatedResources sets the RelatedResources field's value.
  15199. func (s *AuditFinding) SetRelatedResources(v []*RelatedResource) *AuditFinding {
  15200. s.RelatedResources = v
  15201. return s
  15202. }
  15203. // SetSeverity sets the Severity field's value.
  15204. func (s *AuditFinding) SetSeverity(v string) *AuditFinding {
  15205. s.Severity = &v
  15206. return s
  15207. }
  15208. // SetTaskId sets the TaskId field's value.
  15209. func (s *AuditFinding) SetTaskId(v string) *AuditFinding {
  15210. s.TaskId = &v
  15211. return s
  15212. }
  15213. // SetTaskStartTime sets the TaskStartTime field's value.
  15214. func (s *AuditFinding) SetTaskStartTime(v time.Time) *AuditFinding {
  15215. s.TaskStartTime = &v
  15216. return s
  15217. }
  15218. // Information about the targets to which audit notifications are sent.
  15219. type AuditNotificationTarget struct {
  15220. _ struct{} `type:"structure"`
  15221. // True if notifications to the target are enabled.
  15222. Enabled *bool `locationName:"enabled" type:"boolean"`
  15223. // The ARN of the role that grants permission to send notifications to the target.
  15224. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  15225. // The ARN of the target (SNS topic) to which audit notifications are sent.
  15226. TargetArn *string `locationName:"targetArn" type:"string"`
  15227. }
  15228. // String returns the string representation
  15229. func (s AuditNotificationTarget) String() string {
  15230. return awsutil.Prettify(s)
  15231. }
  15232. // GoString returns the string representation
  15233. func (s AuditNotificationTarget) GoString() string {
  15234. return s.String()
  15235. }
  15236. // Validate inspects the fields of the type to determine if they are valid.
  15237. func (s *AuditNotificationTarget) Validate() error {
  15238. invalidParams := request.ErrInvalidParams{Context: "AuditNotificationTarget"}
  15239. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  15240. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  15241. }
  15242. if invalidParams.Len() > 0 {
  15243. return invalidParams
  15244. }
  15245. return nil
  15246. }
  15247. // SetEnabled sets the Enabled field's value.
  15248. func (s *AuditNotificationTarget) SetEnabled(v bool) *AuditNotificationTarget {
  15249. s.Enabled = &v
  15250. return s
  15251. }
  15252. // SetRoleArn sets the RoleArn field's value.
  15253. func (s *AuditNotificationTarget) SetRoleArn(v string) *AuditNotificationTarget {
  15254. s.RoleArn = &v
  15255. return s
  15256. }
  15257. // SetTargetArn sets the TargetArn field's value.
  15258. func (s *AuditNotificationTarget) SetTargetArn(v string) *AuditNotificationTarget {
  15259. s.TargetArn = &v
  15260. return s
  15261. }
  15262. // The audits that were performed.
  15263. type AuditTaskMetadata struct {
  15264. _ struct{} `type:"structure"`
  15265. // The ID of this audit.
  15266. TaskId *string `locationName:"taskId" min:"1" type:"string"`
  15267. // The status of this audit: one of "IN_PROGRESS", "COMPLETED", "FAILED" or
  15268. // "CANCELED".
  15269. TaskStatus *string `locationName:"taskStatus" type:"string" enum:"AuditTaskStatus"`
  15270. // The type of this audit: one of "ON_DEMAND_AUDIT_TASK" or "SCHEDULED_AUDIT_TASK".
  15271. TaskType *string `locationName:"taskType" type:"string" enum:"AuditTaskType"`
  15272. }
  15273. // String returns the string representation
  15274. func (s AuditTaskMetadata) String() string {
  15275. return awsutil.Prettify(s)
  15276. }
  15277. // GoString returns the string representation
  15278. func (s AuditTaskMetadata) GoString() string {
  15279. return s.String()
  15280. }
  15281. // SetTaskId sets the TaskId field's value.
  15282. func (s *AuditTaskMetadata) SetTaskId(v string) *AuditTaskMetadata {
  15283. s.TaskId = &v
  15284. return s
  15285. }
  15286. // SetTaskStatus sets the TaskStatus field's value.
  15287. func (s *AuditTaskMetadata) SetTaskStatus(v string) *AuditTaskMetadata {
  15288. s.TaskStatus = &v
  15289. return s
  15290. }
  15291. // SetTaskType sets the TaskType field's value.
  15292. func (s *AuditTaskMetadata) SetTaskType(v string) *AuditTaskMetadata {
  15293. s.TaskType = &v
  15294. return s
  15295. }
  15296. // A collection of authorization information.
  15297. type AuthInfo struct {
  15298. _ struct{} `type:"structure"`
  15299. // The type of action for which the principal is being authorized.
  15300. ActionType *string `locationName:"actionType" type:"string" enum:"ActionType"`
  15301. // The resources for which the principal is being authorized to perform the
  15302. // specified action.
  15303. Resources []*string `locationName:"resources" type:"list"`
  15304. }
  15305. // String returns the string representation
  15306. func (s AuthInfo) String() string {
  15307. return awsutil.Prettify(s)
  15308. }
  15309. // GoString returns the string representation
  15310. func (s AuthInfo) GoString() string {
  15311. return s.String()
  15312. }
  15313. // SetActionType sets the ActionType field's value.
  15314. func (s *AuthInfo) SetActionType(v string) *AuthInfo {
  15315. s.ActionType = &v
  15316. return s
  15317. }
  15318. // SetResources sets the Resources field's value.
  15319. func (s *AuthInfo) SetResources(v []*string) *AuthInfo {
  15320. s.Resources = v
  15321. return s
  15322. }
  15323. // The authorizer result.
  15324. type AuthResult struct {
  15325. _ struct{} `type:"structure"`
  15326. // The policies and statements that allowed the specified action.
  15327. Allowed *Allowed `locationName:"allowed" type:"structure"`
  15328. // The final authorization decision of this scenario. Multiple statements are
  15329. // taken into account when determining the authorization decision. An explicit
  15330. // deny statement can override multiple allow statements.
  15331. AuthDecision *string `locationName:"authDecision" type:"string" enum:"AuthDecision"`
  15332. // Authorization information.
  15333. AuthInfo *AuthInfo `locationName:"authInfo" type:"structure"`
  15334. // The policies and statements that denied the specified action.
  15335. Denied *Denied `locationName:"denied" type:"structure"`
  15336. // Contains any missing context values found while evaluating policy.
  15337. MissingContextValues []*string `locationName:"missingContextValues" type:"list"`
  15338. }
  15339. // String returns the string representation
  15340. func (s AuthResult) String() string {
  15341. return awsutil.Prettify(s)
  15342. }
  15343. // GoString returns the string representation
  15344. func (s AuthResult) GoString() string {
  15345. return s.String()
  15346. }
  15347. // SetAllowed sets the Allowed field's value.
  15348. func (s *AuthResult) SetAllowed(v *Allowed) *AuthResult {
  15349. s.Allowed = v
  15350. return s
  15351. }
  15352. // SetAuthDecision sets the AuthDecision field's value.
  15353. func (s *AuthResult) SetAuthDecision(v string) *AuthResult {
  15354. s.AuthDecision = &v
  15355. return s
  15356. }
  15357. // SetAuthInfo sets the AuthInfo field's value.
  15358. func (s *AuthResult) SetAuthInfo(v *AuthInfo) *AuthResult {
  15359. s.AuthInfo = v
  15360. return s
  15361. }
  15362. // SetDenied sets the Denied field's value.
  15363. func (s *AuthResult) SetDenied(v *Denied) *AuthResult {
  15364. s.Denied = v
  15365. return s
  15366. }
  15367. // SetMissingContextValues sets the MissingContextValues field's value.
  15368. func (s *AuthResult) SetMissingContextValues(v []*string) *AuthResult {
  15369. s.MissingContextValues = v
  15370. return s
  15371. }
  15372. // The authorizer description.
  15373. type AuthorizerDescription struct {
  15374. _ struct{} `type:"structure"`
  15375. // The authorizer ARN.
  15376. AuthorizerArn *string `locationName:"authorizerArn" type:"string"`
  15377. // The authorizer's Lambda function ARN.
  15378. AuthorizerFunctionArn *string `locationName:"authorizerFunctionArn" type:"string"`
  15379. // The authorizer name.
  15380. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string"`
  15381. // The UNIX timestamp of when the authorizer was created.
  15382. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  15383. // The UNIX timestamp of when the authorizer was last updated.
  15384. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  15385. // The status of the authorizer.
  15386. Status *string `locationName:"status" type:"string" enum:"AuthorizerStatus"`
  15387. // The key used to extract the token from the HTTP headers.
  15388. TokenKeyName *string `locationName:"tokenKeyName" min:"1" type:"string"`
  15389. // The public keys used to validate the token signature returned by your custom
  15390. // authentication service.
  15391. TokenSigningPublicKeys map[string]*string `locationName:"tokenSigningPublicKeys" type:"map"`
  15392. }
  15393. // String returns the string representation
  15394. func (s AuthorizerDescription) String() string {
  15395. return awsutil.Prettify(s)
  15396. }
  15397. // GoString returns the string representation
  15398. func (s AuthorizerDescription) GoString() string {
  15399. return s.String()
  15400. }
  15401. // SetAuthorizerArn sets the AuthorizerArn field's value.
  15402. func (s *AuthorizerDescription) SetAuthorizerArn(v string) *AuthorizerDescription {
  15403. s.AuthorizerArn = &v
  15404. return s
  15405. }
  15406. // SetAuthorizerFunctionArn sets the AuthorizerFunctionArn field's value.
  15407. func (s *AuthorizerDescription) SetAuthorizerFunctionArn(v string) *AuthorizerDescription {
  15408. s.AuthorizerFunctionArn = &v
  15409. return s
  15410. }
  15411. // SetAuthorizerName sets the AuthorizerName field's value.
  15412. func (s *AuthorizerDescription) SetAuthorizerName(v string) *AuthorizerDescription {
  15413. s.AuthorizerName = &v
  15414. return s
  15415. }
  15416. // SetCreationDate sets the CreationDate field's value.
  15417. func (s *AuthorizerDescription) SetCreationDate(v time.Time) *AuthorizerDescription {
  15418. s.CreationDate = &v
  15419. return s
  15420. }
  15421. // SetLastModifiedDate sets the LastModifiedDate field's value.
  15422. func (s *AuthorizerDescription) SetLastModifiedDate(v time.Time) *AuthorizerDescription {
  15423. s.LastModifiedDate = &v
  15424. return s
  15425. }
  15426. // SetStatus sets the Status field's value.
  15427. func (s *AuthorizerDescription) SetStatus(v string) *AuthorizerDescription {
  15428. s.Status = &v
  15429. return s
  15430. }
  15431. // SetTokenKeyName sets the TokenKeyName field's value.
  15432. func (s *AuthorizerDescription) SetTokenKeyName(v string) *AuthorizerDescription {
  15433. s.TokenKeyName = &v
  15434. return s
  15435. }
  15436. // SetTokenSigningPublicKeys sets the TokenSigningPublicKeys field's value.
  15437. func (s *AuthorizerDescription) SetTokenSigningPublicKeys(v map[string]*string) *AuthorizerDescription {
  15438. s.TokenSigningPublicKeys = v
  15439. return s
  15440. }
  15441. // The authorizer summary.
  15442. type AuthorizerSummary struct {
  15443. _ struct{} `type:"structure"`
  15444. // The authorizer ARN.
  15445. AuthorizerArn *string `locationName:"authorizerArn" type:"string"`
  15446. // The authorizer name.
  15447. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string"`
  15448. }
  15449. // String returns the string representation
  15450. func (s AuthorizerSummary) String() string {
  15451. return awsutil.Prettify(s)
  15452. }
  15453. // GoString returns the string representation
  15454. func (s AuthorizerSummary) GoString() string {
  15455. return s.String()
  15456. }
  15457. // SetAuthorizerArn sets the AuthorizerArn field's value.
  15458. func (s *AuthorizerSummary) SetAuthorizerArn(v string) *AuthorizerSummary {
  15459. s.AuthorizerArn = &v
  15460. return s
  15461. }
  15462. // SetAuthorizerName sets the AuthorizerName field's value.
  15463. func (s *AuthorizerSummary) SetAuthorizerName(v string) *AuthorizerSummary {
  15464. s.AuthorizerName = &v
  15465. return s
  15466. }
  15467. // Configuration for the rollout of OTA updates.
  15468. type AwsJobExecutionsRolloutConfig struct {
  15469. _ struct{} `type:"structure"`
  15470. // The maximum number of OTA update job executions started per minute.
  15471. MaximumPerMinute *int64 `locationName:"maximumPerMinute" min:"1" type:"integer"`
  15472. }
  15473. // String returns the string representation
  15474. func (s AwsJobExecutionsRolloutConfig) String() string {
  15475. return awsutil.Prettify(s)
  15476. }
  15477. // GoString returns the string representation
  15478. func (s AwsJobExecutionsRolloutConfig) GoString() string {
  15479. return s.String()
  15480. }
  15481. // Validate inspects the fields of the type to determine if they are valid.
  15482. func (s *AwsJobExecutionsRolloutConfig) Validate() error {
  15483. invalidParams := request.ErrInvalidParams{Context: "AwsJobExecutionsRolloutConfig"}
  15484. if s.MaximumPerMinute != nil && *s.MaximumPerMinute < 1 {
  15485. invalidParams.Add(request.NewErrParamMinValue("MaximumPerMinute", 1))
  15486. }
  15487. if invalidParams.Len() > 0 {
  15488. return invalidParams
  15489. }
  15490. return nil
  15491. }
  15492. // SetMaximumPerMinute sets the MaximumPerMinute field's value.
  15493. func (s *AwsJobExecutionsRolloutConfig) SetMaximumPerMinute(v int64) *AwsJobExecutionsRolloutConfig {
  15494. s.MaximumPerMinute = &v
  15495. return s
  15496. }
  15497. // A Device Defender security profile behavior.
  15498. type Behavior struct {
  15499. _ struct{} `type:"structure"`
  15500. // The criteria that determine if a device is behaving normally in regard to
  15501. // the metric.
  15502. Criteria *BehaviorCriteria `locationName:"criteria" type:"structure"`
  15503. // What is measured by the behavior.
  15504. Metric *string `locationName:"metric" type:"string"`
  15505. // The name you have given to the behavior.
  15506. //
  15507. // Name is a required field
  15508. Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  15509. }
  15510. // String returns the string representation
  15511. func (s Behavior) String() string {
  15512. return awsutil.Prettify(s)
  15513. }
  15514. // GoString returns the string representation
  15515. func (s Behavior) GoString() string {
  15516. return s.String()
  15517. }
  15518. // Validate inspects the fields of the type to determine if they are valid.
  15519. func (s *Behavior) Validate() error {
  15520. invalidParams := request.ErrInvalidParams{Context: "Behavior"}
  15521. if s.Name == nil {
  15522. invalidParams.Add(request.NewErrParamRequired("Name"))
  15523. }
  15524. if s.Name != nil && len(*s.Name) < 1 {
  15525. invalidParams.Add(request.NewErrParamMinLen("Name", 1))
  15526. }
  15527. if invalidParams.Len() > 0 {
  15528. return invalidParams
  15529. }
  15530. return nil
  15531. }
  15532. // SetCriteria sets the Criteria field's value.
  15533. func (s *Behavior) SetCriteria(v *BehaviorCriteria) *Behavior {
  15534. s.Criteria = v
  15535. return s
  15536. }
  15537. // SetMetric sets the Metric field's value.
  15538. func (s *Behavior) SetMetric(v string) *Behavior {
  15539. s.Metric = &v
  15540. return s
  15541. }
  15542. // SetName sets the Name field's value.
  15543. func (s *Behavior) SetName(v string) *Behavior {
  15544. s.Name = &v
  15545. return s
  15546. }
  15547. // The criteria by which the behavior is determined to be normal.
  15548. type BehaviorCriteria struct {
  15549. _ struct{} `type:"structure"`
  15550. // The operator that relates the thing measured (metric) to the criteria (value).
  15551. ComparisonOperator *string `locationName:"comparisonOperator" type:"string" enum:"ComparisonOperator"`
  15552. // Use this to specify the period of time over which the behavior is evaluated,
  15553. // for those criteria which have a time dimension (for example, NUM_MESSAGES_SENT).
  15554. DurationSeconds *int64 `locationName:"durationSeconds" type:"integer"`
  15555. // The value to be compared with the metric.
  15556. Value *MetricValue `locationName:"value" type:"structure"`
  15557. }
  15558. // String returns the string representation
  15559. func (s BehaviorCriteria) String() string {
  15560. return awsutil.Prettify(s)
  15561. }
  15562. // GoString returns the string representation
  15563. func (s BehaviorCriteria) GoString() string {
  15564. return s.String()
  15565. }
  15566. // SetComparisonOperator sets the ComparisonOperator field's value.
  15567. func (s *BehaviorCriteria) SetComparisonOperator(v string) *BehaviorCriteria {
  15568. s.ComparisonOperator = &v
  15569. return s
  15570. }
  15571. // SetDurationSeconds sets the DurationSeconds field's value.
  15572. func (s *BehaviorCriteria) SetDurationSeconds(v int64) *BehaviorCriteria {
  15573. s.DurationSeconds = &v
  15574. return s
  15575. }
  15576. // SetValue sets the Value field's value.
  15577. func (s *BehaviorCriteria) SetValue(v *MetricValue) *BehaviorCriteria {
  15578. s.Value = v
  15579. return s
  15580. }
  15581. // Additional information about the billing group.
  15582. type BillingGroupMetadata struct {
  15583. _ struct{} `type:"structure"`
  15584. // The date the billing group was created.
  15585. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  15586. }
  15587. // String returns the string representation
  15588. func (s BillingGroupMetadata) String() string {
  15589. return awsutil.Prettify(s)
  15590. }
  15591. // GoString returns the string representation
  15592. func (s BillingGroupMetadata) GoString() string {
  15593. return s.String()
  15594. }
  15595. // SetCreationDate sets the CreationDate field's value.
  15596. func (s *BillingGroupMetadata) SetCreationDate(v time.Time) *BillingGroupMetadata {
  15597. s.CreationDate = &v
  15598. return s
  15599. }
  15600. // The properties of a billing group.
  15601. type BillingGroupProperties struct {
  15602. _ struct{} `type:"structure"`
  15603. // The description of the billing group.
  15604. BillingGroupDescription *string `locationName:"billingGroupDescription" type:"string"`
  15605. }
  15606. // String returns the string representation
  15607. func (s BillingGroupProperties) String() string {
  15608. return awsutil.Prettify(s)
  15609. }
  15610. // GoString returns the string representation
  15611. func (s BillingGroupProperties) GoString() string {
  15612. return s.String()
  15613. }
  15614. // SetBillingGroupDescription sets the BillingGroupDescription field's value.
  15615. func (s *BillingGroupProperties) SetBillingGroupDescription(v string) *BillingGroupProperties {
  15616. s.BillingGroupDescription = &v
  15617. return s
  15618. }
  15619. // A CA certificate.
  15620. type CACertificate struct {
  15621. _ struct{} `type:"structure"`
  15622. // The ARN of the CA certificate.
  15623. CertificateArn *string `locationName:"certificateArn" type:"string"`
  15624. // The ID of the CA certificate.
  15625. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  15626. // The date the CA certificate was created.
  15627. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  15628. // The status of the CA certificate.
  15629. //
  15630. // The status value REGISTER_INACTIVE is deprecated and should not be used.
  15631. Status *string `locationName:"status" type:"string" enum:"CACertificateStatus"`
  15632. }
  15633. // String returns the string representation
  15634. func (s CACertificate) String() string {
  15635. return awsutil.Prettify(s)
  15636. }
  15637. // GoString returns the string representation
  15638. func (s CACertificate) GoString() string {
  15639. return s.String()
  15640. }
  15641. // SetCertificateArn sets the CertificateArn field's value.
  15642. func (s *CACertificate) SetCertificateArn(v string) *CACertificate {
  15643. s.CertificateArn = &v
  15644. return s
  15645. }
  15646. // SetCertificateId sets the CertificateId field's value.
  15647. func (s *CACertificate) SetCertificateId(v string) *CACertificate {
  15648. s.CertificateId = &v
  15649. return s
  15650. }
  15651. // SetCreationDate sets the CreationDate field's value.
  15652. func (s *CACertificate) SetCreationDate(v time.Time) *CACertificate {
  15653. s.CreationDate = &v
  15654. return s
  15655. }
  15656. // SetStatus sets the Status field's value.
  15657. func (s *CACertificate) SetStatus(v string) *CACertificate {
  15658. s.Status = &v
  15659. return s
  15660. }
  15661. // Describes a CA certificate.
  15662. type CACertificateDescription struct {
  15663. _ struct{} `type:"structure"`
  15664. // Whether the CA certificate configured for auto registration of device certificates.
  15665. // Valid values are "ENABLE" and "DISABLE"
  15666. AutoRegistrationStatus *string `locationName:"autoRegistrationStatus" type:"string" enum:"AutoRegistrationStatus"`
  15667. // The CA certificate ARN.
  15668. CertificateArn *string `locationName:"certificateArn" type:"string"`
  15669. // The CA certificate ID.
  15670. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  15671. // The CA certificate data, in PEM format.
  15672. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"`
  15673. // The date the CA certificate was created.
  15674. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  15675. // The customer version of the CA certificate.
  15676. CustomerVersion *int64 `locationName:"customerVersion" min:"1" type:"integer"`
  15677. // The generation ID of the CA certificate.
  15678. GenerationId *string `locationName:"generationId" type:"string"`
  15679. // The date the CA certificate was last modified.
  15680. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  15681. // The owner of the CA certificate.
  15682. OwnedBy *string `locationName:"ownedBy" min:"12" type:"string"`
  15683. // The status of a CA certificate.
  15684. Status *string `locationName:"status" type:"string" enum:"CACertificateStatus"`
  15685. // When the CA certificate is valid.
  15686. Validity *CertificateValidity `locationName:"validity" type:"structure"`
  15687. }
  15688. // String returns the string representation
  15689. func (s CACertificateDescription) String() string {
  15690. return awsutil.Prettify(s)
  15691. }
  15692. // GoString returns the string representation
  15693. func (s CACertificateDescription) GoString() string {
  15694. return s.String()
  15695. }
  15696. // SetAutoRegistrationStatus sets the AutoRegistrationStatus field's value.
  15697. func (s *CACertificateDescription) SetAutoRegistrationStatus(v string) *CACertificateDescription {
  15698. s.AutoRegistrationStatus = &v
  15699. return s
  15700. }
  15701. // SetCertificateArn sets the CertificateArn field's value.
  15702. func (s *CACertificateDescription) SetCertificateArn(v string) *CACertificateDescription {
  15703. s.CertificateArn = &v
  15704. return s
  15705. }
  15706. // SetCertificateId sets the CertificateId field's value.
  15707. func (s *CACertificateDescription) SetCertificateId(v string) *CACertificateDescription {
  15708. s.CertificateId = &v
  15709. return s
  15710. }
  15711. // SetCertificatePem sets the CertificatePem field's value.
  15712. func (s *CACertificateDescription) SetCertificatePem(v string) *CACertificateDescription {
  15713. s.CertificatePem = &v
  15714. return s
  15715. }
  15716. // SetCreationDate sets the CreationDate field's value.
  15717. func (s *CACertificateDescription) SetCreationDate(v time.Time) *CACertificateDescription {
  15718. s.CreationDate = &v
  15719. return s
  15720. }
  15721. // SetCustomerVersion sets the CustomerVersion field's value.
  15722. func (s *CACertificateDescription) SetCustomerVersion(v int64) *CACertificateDescription {
  15723. s.CustomerVersion = &v
  15724. return s
  15725. }
  15726. // SetGenerationId sets the GenerationId field's value.
  15727. func (s *CACertificateDescription) SetGenerationId(v string) *CACertificateDescription {
  15728. s.GenerationId = &v
  15729. return s
  15730. }
  15731. // SetLastModifiedDate sets the LastModifiedDate field's value.
  15732. func (s *CACertificateDescription) SetLastModifiedDate(v time.Time) *CACertificateDescription {
  15733. s.LastModifiedDate = &v
  15734. return s
  15735. }
  15736. // SetOwnedBy sets the OwnedBy field's value.
  15737. func (s *CACertificateDescription) SetOwnedBy(v string) *CACertificateDescription {
  15738. s.OwnedBy = &v
  15739. return s
  15740. }
  15741. // SetStatus sets the Status field's value.
  15742. func (s *CACertificateDescription) SetStatus(v string) *CACertificateDescription {
  15743. s.Status = &v
  15744. return s
  15745. }
  15746. // SetValidity sets the Validity field's value.
  15747. func (s *CACertificateDescription) SetValidity(v *CertificateValidity) *CACertificateDescription {
  15748. s.Validity = v
  15749. return s
  15750. }
  15751. type CancelAuditTaskInput struct {
  15752. _ struct{} `type:"structure"`
  15753. // The ID of the audit you want to cancel. You can only cancel an audit that
  15754. // is "IN_PROGRESS".
  15755. //
  15756. // TaskId is a required field
  15757. TaskId *string `location:"uri" locationName:"taskId" min:"1" type:"string" required:"true"`
  15758. }
  15759. // String returns the string representation
  15760. func (s CancelAuditTaskInput) String() string {
  15761. return awsutil.Prettify(s)
  15762. }
  15763. // GoString returns the string representation
  15764. func (s CancelAuditTaskInput) GoString() string {
  15765. return s.String()
  15766. }
  15767. // Validate inspects the fields of the type to determine if they are valid.
  15768. func (s *CancelAuditTaskInput) Validate() error {
  15769. invalidParams := request.ErrInvalidParams{Context: "CancelAuditTaskInput"}
  15770. if s.TaskId == nil {
  15771. invalidParams.Add(request.NewErrParamRequired("TaskId"))
  15772. }
  15773. if s.TaskId != nil && len(*s.TaskId) < 1 {
  15774. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  15775. }
  15776. if invalidParams.Len() > 0 {
  15777. return invalidParams
  15778. }
  15779. return nil
  15780. }
  15781. // SetTaskId sets the TaskId field's value.
  15782. func (s *CancelAuditTaskInput) SetTaskId(v string) *CancelAuditTaskInput {
  15783. s.TaskId = &v
  15784. return s
  15785. }
  15786. type CancelAuditTaskOutput struct {
  15787. _ struct{} `type:"structure"`
  15788. }
  15789. // String returns the string representation
  15790. func (s CancelAuditTaskOutput) String() string {
  15791. return awsutil.Prettify(s)
  15792. }
  15793. // GoString returns the string representation
  15794. func (s CancelAuditTaskOutput) GoString() string {
  15795. return s.String()
  15796. }
  15797. // The input for the CancelCertificateTransfer operation.
  15798. type CancelCertificateTransferInput struct {
  15799. _ struct{} `type:"structure"`
  15800. // The ID of the certificate. (The last part of the certificate ARN contains
  15801. // the certificate ID.)
  15802. //
  15803. // CertificateId is a required field
  15804. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  15805. }
  15806. // String returns the string representation
  15807. func (s CancelCertificateTransferInput) String() string {
  15808. return awsutil.Prettify(s)
  15809. }
  15810. // GoString returns the string representation
  15811. func (s CancelCertificateTransferInput) GoString() string {
  15812. return s.String()
  15813. }
  15814. // Validate inspects the fields of the type to determine if they are valid.
  15815. func (s *CancelCertificateTransferInput) Validate() error {
  15816. invalidParams := request.ErrInvalidParams{Context: "CancelCertificateTransferInput"}
  15817. if s.CertificateId == nil {
  15818. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  15819. }
  15820. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  15821. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  15822. }
  15823. if invalidParams.Len() > 0 {
  15824. return invalidParams
  15825. }
  15826. return nil
  15827. }
  15828. // SetCertificateId sets the CertificateId field's value.
  15829. func (s *CancelCertificateTransferInput) SetCertificateId(v string) *CancelCertificateTransferInput {
  15830. s.CertificateId = &v
  15831. return s
  15832. }
  15833. type CancelCertificateTransferOutput struct {
  15834. _ struct{} `type:"structure"`
  15835. }
  15836. // String returns the string representation
  15837. func (s CancelCertificateTransferOutput) String() string {
  15838. return awsutil.Prettify(s)
  15839. }
  15840. // GoString returns the string representation
  15841. func (s CancelCertificateTransferOutput) GoString() string {
  15842. return s.String()
  15843. }
  15844. type CancelJobExecutionInput struct {
  15845. _ struct{} `type:"structure"`
  15846. // (Optional) The expected current version of the job execution. Each time you
  15847. // update the job execution, its version is incremented. If the version of the
  15848. // job execution stored in Jobs does not match, the update is rejected with
  15849. // a VersionMismatch error, and an ErrorResponse that contains the current job
  15850. // execution status data is returned. (This makes it unnecessary to perform
  15851. // a separate DescribeJobExecution request in order to obtain the job execution
  15852. // status data.)
  15853. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"`
  15854. // (Optional) If true the job execution will be canceled if it has status IN_PROGRESS
  15855. // or QUEUED, otherwise the job execution will be canceled only if it has status
  15856. // QUEUED. If you attempt to cancel a job execution that is IN_PROGRESS, and
  15857. // you do not set force to true, then an InvalidStateTransitionException will
  15858. // be thrown. The default is false.
  15859. //
  15860. // Canceling a job execution which is "IN_PROGRESS", will cause the device to
  15861. // be unable to update the job execution status. Use caution and ensure that
  15862. // the device is able to recover to a valid state.
  15863. Force *bool `location:"querystring" locationName:"force" type:"boolean"`
  15864. // The ID of the job to be canceled.
  15865. //
  15866. // JobId is a required field
  15867. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  15868. // A collection of name/value pairs that describe the status of the job execution.
  15869. // If not specified, the statusDetails are unchanged. You can specify at most
  15870. // 10 name/value pairs.
  15871. StatusDetails map[string]*string `locationName:"statusDetails" type:"map"`
  15872. // The name of the thing whose execution of the job will be canceled.
  15873. //
  15874. // ThingName is a required field
  15875. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  15876. }
  15877. // String returns the string representation
  15878. func (s CancelJobExecutionInput) String() string {
  15879. return awsutil.Prettify(s)
  15880. }
  15881. // GoString returns the string representation
  15882. func (s CancelJobExecutionInput) GoString() string {
  15883. return s.String()
  15884. }
  15885. // Validate inspects the fields of the type to determine if they are valid.
  15886. func (s *CancelJobExecutionInput) Validate() error {
  15887. invalidParams := request.ErrInvalidParams{Context: "CancelJobExecutionInput"}
  15888. if s.JobId == nil {
  15889. invalidParams.Add(request.NewErrParamRequired("JobId"))
  15890. }
  15891. if s.JobId != nil && len(*s.JobId) < 1 {
  15892. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  15893. }
  15894. if s.ThingName == nil {
  15895. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  15896. }
  15897. if s.ThingName != nil && len(*s.ThingName) < 1 {
  15898. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  15899. }
  15900. if invalidParams.Len() > 0 {
  15901. return invalidParams
  15902. }
  15903. return nil
  15904. }
  15905. // SetExpectedVersion sets the ExpectedVersion field's value.
  15906. func (s *CancelJobExecutionInput) SetExpectedVersion(v int64) *CancelJobExecutionInput {
  15907. s.ExpectedVersion = &v
  15908. return s
  15909. }
  15910. // SetForce sets the Force field's value.
  15911. func (s *CancelJobExecutionInput) SetForce(v bool) *CancelJobExecutionInput {
  15912. s.Force = &v
  15913. return s
  15914. }
  15915. // SetJobId sets the JobId field's value.
  15916. func (s *CancelJobExecutionInput) SetJobId(v string) *CancelJobExecutionInput {
  15917. s.JobId = &v
  15918. return s
  15919. }
  15920. // SetStatusDetails sets the StatusDetails field's value.
  15921. func (s *CancelJobExecutionInput) SetStatusDetails(v map[string]*string) *CancelJobExecutionInput {
  15922. s.StatusDetails = v
  15923. return s
  15924. }
  15925. // SetThingName sets the ThingName field's value.
  15926. func (s *CancelJobExecutionInput) SetThingName(v string) *CancelJobExecutionInput {
  15927. s.ThingName = &v
  15928. return s
  15929. }
  15930. type CancelJobExecutionOutput struct {
  15931. _ struct{} `type:"structure"`
  15932. }
  15933. // String returns the string representation
  15934. func (s CancelJobExecutionOutput) String() string {
  15935. return awsutil.Prettify(s)
  15936. }
  15937. // GoString returns the string representation
  15938. func (s CancelJobExecutionOutput) GoString() string {
  15939. return s.String()
  15940. }
  15941. type CancelJobInput struct {
  15942. _ struct{} `type:"structure"`
  15943. // An optional comment string describing why the job was canceled.
  15944. Comment *string `locationName:"comment" type:"string"`
  15945. // (Optional) If true job executions with status "IN_PROGRESS" and "QUEUED"
  15946. // are canceled, otherwise only job executions with status "QUEUED" are canceled.
  15947. // The default is false.
  15948. //
  15949. // Canceling a job which is "IN_PROGRESS", will cause a device which is executing
  15950. // the job to be unable to update the job execution status. Use caution and
  15951. // ensure that each device executing a job which is canceled is able to recover
  15952. // to a valid state.
  15953. Force *bool `location:"querystring" locationName:"force" type:"boolean"`
  15954. // The unique identifier you assigned to this job when it was created.
  15955. //
  15956. // JobId is a required field
  15957. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  15958. // (Optional)A reason code string that explains why the job was canceled.
  15959. ReasonCode *string `locationName:"reasonCode" type:"string"`
  15960. }
  15961. // String returns the string representation
  15962. func (s CancelJobInput) String() string {
  15963. return awsutil.Prettify(s)
  15964. }
  15965. // GoString returns the string representation
  15966. func (s CancelJobInput) GoString() string {
  15967. return s.String()
  15968. }
  15969. // Validate inspects the fields of the type to determine if they are valid.
  15970. func (s *CancelJobInput) Validate() error {
  15971. invalidParams := request.ErrInvalidParams{Context: "CancelJobInput"}
  15972. if s.JobId == nil {
  15973. invalidParams.Add(request.NewErrParamRequired("JobId"))
  15974. }
  15975. if s.JobId != nil && len(*s.JobId) < 1 {
  15976. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  15977. }
  15978. if invalidParams.Len() > 0 {
  15979. return invalidParams
  15980. }
  15981. return nil
  15982. }
  15983. // SetComment sets the Comment field's value.
  15984. func (s *CancelJobInput) SetComment(v string) *CancelJobInput {
  15985. s.Comment = &v
  15986. return s
  15987. }
  15988. // SetForce sets the Force field's value.
  15989. func (s *CancelJobInput) SetForce(v bool) *CancelJobInput {
  15990. s.Force = &v
  15991. return s
  15992. }
  15993. // SetJobId sets the JobId field's value.
  15994. func (s *CancelJobInput) SetJobId(v string) *CancelJobInput {
  15995. s.JobId = &v
  15996. return s
  15997. }
  15998. // SetReasonCode sets the ReasonCode field's value.
  15999. func (s *CancelJobInput) SetReasonCode(v string) *CancelJobInput {
  16000. s.ReasonCode = &v
  16001. return s
  16002. }
  16003. type CancelJobOutput struct {
  16004. _ struct{} `type:"structure"`
  16005. // A short text description of the job.
  16006. Description *string `locationName:"description" type:"string"`
  16007. // The job ARN.
  16008. JobArn *string `locationName:"jobArn" type:"string"`
  16009. // The unique identifier you assigned to this job when it was created.
  16010. JobId *string `locationName:"jobId" min:"1" type:"string"`
  16011. }
  16012. // String returns the string representation
  16013. func (s CancelJobOutput) String() string {
  16014. return awsutil.Prettify(s)
  16015. }
  16016. // GoString returns the string representation
  16017. func (s CancelJobOutput) GoString() string {
  16018. return s.String()
  16019. }
  16020. // SetDescription sets the Description field's value.
  16021. func (s *CancelJobOutput) SetDescription(v string) *CancelJobOutput {
  16022. s.Description = &v
  16023. return s
  16024. }
  16025. // SetJobArn sets the JobArn field's value.
  16026. func (s *CancelJobOutput) SetJobArn(v string) *CancelJobOutput {
  16027. s.JobArn = &v
  16028. return s
  16029. }
  16030. // SetJobId sets the JobId field's value.
  16031. func (s *CancelJobOutput) SetJobId(v string) *CancelJobOutput {
  16032. s.JobId = &v
  16033. return s
  16034. }
  16035. // Information about a certificate.
  16036. type Certificate struct {
  16037. _ struct{} `type:"structure"`
  16038. // The ARN of the certificate.
  16039. CertificateArn *string `locationName:"certificateArn" type:"string"`
  16040. // The ID of the certificate. (The last part of the certificate ARN contains
  16041. // the certificate ID.)
  16042. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  16043. // The date and time the certificate was created.
  16044. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  16045. // The status of the certificate.
  16046. //
  16047. // The status value REGISTER_INACTIVE is deprecated and should not be used.
  16048. Status *string `locationName:"status" type:"string" enum:"CertificateStatus"`
  16049. }
  16050. // String returns the string representation
  16051. func (s Certificate) String() string {
  16052. return awsutil.Prettify(s)
  16053. }
  16054. // GoString returns the string representation
  16055. func (s Certificate) GoString() string {
  16056. return s.String()
  16057. }
  16058. // SetCertificateArn sets the CertificateArn field's value.
  16059. func (s *Certificate) SetCertificateArn(v string) *Certificate {
  16060. s.CertificateArn = &v
  16061. return s
  16062. }
  16063. // SetCertificateId sets the CertificateId field's value.
  16064. func (s *Certificate) SetCertificateId(v string) *Certificate {
  16065. s.CertificateId = &v
  16066. return s
  16067. }
  16068. // SetCreationDate sets the CreationDate field's value.
  16069. func (s *Certificate) SetCreationDate(v time.Time) *Certificate {
  16070. s.CreationDate = &v
  16071. return s
  16072. }
  16073. // SetStatus sets the Status field's value.
  16074. func (s *Certificate) SetStatus(v string) *Certificate {
  16075. s.Status = &v
  16076. return s
  16077. }
  16078. // Describes a certificate.
  16079. type CertificateDescription struct {
  16080. _ struct{} `type:"structure"`
  16081. // The certificate ID of the CA certificate used to sign this certificate.
  16082. CaCertificateId *string `locationName:"caCertificateId" min:"64" type:"string"`
  16083. // The ARN of the certificate.
  16084. CertificateArn *string `locationName:"certificateArn" type:"string"`
  16085. // The ID of the certificate.
  16086. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  16087. // The certificate data, in PEM format.
  16088. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"`
  16089. // The date and time the certificate was created.
  16090. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  16091. // The customer version of the certificate.
  16092. CustomerVersion *int64 `locationName:"customerVersion" min:"1" type:"integer"`
  16093. // The generation ID of the certificate.
  16094. GenerationId *string `locationName:"generationId" type:"string"`
  16095. // The date and time the certificate was last modified.
  16096. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  16097. // The ID of the AWS account that owns the certificate.
  16098. OwnedBy *string `locationName:"ownedBy" min:"12" type:"string"`
  16099. // The ID of the AWS account of the previous owner of the certificate.
  16100. PreviousOwnedBy *string `locationName:"previousOwnedBy" min:"12" type:"string"`
  16101. // The status of the certificate.
  16102. Status *string `locationName:"status" type:"string" enum:"CertificateStatus"`
  16103. // The transfer data.
  16104. TransferData *TransferData `locationName:"transferData" type:"structure"`
  16105. // When the certificate is valid.
  16106. Validity *CertificateValidity `locationName:"validity" type:"structure"`
  16107. }
  16108. // String returns the string representation
  16109. func (s CertificateDescription) String() string {
  16110. return awsutil.Prettify(s)
  16111. }
  16112. // GoString returns the string representation
  16113. func (s CertificateDescription) GoString() string {
  16114. return s.String()
  16115. }
  16116. // SetCaCertificateId sets the CaCertificateId field's value.
  16117. func (s *CertificateDescription) SetCaCertificateId(v string) *CertificateDescription {
  16118. s.CaCertificateId = &v
  16119. return s
  16120. }
  16121. // SetCertificateArn sets the CertificateArn field's value.
  16122. func (s *CertificateDescription) SetCertificateArn(v string) *CertificateDescription {
  16123. s.CertificateArn = &v
  16124. return s
  16125. }
  16126. // SetCertificateId sets the CertificateId field's value.
  16127. func (s *CertificateDescription) SetCertificateId(v string) *CertificateDescription {
  16128. s.CertificateId = &v
  16129. return s
  16130. }
  16131. // SetCertificatePem sets the CertificatePem field's value.
  16132. func (s *CertificateDescription) SetCertificatePem(v string) *CertificateDescription {
  16133. s.CertificatePem = &v
  16134. return s
  16135. }
  16136. // SetCreationDate sets the CreationDate field's value.
  16137. func (s *CertificateDescription) SetCreationDate(v time.Time) *CertificateDescription {
  16138. s.CreationDate = &v
  16139. return s
  16140. }
  16141. // SetCustomerVersion sets the CustomerVersion field's value.
  16142. func (s *CertificateDescription) SetCustomerVersion(v int64) *CertificateDescription {
  16143. s.CustomerVersion = &v
  16144. return s
  16145. }
  16146. // SetGenerationId sets the GenerationId field's value.
  16147. func (s *CertificateDescription) SetGenerationId(v string) *CertificateDescription {
  16148. s.GenerationId = &v
  16149. return s
  16150. }
  16151. // SetLastModifiedDate sets the LastModifiedDate field's value.
  16152. func (s *CertificateDescription) SetLastModifiedDate(v time.Time) *CertificateDescription {
  16153. s.LastModifiedDate = &v
  16154. return s
  16155. }
  16156. // SetOwnedBy sets the OwnedBy field's value.
  16157. func (s *CertificateDescription) SetOwnedBy(v string) *CertificateDescription {
  16158. s.OwnedBy = &v
  16159. return s
  16160. }
  16161. // SetPreviousOwnedBy sets the PreviousOwnedBy field's value.
  16162. func (s *CertificateDescription) SetPreviousOwnedBy(v string) *CertificateDescription {
  16163. s.PreviousOwnedBy = &v
  16164. return s
  16165. }
  16166. // SetStatus sets the Status field's value.
  16167. func (s *CertificateDescription) SetStatus(v string) *CertificateDescription {
  16168. s.Status = &v
  16169. return s
  16170. }
  16171. // SetTransferData sets the TransferData field's value.
  16172. func (s *CertificateDescription) SetTransferData(v *TransferData) *CertificateDescription {
  16173. s.TransferData = v
  16174. return s
  16175. }
  16176. // SetValidity sets the Validity field's value.
  16177. func (s *CertificateDescription) SetValidity(v *CertificateValidity) *CertificateDescription {
  16178. s.Validity = v
  16179. return s
  16180. }
  16181. // When the certificate is valid.
  16182. type CertificateValidity struct {
  16183. _ struct{} `type:"structure"`
  16184. // The certificate is not valid after this date.
  16185. NotAfter *time.Time `locationName:"notAfter" type:"timestamp"`
  16186. // The certificate is not valid before this date.
  16187. NotBefore *time.Time `locationName:"notBefore" type:"timestamp"`
  16188. }
  16189. // String returns the string representation
  16190. func (s CertificateValidity) String() string {
  16191. return awsutil.Prettify(s)
  16192. }
  16193. // GoString returns the string representation
  16194. func (s CertificateValidity) GoString() string {
  16195. return s.String()
  16196. }
  16197. // SetNotAfter sets the NotAfter field's value.
  16198. func (s *CertificateValidity) SetNotAfter(v time.Time) *CertificateValidity {
  16199. s.NotAfter = &v
  16200. return s
  16201. }
  16202. // SetNotBefore sets the NotBefore field's value.
  16203. func (s *CertificateValidity) SetNotBefore(v time.Time) *CertificateValidity {
  16204. s.NotBefore = &v
  16205. return s
  16206. }
  16207. type ClearDefaultAuthorizerInput struct {
  16208. _ struct{} `type:"structure"`
  16209. }
  16210. // String returns the string representation
  16211. func (s ClearDefaultAuthorizerInput) String() string {
  16212. return awsutil.Prettify(s)
  16213. }
  16214. // GoString returns the string representation
  16215. func (s ClearDefaultAuthorizerInput) GoString() string {
  16216. return s.String()
  16217. }
  16218. type ClearDefaultAuthorizerOutput struct {
  16219. _ struct{} `type:"structure"`
  16220. }
  16221. // String returns the string representation
  16222. func (s ClearDefaultAuthorizerOutput) String() string {
  16223. return awsutil.Prettify(s)
  16224. }
  16225. // GoString returns the string representation
  16226. func (s ClearDefaultAuthorizerOutput) GoString() string {
  16227. return s.String()
  16228. }
  16229. // Describes an action that updates a CloudWatch alarm.
  16230. type CloudwatchAlarmAction struct {
  16231. _ struct{} `type:"structure"`
  16232. // The CloudWatch alarm name.
  16233. //
  16234. // AlarmName is a required field
  16235. AlarmName *string `locationName:"alarmName" type:"string" required:"true"`
  16236. // The IAM role that allows access to the CloudWatch alarm.
  16237. //
  16238. // RoleArn is a required field
  16239. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  16240. // The reason for the alarm change.
  16241. //
  16242. // StateReason is a required field
  16243. StateReason *string `locationName:"stateReason" type:"string" required:"true"`
  16244. // The value of the alarm state. Acceptable values are: OK, ALARM, INSUFFICIENT_DATA.
  16245. //
  16246. // StateValue is a required field
  16247. StateValue *string `locationName:"stateValue" type:"string" required:"true"`
  16248. }
  16249. // String returns the string representation
  16250. func (s CloudwatchAlarmAction) String() string {
  16251. return awsutil.Prettify(s)
  16252. }
  16253. // GoString returns the string representation
  16254. func (s CloudwatchAlarmAction) GoString() string {
  16255. return s.String()
  16256. }
  16257. // Validate inspects the fields of the type to determine if they are valid.
  16258. func (s *CloudwatchAlarmAction) Validate() error {
  16259. invalidParams := request.ErrInvalidParams{Context: "CloudwatchAlarmAction"}
  16260. if s.AlarmName == nil {
  16261. invalidParams.Add(request.NewErrParamRequired("AlarmName"))
  16262. }
  16263. if s.RoleArn == nil {
  16264. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  16265. }
  16266. if s.StateReason == nil {
  16267. invalidParams.Add(request.NewErrParamRequired("StateReason"))
  16268. }
  16269. if s.StateValue == nil {
  16270. invalidParams.Add(request.NewErrParamRequired("StateValue"))
  16271. }
  16272. if invalidParams.Len() > 0 {
  16273. return invalidParams
  16274. }
  16275. return nil
  16276. }
  16277. // SetAlarmName sets the AlarmName field's value.
  16278. func (s *CloudwatchAlarmAction) SetAlarmName(v string) *CloudwatchAlarmAction {
  16279. s.AlarmName = &v
  16280. return s
  16281. }
  16282. // SetRoleArn sets the RoleArn field's value.
  16283. func (s *CloudwatchAlarmAction) SetRoleArn(v string) *CloudwatchAlarmAction {
  16284. s.RoleArn = &v
  16285. return s
  16286. }
  16287. // SetStateReason sets the StateReason field's value.
  16288. func (s *CloudwatchAlarmAction) SetStateReason(v string) *CloudwatchAlarmAction {
  16289. s.StateReason = &v
  16290. return s
  16291. }
  16292. // SetStateValue sets the StateValue field's value.
  16293. func (s *CloudwatchAlarmAction) SetStateValue(v string) *CloudwatchAlarmAction {
  16294. s.StateValue = &v
  16295. return s
  16296. }
  16297. // Describes an action that captures a CloudWatch metric.
  16298. type CloudwatchMetricAction struct {
  16299. _ struct{} `type:"structure"`
  16300. // The CloudWatch metric name.
  16301. //
  16302. // MetricName is a required field
  16303. MetricName *string `locationName:"metricName" type:"string" required:"true"`
  16304. // The CloudWatch metric namespace name.
  16305. //
  16306. // MetricNamespace is a required field
  16307. MetricNamespace *string `locationName:"metricNamespace" type:"string" required:"true"`
  16308. // An optional Unix timestamp (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#about_timestamp).
  16309. MetricTimestamp *string `locationName:"metricTimestamp" type:"string"`
  16310. // The metric unit (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Unit)
  16311. // supported by CloudWatch.
  16312. //
  16313. // MetricUnit is a required field
  16314. MetricUnit *string `locationName:"metricUnit" type:"string" required:"true"`
  16315. // The CloudWatch metric value.
  16316. //
  16317. // MetricValue is a required field
  16318. MetricValue *string `locationName:"metricValue" type:"string" required:"true"`
  16319. // The IAM role that allows access to the CloudWatch metric.
  16320. //
  16321. // RoleArn is a required field
  16322. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  16323. }
  16324. // String returns the string representation
  16325. func (s CloudwatchMetricAction) String() string {
  16326. return awsutil.Prettify(s)
  16327. }
  16328. // GoString returns the string representation
  16329. func (s CloudwatchMetricAction) GoString() string {
  16330. return s.String()
  16331. }
  16332. // Validate inspects the fields of the type to determine if they are valid.
  16333. func (s *CloudwatchMetricAction) Validate() error {
  16334. invalidParams := request.ErrInvalidParams{Context: "CloudwatchMetricAction"}
  16335. if s.MetricName == nil {
  16336. invalidParams.Add(request.NewErrParamRequired("MetricName"))
  16337. }
  16338. if s.MetricNamespace == nil {
  16339. invalidParams.Add(request.NewErrParamRequired("MetricNamespace"))
  16340. }
  16341. if s.MetricUnit == nil {
  16342. invalidParams.Add(request.NewErrParamRequired("MetricUnit"))
  16343. }
  16344. if s.MetricValue == nil {
  16345. invalidParams.Add(request.NewErrParamRequired("MetricValue"))
  16346. }
  16347. if s.RoleArn == nil {
  16348. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  16349. }
  16350. if invalidParams.Len() > 0 {
  16351. return invalidParams
  16352. }
  16353. return nil
  16354. }
  16355. // SetMetricName sets the MetricName field's value.
  16356. func (s *CloudwatchMetricAction) SetMetricName(v string) *CloudwatchMetricAction {
  16357. s.MetricName = &v
  16358. return s
  16359. }
  16360. // SetMetricNamespace sets the MetricNamespace field's value.
  16361. func (s *CloudwatchMetricAction) SetMetricNamespace(v string) *CloudwatchMetricAction {
  16362. s.MetricNamespace = &v
  16363. return s
  16364. }
  16365. // SetMetricTimestamp sets the MetricTimestamp field's value.
  16366. func (s *CloudwatchMetricAction) SetMetricTimestamp(v string) *CloudwatchMetricAction {
  16367. s.MetricTimestamp = &v
  16368. return s
  16369. }
  16370. // SetMetricUnit sets the MetricUnit field's value.
  16371. func (s *CloudwatchMetricAction) SetMetricUnit(v string) *CloudwatchMetricAction {
  16372. s.MetricUnit = &v
  16373. return s
  16374. }
  16375. // SetMetricValue sets the MetricValue field's value.
  16376. func (s *CloudwatchMetricAction) SetMetricValue(v string) *CloudwatchMetricAction {
  16377. s.MetricValue = &v
  16378. return s
  16379. }
  16380. // SetRoleArn sets the RoleArn field's value.
  16381. func (s *CloudwatchMetricAction) SetRoleArn(v string) *CloudwatchMetricAction {
  16382. s.RoleArn = &v
  16383. return s
  16384. }
  16385. // Describes the method to use when code signing a file.
  16386. type CodeSigning struct {
  16387. _ struct{} `type:"structure"`
  16388. // The ID of the AWSSignerJob which was created to sign the file.
  16389. AwsSignerJobId *string `locationName:"awsSignerJobId" type:"string"`
  16390. // A custom method for code signing a file.
  16391. CustomCodeSigning *CustomCodeSigning `locationName:"customCodeSigning" type:"structure"`
  16392. // Describes the code-signing job.
  16393. StartSigningJobParameter *StartSigningJobParameter `locationName:"startSigningJobParameter" type:"structure"`
  16394. }
  16395. // String returns the string representation
  16396. func (s CodeSigning) String() string {
  16397. return awsutil.Prettify(s)
  16398. }
  16399. // GoString returns the string representation
  16400. func (s CodeSigning) GoString() string {
  16401. return s.String()
  16402. }
  16403. // Validate inspects the fields of the type to determine if they are valid.
  16404. func (s *CodeSigning) Validate() error {
  16405. invalidParams := request.ErrInvalidParams{Context: "CodeSigning"}
  16406. if s.StartSigningJobParameter != nil {
  16407. if err := s.StartSigningJobParameter.Validate(); err != nil {
  16408. invalidParams.AddNested("StartSigningJobParameter", err.(request.ErrInvalidParams))
  16409. }
  16410. }
  16411. if invalidParams.Len() > 0 {
  16412. return invalidParams
  16413. }
  16414. return nil
  16415. }
  16416. // SetAwsSignerJobId sets the AwsSignerJobId field's value.
  16417. func (s *CodeSigning) SetAwsSignerJobId(v string) *CodeSigning {
  16418. s.AwsSignerJobId = &v
  16419. return s
  16420. }
  16421. // SetCustomCodeSigning sets the CustomCodeSigning field's value.
  16422. func (s *CodeSigning) SetCustomCodeSigning(v *CustomCodeSigning) *CodeSigning {
  16423. s.CustomCodeSigning = v
  16424. return s
  16425. }
  16426. // SetStartSigningJobParameter sets the StartSigningJobParameter field's value.
  16427. func (s *CodeSigning) SetStartSigningJobParameter(v *StartSigningJobParameter) *CodeSigning {
  16428. s.StartSigningJobParameter = v
  16429. return s
  16430. }
  16431. // Describes the certificate chain being used when code signing a file.
  16432. type CodeSigningCertificateChain struct {
  16433. _ struct{} `type:"structure"`
  16434. // The name of the certificate.
  16435. CertificateName *string `locationName:"certificateName" type:"string"`
  16436. // A base64 encoded binary representation of the code signing certificate chain.
  16437. InlineDocument *string `locationName:"inlineDocument" type:"string"`
  16438. }
  16439. // String returns the string representation
  16440. func (s CodeSigningCertificateChain) String() string {
  16441. return awsutil.Prettify(s)
  16442. }
  16443. // GoString returns the string representation
  16444. func (s CodeSigningCertificateChain) GoString() string {
  16445. return s.String()
  16446. }
  16447. // SetCertificateName sets the CertificateName field's value.
  16448. func (s *CodeSigningCertificateChain) SetCertificateName(v string) *CodeSigningCertificateChain {
  16449. s.CertificateName = &v
  16450. return s
  16451. }
  16452. // SetInlineDocument sets the InlineDocument field's value.
  16453. func (s *CodeSigningCertificateChain) SetInlineDocument(v string) *CodeSigningCertificateChain {
  16454. s.InlineDocument = &v
  16455. return s
  16456. }
  16457. // Describes the signature for a file.
  16458. type CodeSigningSignature struct {
  16459. _ struct{} `type:"structure"`
  16460. // A base64 encoded binary representation of the code signing signature.
  16461. //
  16462. // InlineDocument is automatically base64 encoded/decoded by the SDK.
  16463. InlineDocument []byte `locationName:"inlineDocument" type:"blob"`
  16464. }
  16465. // String returns the string representation
  16466. func (s CodeSigningSignature) String() string {
  16467. return awsutil.Prettify(s)
  16468. }
  16469. // GoString returns the string representation
  16470. func (s CodeSigningSignature) GoString() string {
  16471. return s.String()
  16472. }
  16473. // SetInlineDocument sets the InlineDocument field's value.
  16474. func (s *CodeSigningSignature) SetInlineDocument(v []byte) *CodeSigningSignature {
  16475. s.InlineDocument = v
  16476. return s
  16477. }
  16478. // Configuration.
  16479. type Configuration struct {
  16480. _ struct{} `type:"structure"`
  16481. // True to enable the configuration.
  16482. Enabled *bool `type:"boolean"`
  16483. }
  16484. // String returns the string representation
  16485. func (s Configuration) String() string {
  16486. return awsutil.Prettify(s)
  16487. }
  16488. // GoString returns the string representation
  16489. func (s Configuration) GoString() string {
  16490. return s.String()
  16491. }
  16492. // SetEnabled sets the Enabled field's value.
  16493. func (s *Configuration) SetEnabled(v bool) *Configuration {
  16494. s.Enabled = &v
  16495. return s
  16496. }
  16497. type CreateAuthorizerInput struct {
  16498. _ struct{} `type:"structure"`
  16499. // The ARN of the authorizer's Lambda function.
  16500. //
  16501. // AuthorizerFunctionArn is a required field
  16502. AuthorizerFunctionArn *string `locationName:"authorizerFunctionArn" type:"string" required:"true"`
  16503. // The authorizer name.
  16504. //
  16505. // AuthorizerName is a required field
  16506. AuthorizerName *string `location:"uri" locationName:"authorizerName" min:"1" type:"string" required:"true"`
  16507. // The status of the create authorizer request.
  16508. Status *string `locationName:"status" type:"string" enum:"AuthorizerStatus"`
  16509. // The name of the token key used to extract the token from the HTTP headers.
  16510. //
  16511. // TokenKeyName is a required field
  16512. TokenKeyName *string `locationName:"tokenKeyName" min:"1" type:"string" required:"true"`
  16513. // The public keys used to verify the digital signature returned by your custom
  16514. // authentication service.
  16515. //
  16516. // TokenSigningPublicKeys is a required field
  16517. TokenSigningPublicKeys map[string]*string `locationName:"tokenSigningPublicKeys" type:"map" required:"true"`
  16518. }
  16519. // String returns the string representation
  16520. func (s CreateAuthorizerInput) String() string {
  16521. return awsutil.Prettify(s)
  16522. }
  16523. // GoString returns the string representation
  16524. func (s CreateAuthorizerInput) GoString() string {
  16525. return s.String()
  16526. }
  16527. // Validate inspects the fields of the type to determine if they are valid.
  16528. func (s *CreateAuthorizerInput) Validate() error {
  16529. invalidParams := request.ErrInvalidParams{Context: "CreateAuthorizerInput"}
  16530. if s.AuthorizerFunctionArn == nil {
  16531. invalidParams.Add(request.NewErrParamRequired("AuthorizerFunctionArn"))
  16532. }
  16533. if s.AuthorizerName == nil {
  16534. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  16535. }
  16536. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  16537. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  16538. }
  16539. if s.TokenKeyName == nil {
  16540. invalidParams.Add(request.NewErrParamRequired("TokenKeyName"))
  16541. }
  16542. if s.TokenKeyName != nil && len(*s.TokenKeyName) < 1 {
  16543. invalidParams.Add(request.NewErrParamMinLen("TokenKeyName", 1))
  16544. }
  16545. if s.TokenSigningPublicKeys == nil {
  16546. invalidParams.Add(request.NewErrParamRequired("TokenSigningPublicKeys"))
  16547. }
  16548. if invalidParams.Len() > 0 {
  16549. return invalidParams
  16550. }
  16551. return nil
  16552. }
  16553. // SetAuthorizerFunctionArn sets the AuthorizerFunctionArn field's value.
  16554. func (s *CreateAuthorizerInput) SetAuthorizerFunctionArn(v string) *CreateAuthorizerInput {
  16555. s.AuthorizerFunctionArn = &v
  16556. return s
  16557. }
  16558. // SetAuthorizerName sets the AuthorizerName field's value.
  16559. func (s *CreateAuthorizerInput) SetAuthorizerName(v string) *CreateAuthorizerInput {
  16560. s.AuthorizerName = &v
  16561. return s
  16562. }
  16563. // SetStatus sets the Status field's value.
  16564. func (s *CreateAuthorizerInput) SetStatus(v string) *CreateAuthorizerInput {
  16565. s.Status = &v
  16566. return s
  16567. }
  16568. // SetTokenKeyName sets the TokenKeyName field's value.
  16569. func (s *CreateAuthorizerInput) SetTokenKeyName(v string) *CreateAuthorizerInput {
  16570. s.TokenKeyName = &v
  16571. return s
  16572. }
  16573. // SetTokenSigningPublicKeys sets the TokenSigningPublicKeys field's value.
  16574. func (s *CreateAuthorizerInput) SetTokenSigningPublicKeys(v map[string]*string) *CreateAuthorizerInput {
  16575. s.TokenSigningPublicKeys = v
  16576. return s
  16577. }
  16578. type CreateAuthorizerOutput struct {
  16579. _ struct{} `type:"structure"`
  16580. // The authorizer ARN.
  16581. AuthorizerArn *string `locationName:"authorizerArn" type:"string"`
  16582. // The authorizer's name.
  16583. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string"`
  16584. }
  16585. // String returns the string representation
  16586. func (s CreateAuthorizerOutput) String() string {
  16587. return awsutil.Prettify(s)
  16588. }
  16589. // GoString returns the string representation
  16590. func (s CreateAuthorizerOutput) GoString() string {
  16591. return s.String()
  16592. }
  16593. // SetAuthorizerArn sets the AuthorizerArn field's value.
  16594. func (s *CreateAuthorizerOutput) SetAuthorizerArn(v string) *CreateAuthorizerOutput {
  16595. s.AuthorizerArn = &v
  16596. return s
  16597. }
  16598. // SetAuthorizerName sets the AuthorizerName field's value.
  16599. func (s *CreateAuthorizerOutput) SetAuthorizerName(v string) *CreateAuthorizerOutput {
  16600. s.AuthorizerName = &v
  16601. return s
  16602. }
  16603. type CreateBillingGroupInput struct {
  16604. _ struct{} `type:"structure"`
  16605. // The name you wish to give to the billing group.
  16606. //
  16607. // BillingGroupName is a required field
  16608. BillingGroupName *string `location:"uri" locationName:"billingGroupName" min:"1" type:"string" required:"true"`
  16609. // The properties of the billing group.
  16610. BillingGroupProperties *BillingGroupProperties `locationName:"billingGroupProperties" type:"structure"`
  16611. // Metadata which can be used to manage the billing group.
  16612. Tags []*Tag `locationName:"tags" type:"list"`
  16613. }
  16614. // String returns the string representation
  16615. func (s CreateBillingGroupInput) String() string {
  16616. return awsutil.Prettify(s)
  16617. }
  16618. // GoString returns the string representation
  16619. func (s CreateBillingGroupInput) GoString() string {
  16620. return s.String()
  16621. }
  16622. // Validate inspects the fields of the type to determine if they are valid.
  16623. func (s *CreateBillingGroupInput) Validate() error {
  16624. invalidParams := request.ErrInvalidParams{Context: "CreateBillingGroupInput"}
  16625. if s.BillingGroupName == nil {
  16626. invalidParams.Add(request.NewErrParamRequired("BillingGroupName"))
  16627. }
  16628. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  16629. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  16630. }
  16631. if invalidParams.Len() > 0 {
  16632. return invalidParams
  16633. }
  16634. return nil
  16635. }
  16636. // SetBillingGroupName sets the BillingGroupName field's value.
  16637. func (s *CreateBillingGroupInput) SetBillingGroupName(v string) *CreateBillingGroupInput {
  16638. s.BillingGroupName = &v
  16639. return s
  16640. }
  16641. // SetBillingGroupProperties sets the BillingGroupProperties field's value.
  16642. func (s *CreateBillingGroupInput) SetBillingGroupProperties(v *BillingGroupProperties) *CreateBillingGroupInput {
  16643. s.BillingGroupProperties = v
  16644. return s
  16645. }
  16646. // SetTags sets the Tags field's value.
  16647. func (s *CreateBillingGroupInput) SetTags(v []*Tag) *CreateBillingGroupInput {
  16648. s.Tags = v
  16649. return s
  16650. }
  16651. type CreateBillingGroupOutput struct {
  16652. _ struct{} `type:"structure"`
  16653. // The ARN of the billing group.
  16654. BillingGroupArn *string `locationName:"billingGroupArn" type:"string"`
  16655. // The ID of the billing group.
  16656. BillingGroupId *string `locationName:"billingGroupId" min:"1" type:"string"`
  16657. // The name you gave to the billing group.
  16658. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  16659. }
  16660. // String returns the string representation
  16661. func (s CreateBillingGroupOutput) String() string {
  16662. return awsutil.Prettify(s)
  16663. }
  16664. // GoString returns the string representation
  16665. func (s CreateBillingGroupOutput) GoString() string {
  16666. return s.String()
  16667. }
  16668. // SetBillingGroupArn sets the BillingGroupArn field's value.
  16669. func (s *CreateBillingGroupOutput) SetBillingGroupArn(v string) *CreateBillingGroupOutput {
  16670. s.BillingGroupArn = &v
  16671. return s
  16672. }
  16673. // SetBillingGroupId sets the BillingGroupId field's value.
  16674. func (s *CreateBillingGroupOutput) SetBillingGroupId(v string) *CreateBillingGroupOutput {
  16675. s.BillingGroupId = &v
  16676. return s
  16677. }
  16678. // SetBillingGroupName sets the BillingGroupName field's value.
  16679. func (s *CreateBillingGroupOutput) SetBillingGroupName(v string) *CreateBillingGroupOutput {
  16680. s.BillingGroupName = &v
  16681. return s
  16682. }
  16683. // The input for the CreateCertificateFromCsr operation.
  16684. type CreateCertificateFromCsrInput struct {
  16685. _ struct{} `type:"structure"`
  16686. // The certificate signing request (CSR).
  16687. //
  16688. // CertificateSigningRequest is a required field
  16689. CertificateSigningRequest *string `locationName:"certificateSigningRequest" min:"1" type:"string" required:"true"`
  16690. // Specifies whether the certificate is active.
  16691. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"`
  16692. }
  16693. // String returns the string representation
  16694. func (s CreateCertificateFromCsrInput) String() string {
  16695. return awsutil.Prettify(s)
  16696. }
  16697. // GoString returns the string representation
  16698. func (s CreateCertificateFromCsrInput) GoString() string {
  16699. return s.String()
  16700. }
  16701. // Validate inspects the fields of the type to determine if they are valid.
  16702. func (s *CreateCertificateFromCsrInput) Validate() error {
  16703. invalidParams := request.ErrInvalidParams{Context: "CreateCertificateFromCsrInput"}
  16704. if s.CertificateSigningRequest == nil {
  16705. invalidParams.Add(request.NewErrParamRequired("CertificateSigningRequest"))
  16706. }
  16707. if s.CertificateSigningRequest != nil && len(*s.CertificateSigningRequest) < 1 {
  16708. invalidParams.Add(request.NewErrParamMinLen("CertificateSigningRequest", 1))
  16709. }
  16710. if invalidParams.Len() > 0 {
  16711. return invalidParams
  16712. }
  16713. return nil
  16714. }
  16715. // SetCertificateSigningRequest sets the CertificateSigningRequest field's value.
  16716. func (s *CreateCertificateFromCsrInput) SetCertificateSigningRequest(v string) *CreateCertificateFromCsrInput {
  16717. s.CertificateSigningRequest = &v
  16718. return s
  16719. }
  16720. // SetSetAsActive sets the SetAsActive field's value.
  16721. func (s *CreateCertificateFromCsrInput) SetSetAsActive(v bool) *CreateCertificateFromCsrInput {
  16722. s.SetAsActive = &v
  16723. return s
  16724. }
  16725. // The output from the CreateCertificateFromCsr operation.
  16726. type CreateCertificateFromCsrOutput struct {
  16727. _ struct{} `type:"structure"`
  16728. // The Amazon Resource Name (ARN) of the certificate. You can use the ARN as
  16729. // a principal for policy operations.
  16730. CertificateArn *string `locationName:"certificateArn" type:"string"`
  16731. // The ID of the certificate. Certificate management operations only take a
  16732. // certificateId.
  16733. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  16734. // The certificate data, in PEM format.
  16735. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"`
  16736. }
  16737. // String returns the string representation
  16738. func (s CreateCertificateFromCsrOutput) String() string {
  16739. return awsutil.Prettify(s)
  16740. }
  16741. // GoString returns the string representation
  16742. func (s CreateCertificateFromCsrOutput) GoString() string {
  16743. return s.String()
  16744. }
  16745. // SetCertificateArn sets the CertificateArn field's value.
  16746. func (s *CreateCertificateFromCsrOutput) SetCertificateArn(v string) *CreateCertificateFromCsrOutput {
  16747. s.CertificateArn = &v
  16748. return s
  16749. }
  16750. // SetCertificateId sets the CertificateId field's value.
  16751. func (s *CreateCertificateFromCsrOutput) SetCertificateId(v string) *CreateCertificateFromCsrOutput {
  16752. s.CertificateId = &v
  16753. return s
  16754. }
  16755. // SetCertificatePem sets the CertificatePem field's value.
  16756. func (s *CreateCertificateFromCsrOutput) SetCertificatePem(v string) *CreateCertificateFromCsrOutput {
  16757. s.CertificatePem = &v
  16758. return s
  16759. }
  16760. type CreateDynamicThingGroupInput struct {
  16761. _ struct{} `type:"structure"`
  16762. // The dynamic thing group index name.
  16763. //
  16764. // Currently one index is supported: "AWS_Things".
  16765. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  16766. // The dynamic thing group search query string.
  16767. //
  16768. // See Query Syntax (http://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html)
  16769. // for information about query string syntax.
  16770. //
  16771. // QueryString is a required field
  16772. QueryString *string `locationName:"queryString" min:"1" type:"string" required:"true"`
  16773. // The dynamic thing group query version.
  16774. //
  16775. // Currently one query version is supported: "2017-09-30". If not specified,
  16776. // the query version defaults to this value.
  16777. QueryVersion *string `locationName:"queryVersion" type:"string"`
  16778. // Metadata which can be used to manage the dynamic thing group.
  16779. Tags []*Tag `locationName:"tags" type:"list"`
  16780. // The dynamic thing group name to create.
  16781. //
  16782. // ThingGroupName is a required field
  16783. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  16784. // The dynamic thing group properties.
  16785. ThingGroupProperties *ThingGroupProperties `locationName:"thingGroupProperties" type:"structure"`
  16786. }
  16787. // String returns the string representation
  16788. func (s CreateDynamicThingGroupInput) String() string {
  16789. return awsutil.Prettify(s)
  16790. }
  16791. // GoString returns the string representation
  16792. func (s CreateDynamicThingGroupInput) GoString() string {
  16793. return s.String()
  16794. }
  16795. // Validate inspects the fields of the type to determine if they are valid.
  16796. func (s *CreateDynamicThingGroupInput) Validate() error {
  16797. invalidParams := request.ErrInvalidParams{Context: "CreateDynamicThingGroupInput"}
  16798. if s.IndexName != nil && len(*s.IndexName) < 1 {
  16799. invalidParams.Add(request.NewErrParamMinLen("IndexName", 1))
  16800. }
  16801. if s.QueryString == nil {
  16802. invalidParams.Add(request.NewErrParamRequired("QueryString"))
  16803. }
  16804. if s.QueryString != nil && len(*s.QueryString) < 1 {
  16805. invalidParams.Add(request.NewErrParamMinLen("QueryString", 1))
  16806. }
  16807. if s.ThingGroupName == nil {
  16808. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  16809. }
  16810. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  16811. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  16812. }
  16813. if invalidParams.Len() > 0 {
  16814. return invalidParams
  16815. }
  16816. return nil
  16817. }
  16818. // SetIndexName sets the IndexName field's value.
  16819. func (s *CreateDynamicThingGroupInput) SetIndexName(v string) *CreateDynamicThingGroupInput {
  16820. s.IndexName = &v
  16821. return s
  16822. }
  16823. // SetQueryString sets the QueryString field's value.
  16824. func (s *CreateDynamicThingGroupInput) SetQueryString(v string) *CreateDynamicThingGroupInput {
  16825. s.QueryString = &v
  16826. return s
  16827. }
  16828. // SetQueryVersion sets the QueryVersion field's value.
  16829. func (s *CreateDynamicThingGroupInput) SetQueryVersion(v string) *CreateDynamicThingGroupInput {
  16830. s.QueryVersion = &v
  16831. return s
  16832. }
  16833. // SetTags sets the Tags field's value.
  16834. func (s *CreateDynamicThingGroupInput) SetTags(v []*Tag) *CreateDynamicThingGroupInput {
  16835. s.Tags = v
  16836. return s
  16837. }
  16838. // SetThingGroupName sets the ThingGroupName field's value.
  16839. func (s *CreateDynamicThingGroupInput) SetThingGroupName(v string) *CreateDynamicThingGroupInput {
  16840. s.ThingGroupName = &v
  16841. return s
  16842. }
  16843. // SetThingGroupProperties sets the ThingGroupProperties field's value.
  16844. func (s *CreateDynamicThingGroupInput) SetThingGroupProperties(v *ThingGroupProperties) *CreateDynamicThingGroupInput {
  16845. s.ThingGroupProperties = v
  16846. return s
  16847. }
  16848. type CreateDynamicThingGroupOutput struct {
  16849. _ struct{} `type:"structure"`
  16850. // The dynamic thing group index name.
  16851. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  16852. // The dynamic thing group search query string.
  16853. QueryString *string `locationName:"queryString" min:"1" type:"string"`
  16854. // The dynamic thing group query version.
  16855. QueryVersion *string `locationName:"queryVersion" type:"string"`
  16856. // The dynamic thing group ARN.
  16857. ThingGroupArn *string `locationName:"thingGroupArn" type:"string"`
  16858. // The dynamic thing group ID.
  16859. ThingGroupId *string `locationName:"thingGroupId" min:"1" type:"string"`
  16860. // The dynamic thing group name.
  16861. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  16862. }
  16863. // String returns the string representation
  16864. func (s CreateDynamicThingGroupOutput) String() string {
  16865. return awsutil.Prettify(s)
  16866. }
  16867. // GoString returns the string representation
  16868. func (s CreateDynamicThingGroupOutput) GoString() string {
  16869. return s.String()
  16870. }
  16871. // SetIndexName sets the IndexName field's value.
  16872. func (s *CreateDynamicThingGroupOutput) SetIndexName(v string) *CreateDynamicThingGroupOutput {
  16873. s.IndexName = &v
  16874. return s
  16875. }
  16876. // SetQueryString sets the QueryString field's value.
  16877. func (s *CreateDynamicThingGroupOutput) SetQueryString(v string) *CreateDynamicThingGroupOutput {
  16878. s.QueryString = &v
  16879. return s
  16880. }
  16881. // SetQueryVersion sets the QueryVersion field's value.
  16882. func (s *CreateDynamicThingGroupOutput) SetQueryVersion(v string) *CreateDynamicThingGroupOutput {
  16883. s.QueryVersion = &v
  16884. return s
  16885. }
  16886. // SetThingGroupArn sets the ThingGroupArn field's value.
  16887. func (s *CreateDynamicThingGroupOutput) SetThingGroupArn(v string) *CreateDynamicThingGroupOutput {
  16888. s.ThingGroupArn = &v
  16889. return s
  16890. }
  16891. // SetThingGroupId sets the ThingGroupId field's value.
  16892. func (s *CreateDynamicThingGroupOutput) SetThingGroupId(v string) *CreateDynamicThingGroupOutput {
  16893. s.ThingGroupId = &v
  16894. return s
  16895. }
  16896. // SetThingGroupName sets the ThingGroupName field's value.
  16897. func (s *CreateDynamicThingGroupOutput) SetThingGroupName(v string) *CreateDynamicThingGroupOutput {
  16898. s.ThingGroupName = &v
  16899. return s
  16900. }
  16901. type CreateJobInput struct {
  16902. _ struct{} `type:"structure"`
  16903. // Allows you to create criteria to abort a job.
  16904. AbortConfig *AbortConfig `locationName:"abortConfig" type:"structure"`
  16905. // A short text description of the job.
  16906. Description *string `locationName:"description" type:"string"`
  16907. // The job document.
  16908. //
  16909. // If the job document resides in an S3 bucket, you must use a placeholder link
  16910. // when specifying the document.
  16911. //
  16912. // The placeholder link is of the following form:
  16913. //
  16914. // ${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}
  16915. //
  16916. // where bucket is your bucket name and key is the object in the bucket to which
  16917. // you are linking.
  16918. Document *string `locationName:"document" type:"string"`
  16919. // An S3 link to the job document.
  16920. DocumentSource *string `locationName:"documentSource" min:"1" type:"string"`
  16921. // Allows you to create a staged rollout of the job.
  16922. JobExecutionsRolloutConfig *JobExecutionsRolloutConfig `locationName:"jobExecutionsRolloutConfig" type:"structure"`
  16923. // A job identifier which must be unique for your AWS account. We recommend
  16924. // using a UUID. Alpha-numeric characters, "-" and "_" are valid for use here.
  16925. //
  16926. // JobId is a required field
  16927. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  16928. // Configuration information for pre-signed S3 URLs.
  16929. PresignedUrlConfig *PresignedUrlConfig `locationName:"presignedUrlConfig" type:"structure"`
  16930. // Metadata which can be used to manage the job.
  16931. Tags []*Tag `locationName:"tags" type:"list"`
  16932. // Specifies whether the job will continue to run (CONTINUOUS), or will be complete
  16933. // after all those things specified as targets have completed the job (SNAPSHOT).
  16934. // If continuous, the job may also be run on a thing when a change is detected
  16935. // in a target. For example, a job will run on a thing when the thing is added
  16936. // to a target group, even after the job was completed by all things originally
  16937. // in the group.
  16938. TargetSelection *string `locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  16939. // A list of things and thing groups to which the job should be sent.
  16940. //
  16941. // Targets is a required field
  16942. Targets []*string `locationName:"targets" min:"1" type:"list" required:"true"`
  16943. // Specifies the amount of time each device has to finish its execution of the
  16944. // job. The timer is started when the job execution status is set to IN_PROGRESS.
  16945. // If the job execution status is not set to another terminal state before the
  16946. // time expires, it will be automatically set to TIMED_OUT.
  16947. TimeoutConfig *TimeoutConfig `locationName:"timeoutConfig" type:"structure"`
  16948. }
  16949. // String returns the string representation
  16950. func (s CreateJobInput) String() string {
  16951. return awsutil.Prettify(s)
  16952. }
  16953. // GoString returns the string representation
  16954. func (s CreateJobInput) GoString() string {
  16955. return s.String()
  16956. }
  16957. // Validate inspects the fields of the type to determine if they are valid.
  16958. func (s *CreateJobInput) Validate() error {
  16959. invalidParams := request.ErrInvalidParams{Context: "CreateJobInput"}
  16960. if s.DocumentSource != nil && len(*s.DocumentSource) < 1 {
  16961. invalidParams.Add(request.NewErrParamMinLen("DocumentSource", 1))
  16962. }
  16963. if s.JobId == nil {
  16964. invalidParams.Add(request.NewErrParamRequired("JobId"))
  16965. }
  16966. if s.JobId != nil && len(*s.JobId) < 1 {
  16967. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  16968. }
  16969. if s.Targets == nil {
  16970. invalidParams.Add(request.NewErrParamRequired("Targets"))
  16971. }
  16972. if s.Targets != nil && len(s.Targets) < 1 {
  16973. invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
  16974. }
  16975. if s.AbortConfig != nil {
  16976. if err := s.AbortConfig.Validate(); err != nil {
  16977. invalidParams.AddNested("AbortConfig", err.(request.ErrInvalidParams))
  16978. }
  16979. }
  16980. if s.JobExecutionsRolloutConfig != nil {
  16981. if err := s.JobExecutionsRolloutConfig.Validate(); err != nil {
  16982. invalidParams.AddNested("JobExecutionsRolloutConfig", err.(request.ErrInvalidParams))
  16983. }
  16984. }
  16985. if s.PresignedUrlConfig != nil {
  16986. if err := s.PresignedUrlConfig.Validate(); err != nil {
  16987. invalidParams.AddNested("PresignedUrlConfig", err.(request.ErrInvalidParams))
  16988. }
  16989. }
  16990. if invalidParams.Len() > 0 {
  16991. return invalidParams
  16992. }
  16993. return nil
  16994. }
  16995. // SetAbortConfig sets the AbortConfig field's value.
  16996. func (s *CreateJobInput) SetAbortConfig(v *AbortConfig) *CreateJobInput {
  16997. s.AbortConfig = v
  16998. return s
  16999. }
  17000. // SetDescription sets the Description field's value.
  17001. func (s *CreateJobInput) SetDescription(v string) *CreateJobInput {
  17002. s.Description = &v
  17003. return s
  17004. }
  17005. // SetDocument sets the Document field's value.
  17006. func (s *CreateJobInput) SetDocument(v string) *CreateJobInput {
  17007. s.Document = &v
  17008. return s
  17009. }
  17010. // SetDocumentSource sets the DocumentSource field's value.
  17011. func (s *CreateJobInput) SetDocumentSource(v string) *CreateJobInput {
  17012. s.DocumentSource = &v
  17013. return s
  17014. }
  17015. // SetJobExecutionsRolloutConfig sets the JobExecutionsRolloutConfig field's value.
  17016. func (s *CreateJobInput) SetJobExecutionsRolloutConfig(v *JobExecutionsRolloutConfig) *CreateJobInput {
  17017. s.JobExecutionsRolloutConfig = v
  17018. return s
  17019. }
  17020. // SetJobId sets the JobId field's value.
  17021. func (s *CreateJobInput) SetJobId(v string) *CreateJobInput {
  17022. s.JobId = &v
  17023. return s
  17024. }
  17025. // SetPresignedUrlConfig sets the PresignedUrlConfig field's value.
  17026. func (s *CreateJobInput) SetPresignedUrlConfig(v *PresignedUrlConfig) *CreateJobInput {
  17027. s.PresignedUrlConfig = v
  17028. return s
  17029. }
  17030. // SetTags sets the Tags field's value.
  17031. func (s *CreateJobInput) SetTags(v []*Tag) *CreateJobInput {
  17032. s.Tags = v
  17033. return s
  17034. }
  17035. // SetTargetSelection sets the TargetSelection field's value.
  17036. func (s *CreateJobInput) SetTargetSelection(v string) *CreateJobInput {
  17037. s.TargetSelection = &v
  17038. return s
  17039. }
  17040. // SetTargets sets the Targets field's value.
  17041. func (s *CreateJobInput) SetTargets(v []*string) *CreateJobInput {
  17042. s.Targets = v
  17043. return s
  17044. }
  17045. // SetTimeoutConfig sets the TimeoutConfig field's value.
  17046. func (s *CreateJobInput) SetTimeoutConfig(v *TimeoutConfig) *CreateJobInput {
  17047. s.TimeoutConfig = v
  17048. return s
  17049. }
  17050. type CreateJobOutput struct {
  17051. _ struct{} `type:"structure"`
  17052. // The job description.
  17053. Description *string `locationName:"description" type:"string"`
  17054. // The job ARN.
  17055. JobArn *string `locationName:"jobArn" type:"string"`
  17056. // The unique identifier you assigned to this job.
  17057. JobId *string `locationName:"jobId" min:"1" type:"string"`
  17058. }
  17059. // String returns the string representation
  17060. func (s CreateJobOutput) String() string {
  17061. return awsutil.Prettify(s)
  17062. }
  17063. // GoString returns the string representation
  17064. func (s CreateJobOutput) GoString() string {
  17065. return s.String()
  17066. }
  17067. // SetDescription sets the Description field's value.
  17068. func (s *CreateJobOutput) SetDescription(v string) *CreateJobOutput {
  17069. s.Description = &v
  17070. return s
  17071. }
  17072. // SetJobArn sets the JobArn field's value.
  17073. func (s *CreateJobOutput) SetJobArn(v string) *CreateJobOutput {
  17074. s.JobArn = &v
  17075. return s
  17076. }
  17077. // SetJobId sets the JobId field's value.
  17078. func (s *CreateJobOutput) SetJobId(v string) *CreateJobOutput {
  17079. s.JobId = &v
  17080. return s
  17081. }
  17082. // The input for the CreateKeysAndCertificate operation.
  17083. type CreateKeysAndCertificateInput struct {
  17084. _ struct{} `type:"structure"`
  17085. // Specifies whether the certificate is active.
  17086. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"`
  17087. }
  17088. // String returns the string representation
  17089. func (s CreateKeysAndCertificateInput) String() string {
  17090. return awsutil.Prettify(s)
  17091. }
  17092. // GoString returns the string representation
  17093. func (s CreateKeysAndCertificateInput) GoString() string {
  17094. return s.String()
  17095. }
  17096. // SetSetAsActive sets the SetAsActive field's value.
  17097. func (s *CreateKeysAndCertificateInput) SetSetAsActive(v bool) *CreateKeysAndCertificateInput {
  17098. s.SetAsActive = &v
  17099. return s
  17100. }
  17101. // The output of the CreateKeysAndCertificate operation.
  17102. type CreateKeysAndCertificateOutput struct {
  17103. _ struct{} `type:"structure"`
  17104. // The ARN of the certificate.
  17105. CertificateArn *string `locationName:"certificateArn" type:"string"`
  17106. // The ID of the certificate. AWS IoT issues a default subject name for the
  17107. // certificate (for example, AWS IoT Certificate).
  17108. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  17109. // The certificate data, in PEM format.
  17110. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"`
  17111. // The generated key pair.
  17112. KeyPair *KeyPair `locationName:"keyPair" type:"structure"`
  17113. }
  17114. // String returns the string representation
  17115. func (s CreateKeysAndCertificateOutput) String() string {
  17116. return awsutil.Prettify(s)
  17117. }
  17118. // GoString returns the string representation
  17119. func (s CreateKeysAndCertificateOutput) GoString() string {
  17120. return s.String()
  17121. }
  17122. // SetCertificateArn sets the CertificateArn field's value.
  17123. func (s *CreateKeysAndCertificateOutput) SetCertificateArn(v string) *CreateKeysAndCertificateOutput {
  17124. s.CertificateArn = &v
  17125. return s
  17126. }
  17127. // SetCertificateId sets the CertificateId field's value.
  17128. func (s *CreateKeysAndCertificateOutput) SetCertificateId(v string) *CreateKeysAndCertificateOutput {
  17129. s.CertificateId = &v
  17130. return s
  17131. }
  17132. // SetCertificatePem sets the CertificatePem field's value.
  17133. func (s *CreateKeysAndCertificateOutput) SetCertificatePem(v string) *CreateKeysAndCertificateOutput {
  17134. s.CertificatePem = &v
  17135. return s
  17136. }
  17137. // SetKeyPair sets the KeyPair field's value.
  17138. func (s *CreateKeysAndCertificateOutput) SetKeyPair(v *KeyPair) *CreateKeysAndCertificateOutput {
  17139. s.KeyPair = v
  17140. return s
  17141. }
  17142. type CreateOTAUpdateInput struct {
  17143. _ struct{} `type:"structure"`
  17144. // A list of additional OTA update parameters which are name-value pairs.
  17145. AdditionalParameters map[string]*string `locationName:"additionalParameters" type:"map"`
  17146. // Configuration for the rollout of OTA updates.
  17147. AwsJobExecutionsRolloutConfig *AwsJobExecutionsRolloutConfig `locationName:"awsJobExecutionsRolloutConfig" type:"structure"`
  17148. // The description of the OTA update.
  17149. Description *string `locationName:"description" type:"string"`
  17150. // The files to be streamed by the OTA update.
  17151. //
  17152. // Files is a required field
  17153. Files []*OTAUpdateFile `locationName:"files" min:"1" type:"list" required:"true"`
  17154. // The ID of the OTA update to be created.
  17155. //
  17156. // OtaUpdateId is a required field
  17157. OtaUpdateId *string `location:"uri" locationName:"otaUpdateId" min:"1" type:"string" required:"true"`
  17158. // The IAM role that allows access to the AWS IoT Jobs service.
  17159. //
  17160. // RoleArn is a required field
  17161. RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"`
  17162. // Specifies whether the update will continue to run (CONTINUOUS), or will be
  17163. // complete after all the things specified as targets have completed the update
  17164. // (SNAPSHOT). If continuous, the update may also be run on a thing when a change
  17165. // is detected in a target. For example, an update will run on a thing when
  17166. // the thing is added to a target group, even after the update was completed
  17167. // by all things originally in the group. Valid values: CONTINUOUS | SNAPSHOT.
  17168. TargetSelection *string `locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  17169. // The targeted devices to receive OTA updates.
  17170. //
  17171. // Targets is a required field
  17172. Targets []*string `locationName:"targets" min:"1" type:"list" required:"true"`
  17173. }
  17174. // String returns the string representation
  17175. func (s CreateOTAUpdateInput) String() string {
  17176. return awsutil.Prettify(s)
  17177. }
  17178. // GoString returns the string representation
  17179. func (s CreateOTAUpdateInput) GoString() string {
  17180. return s.String()
  17181. }
  17182. // Validate inspects the fields of the type to determine if they are valid.
  17183. func (s *CreateOTAUpdateInput) Validate() error {
  17184. invalidParams := request.ErrInvalidParams{Context: "CreateOTAUpdateInput"}
  17185. if s.Files == nil {
  17186. invalidParams.Add(request.NewErrParamRequired("Files"))
  17187. }
  17188. if s.Files != nil && len(s.Files) < 1 {
  17189. invalidParams.Add(request.NewErrParamMinLen("Files", 1))
  17190. }
  17191. if s.OtaUpdateId == nil {
  17192. invalidParams.Add(request.NewErrParamRequired("OtaUpdateId"))
  17193. }
  17194. if s.OtaUpdateId != nil && len(*s.OtaUpdateId) < 1 {
  17195. invalidParams.Add(request.NewErrParamMinLen("OtaUpdateId", 1))
  17196. }
  17197. if s.RoleArn == nil {
  17198. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  17199. }
  17200. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  17201. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  17202. }
  17203. if s.Targets == nil {
  17204. invalidParams.Add(request.NewErrParamRequired("Targets"))
  17205. }
  17206. if s.Targets != nil && len(s.Targets) < 1 {
  17207. invalidParams.Add(request.NewErrParamMinLen("Targets", 1))
  17208. }
  17209. if s.AwsJobExecutionsRolloutConfig != nil {
  17210. if err := s.AwsJobExecutionsRolloutConfig.Validate(); err != nil {
  17211. invalidParams.AddNested("AwsJobExecutionsRolloutConfig", err.(request.ErrInvalidParams))
  17212. }
  17213. }
  17214. if s.Files != nil {
  17215. for i, v := range s.Files {
  17216. if v == nil {
  17217. continue
  17218. }
  17219. if err := v.Validate(); err != nil {
  17220. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Files", i), err.(request.ErrInvalidParams))
  17221. }
  17222. }
  17223. }
  17224. if invalidParams.Len() > 0 {
  17225. return invalidParams
  17226. }
  17227. return nil
  17228. }
  17229. // SetAdditionalParameters sets the AdditionalParameters field's value.
  17230. func (s *CreateOTAUpdateInput) SetAdditionalParameters(v map[string]*string) *CreateOTAUpdateInput {
  17231. s.AdditionalParameters = v
  17232. return s
  17233. }
  17234. // SetAwsJobExecutionsRolloutConfig sets the AwsJobExecutionsRolloutConfig field's value.
  17235. func (s *CreateOTAUpdateInput) SetAwsJobExecutionsRolloutConfig(v *AwsJobExecutionsRolloutConfig) *CreateOTAUpdateInput {
  17236. s.AwsJobExecutionsRolloutConfig = v
  17237. return s
  17238. }
  17239. // SetDescription sets the Description field's value.
  17240. func (s *CreateOTAUpdateInput) SetDescription(v string) *CreateOTAUpdateInput {
  17241. s.Description = &v
  17242. return s
  17243. }
  17244. // SetFiles sets the Files field's value.
  17245. func (s *CreateOTAUpdateInput) SetFiles(v []*OTAUpdateFile) *CreateOTAUpdateInput {
  17246. s.Files = v
  17247. return s
  17248. }
  17249. // SetOtaUpdateId sets the OtaUpdateId field's value.
  17250. func (s *CreateOTAUpdateInput) SetOtaUpdateId(v string) *CreateOTAUpdateInput {
  17251. s.OtaUpdateId = &v
  17252. return s
  17253. }
  17254. // SetRoleArn sets the RoleArn field's value.
  17255. func (s *CreateOTAUpdateInput) SetRoleArn(v string) *CreateOTAUpdateInput {
  17256. s.RoleArn = &v
  17257. return s
  17258. }
  17259. // SetTargetSelection sets the TargetSelection field's value.
  17260. func (s *CreateOTAUpdateInput) SetTargetSelection(v string) *CreateOTAUpdateInput {
  17261. s.TargetSelection = &v
  17262. return s
  17263. }
  17264. // SetTargets sets the Targets field's value.
  17265. func (s *CreateOTAUpdateInput) SetTargets(v []*string) *CreateOTAUpdateInput {
  17266. s.Targets = v
  17267. return s
  17268. }
  17269. type CreateOTAUpdateOutput struct {
  17270. _ struct{} `type:"structure"`
  17271. // The AWS IoT job ARN associated with the OTA update.
  17272. AwsIotJobArn *string `locationName:"awsIotJobArn" type:"string"`
  17273. // The AWS IoT job ID associated with the OTA update.
  17274. AwsIotJobId *string `locationName:"awsIotJobId" type:"string"`
  17275. // The OTA update ARN.
  17276. OtaUpdateArn *string `locationName:"otaUpdateArn" type:"string"`
  17277. // The OTA update ID.
  17278. OtaUpdateId *string `locationName:"otaUpdateId" min:"1" type:"string"`
  17279. // The OTA update status.
  17280. OtaUpdateStatus *string `locationName:"otaUpdateStatus" type:"string" enum:"OTAUpdateStatus"`
  17281. }
  17282. // String returns the string representation
  17283. func (s CreateOTAUpdateOutput) String() string {
  17284. return awsutil.Prettify(s)
  17285. }
  17286. // GoString returns the string representation
  17287. func (s CreateOTAUpdateOutput) GoString() string {
  17288. return s.String()
  17289. }
  17290. // SetAwsIotJobArn sets the AwsIotJobArn field's value.
  17291. func (s *CreateOTAUpdateOutput) SetAwsIotJobArn(v string) *CreateOTAUpdateOutput {
  17292. s.AwsIotJobArn = &v
  17293. return s
  17294. }
  17295. // SetAwsIotJobId sets the AwsIotJobId field's value.
  17296. func (s *CreateOTAUpdateOutput) SetAwsIotJobId(v string) *CreateOTAUpdateOutput {
  17297. s.AwsIotJobId = &v
  17298. return s
  17299. }
  17300. // SetOtaUpdateArn sets the OtaUpdateArn field's value.
  17301. func (s *CreateOTAUpdateOutput) SetOtaUpdateArn(v string) *CreateOTAUpdateOutput {
  17302. s.OtaUpdateArn = &v
  17303. return s
  17304. }
  17305. // SetOtaUpdateId sets the OtaUpdateId field's value.
  17306. func (s *CreateOTAUpdateOutput) SetOtaUpdateId(v string) *CreateOTAUpdateOutput {
  17307. s.OtaUpdateId = &v
  17308. return s
  17309. }
  17310. // SetOtaUpdateStatus sets the OtaUpdateStatus field's value.
  17311. func (s *CreateOTAUpdateOutput) SetOtaUpdateStatus(v string) *CreateOTAUpdateOutput {
  17312. s.OtaUpdateStatus = &v
  17313. return s
  17314. }
  17315. // The input for the CreatePolicy operation.
  17316. type CreatePolicyInput struct {
  17317. _ struct{} `type:"structure"`
  17318. // The JSON document that describes the policy. policyDocument must have a minimum
  17319. // length of 1, with a maximum length of 2048, excluding whitespace.
  17320. //
  17321. // PolicyDocument is a required field
  17322. PolicyDocument *string `locationName:"policyDocument" type:"string" required:"true"`
  17323. // The policy name.
  17324. //
  17325. // PolicyName is a required field
  17326. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  17327. }
  17328. // String returns the string representation
  17329. func (s CreatePolicyInput) String() string {
  17330. return awsutil.Prettify(s)
  17331. }
  17332. // GoString returns the string representation
  17333. func (s CreatePolicyInput) GoString() string {
  17334. return s.String()
  17335. }
  17336. // Validate inspects the fields of the type to determine if they are valid.
  17337. func (s *CreatePolicyInput) Validate() error {
  17338. invalidParams := request.ErrInvalidParams{Context: "CreatePolicyInput"}
  17339. if s.PolicyDocument == nil {
  17340. invalidParams.Add(request.NewErrParamRequired("PolicyDocument"))
  17341. }
  17342. if s.PolicyName == nil {
  17343. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  17344. }
  17345. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  17346. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  17347. }
  17348. if invalidParams.Len() > 0 {
  17349. return invalidParams
  17350. }
  17351. return nil
  17352. }
  17353. // SetPolicyDocument sets the PolicyDocument field's value.
  17354. func (s *CreatePolicyInput) SetPolicyDocument(v string) *CreatePolicyInput {
  17355. s.PolicyDocument = &v
  17356. return s
  17357. }
  17358. // SetPolicyName sets the PolicyName field's value.
  17359. func (s *CreatePolicyInput) SetPolicyName(v string) *CreatePolicyInput {
  17360. s.PolicyName = &v
  17361. return s
  17362. }
  17363. // The output from the CreatePolicy operation.
  17364. type CreatePolicyOutput struct {
  17365. _ struct{} `type:"structure"`
  17366. // The policy ARN.
  17367. PolicyArn *string `locationName:"policyArn" type:"string"`
  17368. // The JSON document that describes the policy.
  17369. PolicyDocument *string `locationName:"policyDocument" type:"string"`
  17370. // The policy name.
  17371. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  17372. // The policy version ID.
  17373. PolicyVersionId *string `locationName:"policyVersionId" type:"string"`
  17374. }
  17375. // String returns the string representation
  17376. func (s CreatePolicyOutput) String() string {
  17377. return awsutil.Prettify(s)
  17378. }
  17379. // GoString returns the string representation
  17380. func (s CreatePolicyOutput) GoString() string {
  17381. return s.String()
  17382. }
  17383. // SetPolicyArn sets the PolicyArn field's value.
  17384. func (s *CreatePolicyOutput) SetPolicyArn(v string) *CreatePolicyOutput {
  17385. s.PolicyArn = &v
  17386. return s
  17387. }
  17388. // SetPolicyDocument sets the PolicyDocument field's value.
  17389. func (s *CreatePolicyOutput) SetPolicyDocument(v string) *CreatePolicyOutput {
  17390. s.PolicyDocument = &v
  17391. return s
  17392. }
  17393. // SetPolicyName sets the PolicyName field's value.
  17394. func (s *CreatePolicyOutput) SetPolicyName(v string) *CreatePolicyOutput {
  17395. s.PolicyName = &v
  17396. return s
  17397. }
  17398. // SetPolicyVersionId sets the PolicyVersionId field's value.
  17399. func (s *CreatePolicyOutput) SetPolicyVersionId(v string) *CreatePolicyOutput {
  17400. s.PolicyVersionId = &v
  17401. return s
  17402. }
  17403. // The input for the CreatePolicyVersion operation.
  17404. type CreatePolicyVersionInput struct {
  17405. _ struct{} `type:"structure"`
  17406. // The JSON document that describes the policy. Minimum length of 1. Maximum
  17407. // length of 2048, excluding whitespace.
  17408. //
  17409. // PolicyDocument is a required field
  17410. PolicyDocument *string `locationName:"policyDocument" type:"string" required:"true"`
  17411. // The policy name.
  17412. //
  17413. // PolicyName is a required field
  17414. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  17415. // Specifies whether the policy version is set as the default. When this parameter
  17416. // is true, the new policy version becomes the operative version (that is, the
  17417. // version that is in effect for the certificates to which the policy is attached).
  17418. SetAsDefault *bool `location:"querystring" locationName:"setAsDefault" type:"boolean"`
  17419. }
  17420. // String returns the string representation
  17421. func (s CreatePolicyVersionInput) String() string {
  17422. return awsutil.Prettify(s)
  17423. }
  17424. // GoString returns the string representation
  17425. func (s CreatePolicyVersionInput) GoString() string {
  17426. return s.String()
  17427. }
  17428. // Validate inspects the fields of the type to determine if they are valid.
  17429. func (s *CreatePolicyVersionInput) Validate() error {
  17430. invalidParams := request.ErrInvalidParams{Context: "CreatePolicyVersionInput"}
  17431. if s.PolicyDocument == nil {
  17432. invalidParams.Add(request.NewErrParamRequired("PolicyDocument"))
  17433. }
  17434. if s.PolicyName == nil {
  17435. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  17436. }
  17437. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  17438. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  17439. }
  17440. if invalidParams.Len() > 0 {
  17441. return invalidParams
  17442. }
  17443. return nil
  17444. }
  17445. // SetPolicyDocument sets the PolicyDocument field's value.
  17446. func (s *CreatePolicyVersionInput) SetPolicyDocument(v string) *CreatePolicyVersionInput {
  17447. s.PolicyDocument = &v
  17448. return s
  17449. }
  17450. // SetPolicyName sets the PolicyName field's value.
  17451. func (s *CreatePolicyVersionInput) SetPolicyName(v string) *CreatePolicyVersionInput {
  17452. s.PolicyName = &v
  17453. return s
  17454. }
  17455. // SetSetAsDefault sets the SetAsDefault field's value.
  17456. func (s *CreatePolicyVersionInput) SetSetAsDefault(v bool) *CreatePolicyVersionInput {
  17457. s.SetAsDefault = &v
  17458. return s
  17459. }
  17460. // The output of the CreatePolicyVersion operation.
  17461. type CreatePolicyVersionOutput struct {
  17462. _ struct{} `type:"structure"`
  17463. // Specifies whether the policy version is the default.
  17464. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"`
  17465. // The policy ARN.
  17466. PolicyArn *string `locationName:"policyArn" type:"string"`
  17467. // The JSON document that describes the policy.
  17468. PolicyDocument *string `locationName:"policyDocument" type:"string"`
  17469. // The policy version ID.
  17470. PolicyVersionId *string `locationName:"policyVersionId" type:"string"`
  17471. }
  17472. // String returns the string representation
  17473. func (s CreatePolicyVersionOutput) String() string {
  17474. return awsutil.Prettify(s)
  17475. }
  17476. // GoString returns the string representation
  17477. func (s CreatePolicyVersionOutput) GoString() string {
  17478. return s.String()
  17479. }
  17480. // SetIsDefaultVersion sets the IsDefaultVersion field's value.
  17481. func (s *CreatePolicyVersionOutput) SetIsDefaultVersion(v bool) *CreatePolicyVersionOutput {
  17482. s.IsDefaultVersion = &v
  17483. return s
  17484. }
  17485. // SetPolicyArn sets the PolicyArn field's value.
  17486. func (s *CreatePolicyVersionOutput) SetPolicyArn(v string) *CreatePolicyVersionOutput {
  17487. s.PolicyArn = &v
  17488. return s
  17489. }
  17490. // SetPolicyDocument sets the PolicyDocument field's value.
  17491. func (s *CreatePolicyVersionOutput) SetPolicyDocument(v string) *CreatePolicyVersionOutput {
  17492. s.PolicyDocument = &v
  17493. return s
  17494. }
  17495. // SetPolicyVersionId sets the PolicyVersionId field's value.
  17496. func (s *CreatePolicyVersionOutput) SetPolicyVersionId(v string) *CreatePolicyVersionOutput {
  17497. s.PolicyVersionId = &v
  17498. return s
  17499. }
  17500. type CreateRoleAliasInput struct {
  17501. _ struct{} `type:"structure"`
  17502. // How long (in seconds) the credentials will be valid.
  17503. CredentialDurationSeconds *int64 `locationName:"credentialDurationSeconds" min:"900" type:"integer"`
  17504. // The role alias that points to a role ARN. This allows you to change the role
  17505. // without having to update the device.
  17506. //
  17507. // RoleAlias is a required field
  17508. RoleAlias *string `location:"uri" locationName:"roleAlias" min:"1" type:"string" required:"true"`
  17509. // The role ARN.
  17510. //
  17511. // RoleArn is a required field
  17512. RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"`
  17513. }
  17514. // String returns the string representation
  17515. func (s CreateRoleAliasInput) String() string {
  17516. return awsutil.Prettify(s)
  17517. }
  17518. // GoString returns the string representation
  17519. func (s CreateRoleAliasInput) GoString() string {
  17520. return s.String()
  17521. }
  17522. // Validate inspects the fields of the type to determine if they are valid.
  17523. func (s *CreateRoleAliasInput) Validate() error {
  17524. invalidParams := request.ErrInvalidParams{Context: "CreateRoleAliasInput"}
  17525. if s.CredentialDurationSeconds != nil && *s.CredentialDurationSeconds < 900 {
  17526. invalidParams.Add(request.NewErrParamMinValue("CredentialDurationSeconds", 900))
  17527. }
  17528. if s.RoleAlias == nil {
  17529. invalidParams.Add(request.NewErrParamRequired("RoleAlias"))
  17530. }
  17531. if s.RoleAlias != nil && len(*s.RoleAlias) < 1 {
  17532. invalidParams.Add(request.NewErrParamMinLen("RoleAlias", 1))
  17533. }
  17534. if s.RoleArn == nil {
  17535. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  17536. }
  17537. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  17538. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  17539. }
  17540. if invalidParams.Len() > 0 {
  17541. return invalidParams
  17542. }
  17543. return nil
  17544. }
  17545. // SetCredentialDurationSeconds sets the CredentialDurationSeconds field's value.
  17546. func (s *CreateRoleAliasInput) SetCredentialDurationSeconds(v int64) *CreateRoleAliasInput {
  17547. s.CredentialDurationSeconds = &v
  17548. return s
  17549. }
  17550. // SetRoleAlias sets the RoleAlias field's value.
  17551. func (s *CreateRoleAliasInput) SetRoleAlias(v string) *CreateRoleAliasInput {
  17552. s.RoleAlias = &v
  17553. return s
  17554. }
  17555. // SetRoleArn sets the RoleArn field's value.
  17556. func (s *CreateRoleAliasInput) SetRoleArn(v string) *CreateRoleAliasInput {
  17557. s.RoleArn = &v
  17558. return s
  17559. }
  17560. type CreateRoleAliasOutput struct {
  17561. _ struct{} `type:"structure"`
  17562. // The role alias.
  17563. RoleAlias *string `locationName:"roleAlias" min:"1" type:"string"`
  17564. // The role alias ARN.
  17565. RoleAliasArn *string `locationName:"roleAliasArn" type:"string"`
  17566. }
  17567. // String returns the string representation
  17568. func (s CreateRoleAliasOutput) String() string {
  17569. return awsutil.Prettify(s)
  17570. }
  17571. // GoString returns the string representation
  17572. func (s CreateRoleAliasOutput) GoString() string {
  17573. return s.String()
  17574. }
  17575. // SetRoleAlias sets the RoleAlias field's value.
  17576. func (s *CreateRoleAliasOutput) SetRoleAlias(v string) *CreateRoleAliasOutput {
  17577. s.RoleAlias = &v
  17578. return s
  17579. }
  17580. // SetRoleAliasArn sets the RoleAliasArn field's value.
  17581. func (s *CreateRoleAliasOutput) SetRoleAliasArn(v string) *CreateRoleAliasOutput {
  17582. s.RoleAliasArn = &v
  17583. return s
  17584. }
  17585. type CreateScheduledAuditInput struct {
  17586. _ struct{} `type:"structure"`
  17587. // The day of the month on which the scheduled audit takes place. Can be "1"
  17588. // through "31" or "LAST". This field is required if the "frequency" parameter
  17589. // is set to "MONTHLY". If days 29-31 are specified, and the month does not
  17590. // have that many days, the audit takes place on the "LAST" day of the month.
  17591. DayOfMonth *string `locationName:"dayOfMonth" type:"string"`
  17592. // The day of the week on which the scheduled audit takes place. Can be one
  17593. // of "SUN", "MON", "TUE", "WED", "THU", "FRI" or "SAT". This field is required
  17594. // if the "frequency" parameter is set to "WEEKLY" or "BIWEEKLY".
  17595. DayOfWeek *string `locationName:"dayOfWeek" type:"string" enum:"DayOfWeek"`
  17596. // How often the scheduled audit takes place. Can be one of "DAILY", "WEEKLY",
  17597. // "BIWEEKLY" or "MONTHLY". The actual start time of each audit is determined
  17598. // by the system.
  17599. //
  17600. // Frequency is a required field
  17601. Frequency *string `locationName:"frequency" type:"string" required:"true" enum:"AuditFrequency"`
  17602. // The name you want to give to the scheduled audit. (Max. 128 chars)
  17603. //
  17604. // ScheduledAuditName is a required field
  17605. ScheduledAuditName *string `location:"uri" locationName:"scheduledAuditName" min:"1" type:"string" required:"true"`
  17606. // Which checks are performed during the scheduled audit. Checks must be enabled
  17607. // for your account. (Use DescribeAccountAuditConfiguration to see the list
  17608. // of all checks including those that are enabled or UpdateAccountAuditConfiguration
  17609. // to select which checks are enabled.)
  17610. //
  17611. // TargetCheckNames is a required field
  17612. TargetCheckNames []*string `locationName:"targetCheckNames" type:"list" required:"true"`
  17613. }
  17614. // String returns the string representation
  17615. func (s CreateScheduledAuditInput) String() string {
  17616. return awsutil.Prettify(s)
  17617. }
  17618. // GoString returns the string representation
  17619. func (s CreateScheduledAuditInput) GoString() string {
  17620. return s.String()
  17621. }
  17622. // Validate inspects the fields of the type to determine if they are valid.
  17623. func (s *CreateScheduledAuditInput) Validate() error {
  17624. invalidParams := request.ErrInvalidParams{Context: "CreateScheduledAuditInput"}
  17625. if s.Frequency == nil {
  17626. invalidParams.Add(request.NewErrParamRequired("Frequency"))
  17627. }
  17628. if s.ScheduledAuditName == nil {
  17629. invalidParams.Add(request.NewErrParamRequired("ScheduledAuditName"))
  17630. }
  17631. if s.ScheduledAuditName != nil && len(*s.ScheduledAuditName) < 1 {
  17632. invalidParams.Add(request.NewErrParamMinLen("ScheduledAuditName", 1))
  17633. }
  17634. if s.TargetCheckNames == nil {
  17635. invalidParams.Add(request.NewErrParamRequired("TargetCheckNames"))
  17636. }
  17637. if invalidParams.Len() > 0 {
  17638. return invalidParams
  17639. }
  17640. return nil
  17641. }
  17642. // SetDayOfMonth sets the DayOfMonth field's value.
  17643. func (s *CreateScheduledAuditInput) SetDayOfMonth(v string) *CreateScheduledAuditInput {
  17644. s.DayOfMonth = &v
  17645. return s
  17646. }
  17647. // SetDayOfWeek sets the DayOfWeek field's value.
  17648. func (s *CreateScheduledAuditInput) SetDayOfWeek(v string) *CreateScheduledAuditInput {
  17649. s.DayOfWeek = &v
  17650. return s
  17651. }
  17652. // SetFrequency sets the Frequency field's value.
  17653. func (s *CreateScheduledAuditInput) SetFrequency(v string) *CreateScheduledAuditInput {
  17654. s.Frequency = &v
  17655. return s
  17656. }
  17657. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  17658. func (s *CreateScheduledAuditInput) SetScheduledAuditName(v string) *CreateScheduledAuditInput {
  17659. s.ScheduledAuditName = &v
  17660. return s
  17661. }
  17662. // SetTargetCheckNames sets the TargetCheckNames field's value.
  17663. func (s *CreateScheduledAuditInput) SetTargetCheckNames(v []*string) *CreateScheduledAuditInput {
  17664. s.TargetCheckNames = v
  17665. return s
  17666. }
  17667. type CreateScheduledAuditOutput struct {
  17668. _ struct{} `type:"structure"`
  17669. // The ARN of the scheduled audit.
  17670. ScheduledAuditArn *string `locationName:"scheduledAuditArn" type:"string"`
  17671. }
  17672. // String returns the string representation
  17673. func (s CreateScheduledAuditOutput) String() string {
  17674. return awsutil.Prettify(s)
  17675. }
  17676. // GoString returns the string representation
  17677. func (s CreateScheduledAuditOutput) GoString() string {
  17678. return s.String()
  17679. }
  17680. // SetScheduledAuditArn sets the ScheduledAuditArn field's value.
  17681. func (s *CreateScheduledAuditOutput) SetScheduledAuditArn(v string) *CreateScheduledAuditOutput {
  17682. s.ScheduledAuditArn = &v
  17683. return s
  17684. }
  17685. type CreateSecurityProfileInput struct {
  17686. _ struct{} `type:"structure"`
  17687. // Specifies the destinations to which alerts are sent. (Alerts are always sent
  17688. // to the console.) Alerts are generated when a device (thing) violates a behavior.
  17689. AlertTargets map[string]*AlertTarget `locationName:"alertTargets" type:"map"`
  17690. // Specifies the behaviors that, when violated by a device (thing), cause an
  17691. // alert.
  17692. //
  17693. // Behaviors is a required field
  17694. Behaviors []*Behavior `locationName:"behaviors" type:"list" required:"true"`
  17695. // A description of the security profile.
  17696. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"`
  17697. // The name you are giving to the security profile.
  17698. //
  17699. // SecurityProfileName is a required field
  17700. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  17701. // Metadata which can be used to manage the security profile.
  17702. Tags []*Tag `locationName:"tags" type:"list"`
  17703. }
  17704. // String returns the string representation
  17705. func (s CreateSecurityProfileInput) String() string {
  17706. return awsutil.Prettify(s)
  17707. }
  17708. // GoString returns the string representation
  17709. func (s CreateSecurityProfileInput) GoString() string {
  17710. return s.String()
  17711. }
  17712. // Validate inspects the fields of the type to determine if they are valid.
  17713. func (s *CreateSecurityProfileInput) Validate() error {
  17714. invalidParams := request.ErrInvalidParams{Context: "CreateSecurityProfileInput"}
  17715. if s.Behaviors == nil {
  17716. invalidParams.Add(request.NewErrParamRequired("Behaviors"))
  17717. }
  17718. if s.SecurityProfileName == nil {
  17719. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  17720. }
  17721. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  17722. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  17723. }
  17724. if s.AlertTargets != nil {
  17725. for i, v := range s.AlertTargets {
  17726. if v == nil {
  17727. continue
  17728. }
  17729. if err := v.Validate(); err != nil {
  17730. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AlertTargets", i), err.(request.ErrInvalidParams))
  17731. }
  17732. }
  17733. }
  17734. if s.Behaviors != nil {
  17735. for i, v := range s.Behaviors {
  17736. if v == nil {
  17737. continue
  17738. }
  17739. if err := v.Validate(); err != nil {
  17740. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Behaviors", i), err.(request.ErrInvalidParams))
  17741. }
  17742. }
  17743. }
  17744. if invalidParams.Len() > 0 {
  17745. return invalidParams
  17746. }
  17747. return nil
  17748. }
  17749. // SetAlertTargets sets the AlertTargets field's value.
  17750. func (s *CreateSecurityProfileInput) SetAlertTargets(v map[string]*AlertTarget) *CreateSecurityProfileInput {
  17751. s.AlertTargets = v
  17752. return s
  17753. }
  17754. // SetBehaviors sets the Behaviors field's value.
  17755. func (s *CreateSecurityProfileInput) SetBehaviors(v []*Behavior) *CreateSecurityProfileInput {
  17756. s.Behaviors = v
  17757. return s
  17758. }
  17759. // SetSecurityProfileDescription sets the SecurityProfileDescription field's value.
  17760. func (s *CreateSecurityProfileInput) SetSecurityProfileDescription(v string) *CreateSecurityProfileInput {
  17761. s.SecurityProfileDescription = &v
  17762. return s
  17763. }
  17764. // SetSecurityProfileName sets the SecurityProfileName field's value.
  17765. func (s *CreateSecurityProfileInput) SetSecurityProfileName(v string) *CreateSecurityProfileInput {
  17766. s.SecurityProfileName = &v
  17767. return s
  17768. }
  17769. // SetTags sets the Tags field's value.
  17770. func (s *CreateSecurityProfileInput) SetTags(v []*Tag) *CreateSecurityProfileInput {
  17771. s.Tags = v
  17772. return s
  17773. }
  17774. type CreateSecurityProfileOutput struct {
  17775. _ struct{} `type:"structure"`
  17776. // The ARN of the security profile.
  17777. SecurityProfileArn *string `locationName:"securityProfileArn" type:"string"`
  17778. // The name you gave to the security profile.
  17779. SecurityProfileName *string `locationName:"securityProfileName" min:"1" type:"string"`
  17780. }
  17781. // String returns the string representation
  17782. func (s CreateSecurityProfileOutput) String() string {
  17783. return awsutil.Prettify(s)
  17784. }
  17785. // GoString returns the string representation
  17786. func (s CreateSecurityProfileOutput) GoString() string {
  17787. return s.String()
  17788. }
  17789. // SetSecurityProfileArn sets the SecurityProfileArn field's value.
  17790. func (s *CreateSecurityProfileOutput) SetSecurityProfileArn(v string) *CreateSecurityProfileOutput {
  17791. s.SecurityProfileArn = &v
  17792. return s
  17793. }
  17794. // SetSecurityProfileName sets the SecurityProfileName field's value.
  17795. func (s *CreateSecurityProfileOutput) SetSecurityProfileName(v string) *CreateSecurityProfileOutput {
  17796. s.SecurityProfileName = &v
  17797. return s
  17798. }
  17799. type CreateStreamInput struct {
  17800. _ struct{} `type:"structure"`
  17801. // A description of the stream.
  17802. Description *string `locationName:"description" type:"string"`
  17803. // The files to stream.
  17804. //
  17805. // Files is a required field
  17806. Files []*StreamFile `locationName:"files" min:"1" type:"list" required:"true"`
  17807. // An IAM role that allows the IoT service principal assumes to access your
  17808. // S3 files.
  17809. //
  17810. // RoleArn is a required field
  17811. RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"`
  17812. // The stream ID.
  17813. //
  17814. // StreamId is a required field
  17815. StreamId *string `location:"uri" locationName:"streamId" min:"1" type:"string" required:"true"`
  17816. }
  17817. // String returns the string representation
  17818. func (s CreateStreamInput) String() string {
  17819. return awsutil.Prettify(s)
  17820. }
  17821. // GoString returns the string representation
  17822. func (s CreateStreamInput) GoString() string {
  17823. return s.String()
  17824. }
  17825. // Validate inspects the fields of the type to determine if they are valid.
  17826. func (s *CreateStreamInput) Validate() error {
  17827. invalidParams := request.ErrInvalidParams{Context: "CreateStreamInput"}
  17828. if s.Files == nil {
  17829. invalidParams.Add(request.NewErrParamRequired("Files"))
  17830. }
  17831. if s.Files != nil && len(s.Files) < 1 {
  17832. invalidParams.Add(request.NewErrParamMinLen("Files", 1))
  17833. }
  17834. if s.RoleArn == nil {
  17835. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  17836. }
  17837. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  17838. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  17839. }
  17840. if s.StreamId == nil {
  17841. invalidParams.Add(request.NewErrParamRequired("StreamId"))
  17842. }
  17843. if s.StreamId != nil && len(*s.StreamId) < 1 {
  17844. invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  17845. }
  17846. if s.Files != nil {
  17847. for i, v := range s.Files {
  17848. if v == nil {
  17849. continue
  17850. }
  17851. if err := v.Validate(); err != nil {
  17852. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Files", i), err.(request.ErrInvalidParams))
  17853. }
  17854. }
  17855. }
  17856. if invalidParams.Len() > 0 {
  17857. return invalidParams
  17858. }
  17859. return nil
  17860. }
  17861. // SetDescription sets the Description field's value.
  17862. func (s *CreateStreamInput) SetDescription(v string) *CreateStreamInput {
  17863. s.Description = &v
  17864. return s
  17865. }
  17866. // SetFiles sets the Files field's value.
  17867. func (s *CreateStreamInput) SetFiles(v []*StreamFile) *CreateStreamInput {
  17868. s.Files = v
  17869. return s
  17870. }
  17871. // SetRoleArn sets the RoleArn field's value.
  17872. func (s *CreateStreamInput) SetRoleArn(v string) *CreateStreamInput {
  17873. s.RoleArn = &v
  17874. return s
  17875. }
  17876. // SetStreamId sets the StreamId field's value.
  17877. func (s *CreateStreamInput) SetStreamId(v string) *CreateStreamInput {
  17878. s.StreamId = &v
  17879. return s
  17880. }
  17881. type CreateStreamOutput struct {
  17882. _ struct{} `type:"structure"`
  17883. // A description of the stream.
  17884. Description *string `locationName:"description" type:"string"`
  17885. // The stream ARN.
  17886. StreamArn *string `locationName:"streamArn" type:"string"`
  17887. // The stream ID.
  17888. StreamId *string `locationName:"streamId" min:"1" type:"string"`
  17889. // The version of the stream.
  17890. StreamVersion *int64 `locationName:"streamVersion" type:"integer"`
  17891. }
  17892. // String returns the string representation
  17893. func (s CreateStreamOutput) String() string {
  17894. return awsutil.Prettify(s)
  17895. }
  17896. // GoString returns the string representation
  17897. func (s CreateStreamOutput) GoString() string {
  17898. return s.String()
  17899. }
  17900. // SetDescription sets the Description field's value.
  17901. func (s *CreateStreamOutput) SetDescription(v string) *CreateStreamOutput {
  17902. s.Description = &v
  17903. return s
  17904. }
  17905. // SetStreamArn sets the StreamArn field's value.
  17906. func (s *CreateStreamOutput) SetStreamArn(v string) *CreateStreamOutput {
  17907. s.StreamArn = &v
  17908. return s
  17909. }
  17910. // SetStreamId sets the StreamId field's value.
  17911. func (s *CreateStreamOutput) SetStreamId(v string) *CreateStreamOutput {
  17912. s.StreamId = &v
  17913. return s
  17914. }
  17915. // SetStreamVersion sets the StreamVersion field's value.
  17916. func (s *CreateStreamOutput) SetStreamVersion(v int64) *CreateStreamOutput {
  17917. s.StreamVersion = &v
  17918. return s
  17919. }
  17920. type CreateThingGroupInput struct {
  17921. _ struct{} `type:"structure"`
  17922. // The name of the parent thing group.
  17923. ParentGroupName *string `locationName:"parentGroupName" min:"1" type:"string"`
  17924. // Metadata which can be used to manage the thing group.
  17925. Tags []*Tag `locationName:"tags" type:"list"`
  17926. // The thing group name to create.
  17927. //
  17928. // ThingGroupName is a required field
  17929. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  17930. // The thing group properties.
  17931. ThingGroupProperties *ThingGroupProperties `locationName:"thingGroupProperties" type:"structure"`
  17932. }
  17933. // String returns the string representation
  17934. func (s CreateThingGroupInput) String() string {
  17935. return awsutil.Prettify(s)
  17936. }
  17937. // GoString returns the string representation
  17938. func (s CreateThingGroupInput) GoString() string {
  17939. return s.String()
  17940. }
  17941. // Validate inspects the fields of the type to determine if they are valid.
  17942. func (s *CreateThingGroupInput) Validate() error {
  17943. invalidParams := request.ErrInvalidParams{Context: "CreateThingGroupInput"}
  17944. if s.ParentGroupName != nil && len(*s.ParentGroupName) < 1 {
  17945. invalidParams.Add(request.NewErrParamMinLen("ParentGroupName", 1))
  17946. }
  17947. if s.ThingGroupName == nil {
  17948. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  17949. }
  17950. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  17951. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  17952. }
  17953. if invalidParams.Len() > 0 {
  17954. return invalidParams
  17955. }
  17956. return nil
  17957. }
  17958. // SetParentGroupName sets the ParentGroupName field's value.
  17959. func (s *CreateThingGroupInput) SetParentGroupName(v string) *CreateThingGroupInput {
  17960. s.ParentGroupName = &v
  17961. return s
  17962. }
  17963. // SetTags sets the Tags field's value.
  17964. func (s *CreateThingGroupInput) SetTags(v []*Tag) *CreateThingGroupInput {
  17965. s.Tags = v
  17966. return s
  17967. }
  17968. // SetThingGroupName sets the ThingGroupName field's value.
  17969. func (s *CreateThingGroupInput) SetThingGroupName(v string) *CreateThingGroupInput {
  17970. s.ThingGroupName = &v
  17971. return s
  17972. }
  17973. // SetThingGroupProperties sets the ThingGroupProperties field's value.
  17974. func (s *CreateThingGroupInput) SetThingGroupProperties(v *ThingGroupProperties) *CreateThingGroupInput {
  17975. s.ThingGroupProperties = v
  17976. return s
  17977. }
  17978. type CreateThingGroupOutput struct {
  17979. _ struct{} `type:"structure"`
  17980. // The thing group ARN.
  17981. ThingGroupArn *string `locationName:"thingGroupArn" type:"string"`
  17982. // The thing group ID.
  17983. ThingGroupId *string `locationName:"thingGroupId" min:"1" type:"string"`
  17984. // The thing group name.
  17985. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  17986. }
  17987. // String returns the string representation
  17988. func (s CreateThingGroupOutput) String() string {
  17989. return awsutil.Prettify(s)
  17990. }
  17991. // GoString returns the string representation
  17992. func (s CreateThingGroupOutput) GoString() string {
  17993. return s.String()
  17994. }
  17995. // SetThingGroupArn sets the ThingGroupArn field's value.
  17996. func (s *CreateThingGroupOutput) SetThingGroupArn(v string) *CreateThingGroupOutput {
  17997. s.ThingGroupArn = &v
  17998. return s
  17999. }
  18000. // SetThingGroupId sets the ThingGroupId field's value.
  18001. func (s *CreateThingGroupOutput) SetThingGroupId(v string) *CreateThingGroupOutput {
  18002. s.ThingGroupId = &v
  18003. return s
  18004. }
  18005. // SetThingGroupName sets the ThingGroupName field's value.
  18006. func (s *CreateThingGroupOutput) SetThingGroupName(v string) *CreateThingGroupOutput {
  18007. s.ThingGroupName = &v
  18008. return s
  18009. }
  18010. // The input for the CreateThing operation.
  18011. type CreateThingInput struct {
  18012. _ struct{} `type:"structure"`
  18013. // The attribute payload, which consists of up to three name/value pairs in
  18014. // a JSON document. For example:
  18015. //
  18016. // {\"attributes\":{\"string1\":\"string2\"}}
  18017. AttributePayload *AttributePayload `locationName:"attributePayload" type:"structure"`
  18018. // The name of the billing group the thing will be added to.
  18019. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  18020. // The name of the thing to create.
  18021. //
  18022. // ThingName is a required field
  18023. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  18024. // The name of the thing type associated with the new thing.
  18025. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  18026. }
  18027. // String returns the string representation
  18028. func (s CreateThingInput) String() string {
  18029. return awsutil.Prettify(s)
  18030. }
  18031. // GoString returns the string representation
  18032. func (s CreateThingInput) GoString() string {
  18033. return s.String()
  18034. }
  18035. // Validate inspects the fields of the type to determine if they are valid.
  18036. func (s *CreateThingInput) Validate() error {
  18037. invalidParams := request.ErrInvalidParams{Context: "CreateThingInput"}
  18038. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  18039. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  18040. }
  18041. if s.ThingName == nil {
  18042. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  18043. }
  18044. if s.ThingName != nil && len(*s.ThingName) < 1 {
  18045. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  18046. }
  18047. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  18048. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  18049. }
  18050. if invalidParams.Len() > 0 {
  18051. return invalidParams
  18052. }
  18053. return nil
  18054. }
  18055. // SetAttributePayload sets the AttributePayload field's value.
  18056. func (s *CreateThingInput) SetAttributePayload(v *AttributePayload) *CreateThingInput {
  18057. s.AttributePayload = v
  18058. return s
  18059. }
  18060. // SetBillingGroupName sets the BillingGroupName field's value.
  18061. func (s *CreateThingInput) SetBillingGroupName(v string) *CreateThingInput {
  18062. s.BillingGroupName = &v
  18063. return s
  18064. }
  18065. // SetThingName sets the ThingName field's value.
  18066. func (s *CreateThingInput) SetThingName(v string) *CreateThingInput {
  18067. s.ThingName = &v
  18068. return s
  18069. }
  18070. // SetThingTypeName sets the ThingTypeName field's value.
  18071. func (s *CreateThingInput) SetThingTypeName(v string) *CreateThingInput {
  18072. s.ThingTypeName = &v
  18073. return s
  18074. }
  18075. // The output of the CreateThing operation.
  18076. type CreateThingOutput struct {
  18077. _ struct{} `type:"structure"`
  18078. // The ARN of the new thing.
  18079. ThingArn *string `locationName:"thingArn" type:"string"`
  18080. // The thing ID.
  18081. ThingId *string `locationName:"thingId" type:"string"`
  18082. // The name of the new thing.
  18083. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  18084. }
  18085. // String returns the string representation
  18086. func (s CreateThingOutput) String() string {
  18087. return awsutil.Prettify(s)
  18088. }
  18089. // GoString returns the string representation
  18090. func (s CreateThingOutput) GoString() string {
  18091. return s.String()
  18092. }
  18093. // SetThingArn sets the ThingArn field's value.
  18094. func (s *CreateThingOutput) SetThingArn(v string) *CreateThingOutput {
  18095. s.ThingArn = &v
  18096. return s
  18097. }
  18098. // SetThingId sets the ThingId field's value.
  18099. func (s *CreateThingOutput) SetThingId(v string) *CreateThingOutput {
  18100. s.ThingId = &v
  18101. return s
  18102. }
  18103. // SetThingName sets the ThingName field's value.
  18104. func (s *CreateThingOutput) SetThingName(v string) *CreateThingOutput {
  18105. s.ThingName = &v
  18106. return s
  18107. }
  18108. // The input for the CreateThingType operation.
  18109. type CreateThingTypeInput struct {
  18110. _ struct{} `type:"structure"`
  18111. // Metadata which can be used to manage the thing type.
  18112. Tags []*Tag `locationName:"tags" type:"list"`
  18113. // The name of the thing type.
  18114. //
  18115. // ThingTypeName is a required field
  18116. ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"`
  18117. // The ThingTypeProperties for the thing type to create. It contains information
  18118. // about the new thing type including a description, and a list of searchable
  18119. // thing attribute names.
  18120. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"`
  18121. }
  18122. // String returns the string representation
  18123. func (s CreateThingTypeInput) String() string {
  18124. return awsutil.Prettify(s)
  18125. }
  18126. // GoString returns the string representation
  18127. func (s CreateThingTypeInput) GoString() string {
  18128. return s.String()
  18129. }
  18130. // Validate inspects the fields of the type to determine if they are valid.
  18131. func (s *CreateThingTypeInput) Validate() error {
  18132. invalidParams := request.ErrInvalidParams{Context: "CreateThingTypeInput"}
  18133. if s.ThingTypeName == nil {
  18134. invalidParams.Add(request.NewErrParamRequired("ThingTypeName"))
  18135. }
  18136. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  18137. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  18138. }
  18139. if invalidParams.Len() > 0 {
  18140. return invalidParams
  18141. }
  18142. return nil
  18143. }
  18144. // SetTags sets the Tags field's value.
  18145. func (s *CreateThingTypeInput) SetTags(v []*Tag) *CreateThingTypeInput {
  18146. s.Tags = v
  18147. return s
  18148. }
  18149. // SetThingTypeName sets the ThingTypeName field's value.
  18150. func (s *CreateThingTypeInput) SetThingTypeName(v string) *CreateThingTypeInput {
  18151. s.ThingTypeName = &v
  18152. return s
  18153. }
  18154. // SetThingTypeProperties sets the ThingTypeProperties field's value.
  18155. func (s *CreateThingTypeInput) SetThingTypeProperties(v *ThingTypeProperties) *CreateThingTypeInput {
  18156. s.ThingTypeProperties = v
  18157. return s
  18158. }
  18159. // The output of the CreateThingType operation.
  18160. type CreateThingTypeOutput struct {
  18161. _ struct{} `type:"structure"`
  18162. // The Amazon Resource Name (ARN) of the thing type.
  18163. ThingTypeArn *string `locationName:"thingTypeArn" type:"string"`
  18164. // The thing type ID.
  18165. ThingTypeId *string `locationName:"thingTypeId" type:"string"`
  18166. // The name of the thing type.
  18167. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  18168. }
  18169. // String returns the string representation
  18170. func (s CreateThingTypeOutput) String() string {
  18171. return awsutil.Prettify(s)
  18172. }
  18173. // GoString returns the string representation
  18174. func (s CreateThingTypeOutput) GoString() string {
  18175. return s.String()
  18176. }
  18177. // SetThingTypeArn sets the ThingTypeArn field's value.
  18178. func (s *CreateThingTypeOutput) SetThingTypeArn(v string) *CreateThingTypeOutput {
  18179. s.ThingTypeArn = &v
  18180. return s
  18181. }
  18182. // SetThingTypeId sets the ThingTypeId field's value.
  18183. func (s *CreateThingTypeOutput) SetThingTypeId(v string) *CreateThingTypeOutput {
  18184. s.ThingTypeId = &v
  18185. return s
  18186. }
  18187. // SetThingTypeName sets the ThingTypeName field's value.
  18188. func (s *CreateThingTypeOutput) SetThingTypeName(v string) *CreateThingTypeOutput {
  18189. s.ThingTypeName = &v
  18190. return s
  18191. }
  18192. // The input for the CreateTopicRule operation.
  18193. type CreateTopicRuleInput struct {
  18194. _ struct{} `type:"structure" payload:"TopicRulePayload"`
  18195. // The name of the rule.
  18196. //
  18197. // RuleName is a required field
  18198. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  18199. // Metadata which can be used to manage the topic rule.
  18200. //
  18201. // For URI Request parameters use format: ...key1=value1&key2=value2...
  18202. //
  18203. // For the CLI command-line parameter use format: --tags "key1=value1&key2=value2..."
  18204. //
  18205. // For the cli-input-json file use format: "tags": "key1=value1&key2=value2..."
  18206. Tags *string `location:"header" locationName:"x-amz-tagging" type:"string"`
  18207. // The rule payload.
  18208. //
  18209. // TopicRulePayload is a required field
  18210. TopicRulePayload *TopicRulePayload `locationName:"topicRulePayload" type:"structure" required:"true"`
  18211. }
  18212. // String returns the string representation
  18213. func (s CreateTopicRuleInput) String() string {
  18214. return awsutil.Prettify(s)
  18215. }
  18216. // GoString returns the string representation
  18217. func (s CreateTopicRuleInput) GoString() string {
  18218. return s.String()
  18219. }
  18220. // Validate inspects the fields of the type to determine if they are valid.
  18221. func (s *CreateTopicRuleInput) Validate() error {
  18222. invalidParams := request.ErrInvalidParams{Context: "CreateTopicRuleInput"}
  18223. if s.RuleName == nil {
  18224. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  18225. }
  18226. if s.RuleName != nil && len(*s.RuleName) < 1 {
  18227. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  18228. }
  18229. if s.TopicRulePayload == nil {
  18230. invalidParams.Add(request.NewErrParamRequired("TopicRulePayload"))
  18231. }
  18232. if s.TopicRulePayload != nil {
  18233. if err := s.TopicRulePayload.Validate(); err != nil {
  18234. invalidParams.AddNested("TopicRulePayload", err.(request.ErrInvalidParams))
  18235. }
  18236. }
  18237. if invalidParams.Len() > 0 {
  18238. return invalidParams
  18239. }
  18240. return nil
  18241. }
  18242. // SetRuleName sets the RuleName field's value.
  18243. func (s *CreateTopicRuleInput) SetRuleName(v string) *CreateTopicRuleInput {
  18244. s.RuleName = &v
  18245. return s
  18246. }
  18247. // SetTags sets the Tags field's value.
  18248. func (s *CreateTopicRuleInput) SetTags(v string) *CreateTopicRuleInput {
  18249. s.Tags = &v
  18250. return s
  18251. }
  18252. // SetTopicRulePayload sets the TopicRulePayload field's value.
  18253. func (s *CreateTopicRuleInput) SetTopicRulePayload(v *TopicRulePayload) *CreateTopicRuleInput {
  18254. s.TopicRulePayload = v
  18255. return s
  18256. }
  18257. type CreateTopicRuleOutput struct {
  18258. _ struct{} `type:"structure"`
  18259. }
  18260. // String returns the string representation
  18261. func (s CreateTopicRuleOutput) String() string {
  18262. return awsutil.Prettify(s)
  18263. }
  18264. // GoString returns the string representation
  18265. func (s CreateTopicRuleOutput) GoString() string {
  18266. return s.String()
  18267. }
  18268. // Describes a custom method used to code sign a file.
  18269. type CustomCodeSigning struct {
  18270. _ struct{} `type:"structure"`
  18271. // The certificate chain.
  18272. CertificateChain *CodeSigningCertificateChain `locationName:"certificateChain" type:"structure"`
  18273. // The hash algorithm used to code sign the file.
  18274. HashAlgorithm *string `locationName:"hashAlgorithm" type:"string"`
  18275. // The signature for the file.
  18276. Signature *CodeSigningSignature `locationName:"signature" type:"structure"`
  18277. // The signature algorithm used to code sign the file.
  18278. SignatureAlgorithm *string `locationName:"signatureAlgorithm" type:"string"`
  18279. }
  18280. // String returns the string representation
  18281. func (s CustomCodeSigning) String() string {
  18282. return awsutil.Prettify(s)
  18283. }
  18284. // GoString returns the string representation
  18285. func (s CustomCodeSigning) GoString() string {
  18286. return s.String()
  18287. }
  18288. // SetCertificateChain sets the CertificateChain field's value.
  18289. func (s *CustomCodeSigning) SetCertificateChain(v *CodeSigningCertificateChain) *CustomCodeSigning {
  18290. s.CertificateChain = v
  18291. return s
  18292. }
  18293. // SetHashAlgorithm sets the HashAlgorithm field's value.
  18294. func (s *CustomCodeSigning) SetHashAlgorithm(v string) *CustomCodeSigning {
  18295. s.HashAlgorithm = &v
  18296. return s
  18297. }
  18298. // SetSignature sets the Signature field's value.
  18299. func (s *CustomCodeSigning) SetSignature(v *CodeSigningSignature) *CustomCodeSigning {
  18300. s.Signature = v
  18301. return s
  18302. }
  18303. // SetSignatureAlgorithm sets the SignatureAlgorithm field's value.
  18304. func (s *CustomCodeSigning) SetSignatureAlgorithm(v string) *CustomCodeSigning {
  18305. s.SignatureAlgorithm = &v
  18306. return s
  18307. }
  18308. type DeleteAccountAuditConfigurationInput struct {
  18309. _ struct{} `type:"structure"`
  18310. // If true, all scheduled audits are deleted.
  18311. DeleteScheduledAudits *bool `location:"querystring" locationName:"deleteScheduledAudits" type:"boolean"`
  18312. }
  18313. // String returns the string representation
  18314. func (s DeleteAccountAuditConfigurationInput) String() string {
  18315. return awsutil.Prettify(s)
  18316. }
  18317. // GoString returns the string representation
  18318. func (s DeleteAccountAuditConfigurationInput) GoString() string {
  18319. return s.String()
  18320. }
  18321. // SetDeleteScheduledAudits sets the DeleteScheduledAudits field's value.
  18322. func (s *DeleteAccountAuditConfigurationInput) SetDeleteScheduledAudits(v bool) *DeleteAccountAuditConfigurationInput {
  18323. s.DeleteScheduledAudits = &v
  18324. return s
  18325. }
  18326. type DeleteAccountAuditConfigurationOutput struct {
  18327. _ struct{} `type:"structure"`
  18328. }
  18329. // String returns the string representation
  18330. func (s DeleteAccountAuditConfigurationOutput) String() string {
  18331. return awsutil.Prettify(s)
  18332. }
  18333. // GoString returns the string representation
  18334. func (s DeleteAccountAuditConfigurationOutput) GoString() string {
  18335. return s.String()
  18336. }
  18337. type DeleteAuthorizerInput struct {
  18338. _ struct{} `type:"structure"`
  18339. // The name of the authorizer to delete.
  18340. //
  18341. // AuthorizerName is a required field
  18342. AuthorizerName *string `location:"uri" locationName:"authorizerName" min:"1" type:"string" required:"true"`
  18343. }
  18344. // String returns the string representation
  18345. func (s DeleteAuthorizerInput) String() string {
  18346. return awsutil.Prettify(s)
  18347. }
  18348. // GoString returns the string representation
  18349. func (s DeleteAuthorizerInput) GoString() string {
  18350. return s.String()
  18351. }
  18352. // Validate inspects the fields of the type to determine if they are valid.
  18353. func (s *DeleteAuthorizerInput) Validate() error {
  18354. invalidParams := request.ErrInvalidParams{Context: "DeleteAuthorizerInput"}
  18355. if s.AuthorizerName == nil {
  18356. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  18357. }
  18358. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  18359. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  18360. }
  18361. if invalidParams.Len() > 0 {
  18362. return invalidParams
  18363. }
  18364. return nil
  18365. }
  18366. // SetAuthorizerName sets the AuthorizerName field's value.
  18367. func (s *DeleteAuthorizerInput) SetAuthorizerName(v string) *DeleteAuthorizerInput {
  18368. s.AuthorizerName = &v
  18369. return s
  18370. }
  18371. type DeleteAuthorizerOutput struct {
  18372. _ struct{} `type:"structure"`
  18373. }
  18374. // String returns the string representation
  18375. func (s DeleteAuthorizerOutput) String() string {
  18376. return awsutil.Prettify(s)
  18377. }
  18378. // GoString returns the string representation
  18379. func (s DeleteAuthorizerOutput) GoString() string {
  18380. return s.String()
  18381. }
  18382. type DeleteBillingGroupInput struct {
  18383. _ struct{} `type:"structure"`
  18384. // The name of the billing group.
  18385. //
  18386. // BillingGroupName is a required field
  18387. BillingGroupName *string `location:"uri" locationName:"billingGroupName" min:"1" type:"string" required:"true"`
  18388. // The expected version of the billing group. If the version of the billing
  18389. // group does not match the expected version specified in the request, the DeleteBillingGroup
  18390. // request is rejected with a VersionConflictException.
  18391. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  18392. }
  18393. // String returns the string representation
  18394. func (s DeleteBillingGroupInput) String() string {
  18395. return awsutil.Prettify(s)
  18396. }
  18397. // GoString returns the string representation
  18398. func (s DeleteBillingGroupInput) GoString() string {
  18399. return s.String()
  18400. }
  18401. // Validate inspects the fields of the type to determine if they are valid.
  18402. func (s *DeleteBillingGroupInput) Validate() error {
  18403. invalidParams := request.ErrInvalidParams{Context: "DeleteBillingGroupInput"}
  18404. if s.BillingGroupName == nil {
  18405. invalidParams.Add(request.NewErrParamRequired("BillingGroupName"))
  18406. }
  18407. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  18408. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  18409. }
  18410. if invalidParams.Len() > 0 {
  18411. return invalidParams
  18412. }
  18413. return nil
  18414. }
  18415. // SetBillingGroupName sets the BillingGroupName field's value.
  18416. func (s *DeleteBillingGroupInput) SetBillingGroupName(v string) *DeleteBillingGroupInput {
  18417. s.BillingGroupName = &v
  18418. return s
  18419. }
  18420. // SetExpectedVersion sets the ExpectedVersion field's value.
  18421. func (s *DeleteBillingGroupInput) SetExpectedVersion(v int64) *DeleteBillingGroupInput {
  18422. s.ExpectedVersion = &v
  18423. return s
  18424. }
  18425. type DeleteBillingGroupOutput struct {
  18426. _ struct{} `type:"structure"`
  18427. }
  18428. // String returns the string representation
  18429. func (s DeleteBillingGroupOutput) String() string {
  18430. return awsutil.Prettify(s)
  18431. }
  18432. // GoString returns the string representation
  18433. func (s DeleteBillingGroupOutput) GoString() string {
  18434. return s.String()
  18435. }
  18436. // Input for the DeleteCACertificate operation.
  18437. type DeleteCACertificateInput struct {
  18438. _ struct{} `type:"structure"`
  18439. // The ID of the certificate to delete. (The last part of the certificate ARN
  18440. // contains the certificate ID.)
  18441. //
  18442. // CertificateId is a required field
  18443. CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"`
  18444. }
  18445. // String returns the string representation
  18446. func (s DeleteCACertificateInput) String() string {
  18447. return awsutil.Prettify(s)
  18448. }
  18449. // GoString returns the string representation
  18450. func (s DeleteCACertificateInput) GoString() string {
  18451. return s.String()
  18452. }
  18453. // Validate inspects the fields of the type to determine if they are valid.
  18454. func (s *DeleteCACertificateInput) Validate() error {
  18455. invalidParams := request.ErrInvalidParams{Context: "DeleteCACertificateInput"}
  18456. if s.CertificateId == nil {
  18457. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  18458. }
  18459. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  18460. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  18461. }
  18462. if invalidParams.Len() > 0 {
  18463. return invalidParams
  18464. }
  18465. return nil
  18466. }
  18467. // SetCertificateId sets the CertificateId field's value.
  18468. func (s *DeleteCACertificateInput) SetCertificateId(v string) *DeleteCACertificateInput {
  18469. s.CertificateId = &v
  18470. return s
  18471. }
  18472. // The output for the DeleteCACertificate operation.
  18473. type DeleteCACertificateOutput struct {
  18474. _ struct{} `type:"structure"`
  18475. }
  18476. // String returns the string representation
  18477. func (s DeleteCACertificateOutput) String() string {
  18478. return awsutil.Prettify(s)
  18479. }
  18480. // GoString returns the string representation
  18481. func (s DeleteCACertificateOutput) GoString() string {
  18482. return s.String()
  18483. }
  18484. // The input for the DeleteCertificate operation.
  18485. type DeleteCertificateInput struct {
  18486. _ struct{} `type:"structure"`
  18487. // The ID of the certificate. (The last part of the certificate ARN contains
  18488. // the certificate ID.)
  18489. //
  18490. // CertificateId is a required field
  18491. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  18492. // Forces a certificate request to be deleted.
  18493. ForceDelete *bool `location:"querystring" locationName:"forceDelete" type:"boolean"`
  18494. }
  18495. // String returns the string representation
  18496. func (s DeleteCertificateInput) String() string {
  18497. return awsutil.Prettify(s)
  18498. }
  18499. // GoString returns the string representation
  18500. func (s DeleteCertificateInput) GoString() string {
  18501. return s.String()
  18502. }
  18503. // Validate inspects the fields of the type to determine if they are valid.
  18504. func (s *DeleteCertificateInput) Validate() error {
  18505. invalidParams := request.ErrInvalidParams{Context: "DeleteCertificateInput"}
  18506. if s.CertificateId == nil {
  18507. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  18508. }
  18509. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  18510. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  18511. }
  18512. if invalidParams.Len() > 0 {
  18513. return invalidParams
  18514. }
  18515. return nil
  18516. }
  18517. // SetCertificateId sets the CertificateId field's value.
  18518. func (s *DeleteCertificateInput) SetCertificateId(v string) *DeleteCertificateInput {
  18519. s.CertificateId = &v
  18520. return s
  18521. }
  18522. // SetForceDelete sets the ForceDelete field's value.
  18523. func (s *DeleteCertificateInput) SetForceDelete(v bool) *DeleteCertificateInput {
  18524. s.ForceDelete = &v
  18525. return s
  18526. }
  18527. type DeleteCertificateOutput struct {
  18528. _ struct{} `type:"structure"`
  18529. }
  18530. // String returns the string representation
  18531. func (s DeleteCertificateOutput) String() string {
  18532. return awsutil.Prettify(s)
  18533. }
  18534. // GoString returns the string representation
  18535. func (s DeleteCertificateOutput) GoString() string {
  18536. return s.String()
  18537. }
  18538. type DeleteDynamicThingGroupInput struct {
  18539. _ struct{} `type:"structure"`
  18540. // The expected version of the dynamic thing group to delete.
  18541. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  18542. // The name of the dynamic thing group to delete.
  18543. //
  18544. // ThingGroupName is a required field
  18545. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  18546. }
  18547. // String returns the string representation
  18548. func (s DeleteDynamicThingGroupInput) String() string {
  18549. return awsutil.Prettify(s)
  18550. }
  18551. // GoString returns the string representation
  18552. func (s DeleteDynamicThingGroupInput) GoString() string {
  18553. return s.String()
  18554. }
  18555. // Validate inspects the fields of the type to determine if they are valid.
  18556. func (s *DeleteDynamicThingGroupInput) Validate() error {
  18557. invalidParams := request.ErrInvalidParams{Context: "DeleteDynamicThingGroupInput"}
  18558. if s.ThingGroupName == nil {
  18559. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  18560. }
  18561. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  18562. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  18563. }
  18564. if invalidParams.Len() > 0 {
  18565. return invalidParams
  18566. }
  18567. return nil
  18568. }
  18569. // SetExpectedVersion sets the ExpectedVersion field's value.
  18570. func (s *DeleteDynamicThingGroupInput) SetExpectedVersion(v int64) *DeleteDynamicThingGroupInput {
  18571. s.ExpectedVersion = &v
  18572. return s
  18573. }
  18574. // SetThingGroupName sets the ThingGroupName field's value.
  18575. func (s *DeleteDynamicThingGroupInput) SetThingGroupName(v string) *DeleteDynamicThingGroupInput {
  18576. s.ThingGroupName = &v
  18577. return s
  18578. }
  18579. type DeleteDynamicThingGroupOutput struct {
  18580. _ struct{} `type:"structure"`
  18581. }
  18582. // String returns the string representation
  18583. func (s DeleteDynamicThingGroupOutput) String() string {
  18584. return awsutil.Prettify(s)
  18585. }
  18586. // GoString returns the string representation
  18587. func (s DeleteDynamicThingGroupOutput) GoString() string {
  18588. return s.String()
  18589. }
  18590. type DeleteJobExecutionInput struct {
  18591. _ struct{} `type:"structure"`
  18592. // The ID of the job execution to be deleted. The executionNumber refers to
  18593. // the execution of a particular job on a particular device.
  18594. //
  18595. // Note that once a job execution is deleted, the executionNumber may be reused
  18596. // by IoT, so be sure you get and use the correct value here.
  18597. //
  18598. // ExecutionNumber is a required field
  18599. ExecutionNumber *int64 `location:"uri" locationName:"executionNumber" type:"long" required:"true"`
  18600. // (Optional) When true, you can delete a job execution which is "IN_PROGRESS".
  18601. // Otherwise, you can only delete a job execution which is in a terminal state
  18602. // ("SUCCEEDED", "FAILED", "REJECTED", "REMOVED" or "CANCELED") or an exception
  18603. // will occur. The default is false.
  18604. //
  18605. // Deleting a job execution which is "IN_PROGRESS", will cause the device to
  18606. // be unable to access job information or update the job execution status. Use
  18607. // caution and ensure that the device is able to recover to a valid state.
  18608. Force *bool `location:"querystring" locationName:"force" type:"boolean"`
  18609. // The ID of the job whose execution on a particular device will be deleted.
  18610. //
  18611. // JobId is a required field
  18612. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  18613. // The name of the thing whose job execution will be deleted.
  18614. //
  18615. // ThingName is a required field
  18616. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  18617. }
  18618. // String returns the string representation
  18619. func (s DeleteJobExecutionInput) String() string {
  18620. return awsutil.Prettify(s)
  18621. }
  18622. // GoString returns the string representation
  18623. func (s DeleteJobExecutionInput) GoString() string {
  18624. return s.String()
  18625. }
  18626. // Validate inspects the fields of the type to determine if they are valid.
  18627. func (s *DeleteJobExecutionInput) Validate() error {
  18628. invalidParams := request.ErrInvalidParams{Context: "DeleteJobExecutionInput"}
  18629. if s.ExecutionNumber == nil {
  18630. invalidParams.Add(request.NewErrParamRequired("ExecutionNumber"))
  18631. }
  18632. if s.JobId == nil {
  18633. invalidParams.Add(request.NewErrParamRequired("JobId"))
  18634. }
  18635. if s.JobId != nil && len(*s.JobId) < 1 {
  18636. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  18637. }
  18638. if s.ThingName == nil {
  18639. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  18640. }
  18641. if s.ThingName != nil && len(*s.ThingName) < 1 {
  18642. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  18643. }
  18644. if invalidParams.Len() > 0 {
  18645. return invalidParams
  18646. }
  18647. return nil
  18648. }
  18649. // SetExecutionNumber sets the ExecutionNumber field's value.
  18650. func (s *DeleteJobExecutionInput) SetExecutionNumber(v int64) *DeleteJobExecutionInput {
  18651. s.ExecutionNumber = &v
  18652. return s
  18653. }
  18654. // SetForce sets the Force field's value.
  18655. func (s *DeleteJobExecutionInput) SetForce(v bool) *DeleteJobExecutionInput {
  18656. s.Force = &v
  18657. return s
  18658. }
  18659. // SetJobId sets the JobId field's value.
  18660. func (s *DeleteJobExecutionInput) SetJobId(v string) *DeleteJobExecutionInput {
  18661. s.JobId = &v
  18662. return s
  18663. }
  18664. // SetThingName sets the ThingName field's value.
  18665. func (s *DeleteJobExecutionInput) SetThingName(v string) *DeleteJobExecutionInput {
  18666. s.ThingName = &v
  18667. return s
  18668. }
  18669. type DeleteJobExecutionOutput struct {
  18670. _ struct{} `type:"structure"`
  18671. }
  18672. // String returns the string representation
  18673. func (s DeleteJobExecutionOutput) String() string {
  18674. return awsutil.Prettify(s)
  18675. }
  18676. // GoString returns the string representation
  18677. func (s DeleteJobExecutionOutput) GoString() string {
  18678. return s.String()
  18679. }
  18680. type DeleteJobInput struct {
  18681. _ struct{} `type:"structure"`
  18682. // (Optional) When true, you can delete a job which is "IN_PROGRESS". Otherwise,
  18683. // you can only delete a job which is in a terminal state ("COMPLETED" or "CANCELED")
  18684. // or an exception will occur. The default is false.
  18685. //
  18686. // Deleting a job which is "IN_PROGRESS", will cause a device which is executing
  18687. // the job to be unable to access job information or update the job execution
  18688. // status. Use caution and ensure that each device executing a job which is
  18689. // deleted is able to recover to a valid state.
  18690. Force *bool `location:"querystring" locationName:"force" type:"boolean"`
  18691. // The ID of the job to be deleted.
  18692. //
  18693. // After a job deletion is completed, you may reuse this jobId when you create
  18694. // a new job. However, this is not recommended, and you must ensure that your
  18695. // devices are not using the jobId to refer to the deleted job.
  18696. //
  18697. // JobId is a required field
  18698. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  18699. }
  18700. // String returns the string representation
  18701. func (s DeleteJobInput) String() string {
  18702. return awsutil.Prettify(s)
  18703. }
  18704. // GoString returns the string representation
  18705. func (s DeleteJobInput) GoString() string {
  18706. return s.String()
  18707. }
  18708. // Validate inspects the fields of the type to determine if they are valid.
  18709. func (s *DeleteJobInput) Validate() error {
  18710. invalidParams := request.ErrInvalidParams{Context: "DeleteJobInput"}
  18711. if s.JobId == nil {
  18712. invalidParams.Add(request.NewErrParamRequired("JobId"))
  18713. }
  18714. if s.JobId != nil && len(*s.JobId) < 1 {
  18715. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  18716. }
  18717. if invalidParams.Len() > 0 {
  18718. return invalidParams
  18719. }
  18720. return nil
  18721. }
  18722. // SetForce sets the Force field's value.
  18723. func (s *DeleteJobInput) SetForce(v bool) *DeleteJobInput {
  18724. s.Force = &v
  18725. return s
  18726. }
  18727. // SetJobId sets the JobId field's value.
  18728. func (s *DeleteJobInput) SetJobId(v string) *DeleteJobInput {
  18729. s.JobId = &v
  18730. return s
  18731. }
  18732. type DeleteJobOutput struct {
  18733. _ struct{} `type:"structure"`
  18734. }
  18735. // String returns the string representation
  18736. func (s DeleteJobOutput) String() string {
  18737. return awsutil.Prettify(s)
  18738. }
  18739. // GoString returns the string representation
  18740. func (s DeleteJobOutput) GoString() string {
  18741. return s.String()
  18742. }
  18743. type DeleteOTAUpdateInput struct {
  18744. _ struct{} `type:"structure"`
  18745. // Specifies if the stream associated with an OTA update should be deleted when
  18746. // the OTA update is deleted.
  18747. DeleteStream *bool `location:"querystring" locationName:"deleteStream" type:"boolean"`
  18748. // Specifies if the AWS Job associated with the OTA update should be deleted
  18749. // with the OTA update is deleted.
  18750. ForceDeleteAWSJob *bool `location:"querystring" locationName:"forceDeleteAWSJob" type:"boolean"`
  18751. // The OTA update ID to delete.
  18752. //
  18753. // OtaUpdateId is a required field
  18754. OtaUpdateId *string `location:"uri" locationName:"otaUpdateId" min:"1" type:"string" required:"true"`
  18755. }
  18756. // String returns the string representation
  18757. func (s DeleteOTAUpdateInput) String() string {
  18758. return awsutil.Prettify(s)
  18759. }
  18760. // GoString returns the string representation
  18761. func (s DeleteOTAUpdateInput) GoString() string {
  18762. return s.String()
  18763. }
  18764. // Validate inspects the fields of the type to determine if they are valid.
  18765. func (s *DeleteOTAUpdateInput) Validate() error {
  18766. invalidParams := request.ErrInvalidParams{Context: "DeleteOTAUpdateInput"}
  18767. if s.OtaUpdateId == nil {
  18768. invalidParams.Add(request.NewErrParamRequired("OtaUpdateId"))
  18769. }
  18770. if s.OtaUpdateId != nil && len(*s.OtaUpdateId) < 1 {
  18771. invalidParams.Add(request.NewErrParamMinLen("OtaUpdateId", 1))
  18772. }
  18773. if invalidParams.Len() > 0 {
  18774. return invalidParams
  18775. }
  18776. return nil
  18777. }
  18778. // SetDeleteStream sets the DeleteStream field's value.
  18779. func (s *DeleteOTAUpdateInput) SetDeleteStream(v bool) *DeleteOTAUpdateInput {
  18780. s.DeleteStream = &v
  18781. return s
  18782. }
  18783. // SetForceDeleteAWSJob sets the ForceDeleteAWSJob field's value.
  18784. func (s *DeleteOTAUpdateInput) SetForceDeleteAWSJob(v bool) *DeleteOTAUpdateInput {
  18785. s.ForceDeleteAWSJob = &v
  18786. return s
  18787. }
  18788. // SetOtaUpdateId sets the OtaUpdateId field's value.
  18789. func (s *DeleteOTAUpdateInput) SetOtaUpdateId(v string) *DeleteOTAUpdateInput {
  18790. s.OtaUpdateId = &v
  18791. return s
  18792. }
  18793. type DeleteOTAUpdateOutput struct {
  18794. _ struct{} `type:"structure"`
  18795. }
  18796. // String returns the string representation
  18797. func (s DeleteOTAUpdateOutput) String() string {
  18798. return awsutil.Prettify(s)
  18799. }
  18800. // GoString returns the string representation
  18801. func (s DeleteOTAUpdateOutput) GoString() string {
  18802. return s.String()
  18803. }
  18804. // The input for the DeletePolicy operation.
  18805. type DeletePolicyInput struct {
  18806. _ struct{} `type:"structure"`
  18807. // The name of the policy to delete.
  18808. //
  18809. // PolicyName is a required field
  18810. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  18811. }
  18812. // String returns the string representation
  18813. func (s DeletePolicyInput) String() string {
  18814. return awsutil.Prettify(s)
  18815. }
  18816. // GoString returns the string representation
  18817. func (s DeletePolicyInput) GoString() string {
  18818. return s.String()
  18819. }
  18820. // Validate inspects the fields of the type to determine if they are valid.
  18821. func (s *DeletePolicyInput) Validate() error {
  18822. invalidParams := request.ErrInvalidParams{Context: "DeletePolicyInput"}
  18823. if s.PolicyName == nil {
  18824. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  18825. }
  18826. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  18827. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  18828. }
  18829. if invalidParams.Len() > 0 {
  18830. return invalidParams
  18831. }
  18832. return nil
  18833. }
  18834. // SetPolicyName sets the PolicyName field's value.
  18835. func (s *DeletePolicyInput) SetPolicyName(v string) *DeletePolicyInput {
  18836. s.PolicyName = &v
  18837. return s
  18838. }
  18839. type DeletePolicyOutput struct {
  18840. _ struct{} `type:"structure"`
  18841. }
  18842. // String returns the string representation
  18843. func (s DeletePolicyOutput) String() string {
  18844. return awsutil.Prettify(s)
  18845. }
  18846. // GoString returns the string representation
  18847. func (s DeletePolicyOutput) GoString() string {
  18848. return s.String()
  18849. }
  18850. // The input for the DeletePolicyVersion operation.
  18851. type DeletePolicyVersionInput struct {
  18852. _ struct{} `type:"structure"`
  18853. // The name of the policy.
  18854. //
  18855. // PolicyName is a required field
  18856. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  18857. // The policy version ID.
  18858. //
  18859. // PolicyVersionId is a required field
  18860. PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"`
  18861. }
  18862. // String returns the string representation
  18863. func (s DeletePolicyVersionInput) String() string {
  18864. return awsutil.Prettify(s)
  18865. }
  18866. // GoString returns the string representation
  18867. func (s DeletePolicyVersionInput) GoString() string {
  18868. return s.String()
  18869. }
  18870. // Validate inspects the fields of the type to determine if they are valid.
  18871. func (s *DeletePolicyVersionInput) Validate() error {
  18872. invalidParams := request.ErrInvalidParams{Context: "DeletePolicyVersionInput"}
  18873. if s.PolicyName == nil {
  18874. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  18875. }
  18876. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  18877. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  18878. }
  18879. if s.PolicyVersionId == nil {
  18880. invalidParams.Add(request.NewErrParamRequired("PolicyVersionId"))
  18881. }
  18882. if s.PolicyVersionId != nil && len(*s.PolicyVersionId) < 1 {
  18883. invalidParams.Add(request.NewErrParamMinLen("PolicyVersionId", 1))
  18884. }
  18885. if invalidParams.Len() > 0 {
  18886. return invalidParams
  18887. }
  18888. return nil
  18889. }
  18890. // SetPolicyName sets the PolicyName field's value.
  18891. func (s *DeletePolicyVersionInput) SetPolicyName(v string) *DeletePolicyVersionInput {
  18892. s.PolicyName = &v
  18893. return s
  18894. }
  18895. // SetPolicyVersionId sets the PolicyVersionId field's value.
  18896. func (s *DeletePolicyVersionInput) SetPolicyVersionId(v string) *DeletePolicyVersionInput {
  18897. s.PolicyVersionId = &v
  18898. return s
  18899. }
  18900. type DeletePolicyVersionOutput struct {
  18901. _ struct{} `type:"structure"`
  18902. }
  18903. // String returns the string representation
  18904. func (s DeletePolicyVersionOutput) String() string {
  18905. return awsutil.Prettify(s)
  18906. }
  18907. // GoString returns the string representation
  18908. func (s DeletePolicyVersionOutput) GoString() string {
  18909. return s.String()
  18910. }
  18911. // The input for the DeleteRegistrationCode operation.
  18912. type DeleteRegistrationCodeInput struct {
  18913. _ struct{} `type:"structure"`
  18914. }
  18915. // String returns the string representation
  18916. func (s DeleteRegistrationCodeInput) String() string {
  18917. return awsutil.Prettify(s)
  18918. }
  18919. // GoString returns the string representation
  18920. func (s DeleteRegistrationCodeInput) GoString() string {
  18921. return s.String()
  18922. }
  18923. // The output for the DeleteRegistrationCode operation.
  18924. type DeleteRegistrationCodeOutput struct {
  18925. _ struct{} `type:"structure"`
  18926. }
  18927. // String returns the string representation
  18928. func (s DeleteRegistrationCodeOutput) String() string {
  18929. return awsutil.Prettify(s)
  18930. }
  18931. // GoString returns the string representation
  18932. func (s DeleteRegistrationCodeOutput) GoString() string {
  18933. return s.String()
  18934. }
  18935. type DeleteRoleAliasInput struct {
  18936. _ struct{} `type:"structure"`
  18937. // The role alias to delete.
  18938. //
  18939. // RoleAlias is a required field
  18940. RoleAlias *string `location:"uri" locationName:"roleAlias" min:"1" type:"string" required:"true"`
  18941. }
  18942. // String returns the string representation
  18943. func (s DeleteRoleAliasInput) String() string {
  18944. return awsutil.Prettify(s)
  18945. }
  18946. // GoString returns the string representation
  18947. func (s DeleteRoleAliasInput) GoString() string {
  18948. return s.String()
  18949. }
  18950. // Validate inspects the fields of the type to determine if they are valid.
  18951. func (s *DeleteRoleAliasInput) Validate() error {
  18952. invalidParams := request.ErrInvalidParams{Context: "DeleteRoleAliasInput"}
  18953. if s.RoleAlias == nil {
  18954. invalidParams.Add(request.NewErrParamRequired("RoleAlias"))
  18955. }
  18956. if s.RoleAlias != nil && len(*s.RoleAlias) < 1 {
  18957. invalidParams.Add(request.NewErrParamMinLen("RoleAlias", 1))
  18958. }
  18959. if invalidParams.Len() > 0 {
  18960. return invalidParams
  18961. }
  18962. return nil
  18963. }
  18964. // SetRoleAlias sets the RoleAlias field's value.
  18965. func (s *DeleteRoleAliasInput) SetRoleAlias(v string) *DeleteRoleAliasInput {
  18966. s.RoleAlias = &v
  18967. return s
  18968. }
  18969. type DeleteRoleAliasOutput struct {
  18970. _ struct{} `type:"structure"`
  18971. }
  18972. // String returns the string representation
  18973. func (s DeleteRoleAliasOutput) String() string {
  18974. return awsutil.Prettify(s)
  18975. }
  18976. // GoString returns the string representation
  18977. func (s DeleteRoleAliasOutput) GoString() string {
  18978. return s.String()
  18979. }
  18980. type DeleteScheduledAuditInput struct {
  18981. _ struct{} `type:"structure"`
  18982. // The name of the scheduled audit you want to delete.
  18983. //
  18984. // ScheduledAuditName is a required field
  18985. ScheduledAuditName *string `location:"uri" locationName:"scheduledAuditName" min:"1" type:"string" required:"true"`
  18986. }
  18987. // String returns the string representation
  18988. func (s DeleteScheduledAuditInput) String() string {
  18989. return awsutil.Prettify(s)
  18990. }
  18991. // GoString returns the string representation
  18992. func (s DeleteScheduledAuditInput) GoString() string {
  18993. return s.String()
  18994. }
  18995. // Validate inspects the fields of the type to determine if they are valid.
  18996. func (s *DeleteScheduledAuditInput) Validate() error {
  18997. invalidParams := request.ErrInvalidParams{Context: "DeleteScheduledAuditInput"}
  18998. if s.ScheduledAuditName == nil {
  18999. invalidParams.Add(request.NewErrParamRequired("ScheduledAuditName"))
  19000. }
  19001. if s.ScheduledAuditName != nil && len(*s.ScheduledAuditName) < 1 {
  19002. invalidParams.Add(request.NewErrParamMinLen("ScheduledAuditName", 1))
  19003. }
  19004. if invalidParams.Len() > 0 {
  19005. return invalidParams
  19006. }
  19007. return nil
  19008. }
  19009. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  19010. func (s *DeleteScheduledAuditInput) SetScheduledAuditName(v string) *DeleteScheduledAuditInput {
  19011. s.ScheduledAuditName = &v
  19012. return s
  19013. }
  19014. type DeleteScheduledAuditOutput struct {
  19015. _ struct{} `type:"structure"`
  19016. }
  19017. // String returns the string representation
  19018. func (s DeleteScheduledAuditOutput) String() string {
  19019. return awsutil.Prettify(s)
  19020. }
  19021. // GoString returns the string representation
  19022. func (s DeleteScheduledAuditOutput) GoString() string {
  19023. return s.String()
  19024. }
  19025. type DeleteSecurityProfileInput struct {
  19026. _ struct{} `type:"structure"`
  19027. // The expected version of the security profile. A new version is generated
  19028. // whenever the security profile is updated. If you specify a value that is
  19029. // different than the actual version, a VersionConflictException is thrown.
  19030. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  19031. // The name of the security profile to be deleted.
  19032. //
  19033. // SecurityProfileName is a required field
  19034. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  19035. }
  19036. // String returns the string representation
  19037. func (s DeleteSecurityProfileInput) String() string {
  19038. return awsutil.Prettify(s)
  19039. }
  19040. // GoString returns the string representation
  19041. func (s DeleteSecurityProfileInput) GoString() string {
  19042. return s.String()
  19043. }
  19044. // Validate inspects the fields of the type to determine if they are valid.
  19045. func (s *DeleteSecurityProfileInput) Validate() error {
  19046. invalidParams := request.ErrInvalidParams{Context: "DeleteSecurityProfileInput"}
  19047. if s.SecurityProfileName == nil {
  19048. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  19049. }
  19050. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  19051. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  19052. }
  19053. if invalidParams.Len() > 0 {
  19054. return invalidParams
  19055. }
  19056. return nil
  19057. }
  19058. // SetExpectedVersion sets the ExpectedVersion field's value.
  19059. func (s *DeleteSecurityProfileInput) SetExpectedVersion(v int64) *DeleteSecurityProfileInput {
  19060. s.ExpectedVersion = &v
  19061. return s
  19062. }
  19063. // SetSecurityProfileName sets the SecurityProfileName field's value.
  19064. func (s *DeleteSecurityProfileInput) SetSecurityProfileName(v string) *DeleteSecurityProfileInput {
  19065. s.SecurityProfileName = &v
  19066. return s
  19067. }
  19068. type DeleteSecurityProfileOutput struct {
  19069. _ struct{} `type:"structure"`
  19070. }
  19071. // String returns the string representation
  19072. func (s DeleteSecurityProfileOutput) String() string {
  19073. return awsutil.Prettify(s)
  19074. }
  19075. // GoString returns the string representation
  19076. func (s DeleteSecurityProfileOutput) GoString() string {
  19077. return s.String()
  19078. }
  19079. type DeleteStreamInput struct {
  19080. _ struct{} `type:"structure"`
  19081. // The stream ID.
  19082. //
  19083. // StreamId is a required field
  19084. StreamId *string `location:"uri" locationName:"streamId" min:"1" type:"string" required:"true"`
  19085. }
  19086. // String returns the string representation
  19087. func (s DeleteStreamInput) String() string {
  19088. return awsutil.Prettify(s)
  19089. }
  19090. // GoString returns the string representation
  19091. func (s DeleteStreamInput) GoString() string {
  19092. return s.String()
  19093. }
  19094. // Validate inspects the fields of the type to determine if they are valid.
  19095. func (s *DeleteStreamInput) Validate() error {
  19096. invalidParams := request.ErrInvalidParams{Context: "DeleteStreamInput"}
  19097. if s.StreamId == nil {
  19098. invalidParams.Add(request.NewErrParamRequired("StreamId"))
  19099. }
  19100. if s.StreamId != nil && len(*s.StreamId) < 1 {
  19101. invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  19102. }
  19103. if invalidParams.Len() > 0 {
  19104. return invalidParams
  19105. }
  19106. return nil
  19107. }
  19108. // SetStreamId sets the StreamId field's value.
  19109. func (s *DeleteStreamInput) SetStreamId(v string) *DeleteStreamInput {
  19110. s.StreamId = &v
  19111. return s
  19112. }
  19113. type DeleteStreamOutput struct {
  19114. _ struct{} `type:"structure"`
  19115. }
  19116. // String returns the string representation
  19117. func (s DeleteStreamOutput) String() string {
  19118. return awsutil.Prettify(s)
  19119. }
  19120. // GoString returns the string representation
  19121. func (s DeleteStreamOutput) GoString() string {
  19122. return s.String()
  19123. }
  19124. type DeleteThingGroupInput struct {
  19125. _ struct{} `type:"structure"`
  19126. // The expected version of the thing group to delete.
  19127. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  19128. // The name of the thing group to delete.
  19129. //
  19130. // ThingGroupName is a required field
  19131. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  19132. }
  19133. // String returns the string representation
  19134. func (s DeleteThingGroupInput) String() string {
  19135. return awsutil.Prettify(s)
  19136. }
  19137. // GoString returns the string representation
  19138. func (s DeleteThingGroupInput) GoString() string {
  19139. return s.String()
  19140. }
  19141. // Validate inspects the fields of the type to determine if they are valid.
  19142. func (s *DeleteThingGroupInput) Validate() error {
  19143. invalidParams := request.ErrInvalidParams{Context: "DeleteThingGroupInput"}
  19144. if s.ThingGroupName == nil {
  19145. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  19146. }
  19147. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  19148. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  19149. }
  19150. if invalidParams.Len() > 0 {
  19151. return invalidParams
  19152. }
  19153. return nil
  19154. }
  19155. // SetExpectedVersion sets the ExpectedVersion field's value.
  19156. func (s *DeleteThingGroupInput) SetExpectedVersion(v int64) *DeleteThingGroupInput {
  19157. s.ExpectedVersion = &v
  19158. return s
  19159. }
  19160. // SetThingGroupName sets the ThingGroupName field's value.
  19161. func (s *DeleteThingGroupInput) SetThingGroupName(v string) *DeleteThingGroupInput {
  19162. s.ThingGroupName = &v
  19163. return s
  19164. }
  19165. type DeleteThingGroupOutput struct {
  19166. _ struct{} `type:"structure"`
  19167. }
  19168. // String returns the string representation
  19169. func (s DeleteThingGroupOutput) String() string {
  19170. return awsutil.Prettify(s)
  19171. }
  19172. // GoString returns the string representation
  19173. func (s DeleteThingGroupOutput) GoString() string {
  19174. return s.String()
  19175. }
  19176. // The input for the DeleteThing operation.
  19177. type DeleteThingInput struct {
  19178. _ struct{} `type:"structure"`
  19179. // The expected version of the thing record in the registry. If the version
  19180. // of the record in the registry does not match the expected version specified
  19181. // in the request, the DeleteThing request is rejected with a VersionConflictException.
  19182. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  19183. // The name of the thing to delete.
  19184. //
  19185. // ThingName is a required field
  19186. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  19187. }
  19188. // String returns the string representation
  19189. func (s DeleteThingInput) String() string {
  19190. return awsutil.Prettify(s)
  19191. }
  19192. // GoString returns the string representation
  19193. func (s DeleteThingInput) GoString() string {
  19194. return s.String()
  19195. }
  19196. // Validate inspects the fields of the type to determine if they are valid.
  19197. func (s *DeleteThingInput) Validate() error {
  19198. invalidParams := request.ErrInvalidParams{Context: "DeleteThingInput"}
  19199. if s.ThingName == nil {
  19200. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  19201. }
  19202. if s.ThingName != nil && len(*s.ThingName) < 1 {
  19203. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  19204. }
  19205. if invalidParams.Len() > 0 {
  19206. return invalidParams
  19207. }
  19208. return nil
  19209. }
  19210. // SetExpectedVersion sets the ExpectedVersion field's value.
  19211. func (s *DeleteThingInput) SetExpectedVersion(v int64) *DeleteThingInput {
  19212. s.ExpectedVersion = &v
  19213. return s
  19214. }
  19215. // SetThingName sets the ThingName field's value.
  19216. func (s *DeleteThingInput) SetThingName(v string) *DeleteThingInput {
  19217. s.ThingName = &v
  19218. return s
  19219. }
  19220. // The output of the DeleteThing operation.
  19221. type DeleteThingOutput struct {
  19222. _ struct{} `type:"structure"`
  19223. }
  19224. // String returns the string representation
  19225. func (s DeleteThingOutput) String() string {
  19226. return awsutil.Prettify(s)
  19227. }
  19228. // GoString returns the string representation
  19229. func (s DeleteThingOutput) GoString() string {
  19230. return s.String()
  19231. }
  19232. // The input for the DeleteThingType operation.
  19233. type DeleteThingTypeInput struct {
  19234. _ struct{} `type:"structure"`
  19235. // The name of the thing type.
  19236. //
  19237. // ThingTypeName is a required field
  19238. ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"`
  19239. }
  19240. // String returns the string representation
  19241. func (s DeleteThingTypeInput) String() string {
  19242. return awsutil.Prettify(s)
  19243. }
  19244. // GoString returns the string representation
  19245. func (s DeleteThingTypeInput) GoString() string {
  19246. return s.String()
  19247. }
  19248. // Validate inspects the fields of the type to determine if they are valid.
  19249. func (s *DeleteThingTypeInput) Validate() error {
  19250. invalidParams := request.ErrInvalidParams{Context: "DeleteThingTypeInput"}
  19251. if s.ThingTypeName == nil {
  19252. invalidParams.Add(request.NewErrParamRequired("ThingTypeName"))
  19253. }
  19254. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  19255. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  19256. }
  19257. if invalidParams.Len() > 0 {
  19258. return invalidParams
  19259. }
  19260. return nil
  19261. }
  19262. // SetThingTypeName sets the ThingTypeName field's value.
  19263. func (s *DeleteThingTypeInput) SetThingTypeName(v string) *DeleteThingTypeInput {
  19264. s.ThingTypeName = &v
  19265. return s
  19266. }
  19267. // The output for the DeleteThingType operation.
  19268. type DeleteThingTypeOutput struct {
  19269. _ struct{} `type:"structure"`
  19270. }
  19271. // String returns the string representation
  19272. func (s DeleteThingTypeOutput) String() string {
  19273. return awsutil.Prettify(s)
  19274. }
  19275. // GoString returns the string representation
  19276. func (s DeleteThingTypeOutput) GoString() string {
  19277. return s.String()
  19278. }
  19279. // The input for the DeleteTopicRule operation.
  19280. type DeleteTopicRuleInput struct {
  19281. _ struct{} `type:"structure"`
  19282. // The name of the rule.
  19283. //
  19284. // RuleName is a required field
  19285. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  19286. }
  19287. // String returns the string representation
  19288. func (s DeleteTopicRuleInput) String() string {
  19289. return awsutil.Prettify(s)
  19290. }
  19291. // GoString returns the string representation
  19292. func (s DeleteTopicRuleInput) GoString() string {
  19293. return s.String()
  19294. }
  19295. // Validate inspects the fields of the type to determine if they are valid.
  19296. func (s *DeleteTopicRuleInput) Validate() error {
  19297. invalidParams := request.ErrInvalidParams{Context: "DeleteTopicRuleInput"}
  19298. if s.RuleName == nil {
  19299. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  19300. }
  19301. if s.RuleName != nil && len(*s.RuleName) < 1 {
  19302. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  19303. }
  19304. if invalidParams.Len() > 0 {
  19305. return invalidParams
  19306. }
  19307. return nil
  19308. }
  19309. // SetRuleName sets the RuleName field's value.
  19310. func (s *DeleteTopicRuleInput) SetRuleName(v string) *DeleteTopicRuleInput {
  19311. s.RuleName = &v
  19312. return s
  19313. }
  19314. type DeleteTopicRuleOutput struct {
  19315. _ struct{} `type:"structure"`
  19316. }
  19317. // String returns the string representation
  19318. func (s DeleteTopicRuleOutput) String() string {
  19319. return awsutil.Prettify(s)
  19320. }
  19321. // GoString returns the string representation
  19322. func (s DeleteTopicRuleOutput) GoString() string {
  19323. return s.String()
  19324. }
  19325. type DeleteV2LoggingLevelInput struct {
  19326. _ struct{} `type:"structure"`
  19327. // The name of the resource for which you are configuring logging.
  19328. //
  19329. // TargetName is a required field
  19330. TargetName *string `location:"querystring" locationName:"targetName" type:"string" required:"true"`
  19331. // The type of resource for which you are configuring logging. Must be THING_Group.
  19332. //
  19333. // TargetType is a required field
  19334. TargetType *string `location:"querystring" locationName:"targetType" type:"string" required:"true" enum:"LogTargetType"`
  19335. }
  19336. // String returns the string representation
  19337. func (s DeleteV2LoggingLevelInput) String() string {
  19338. return awsutil.Prettify(s)
  19339. }
  19340. // GoString returns the string representation
  19341. func (s DeleteV2LoggingLevelInput) GoString() string {
  19342. return s.String()
  19343. }
  19344. // Validate inspects the fields of the type to determine if they are valid.
  19345. func (s *DeleteV2LoggingLevelInput) Validate() error {
  19346. invalidParams := request.ErrInvalidParams{Context: "DeleteV2LoggingLevelInput"}
  19347. if s.TargetName == nil {
  19348. invalidParams.Add(request.NewErrParamRequired("TargetName"))
  19349. }
  19350. if s.TargetType == nil {
  19351. invalidParams.Add(request.NewErrParamRequired("TargetType"))
  19352. }
  19353. if invalidParams.Len() > 0 {
  19354. return invalidParams
  19355. }
  19356. return nil
  19357. }
  19358. // SetTargetName sets the TargetName field's value.
  19359. func (s *DeleteV2LoggingLevelInput) SetTargetName(v string) *DeleteV2LoggingLevelInput {
  19360. s.TargetName = &v
  19361. return s
  19362. }
  19363. // SetTargetType sets the TargetType field's value.
  19364. func (s *DeleteV2LoggingLevelInput) SetTargetType(v string) *DeleteV2LoggingLevelInput {
  19365. s.TargetType = &v
  19366. return s
  19367. }
  19368. type DeleteV2LoggingLevelOutput struct {
  19369. _ struct{} `type:"structure"`
  19370. }
  19371. // String returns the string representation
  19372. func (s DeleteV2LoggingLevelOutput) String() string {
  19373. return awsutil.Prettify(s)
  19374. }
  19375. // GoString returns the string representation
  19376. func (s DeleteV2LoggingLevelOutput) GoString() string {
  19377. return s.String()
  19378. }
  19379. // Contains information that denied the authorization.
  19380. type Denied struct {
  19381. _ struct{} `type:"structure"`
  19382. // Information that explicitly denies the authorization.
  19383. ExplicitDeny *ExplicitDeny `locationName:"explicitDeny" type:"structure"`
  19384. // Information that implicitly denies the authorization. When a policy doesn't
  19385. // explicitly deny or allow an action on a resource it is considered an implicit
  19386. // deny.
  19387. ImplicitDeny *ImplicitDeny `locationName:"implicitDeny" type:"structure"`
  19388. }
  19389. // String returns the string representation
  19390. func (s Denied) String() string {
  19391. return awsutil.Prettify(s)
  19392. }
  19393. // GoString returns the string representation
  19394. func (s Denied) GoString() string {
  19395. return s.String()
  19396. }
  19397. // SetExplicitDeny sets the ExplicitDeny field's value.
  19398. func (s *Denied) SetExplicitDeny(v *ExplicitDeny) *Denied {
  19399. s.ExplicitDeny = v
  19400. return s
  19401. }
  19402. // SetImplicitDeny sets the ImplicitDeny field's value.
  19403. func (s *Denied) SetImplicitDeny(v *ImplicitDeny) *Denied {
  19404. s.ImplicitDeny = v
  19405. return s
  19406. }
  19407. // The input for the DeprecateThingType operation.
  19408. type DeprecateThingTypeInput struct {
  19409. _ struct{} `type:"structure"`
  19410. // The name of the thing type to deprecate.
  19411. //
  19412. // ThingTypeName is a required field
  19413. ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"`
  19414. // Whether to undeprecate a deprecated thing type. If true, the thing type will
  19415. // not be deprecated anymore and you can associate it with things.
  19416. UndoDeprecate *bool `locationName:"undoDeprecate" type:"boolean"`
  19417. }
  19418. // String returns the string representation
  19419. func (s DeprecateThingTypeInput) String() string {
  19420. return awsutil.Prettify(s)
  19421. }
  19422. // GoString returns the string representation
  19423. func (s DeprecateThingTypeInput) GoString() string {
  19424. return s.String()
  19425. }
  19426. // Validate inspects the fields of the type to determine if they are valid.
  19427. func (s *DeprecateThingTypeInput) Validate() error {
  19428. invalidParams := request.ErrInvalidParams{Context: "DeprecateThingTypeInput"}
  19429. if s.ThingTypeName == nil {
  19430. invalidParams.Add(request.NewErrParamRequired("ThingTypeName"))
  19431. }
  19432. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  19433. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  19434. }
  19435. if invalidParams.Len() > 0 {
  19436. return invalidParams
  19437. }
  19438. return nil
  19439. }
  19440. // SetThingTypeName sets the ThingTypeName field's value.
  19441. func (s *DeprecateThingTypeInput) SetThingTypeName(v string) *DeprecateThingTypeInput {
  19442. s.ThingTypeName = &v
  19443. return s
  19444. }
  19445. // SetUndoDeprecate sets the UndoDeprecate field's value.
  19446. func (s *DeprecateThingTypeInput) SetUndoDeprecate(v bool) *DeprecateThingTypeInput {
  19447. s.UndoDeprecate = &v
  19448. return s
  19449. }
  19450. // The output for the DeprecateThingType operation.
  19451. type DeprecateThingTypeOutput struct {
  19452. _ struct{} `type:"structure"`
  19453. }
  19454. // String returns the string representation
  19455. func (s DeprecateThingTypeOutput) String() string {
  19456. return awsutil.Prettify(s)
  19457. }
  19458. // GoString returns the string representation
  19459. func (s DeprecateThingTypeOutput) GoString() string {
  19460. return s.String()
  19461. }
  19462. type DescribeAccountAuditConfigurationInput struct {
  19463. _ struct{} `type:"structure"`
  19464. }
  19465. // String returns the string representation
  19466. func (s DescribeAccountAuditConfigurationInput) String() string {
  19467. return awsutil.Prettify(s)
  19468. }
  19469. // GoString returns the string representation
  19470. func (s DescribeAccountAuditConfigurationInput) GoString() string {
  19471. return s.String()
  19472. }
  19473. type DescribeAccountAuditConfigurationOutput struct {
  19474. _ struct{} `type:"structure"`
  19475. // Which audit checks are enabled and disabled for this account.
  19476. AuditCheckConfigurations map[string]*AuditCheckConfiguration `locationName:"auditCheckConfigurations" type:"map"`
  19477. // Information about the targets to which audit notifications are sent for this
  19478. // account.
  19479. AuditNotificationTargetConfigurations map[string]*AuditNotificationTarget `locationName:"auditNotificationTargetConfigurations" type:"map"`
  19480. // The ARN of the role that grants permission to AWS IoT to access information
  19481. // about your devices, policies, certificates and other items as necessary when
  19482. // performing an audit.
  19483. //
  19484. // On the first call to UpdateAccountAuditConfiguration this parameter is required.
  19485. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  19486. }
  19487. // String returns the string representation
  19488. func (s DescribeAccountAuditConfigurationOutput) String() string {
  19489. return awsutil.Prettify(s)
  19490. }
  19491. // GoString returns the string representation
  19492. func (s DescribeAccountAuditConfigurationOutput) GoString() string {
  19493. return s.String()
  19494. }
  19495. // SetAuditCheckConfigurations sets the AuditCheckConfigurations field's value.
  19496. func (s *DescribeAccountAuditConfigurationOutput) SetAuditCheckConfigurations(v map[string]*AuditCheckConfiguration) *DescribeAccountAuditConfigurationOutput {
  19497. s.AuditCheckConfigurations = v
  19498. return s
  19499. }
  19500. // SetAuditNotificationTargetConfigurations sets the AuditNotificationTargetConfigurations field's value.
  19501. func (s *DescribeAccountAuditConfigurationOutput) SetAuditNotificationTargetConfigurations(v map[string]*AuditNotificationTarget) *DescribeAccountAuditConfigurationOutput {
  19502. s.AuditNotificationTargetConfigurations = v
  19503. return s
  19504. }
  19505. // SetRoleArn sets the RoleArn field's value.
  19506. func (s *DescribeAccountAuditConfigurationOutput) SetRoleArn(v string) *DescribeAccountAuditConfigurationOutput {
  19507. s.RoleArn = &v
  19508. return s
  19509. }
  19510. type DescribeAuditTaskInput struct {
  19511. _ struct{} `type:"structure"`
  19512. // The ID of the audit whose information you want to get.
  19513. //
  19514. // TaskId is a required field
  19515. TaskId *string `location:"uri" locationName:"taskId" min:"1" type:"string" required:"true"`
  19516. }
  19517. // String returns the string representation
  19518. func (s DescribeAuditTaskInput) String() string {
  19519. return awsutil.Prettify(s)
  19520. }
  19521. // GoString returns the string representation
  19522. func (s DescribeAuditTaskInput) GoString() string {
  19523. return s.String()
  19524. }
  19525. // Validate inspects the fields of the type to determine if they are valid.
  19526. func (s *DescribeAuditTaskInput) Validate() error {
  19527. invalidParams := request.ErrInvalidParams{Context: "DescribeAuditTaskInput"}
  19528. if s.TaskId == nil {
  19529. invalidParams.Add(request.NewErrParamRequired("TaskId"))
  19530. }
  19531. if s.TaskId != nil && len(*s.TaskId) < 1 {
  19532. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  19533. }
  19534. if invalidParams.Len() > 0 {
  19535. return invalidParams
  19536. }
  19537. return nil
  19538. }
  19539. // SetTaskId sets the TaskId field's value.
  19540. func (s *DescribeAuditTaskInput) SetTaskId(v string) *DescribeAuditTaskInput {
  19541. s.TaskId = &v
  19542. return s
  19543. }
  19544. type DescribeAuditTaskOutput struct {
  19545. _ struct{} `type:"structure"`
  19546. // Detailed information about each check performed during this audit.
  19547. AuditDetails map[string]*AuditCheckDetails `locationName:"auditDetails" type:"map"`
  19548. // The name of the scheduled audit (only if the audit was a scheduled audit).
  19549. ScheduledAuditName *string `locationName:"scheduledAuditName" min:"1" type:"string"`
  19550. // The time the audit started.
  19551. TaskStartTime *time.Time `locationName:"taskStartTime" type:"timestamp"`
  19552. // Statistical information about the audit.
  19553. TaskStatistics *TaskStatistics `locationName:"taskStatistics" type:"structure"`
  19554. // The status of the audit: one of "IN_PROGRESS", "COMPLETED", "FAILED", or
  19555. // "CANCELED".
  19556. TaskStatus *string `locationName:"taskStatus" type:"string" enum:"AuditTaskStatus"`
  19557. // The type of audit: "ON_DEMAND_AUDIT_TASK" or "SCHEDULED_AUDIT_TASK".
  19558. TaskType *string `locationName:"taskType" type:"string" enum:"AuditTaskType"`
  19559. }
  19560. // String returns the string representation
  19561. func (s DescribeAuditTaskOutput) String() string {
  19562. return awsutil.Prettify(s)
  19563. }
  19564. // GoString returns the string representation
  19565. func (s DescribeAuditTaskOutput) GoString() string {
  19566. return s.String()
  19567. }
  19568. // SetAuditDetails sets the AuditDetails field's value.
  19569. func (s *DescribeAuditTaskOutput) SetAuditDetails(v map[string]*AuditCheckDetails) *DescribeAuditTaskOutput {
  19570. s.AuditDetails = v
  19571. return s
  19572. }
  19573. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  19574. func (s *DescribeAuditTaskOutput) SetScheduledAuditName(v string) *DescribeAuditTaskOutput {
  19575. s.ScheduledAuditName = &v
  19576. return s
  19577. }
  19578. // SetTaskStartTime sets the TaskStartTime field's value.
  19579. func (s *DescribeAuditTaskOutput) SetTaskStartTime(v time.Time) *DescribeAuditTaskOutput {
  19580. s.TaskStartTime = &v
  19581. return s
  19582. }
  19583. // SetTaskStatistics sets the TaskStatistics field's value.
  19584. func (s *DescribeAuditTaskOutput) SetTaskStatistics(v *TaskStatistics) *DescribeAuditTaskOutput {
  19585. s.TaskStatistics = v
  19586. return s
  19587. }
  19588. // SetTaskStatus sets the TaskStatus field's value.
  19589. func (s *DescribeAuditTaskOutput) SetTaskStatus(v string) *DescribeAuditTaskOutput {
  19590. s.TaskStatus = &v
  19591. return s
  19592. }
  19593. // SetTaskType sets the TaskType field's value.
  19594. func (s *DescribeAuditTaskOutput) SetTaskType(v string) *DescribeAuditTaskOutput {
  19595. s.TaskType = &v
  19596. return s
  19597. }
  19598. type DescribeAuthorizerInput struct {
  19599. _ struct{} `type:"structure"`
  19600. // The name of the authorizer to describe.
  19601. //
  19602. // AuthorizerName is a required field
  19603. AuthorizerName *string `location:"uri" locationName:"authorizerName" min:"1" type:"string" required:"true"`
  19604. }
  19605. // String returns the string representation
  19606. func (s DescribeAuthorizerInput) String() string {
  19607. return awsutil.Prettify(s)
  19608. }
  19609. // GoString returns the string representation
  19610. func (s DescribeAuthorizerInput) GoString() string {
  19611. return s.String()
  19612. }
  19613. // Validate inspects the fields of the type to determine if they are valid.
  19614. func (s *DescribeAuthorizerInput) Validate() error {
  19615. invalidParams := request.ErrInvalidParams{Context: "DescribeAuthorizerInput"}
  19616. if s.AuthorizerName == nil {
  19617. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  19618. }
  19619. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  19620. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  19621. }
  19622. if invalidParams.Len() > 0 {
  19623. return invalidParams
  19624. }
  19625. return nil
  19626. }
  19627. // SetAuthorizerName sets the AuthorizerName field's value.
  19628. func (s *DescribeAuthorizerInput) SetAuthorizerName(v string) *DescribeAuthorizerInput {
  19629. s.AuthorizerName = &v
  19630. return s
  19631. }
  19632. type DescribeAuthorizerOutput struct {
  19633. _ struct{} `type:"structure"`
  19634. // The authorizer description.
  19635. AuthorizerDescription *AuthorizerDescription `locationName:"authorizerDescription" type:"structure"`
  19636. }
  19637. // String returns the string representation
  19638. func (s DescribeAuthorizerOutput) String() string {
  19639. return awsutil.Prettify(s)
  19640. }
  19641. // GoString returns the string representation
  19642. func (s DescribeAuthorizerOutput) GoString() string {
  19643. return s.String()
  19644. }
  19645. // SetAuthorizerDescription sets the AuthorizerDescription field's value.
  19646. func (s *DescribeAuthorizerOutput) SetAuthorizerDescription(v *AuthorizerDescription) *DescribeAuthorizerOutput {
  19647. s.AuthorizerDescription = v
  19648. return s
  19649. }
  19650. type DescribeBillingGroupInput struct {
  19651. _ struct{} `type:"structure"`
  19652. // The name of the billing group.
  19653. //
  19654. // BillingGroupName is a required field
  19655. BillingGroupName *string `location:"uri" locationName:"billingGroupName" min:"1" type:"string" required:"true"`
  19656. }
  19657. // String returns the string representation
  19658. func (s DescribeBillingGroupInput) String() string {
  19659. return awsutil.Prettify(s)
  19660. }
  19661. // GoString returns the string representation
  19662. func (s DescribeBillingGroupInput) GoString() string {
  19663. return s.String()
  19664. }
  19665. // Validate inspects the fields of the type to determine if they are valid.
  19666. func (s *DescribeBillingGroupInput) Validate() error {
  19667. invalidParams := request.ErrInvalidParams{Context: "DescribeBillingGroupInput"}
  19668. if s.BillingGroupName == nil {
  19669. invalidParams.Add(request.NewErrParamRequired("BillingGroupName"))
  19670. }
  19671. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  19672. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  19673. }
  19674. if invalidParams.Len() > 0 {
  19675. return invalidParams
  19676. }
  19677. return nil
  19678. }
  19679. // SetBillingGroupName sets the BillingGroupName field's value.
  19680. func (s *DescribeBillingGroupInput) SetBillingGroupName(v string) *DescribeBillingGroupInput {
  19681. s.BillingGroupName = &v
  19682. return s
  19683. }
  19684. type DescribeBillingGroupOutput struct {
  19685. _ struct{} `type:"structure"`
  19686. // The ARN of the billing group.
  19687. BillingGroupArn *string `locationName:"billingGroupArn" type:"string"`
  19688. // The ID of the billing group.
  19689. BillingGroupId *string `locationName:"billingGroupId" min:"1" type:"string"`
  19690. // Additional information about the billing group.
  19691. BillingGroupMetadata *BillingGroupMetadata `locationName:"billingGroupMetadata" type:"structure"`
  19692. // The name of the billing group.
  19693. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  19694. // The properties of the billing group.
  19695. BillingGroupProperties *BillingGroupProperties `locationName:"billingGroupProperties" type:"structure"`
  19696. // The version of the billing group.
  19697. Version *int64 `locationName:"version" type:"long"`
  19698. }
  19699. // String returns the string representation
  19700. func (s DescribeBillingGroupOutput) String() string {
  19701. return awsutil.Prettify(s)
  19702. }
  19703. // GoString returns the string representation
  19704. func (s DescribeBillingGroupOutput) GoString() string {
  19705. return s.String()
  19706. }
  19707. // SetBillingGroupArn sets the BillingGroupArn field's value.
  19708. func (s *DescribeBillingGroupOutput) SetBillingGroupArn(v string) *DescribeBillingGroupOutput {
  19709. s.BillingGroupArn = &v
  19710. return s
  19711. }
  19712. // SetBillingGroupId sets the BillingGroupId field's value.
  19713. func (s *DescribeBillingGroupOutput) SetBillingGroupId(v string) *DescribeBillingGroupOutput {
  19714. s.BillingGroupId = &v
  19715. return s
  19716. }
  19717. // SetBillingGroupMetadata sets the BillingGroupMetadata field's value.
  19718. func (s *DescribeBillingGroupOutput) SetBillingGroupMetadata(v *BillingGroupMetadata) *DescribeBillingGroupOutput {
  19719. s.BillingGroupMetadata = v
  19720. return s
  19721. }
  19722. // SetBillingGroupName sets the BillingGroupName field's value.
  19723. func (s *DescribeBillingGroupOutput) SetBillingGroupName(v string) *DescribeBillingGroupOutput {
  19724. s.BillingGroupName = &v
  19725. return s
  19726. }
  19727. // SetBillingGroupProperties sets the BillingGroupProperties field's value.
  19728. func (s *DescribeBillingGroupOutput) SetBillingGroupProperties(v *BillingGroupProperties) *DescribeBillingGroupOutput {
  19729. s.BillingGroupProperties = v
  19730. return s
  19731. }
  19732. // SetVersion sets the Version field's value.
  19733. func (s *DescribeBillingGroupOutput) SetVersion(v int64) *DescribeBillingGroupOutput {
  19734. s.Version = &v
  19735. return s
  19736. }
  19737. // The input for the DescribeCACertificate operation.
  19738. type DescribeCACertificateInput struct {
  19739. _ struct{} `type:"structure"`
  19740. // The CA certificate identifier.
  19741. //
  19742. // CertificateId is a required field
  19743. CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"`
  19744. }
  19745. // String returns the string representation
  19746. func (s DescribeCACertificateInput) String() string {
  19747. return awsutil.Prettify(s)
  19748. }
  19749. // GoString returns the string representation
  19750. func (s DescribeCACertificateInput) GoString() string {
  19751. return s.String()
  19752. }
  19753. // Validate inspects the fields of the type to determine if they are valid.
  19754. func (s *DescribeCACertificateInput) Validate() error {
  19755. invalidParams := request.ErrInvalidParams{Context: "DescribeCACertificateInput"}
  19756. if s.CertificateId == nil {
  19757. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  19758. }
  19759. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  19760. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  19761. }
  19762. if invalidParams.Len() > 0 {
  19763. return invalidParams
  19764. }
  19765. return nil
  19766. }
  19767. // SetCertificateId sets the CertificateId field's value.
  19768. func (s *DescribeCACertificateInput) SetCertificateId(v string) *DescribeCACertificateInput {
  19769. s.CertificateId = &v
  19770. return s
  19771. }
  19772. // The output from the DescribeCACertificate operation.
  19773. type DescribeCACertificateOutput struct {
  19774. _ struct{} `type:"structure"`
  19775. // The CA certificate description.
  19776. CertificateDescription *CACertificateDescription `locationName:"certificateDescription" type:"structure"`
  19777. // Information about the registration configuration.
  19778. RegistrationConfig *RegistrationConfig `locationName:"registrationConfig" type:"structure"`
  19779. }
  19780. // String returns the string representation
  19781. func (s DescribeCACertificateOutput) String() string {
  19782. return awsutil.Prettify(s)
  19783. }
  19784. // GoString returns the string representation
  19785. func (s DescribeCACertificateOutput) GoString() string {
  19786. return s.String()
  19787. }
  19788. // SetCertificateDescription sets the CertificateDescription field's value.
  19789. func (s *DescribeCACertificateOutput) SetCertificateDescription(v *CACertificateDescription) *DescribeCACertificateOutput {
  19790. s.CertificateDescription = v
  19791. return s
  19792. }
  19793. // SetRegistrationConfig sets the RegistrationConfig field's value.
  19794. func (s *DescribeCACertificateOutput) SetRegistrationConfig(v *RegistrationConfig) *DescribeCACertificateOutput {
  19795. s.RegistrationConfig = v
  19796. return s
  19797. }
  19798. // The input for the DescribeCertificate operation.
  19799. type DescribeCertificateInput struct {
  19800. _ struct{} `type:"structure"`
  19801. // The ID of the certificate. (The last part of the certificate ARN contains
  19802. // the certificate ID.)
  19803. //
  19804. // CertificateId is a required field
  19805. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  19806. }
  19807. // String returns the string representation
  19808. func (s DescribeCertificateInput) String() string {
  19809. return awsutil.Prettify(s)
  19810. }
  19811. // GoString returns the string representation
  19812. func (s DescribeCertificateInput) GoString() string {
  19813. return s.String()
  19814. }
  19815. // Validate inspects the fields of the type to determine if they are valid.
  19816. func (s *DescribeCertificateInput) Validate() error {
  19817. invalidParams := request.ErrInvalidParams{Context: "DescribeCertificateInput"}
  19818. if s.CertificateId == nil {
  19819. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  19820. }
  19821. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  19822. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  19823. }
  19824. if invalidParams.Len() > 0 {
  19825. return invalidParams
  19826. }
  19827. return nil
  19828. }
  19829. // SetCertificateId sets the CertificateId field's value.
  19830. func (s *DescribeCertificateInput) SetCertificateId(v string) *DescribeCertificateInput {
  19831. s.CertificateId = &v
  19832. return s
  19833. }
  19834. // The output of the DescribeCertificate operation.
  19835. type DescribeCertificateOutput struct {
  19836. _ struct{} `type:"structure"`
  19837. // The description of the certificate.
  19838. CertificateDescription *CertificateDescription `locationName:"certificateDescription" type:"structure"`
  19839. }
  19840. // String returns the string representation
  19841. func (s DescribeCertificateOutput) String() string {
  19842. return awsutil.Prettify(s)
  19843. }
  19844. // GoString returns the string representation
  19845. func (s DescribeCertificateOutput) GoString() string {
  19846. return s.String()
  19847. }
  19848. // SetCertificateDescription sets the CertificateDescription field's value.
  19849. func (s *DescribeCertificateOutput) SetCertificateDescription(v *CertificateDescription) *DescribeCertificateOutput {
  19850. s.CertificateDescription = v
  19851. return s
  19852. }
  19853. type DescribeDefaultAuthorizerInput struct {
  19854. _ struct{} `type:"structure"`
  19855. }
  19856. // String returns the string representation
  19857. func (s DescribeDefaultAuthorizerInput) String() string {
  19858. return awsutil.Prettify(s)
  19859. }
  19860. // GoString returns the string representation
  19861. func (s DescribeDefaultAuthorizerInput) GoString() string {
  19862. return s.String()
  19863. }
  19864. type DescribeDefaultAuthorizerOutput struct {
  19865. _ struct{} `type:"structure"`
  19866. // The default authorizer's description.
  19867. AuthorizerDescription *AuthorizerDescription `locationName:"authorizerDescription" type:"structure"`
  19868. }
  19869. // String returns the string representation
  19870. func (s DescribeDefaultAuthorizerOutput) String() string {
  19871. return awsutil.Prettify(s)
  19872. }
  19873. // GoString returns the string representation
  19874. func (s DescribeDefaultAuthorizerOutput) GoString() string {
  19875. return s.String()
  19876. }
  19877. // SetAuthorizerDescription sets the AuthorizerDescription field's value.
  19878. func (s *DescribeDefaultAuthorizerOutput) SetAuthorizerDescription(v *AuthorizerDescription) *DescribeDefaultAuthorizerOutput {
  19879. s.AuthorizerDescription = v
  19880. return s
  19881. }
  19882. // The input for the DescribeEndpoint operation.
  19883. type DescribeEndpointInput struct {
  19884. _ struct{} `type:"structure"`
  19885. // The endpoint type. Valid endpoint types include:
  19886. //
  19887. // * iot:Data - Returns a VeriSign signed data endpoint.
  19888. //
  19889. // * iot:Data-ATS - Returns an ATS signed data endpoint.
  19890. //
  19891. // * iot:CredentialProvider - Returns an AWS IoT credentials provider API
  19892. // endpoint.
  19893. //
  19894. // * iot:Jobs - Returns an AWS IoT device management Jobs API endpoint.
  19895. EndpointType *string `location:"querystring" locationName:"endpointType" type:"string"`
  19896. }
  19897. // String returns the string representation
  19898. func (s DescribeEndpointInput) String() string {
  19899. return awsutil.Prettify(s)
  19900. }
  19901. // GoString returns the string representation
  19902. func (s DescribeEndpointInput) GoString() string {
  19903. return s.String()
  19904. }
  19905. // SetEndpointType sets the EndpointType field's value.
  19906. func (s *DescribeEndpointInput) SetEndpointType(v string) *DescribeEndpointInput {
  19907. s.EndpointType = &v
  19908. return s
  19909. }
  19910. // The output from the DescribeEndpoint operation.
  19911. type DescribeEndpointOutput struct {
  19912. _ struct{} `type:"structure"`
  19913. // The endpoint. The format of the endpoint is as follows: identifier.iot.region.amazonaws.com.
  19914. EndpointAddress *string `locationName:"endpointAddress" type:"string"`
  19915. }
  19916. // String returns the string representation
  19917. func (s DescribeEndpointOutput) String() string {
  19918. return awsutil.Prettify(s)
  19919. }
  19920. // GoString returns the string representation
  19921. func (s DescribeEndpointOutput) GoString() string {
  19922. return s.String()
  19923. }
  19924. // SetEndpointAddress sets the EndpointAddress field's value.
  19925. func (s *DescribeEndpointOutput) SetEndpointAddress(v string) *DescribeEndpointOutput {
  19926. s.EndpointAddress = &v
  19927. return s
  19928. }
  19929. type DescribeEventConfigurationsInput struct {
  19930. _ struct{} `type:"structure"`
  19931. }
  19932. // String returns the string representation
  19933. func (s DescribeEventConfigurationsInput) String() string {
  19934. return awsutil.Prettify(s)
  19935. }
  19936. // GoString returns the string representation
  19937. func (s DescribeEventConfigurationsInput) GoString() string {
  19938. return s.String()
  19939. }
  19940. type DescribeEventConfigurationsOutput struct {
  19941. _ struct{} `type:"structure"`
  19942. // The creation date of the event configuration.
  19943. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  19944. // The event configurations.
  19945. EventConfigurations map[string]*Configuration `locationName:"eventConfigurations" type:"map"`
  19946. // The date the event configurations were last modified.
  19947. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  19948. }
  19949. // String returns the string representation
  19950. func (s DescribeEventConfigurationsOutput) String() string {
  19951. return awsutil.Prettify(s)
  19952. }
  19953. // GoString returns the string representation
  19954. func (s DescribeEventConfigurationsOutput) GoString() string {
  19955. return s.String()
  19956. }
  19957. // SetCreationDate sets the CreationDate field's value.
  19958. func (s *DescribeEventConfigurationsOutput) SetCreationDate(v time.Time) *DescribeEventConfigurationsOutput {
  19959. s.CreationDate = &v
  19960. return s
  19961. }
  19962. // SetEventConfigurations sets the EventConfigurations field's value.
  19963. func (s *DescribeEventConfigurationsOutput) SetEventConfigurations(v map[string]*Configuration) *DescribeEventConfigurationsOutput {
  19964. s.EventConfigurations = v
  19965. return s
  19966. }
  19967. // SetLastModifiedDate sets the LastModifiedDate field's value.
  19968. func (s *DescribeEventConfigurationsOutput) SetLastModifiedDate(v time.Time) *DescribeEventConfigurationsOutput {
  19969. s.LastModifiedDate = &v
  19970. return s
  19971. }
  19972. type DescribeIndexInput struct {
  19973. _ struct{} `type:"structure"`
  19974. // The index name.
  19975. //
  19976. // IndexName is a required field
  19977. IndexName *string `location:"uri" locationName:"indexName" min:"1" type:"string" required:"true"`
  19978. }
  19979. // String returns the string representation
  19980. func (s DescribeIndexInput) String() string {
  19981. return awsutil.Prettify(s)
  19982. }
  19983. // GoString returns the string representation
  19984. func (s DescribeIndexInput) GoString() string {
  19985. return s.String()
  19986. }
  19987. // Validate inspects the fields of the type to determine if they are valid.
  19988. func (s *DescribeIndexInput) Validate() error {
  19989. invalidParams := request.ErrInvalidParams{Context: "DescribeIndexInput"}
  19990. if s.IndexName == nil {
  19991. invalidParams.Add(request.NewErrParamRequired("IndexName"))
  19992. }
  19993. if s.IndexName != nil && len(*s.IndexName) < 1 {
  19994. invalidParams.Add(request.NewErrParamMinLen("IndexName", 1))
  19995. }
  19996. if invalidParams.Len() > 0 {
  19997. return invalidParams
  19998. }
  19999. return nil
  20000. }
  20001. // SetIndexName sets the IndexName field's value.
  20002. func (s *DescribeIndexInput) SetIndexName(v string) *DescribeIndexInput {
  20003. s.IndexName = &v
  20004. return s
  20005. }
  20006. type DescribeIndexOutput struct {
  20007. _ struct{} `type:"structure"`
  20008. // The index name.
  20009. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  20010. // The index status.
  20011. IndexStatus *string `locationName:"indexStatus" type:"string" enum:"IndexStatus"`
  20012. // Contains a value that specifies the type of indexing performed. Valid values
  20013. // are:
  20014. //
  20015. // * REGISTRY – Your thing index will contain only registry data.
  20016. //
  20017. // * REGISTRY_AND_SHADOW - Your thing index will contain registry data and
  20018. // shadow data.
  20019. //
  20020. // * REGISTRY_AND_CONNECTIVITY_STATUS - Your thing index will contain registry
  20021. // data and thing connectivity status data.
  20022. //
  20023. // * REGISTRY_AND_SHADOW_AND_CONNECTIVITY_STATUS - Your thing index will
  20024. // contain registry data, shadow data, and thing connectivity status data.
  20025. Schema *string `locationName:"schema" type:"string"`
  20026. }
  20027. // String returns the string representation
  20028. func (s DescribeIndexOutput) String() string {
  20029. return awsutil.Prettify(s)
  20030. }
  20031. // GoString returns the string representation
  20032. func (s DescribeIndexOutput) GoString() string {
  20033. return s.String()
  20034. }
  20035. // SetIndexName sets the IndexName field's value.
  20036. func (s *DescribeIndexOutput) SetIndexName(v string) *DescribeIndexOutput {
  20037. s.IndexName = &v
  20038. return s
  20039. }
  20040. // SetIndexStatus sets the IndexStatus field's value.
  20041. func (s *DescribeIndexOutput) SetIndexStatus(v string) *DescribeIndexOutput {
  20042. s.IndexStatus = &v
  20043. return s
  20044. }
  20045. // SetSchema sets the Schema field's value.
  20046. func (s *DescribeIndexOutput) SetSchema(v string) *DescribeIndexOutput {
  20047. s.Schema = &v
  20048. return s
  20049. }
  20050. type DescribeJobExecutionInput struct {
  20051. _ struct{} `type:"structure"`
  20052. // A string (consisting of the digits "0" through "9" which is used to specify
  20053. // a particular job execution on a particular device.
  20054. ExecutionNumber *int64 `location:"querystring" locationName:"executionNumber" type:"long"`
  20055. // The unique identifier you assigned to this job when it was created.
  20056. //
  20057. // JobId is a required field
  20058. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  20059. // The name of the thing on which the job execution is running.
  20060. //
  20061. // ThingName is a required field
  20062. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  20063. }
  20064. // String returns the string representation
  20065. func (s DescribeJobExecutionInput) String() string {
  20066. return awsutil.Prettify(s)
  20067. }
  20068. // GoString returns the string representation
  20069. func (s DescribeJobExecutionInput) GoString() string {
  20070. return s.String()
  20071. }
  20072. // Validate inspects the fields of the type to determine if they are valid.
  20073. func (s *DescribeJobExecutionInput) Validate() error {
  20074. invalidParams := request.ErrInvalidParams{Context: "DescribeJobExecutionInput"}
  20075. if s.JobId == nil {
  20076. invalidParams.Add(request.NewErrParamRequired("JobId"))
  20077. }
  20078. if s.JobId != nil && len(*s.JobId) < 1 {
  20079. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  20080. }
  20081. if s.ThingName == nil {
  20082. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  20083. }
  20084. if s.ThingName != nil && len(*s.ThingName) < 1 {
  20085. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  20086. }
  20087. if invalidParams.Len() > 0 {
  20088. return invalidParams
  20089. }
  20090. return nil
  20091. }
  20092. // SetExecutionNumber sets the ExecutionNumber field's value.
  20093. func (s *DescribeJobExecutionInput) SetExecutionNumber(v int64) *DescribeJobExecutionInput {
  20094. s.ExecutionNumber = &v
  20095. return s
  20096. }
  20097. // SetJobId sets the JobId field's value.
  20098. func (s *DescribeJobExecutionInput) SetJobId(v string) *DescribeJobExecutionInput {
  20099. s.JobId = &v
  20100. return s
  20101. }
  20102. // SetThingName sets the ThingName field's value.
  20103. func (s *DescribeJobExecutionInput) SetThingName(v string) *DescribeJobExecutionInput {
  20104. s.ThingName = &v
  20105. return s
  20106. }
  20107. type DescribeJobExecutionOutput struct {
  20108. _ struct{} `type:"structure"`
  20109. // Information about the job execution.
  20110. Execution *JobExecution `locationName:"execution" type:"structure"`
  20111. }
  20112. // String returns the string representation
  20113. func (s DescribeJobExecutionOutput) String() string {
  20114. return awsutil.Prettify(s)
  20115. }
  20116. // GoString returns the string representation
  20117. func (s DescribeJobExecutionOutput) GoString() string {
  20118. return s.String()
  20119. }
  20120. // SetExecution sets the Execution field's value.
  20121. func (s *DescribeJobExecutionOutput) SetExecution(v *JobExecution) *DescribeJobExecutionOutput {
  20122. s.Execution = v
  20123. return s
  20124. }
  20125. type DescribeJobInput struct {
  20126. _ struct{} `type:"structure"`
  20127. // The unique identifier you assigned to this job when it was created.
  20128. //
  20129. // JobId is a required field
  20130. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  20131. }
  20132. // String returns the string representation
  20133. func (s DescribeJobInput) String() string {
  20134. return awsutil.Prettify(s)
  20135. }
  20136. // GoString returns the string representation
  20137. func (s DescribeJobInput) GoString() string {
  20138. return s.String()
  20139. }
  20140. // Validate inspects the fields of the type to determine if they are valid.
  20141. func (s *DescribeJobInput) Validate() error {
  20142. invalidParams := request.ErrInvalidParams{Context: "DescribeJobInput"}
  20143. if s.JobId == nil {
  20144. invalidParams.Add(request.NewErrParamRequired("JobId"))
  20145. }
  20146. if s.JobId != nil && len(*s.JobId) < 1 {
  20147. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  20148. }
  20149. if invalidParams.Len() > 0 {
  20150. return invalidParams
  20151. }
  20152. return nil
  20153. }
  20154. // SetJobId sets the JobId field's value.
  20155. func (s *DescribeJobInput) SetJobId(v string) *DescribeJobInput {
  20156. s.JobId = &v
  20157. return s
  20158. }
  20159. type DescribeJobOutput struct {
  20160. _ struct{} `type:"structure"`
  20161. // An S3 link to the job document.
  20162. DocumentSource *string `locationName:"documentSource" min:"1" type:"string"`
  20163. // Information about the job.
  20164. Job *Job `locationName:"job" type:"structure"`
  20165. }
  20166. // String returns the string representation
  20167. func (s DescribeJobOutput) String() string {
  20168. return awsutil.Prettify(s)
  20169. }
  20170. // GoString returns the string representation
  20171. func (s DescribeJobOutput) GoString() string {
  20172. return s.String()
  20173. }
  20174. // SetDocumentSource sets the DocumentSource field's value.
  20175. func (s *DescribeJobOutput) SetDocumentSource(v string) *DescribeJobOutput {
  20176. s.DocumentSource = &v
  20177. return s
  20178. }
  20179. // SetJob sets the Job field's value.
  20180. func (s *DescribeJobOutput) SetJob(v *Job) *DescribeJobOutput {
  20181. s.Job = v
  20182. return s
  20183. }
  20184. type DescribeRoleAliasInput struct {
  20185. _ struct{} `type:"structure"`
  20186. // The role alias to describe.
  20187. //
  20188. // RoleAlias is a required field
  20189. RoleAlias *string `location:"uri" locationName:"roleAlias" min:"1" type:"string" required:"true"`
  20190. }
  20191. // String returns the string representation
  20192. func (s DescribeRoleAliasInput) String() string {
  20193. return awsutil.Prettify(s)
  20194. }
  20195. // GoString returns the string representation
  20196. func (s DescribeRoleAliasInput) GoString() string {
  20197. return s.String()
  20198. }
  20199. // Validate inspects the fields of the type to determine if they are valid.
  20200. func (s *DescribeRoleAliasInput) Validate() error {
  20201. invalidParams := request.ErrInvalidParams{Context: "DescribeRoleAliasInput"}
  20202. if s.RoleAlias == nil {
  20203. invalidParams.Add(request.NewErrParamRequired("RoleAlias"))
  20204. }
  20205. if s.RoleAlias != nil && len(*s.RoleAlias) < 1 {
  20206. invalidParams.Add(request.NewErrParamMinLen("RoleAlias", 1))
  20207. }
  20208. if invalidParams.Len() > 0 {
  20209. return invalidParams
  20210. }
  20211. return nil
  20212. }
  20213. // SetRoleAlias sets the RoleAlias field's value.
  20214. func (s *DescribeRoleAliasInput) SetRoleAlias(v string) *DescribeRoleAliasInput {
  20215. s.RoleAlias = &v
  20216. return s
  20217. }
  20218. type DescribeRoleAliasOutput struct {
  20219. _ struct{} `type:"structure"`
  20220. // The role alias description.
  20221. RoleAliasDescription *RoleAliasDescription `locationName:"roleAliasDescription" type:"structure"`
  20222. }
  20223. // String returns the string representation
  20224. func (s DescribeRoleAliasOutput) String() string {
  20225. return awsutil.Prettify(s)
  20226. }
  20227. // GoString returns the string representation
  20228. func (s DescribeRoleAliasOutput) GoString() string {
  20229. return s.String()
  20230. }
  20231. // SetRoleAliasDescription sets the RoleAliasDescription field's value.
  20232. func (s *DescribeRoleAliasOutput) SetRoleAliasDescription(v *RoleAliasDescription) *DescribeRoleAliasOutput {
  20233. s.RoleAliasDescription = v
  20234. return s
  20235. }
  20236. type DescribeScheduledAuditInput struct {
  20237. _ struct{} `type:"structure"`
  20238. // The name of the scheduled audit whose information you want to get.
  20239. //
  20240. // ScheduledAuditName is a required field
  20241. ScheduledAuditName *string `location:"uri" locationName:"scheduledAuditName" min:"1" type:"string" required:"true"`
  20242. }
  20243. // String returns the string representation
  20244. func (s DescribeScheduledAuditInput) String() string {
  20245. return awsutil.Prettify(s)
  20246. }
  20247. // GoString returns the string representation
  20248. func (s DescribeScheduledAuditInput) GoString() string {
  20249. return s.String()
  20250. }
  20251. // Validate inspects the fields of the type to determine if they are valid.
  20252. func (s *DescribeScheduledAuditInput) Validate() error {
  20253. invalidParams := request.ErrInvalidParams{Context: "DescribeScheduledAuditInput"}
  20254. if s.ScheduledAuditName == nil {
  20255. invalidParams.Add(request.NewErrParamRequired("ScheduledAuditName"))
  20256. }
  20257. if s.ScheduledAuditName != nil && len(*s.ScheduledAuditName) < 1 {
  20258. invalidParams.Add(request.NewErrParamMinLen("ScheduledAuditName", 1))
  20259. }
  20260. if invalidParams.Len() > 0 {
  20261. return invalidParams
  20262. }
  20263. return nil
  20264. }
  20265. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  20266. func (s *DescribeScheduledAuditInput) SetScheduledAuditName(v string) *DescribeScheduledAuditInput {
  20267. s.ScheduledAuditName = &v
  20268. return s
  20269. }
  20270. type DescribeScheduledAuditOutput struct {
  20271. _ struct{} `type:"structure"`
  20272. // The day of the month on which the scheduled audit takes place. Will be "1"
  20273. // through "31" or "LAST". If days 29-31 are specified, and the month does not
  20274. // have that many days, the audit takes place on the "LAST" day of the month.
  20275. DayOfMonth *string `locationName:"dayOfMonth" type:"string"`
  20276. // The day of the week on which the scheduled audit takes place. One of "SUN",
  20277. // "MON", "TUE", "WED", "THU", "FRI" or "SAT".
  20278. DayOfWeek *string `locationName:"dayOfWeek" type:"string" enum:"DayOfWeek"`
  20279. // How often the scheduled audit takes place. One of "DAILY", "WEEKLY", "BIWEEKLY"
  20280. // or "MONTHLY". The actual start time of each audit is determined by the system.
  20281. Frequency *string `locationName:"frequency" type:"string" enum:"AuditFrequency"`
  20282. // The ARN of the scheduled audit.
  20283. ScheduledAuditArn *string `locationName:"scheduledAuditArn" type:"string"`
  20284. // The name of the scheduled audit.
  20285. ScheduledAuditName *string `locationName:"scheduledAuditName" min:"1" type:"string"`
  20286. // Which checks are performed during the scheduled audit. (Note that checks
  20287. // must be enabled for your account. (Use DescribeAccountAuditConfiguration
  20288. // to see the list of all checks including those that are enabled or UpdateAccountAuditConfiguration
  20289. // to select which checks are enabled.)
  20290. TargetCheckNames []*string `locationName:"targetCheckNames" type:"list"`
  20291. }
  20292. // String returns the string representation
  20293. func (s DescribeScheduledAuditOutput) String() string {
  20294. return awsutil.Prettify(s)
  20295. }
  20296. // GoString returns the string representation
  20297. func (s DescribeScheduledAuditOutput) GoString() string {
  20298. return s.String()
  20299. }
  20300. // SetDayOfMonth sets the DayOfMonth field's value.
  20301. func (s *DescribeScheduledAuditOutput) SetDayOfMonth(v string) *DescribeScheduledAuditOutput {
  20302. s.DayOfMonth = &v
  20303. return s
  20304. }
  20305. // SetDayOfWeek sets the DayOfWeek field's value.
  20306. func (s *DescribeScheduledAuditOutput) SetDayOfWeek(v string) *DescribeScheduledAuditOutput {
  20307. s.DayOfWeek = &v
  20308. return s
  20309. }
  20310. // SetFrequency sets the Frequency field's value.
  20311. func (s *DescribeScheduledAuditOutput) SetFrequency(v string) *DescribeScheduledAuditOutput {
  20312. s.Frequency = &v
  20313. return s
  20314. }
  20315. // SetScheduledAuditArn sets the ScheduledAuditArn field's value.
  20316. func (s *DescribeScheduledAuditOutput) SetScheduledAuditArn(v string) *DescribeScheduledAuditOutput {
  20317. s.ScheduledAuditArn = &v
  20318. return s
  20319. }
  20320. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  20321. func (s *DescribeScheduledAuditOutput) SetScheduledAuditName(v string) *DescribeScheduledAuditOutput {
  20322. s.ScheduledAuditName = &v
  20323. return s
  20324. }
  20325. // SetTargetCheckNames sets the TargetCheckNames field's value.
  20326. func (s *DescribeScheduledAuditOutput) SetTargetCheckNames(v []*string) *DescribeScheduledAuditOutput {
  20327. s.TargetCheckNames = v
  20328. return s
  20329. }
  20330. type DescribeSecurityProfileInput struct {
  20331. _ struct{} `type:"structure"`
  20332. // The name of the security profile whose information you want to get.
  20333. //
  20334. // SecurityProfileName is a required field
  20335. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  20336. }
  20337. // String returns the string representation
  20338. func (s DescribeSecurityProfileInput) String() string {
  20339. return awsutil.Prettify(s)
  20340. }
  20341. // GoString returns the string representation
  20342. func (s DescribeSecurityProfileInput) GoString() string {
  20343. return s.String()
  20344. }
  20345. // Validate inspects the fields of the type to determine if they are valid.
  20346. func (s *DescribeSecurityProfileInput) Validate() error {
  20347. invalidParams := request.ErrInvalidParams{Context: "DescribeSecurityProfileInput"}
  20348. if s.SecurityProfileName == nil {
  20349. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  20350. }
  20351. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  20352. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  20353. }
  20354. if invalidParams.Len() > 0 {
  20355. return invalidParams
  20356. }
  20357. return nil
  20358. }
  20359. // SetSecurityProfileName sets the SecurityProfileName field's value.
  20360. func (s *DescribeSecurityProfileInput) SetSecurityProfileName(v string) *DescribeSecurityProfileInput {
  20361. s.SecurityProfileName = &v
  20362. return s
  20363. }
  20364. type DescribeSecurityProfileOutput struct {
  20365. _ struct{} `type:"structure"`
  20366. // Where the alerts are sent. (Alerts are always sent to the console.)
  20367. AlertTargets map[string]*AlertTarget `locationName:"alertTargets" type:"map"`
  20368. // Specifies the behaviors that, when violated by a device (thing), cause an
  20369. // alert.
  20370. Behaviors []*Behavior `locationName:"behaviors" type:"list"`
  20371. // The time the security profile was created.
  20372. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  20373. // The time the security profile was last modified.
  20374. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  20375. // The ARN of the security profile.
  20376. SecurityProfileArn *string `locationName:"securityProfileArn" type:"string"`
  20377. // A description of the security profile (associated with the security profile
  20378. // when it was created or updated).
  20379. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"`
  20380. // The name of the security profile.
  20381. SecurityProfileName *string `locationName:"securityProfileName" min:"1" type:"string"`
  20382. // The version of the security profile. A new version is generated whenever
  20383. // the security profile is updated.
  20384. Version *int64 `locationName:"version" type:"long"`
  20385. }
  20386. // String returns the string representation
  20387. func (s DescribeSecurityProfileOutput) String() string {
  20388. return awsutil.Prettify(s)
  20389. }
  20390. // GoString returns the string representation
  20391. func (s DescribeSecurityProfileOutput) GoString() string {
  20392. return s.String()
  20393. }
  20394. // SetAlertTargets sets the AlertTargets field's value.
  20395. func (s *DescribeSecurityProfileOutput) SetAlertTargets(v map[string]*AlertTarget) *DescribeSecurityProfileOutput {
  20396. s.AlertTargets = v
  20397. return s
  20398. }
  20399. // SetBehaviors sets the Behaviors field's value.
  20400. func (s *DescribeSecurityProfileOutput) SetBehaviors(v []*Behavior) *DescribeSecurityProfileOutput {
  20401. s.Behaviors = v
  20402. return s
  20403. }
  20404. // SetCreationDate sets the CreationDate field's value.
  20405. func (s *DescribeSecurityProfileOutput) SetCreationDate(v time.Time) *DescribeSecurityProfileOutput {
  20406. s.CreationDate = &v
  20407. return s
  20408. }
  20409. // SetLastModifiedDate sets the LastModifiedDate field's value.
  20410. func (s *DescribeSecurityProfileOutput) SetLastModifiedDate(v time.Time) *DescribeSecurityProfileOutput {
  20411. s.LastModifiedDate = &v
  20412. return s
  20413. }
  20414. // SetSecurityProfileArn sets the SecurityProfileArn field's value.
  20415. func (s *DescribeSecurityProfileOutput) SetSecurityProfileArn(v string) *DescribeSecurityProfileOutput {
  20416. s.SecurityProfileArn = &v
  20417. return s
  20418. }
  20419. // SetSecurityProfileDescription sets the SecurityProfileDescription field's value.
  20420. func (s *DescribeSecurityProfileOutput) SetSecurityProfileDescription(v string) *DescribeSecurityProfileOutput {
  20421. s.SecurityProfileDescription = &v
  20422. return s
  20423. }
  20424. // SetSecurityProfileName sets the SecurityProfileName field's value.
  20425. func (s *DescribeSecurityProfileOutput) SetSecurityProfileName(v string) *DescribeSecurityProfileOutput {
  20426. s.SecurityProfileName = &v
  20427. return s
  20428. }
  20429. // SetVersion sets the Version field's value.
  20430. func (s *DescribeSecurityProfileOutput) SetVersion(v int64) *DescribeSecurityProfileOutput {
  20431. s.Version = &v
  20432. return s
  20433. }
  20434. type DescribeStreamInput struct {
  20435. _ struct{} `type:"structure"`
  20436. // The stream ID.
  20437. //
  20438. // StreamId is a required field
  20439. StreamId *string `location:"uri" locationName:"streamId" min:"1" type:"string" required:"true"`
  20440. }
  20441. // String returns the string representation
  20442. func (s DescribeStreamInput) String() string {
  20443. return awsutil.Prettify(s)
  20444. }
  20445. // GoString returns the string representation
  20446. func (s DescribeStreamInput) GoString() string {
  20447. return s.String()
  20448. }
  20449. // Validate inspects the fields of the type to determine if they are valid.
  20450. func (s *DescribeStreamInput) Validate() error {
  20451. invalidParams := request.ErrInvalidParams{Context: "DescribeStreamInput"}
  20452. if s.StreamId == nil {
  20453. invalidParams.Add(request.NewErrParamRequired("StreamId"))
  20454. }
  20455. if s.StreamId != nil && len(*s.StreamId) < 1 {
  20456. invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  20457. }
  20458. if invalidParams.Len() > 0 {
  20459. return invalidParams
  20460. }
  20461. return nil
  20462. }
  20463. // SetStreamId sets the StreamId field's value.
  20464. func (s *DescribeStreamInput) SetStreamId(v string) *DescribeStreamInput {
  20465. s.StreamId = &v
  20466. return s
  20467. }
  20468. type DescribeStreamOutput struct {
  20469. _ struct{} `type:"structure"`
  20470. // Information about the stream.
  20471. StreamInfo *StreamInfo `locationName:"streamInfo" type:"structure"`
  20472. }
  20473. // String returns the string representation
  20474. func (s DescribeStreamOutput) String() string {
  20475. return awsutil.Prettify(s)
  20476. }
  20477. // GoString returns the string representation
  20478. func (s DescribeStreamOutput) GoString() string {
  20479. return s.String()
  20480. }
  20481. // SetStreamInfo sets the StreamInfo field's value.
  20482. func (s *DescribeStreamOutput) SetStreamInfo(v *StreamInfo) *DescribeStreamOutput {
  20483. s.StreamInfo = v
  20484. return s
  20485. }
  20486. type DescribeThingGroupInput struct {
  20487. _ struct{} `type:"structure"`
  20488. // The name of the thing group.
  20489. //
  20490. // ThingGroupName is a required field
  20491. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  20492. }
  20493. // String returns the string representation
  20494. func (s DescribeThingGroupInput) String() string {
  20495. return awsutil.Prettify(s)
  20496. }
  20497. // GoString returns the string representation
  20498. func (s DescribeThingGroupInput) GoString() string {
  20499. return s.String()
  20500. }
  20501. // Validate inspects the fields of the type to determine if they are valid.
  20502. func (s *DescribeThingGroupInput) Validate() error {
  20503. invalidParams := request.ErrInvalidParams{Context: "DescribeThingGroupInput"}
  20504. if s.ThingGroupName == nil {
  20505. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  20506. }
  20507. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  20508. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  20509. }
  20510. if invalidParams.Len() > 0 {
  20511. return invalidParams
  20512. }
  20513. return nil
  20514. }
  20515. // SetThingGroupName sets the ThingGroupName field's value.
  20516. func (s *DescribeThingGroupInput) SetThingGroupName(v string) *DescribeThingGroupInput {
  20517. s.ThingGroupName = &v
  20518. return s
  20519. }
  20520. type DescribeThingGroupOutput struct {
  20521. _ struct{} `type:"structure"`
  20522. // The dynamic thing group index name.
  20523. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  20524. // The dynamic thing group search query string.
  20525. QueryString *string `locationName:"queryString" min:"1" type:"string"`
  20526. // The dynamic thing group query version.
  20527. QueryVersion *string `locationName:"queryVersion" type:"string"`
  20528. // The dynamic thing group status.
  20529. Status *string `locationName:"status" type:"string" enum:"DynamicGroupStatus"`
  20530. // The thing group ARN.
  20531. ThingGroupArn *string `locationName:"thingGroupArn" type:"string"`
  20532. // The thing group ID.
  20533. ThingGroupId *string `locationName:"thingGroupId" min:"1" type:"string"`
  20534. // Thing group metadata.
  20535. ThingGroupMetadata *ThingGroupMetadata `locationName:"thingGroupMetadata" type:"structure"`
  20536. // The name of the thing group.
  20537. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  20538. // The thing group properties.
  20539. ThingGroupProperties *ThingGroupProperties `locationName:"thingGroupProperties" type:"structure"`
  20540. // The version of the thing group.
  20541. Version *int64 `locationName:"version" type:"long"`
  20542. }
  20543. // String returns the string representation
  20544. func (s DescribeThingGroupOutput) String() string {
  20545. return awsutil.Prettify(s)
  20546. }
  20547. // GoString returns the string representation
  20548. func (s DescribeThingGroupOutput) GoString() string {
  20549. return s.String()
  20550. }
  20551. // SetIndexName sets the IndexName field's value.
  20552. func (s *DescribeThingGroupOutput) SetIndexName(v string) *DescribeThingGroupOutput {
  20553. s.IndexName = &v
  20554. return s
  20555. }
  20556. // SetQueryString sets the QueryString field's value.
  20557. func (s *DescribeThingGroupOutput) SetQueryString(v string) *DescribeThingGroupOutput {
  20558. s.QueryString = &v
  20559. return s
  20560. }
  20561. // SetQueryVersion sets the QueryVersion field's value.
  20562. func (s *DescribeThingGroupOutput) SetQueryVersion(v string) *DescribeThingGroupOutput {
  20563. s.QueryVersion = &v
  20564. return s
  20565. }
  20566. // SetStatus sets the Status field's value.
  20567. func (s *DescribeThingGroupOutput) SetStatus(v string) *DescribeThingGroupOutput {
  20568. s.Status = &v
  20569. return s
  20570. }
  20571. // SetThingGroupArn sets the ThingGroupArn field's value.
  20572. func (s *DescribeThingGroupOutput) SetThingGroupArn(v string) *DescribeThingGroupOutput {
  20573. s.ThingGroupArn = &v
  20574. return s
  20575. }
  20576. // SetThingGroupId sets the ThingGroupId field's value.
  20577. func (s *DescribeThingGroupOutput) SetThingGroupId(v string) *DescribeThingGroupOutput {
  20578. s.ThingGroupId = &v
  20579. return s
  20580. }
  20581. // SetThingGroupMetadata sets the ThingGroupMetadata field's value.
  20582. func (s *DescribeThingGroupOutput) SetThingGroupMetadata(v *ThingGroupMetadata) *DescribeThingGroupOutput {
  20583. s.ThingGroupMetadata = v
  20584. return s
  20585. }
  20586. // SetThingGroupName sets the ThingGroupName field's value.
  20587. func (s *DescribeThingGroupOutput) SetThingGroupName(v string) *DescribeThingGroupOutput {
  20588. s.ThingGroupName = &v
  20589. return s
  20590. }
  20591. // SetThingGroupProperties sets the ThingGroupProperties field's value.
  20592. func (s *DescribeThingGroupOutput) SetThingGroupProperties(v *ThingGroupProperties) *DescribeThingGroupOutput {
  20593. s.ThingGroupProperties = v
  20594. return s
  20595. }
  20596. // SetVersion sets the Version field's value.
  20597. func (s *DescribeThingGroupOutput) SetVersion(v int64) *DescribeThingGroupOutput {
  20598. s.Version = &v
  20599. return s
  20600. }
  20601. // The input for the DescribeThing operation.
  20602. type DescribeThingInput struct {
  20603. _ struct{} `type:"structure"`
  20604. // The name of the thing.
  20605. //
  20606. // ThingName is a required field
  20607. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  20608. }
  20609. // String returns the string representation
  20610. func (s DescribeThingInput) String() string {
  20611. return awsutil.Prettify(s)
  20612. }
  20613. // GoString returns the string representation
  20614. func (s DescribeThingInput) GoString() string {
  20615. return s.String()
  20616. }
  20617. // Validate inspects the fields of the type to determine if they are valid.
  20618. func (s *DescribeThingInput) Validate() error {
  20619. invalidParams := request.ErrInvalidParams{Context: "DescribeThingInput"}
  20620. if s.ThingName == nil {
  20621. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  20622. }
  20623. if s.ThingName != nil && len(*s.ThingName) < 1 {
  20624. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  20625. }
  20626. if invalidParams.Len() > 0 {
  20627. return invalidParams
  20628. }
  20629. return nil
  20630. }
  20631. // SetThingName sets the ThingName field's value.
  20632. func (s *DescribeThingInput) SetThingName(v string) *DescribeThingInput {
  20633. s.ThingName = &v
  20634. return s
  20635. }
  20636. // The output from the DescribeThing operation.
  20637. type DescribeThingOutput struct {
  20638. _ struct{} `type:"structure"`
  20639. // The thing attributes.
  20640. Attributes map[string]*string `locationName:"attributes" type:"map"`
  20641. // The name of the billing group the thing belongs to.
  20642. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  20643. // The default client ID.
  20644. DefaultClientId *string `locationName:"defaultClientId" type:"string"`
  20645. // The ARN of the thing to describe.
  20646. ThingArn *string `locationName:"thingArn" type:"string"`
  20647. // The ID of the thing to describe.
  20648. ThingId *string `locationName:"thingId" type:"string"`
  20649. // The name of the thing.
  20650. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  20651. // The thing type name.
  20652. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  20653. // The current version of the thing record in the registry.
  20654. //
  20655. // To avoid unintentional changes to the information in the registry, you can
  20656. // pass the version information in the expectedVersion parameter of the UpdateThing
  20657. // and DeleteThing calls.
  20658. Version *int64 `locationName:"version" type:"long"`
  20659. }
  20660. // String returns the string representation
  20661. func (s DescribeThingOutput) String() string {
  20662. return awsutil.Prettify(s)
  20663. }
  20664. // GoString returns the string representation
  20665. func (s DescribeThingOutput) GoString() string {
  20666. return s.String()
  20667. }
  20668. // SetAttributes sets the Attributes field's value.
  20669. func (s *DescribeThingOutput) SetAttributes(v map[string]*string) *DescribeThingOutput {
  20670. s.Attributes = v
  20671. return s
  20672. }
  20673. // SetBillingGroupName sets the BillingGroupName field's value.
  20674. func (s *DescribeThingOutput) SetBillingGroupName(v string) *DescribeThingOutput {
  20675. s.BillingGroupName = &v
  20676. return s
  20677. }
  20678. // SetDefaultClientId sets the DefaultClientId field's value.
  20679. func (s *DescribeThingOutput) SetDefaultClientId(v string) *DescribeThingOutput {
  20680. s.DefaultClientId = &v
  20681. return s
  20682. }
  20683. // SetThingArn sets the ThingArn field's value.
  20684. func (s *DescribeThingOutput) SetThingArn(v string) *DescribeThingOutput {
  20685. s.ThingArn = &v
  20686. return s
  20687. }
  20688. // SetThingId sets the ThingId field's value.
  20689. func (s *DescribeThingOutput) SetThingId(v string) *DescribeThingOutput {
  20690. s.ThingId = &v
  20691. return s
  20692. }
  20693. // SetThingName sets the ThingName field's value.
  20694. func (s *DescribeThingOutput) SetThingName(v string) *DescribeThingOutput {
  20695. s.ThingName = &v
  20696. return s
  20697. }
  20698. // SetThingTypeName sets the ThingTypeName field's value.
  20699. func (s *DescribeThingOutput) SetThingTypeName(v string) *DescribeThingOutput {
  20700. s.ThingTypeName = &v
  20701. return s
  20702. }
  20703. // SetVersion sets the Version field's value.
  20704. func (s *DescribeThingOutput) SetVersion(v int64) *DescribeThingOutput {
  20705. s.Version = &v
  20706. return s
  20707. }
  20708. type DescribeThingRegistrationTaskInput struct {
  20709. _ struct{} `type:"structure"`
  20710. // The task ID.
  20711. //
  20712. // TaskId is a required field
  20713. TaskId *string `location:"uri" locationName:"taskId" type:"string" required:"true"`
  20714. }
  20715. // String returns the string representation
  20716. func (s DescribeThingRegistrationTaskInput) String() string {
  20717. return awsutil.Prettify(s)
  20718. }
  20719. // GoString returns the string representation
  20720. func (s DescribeThingRegistrationTaskInput) GoString() string {
  20721. return s.String()
  20722. }
  20723. // Validate inspects the fields of the type to determine if they are valid.
  20724. func (s *DescribeThingRegistrationTaskInput) Validate() error {
  20725. invalidParams := request.ErrInvalidParams{Context: "DescribeThingRegistrationTaskInput"}
  20726. if s.TaskId == nil {
  20727. invalidParams.Add(request.NewErrParamRequired("TaskId"))
  20728. }
  20729. if s.TaskId != nil && len(*s.TaskId) < 1 {
  20730. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  20731. }
  20732. if invalidParams.Len() > 0 {
  20733. return invalidParams
  20734. }
  20735. return nil
  20736. }
  20737. // SetTaskId sets the TaskId field's value.
  20738. func (s *DescribeThingRegistrationTaskInput) SetTaskId(v string) *DescribeThingRegistrationTaskInput {
  20739. s.TaskId = &v
  20740. return s
  20741. }
  20742. type DescribeThingRegistrationTaskOutput struct {
  20743. _ struct{} `type:"structure"`
  20744. // The task creation date.
  20745. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  20746. // The number of things that failed to be provisioned.
  20747. FailureCount *int64 `locationName:"failureCount" type:"integer"`
  20748. // The S3 bucket that contains the input file.
  20749. InputFileBucket *string `locationName:"inputFileBucket" min:"3" type:"string"`
  20750. // The input file key.
  20751. InputFileKey *string `locationName:"inputFileKey" min:"1" type:"string"`
  20752. // The date when the task was last modified.
  20753. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  20754. // The message.
  20755. Message *string `locationName:"message" type:"string"`
  20756. // The progress of the bulk provisioning task expressed as a percentage.
  20757. PercentageProgress *int64 `locationName:"percentageProgress" type:"integer"`
  20758. // The role ARN that grants access to the input file bucket.
  20759. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  20760. // The status of the bulk thing provisioning task.
  20761. Status *string `locationName:"status" type:"string" enum:"Status"`
  20762. // The number of things successfully provisioned.
  20763. SuccessCount *int64 `locationName:"successCount" type:"integer"`
  20764. // The task ID.
  20765. TaskId *string `locationName:"taskId" type:"string"`
  20766. // The task's template.
  20767. TemplateBody *string `locationName:"templateBody" type:"string"`
  20768. }
  20769. // String returns the string representation
  20770. func (s DescribeThingRegistrationTaskOutput) String() string {
  20771. return awsutil.Prettify(s)
  20772. }
  20773. // GoString returns the string representation
  20774. func (s DescribeThingRegistrationTaskOutput) GoString() string {
  20775. return s.String()
  20776. }
  20777. // SetCreationDate sets the CreationDate field's value.
  20778. func (s *DescribeThingRegistrationTaskOutput) SetCreationDate(v time.Time) *DescribeThingRegistrationTaskOutput {
  20779. s.CreationDate = &v
  20780. return s
  20781. }
  20782. // SetFailureCount sets the FailureCount field's value.
  20783. func (s *DescribeThingRegistrationTaskOutput) SetFailureCount(v int64) *DescribeThingRegistrationTaskOutput {
  20784. s.FailureCount = &v
  20785. return s
  20786. }
  20787. // SetInputFileBucket sets the InputFileBucket field's value.
  20788. func (s *DescribeThingRegistrationTaskOutput) SetInputFileBucket(v string) *DescribeThingRegistrationTaskOutput {
  20789. s.InputFileBucket = &v
  20790. return s
  20791. }
  20792. // SetInputFileKey sets the InputFileKey field's value.
  20793. func (s *DescribeThingRegistrationTaskOutput) SetInputFileKey(v string) *DescribeThingRegistrationTaskOutput {
  20794. s.InputFileKey = &v
  20795. return s
  20796. }
  20797. // SetLastModifiedDate sets the LastModifiedDate field's value.
  20798. func (s *DescribeThingRegistrationTaskOutput) SetLastModifiedDate(v time.Time) *DescribeThingRegistrationTaskOutput {
  20799. s.LastModifiedDate = &v
  20800. return s
  20801. }
  20802. // SetMessage sets the Message field's value.
  20803. func (s *DescribeThingRegistrationTaskOutput) SetMessage(v string) *DescribeThingRegistrationTaskOutput {
  20804. s.Message = &v
  20805. return s
  20806. }
  20807. // SetPercentageProgress sets the PercentageProgress field's value.
  20808. func (s *DescribeThingRegistrationTaskOutput) SetPercentageProgress(v int64) *DescribeThingRegistrationTaskOutput {
  20809. s.PercentageProgress = &v
  20810. return s
  20811. }
  20812. // SetRoleArn sets the RoleArn field's value.
  20813. func (s *DescribeThingRegistrationTaskOutput) SetRoleArn(v string) *DescribeThingRegistrationTaskOutput {
  20814. s.RoleArn = &v
  20815. return s
  20816. }
  20817. // SetStatus sets the Status field's value.
  20818. func (s *DescribeThingRegistrationTaskOutput) SetStatus(v string) *DescribeThingRegistrationTaskOutput {
  20819. s.Status = &v
  20820. return s
  20821. }
  20822. // SetSuccessCount sets the SuccessCount field's value.
  20823. func (s *DescribeThingRegistrationTaskOutput) SetSuccessCount(v int64) *DescribeThingRegistrationTaskOutput {
  20824. s.SuccessCount = &v
  20825. return s
  20826. }
  20827. // SetTaskId sets the TaskId field's value.
  20828. func (s *DescribeThingRegistrationTaskOutput) SetTaskId(v string) *DescribeThingRegistrationTaskOutput {
  20829. s.TaskId = &v
  20830. return s
  20831. }
  20832. // SetTemplateBody sets the TemplateBody field's value.
  20833. func (s *DescribeThingRegistrationTaskOutput) SetTemplateBody(v string) *DescribeThingRegistrationTaskOutput {
  20834. s.TemplateBody = &v
  20835. return s
  20836. }
  20837. // The input for the DescribeThingType operation.
  20838. type DescribeThingTypeInput struct {
  20839. _ struct{} `type:"structure"`
  20840. // The name of the thing type.
  20841. //
  20842. // ThingTypeName is a required field
  20843. ThingTypeName *string `location:"uri" locationName:"thingTypeName" min:"1" type:"string" required:"true"`
  20844. }
  20845. // String returns the string representation
  20846. func (s DescribeThingTypeInput) String() string {
  20847. return awsutil.Prettify(s)
  20848. }
  20849. // GoString returns the string representation
  20850. func (s DescribeThingTypeInput) GoString() string {
  20851. return s.String()
  20852. }
  20853. // Validate inspects the fields of the type to determine if they are valid.
  20854. func (s *DescribeThingTypeInput) Validate() error {
  20855. invalidParams := request.ErrInvalidParams{Context: "DescribeThingTypeInput"}
  20856. if s.ThingTypeName == nil {
  20857. invalidParams.Add(request.NewErrParamRequired("ThingTypeName"))
  20858. }
  20859. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  20860. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  20861. }
  20862. if invalidParams.Len() > 0 {
  20863. return invalidParams
  20864. }
  20865. return nil
  20866. }
  20867. // SetThingTypeName sets the ThingTypeName field's value.
  20868. func (s *DescribeThingTypeInput) SetThingTypeName(v string) *DescribeThingTypeInput {
  20869. s.ThingTypeName = &v
  20870. return s
  20871. }
  20872. // The output for the DescribeThingType operation.
  20873. type DescribeThingTypeOutput struct {
  20874. _ struct{} `type:"structure"`
  20875. // The thing type ARN.
  20876. ThingTypeArn *string `locationName:"thingTypeArn" type:"string"`
  20877. // The thing type ID.
  20878. ThingTypeId *string `locationName:"thingTypeId" type:"string"`
  20879. // The ThingTypeMetadata contains additional information about the thing type
  20880. // including: creation date and time, a value indicating whether the thing type
  20881. // is deprecated, and a date and time when it was deprecated.
  20882. ThingTypeMetadata *ThingTypeMetadata `locationName:"thingTypeMetadata" type:"structure"`
  20883. // The name of the thing type.
  20884. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  20885. // The ThingTypeProperties contains information about the thing type including
  20886. // description, and a list of searchable thing attribute names.
  20887. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"`
  20888. }
  20889. // String returns the string representation
  20890. func (s DescribeThingTypeOutput) String() string {
  20891. return awsutil.Prettify(s)
  20892. }
  20893. // GoString returns the string representation
  20894. func (s DescribeThingTypeOutput) GoString() string {
  20895. return s.String()
  20896. }
  20897. // SetThingTypeArn sets the ThingTypeArn field's value.
  20898. func (s *DescribeThingTypeOutput) SetThingTypeArn(v string) *DescribeThingTypeOutput {
  20899. s.ThingTypeArn = &v
  20900. return s
  20901. }
  20902. // SetThingTypeId sets the ThingTypeId field's value.
  20903. func (s *DescribeThingTypeOutput) SetThingTypeId(v string) *DescribeThingTypeOutput {
  20904. s.ThingTypeId = &v
  20905. return s
  20906. }
  20907. // SetThingTypeMetadata sets the ThingTypeMetadata field's value.
  20908. func (s *DescribeThingTypeOutput) SetThingTypeMetadata(v *ThingTypeMetadata) *DescribeThingTypeOutput {
  20909. s.ThingTypeMetadata = v
  20910. return s
  20911. }
  20912. // SetThingTypeName sets the ThingTypeName field's value.
  20913. func (s *DescribeThingTypeOutput) SetThingTypeName(v string) *DescribeThingTypeOutput {
  20914. s.ThingTypeName = &v
  20915. return s
  20916. }
  20917. // SetThingTypeProperties sets the ThingTypeProperties field's value.
  20918. func (s *DescribeThingTypeOutput) SetThingTypeProperties(v *ThingTypeProperties) *DescribeThingTypeOutput {
  20919. s.ThingTypeProperties = v
  20920. return s
  20921. }
  20922. // Describes the location of the updated firmware.
  20923. type Destination struct {
  20924. _ struct{} `type:"structure"`
  20925. // Describes the location in S3 of the updated firmware.
  20926. S3Destination *S3Destination `locationName:"s3Destination" type:"structure"`
  20927. }
  20928. // String returns the string representation
  20929. func (s Destination) String() string {
  20930. return awsutil.Prettify(s)
  20931. }
  20932. // GoString returns the string representation
  20933. func (s Destination) GoString() string {
  20934. return s.String()
  20935. }
  20936. // Validate inspects the fields of the type to determine if they are valid.
  20937. func (s *Destination) Validate() error {
  20938. invalidParams := request.ErrInvalidParams{Context: "Destination"}
  20939. if s.S3Destination != nil {
  20940. if err := s.S3Destination.Validate(); err != nil {
  20941. invalidParams.AddNested("S3Destination", err.(request.ErrInvalidParams))
  20942. }
  20943. }
  20944. if invalidParams.Len() > 0 {
  20945. return invalidParams
  20946. }
  20947. return nil
  20948. }
  20949. // SetS3Destination sets the S3Destination field's value.
  20950. func (s *Destination) SetS3Destination(v *S3Destination) *Destination {
  20951. s.S3Destination = v
  20952. return s
  20953. }
  20954. type DetachPolicyInput struct {
  20955. _ struct{} `type:"structure"`
  20956. // The policy to detach.
  20957. //
  20958. // PolicyName is a required field
  20959. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  20960. // The target from which the policy will be detached.
  20961. //
  20962. // Target is a required field
  20963. Target *string `locationName:"target" type:"string" required:"true"`
  20964. }
  20965. // String returns the string representation
  20966. func (s DetachPolicyInput) String() string {
  20967. return awsutil.Prettify(s)
  20968. }
  20969. // GoString returns the string representation
  20970. func (s DetachPolicyInput) GoString() string {
  20971. return s.String()
  20972. }
  20973. // Validate inspects the fields of the type to determine if they are valid.
  20974. func (s *DetachPolicyInput) Validate() error {
  20975. invalidParams := request.ErrInvalidParams{Context: "DetachPolicyInput"}
  20976. if s.PolicyName == nil {
  20977. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  20978. }
  20979. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  20980. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  20981. }
  20982. if s.Target == nil {
  20983. invalidParams.Add(request.NewErrParamRequired("Target"))
  20984. }
  20985. if invalidParams.Len() > 0 {
  20986. return invalidParams
  20987. }
  20988. return nil
  20989. }
  20990. // SetPolicyName sets the PolicyName field's value.
  20991. func (s *DetachPolicyInput) SetPolicyName(v string) *DetachPolicyInput {
  20992. s.PolicyName = &v
  20993. return s
  20994. }
  20995. // SetTarget sets the Target field's value.
  20996. func (s *DetachPolicyInput) SetTarget(v string) *DetachPolicyInput {
  20997. s.Target = &v
  20998. return s
  20999. }
  21000. type DetachPolicyOutput struct {
  21001. _ struct{} `type:"structure"`
  21002. }
  21003. // String returns the string representation
  21004. func (s DetachPolicyOutput) String() string {
  21005. return awsutil.Prettify(s)
  21006. }
  21007. // GoString returns the string representation
  21008. func (s DetachPolicyOutput) GoString() string {
  21009. return s.String()
  21010. }
  21011. // The input for the DetachPrincipalPolicy operation.
  21012. type DetachPrincipalPolicyInput struct {
  21013. _ struct{} `type:"structure"`
  21014. // The name of the policy to detach.
  21015. //
  21016. // PolicyName is a required field
  21017. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  21018. // The principal.
  21019. //
  21020. // If the principal is a certificate, specify the certificate ARN. If the principal
  21021. // is an Amazon Cognito identity, specify the identity ID.
  21022. //
  21023. // Principal is a required field
  21024. Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"`
  21025. }
  21026. // String returns the string representation
  21027. func (s DetachPrincipalPolicyInput) String() string {
  21028. return awsutil.Prettify(s)
  21029. }
  21030. // GoString returns the string representation
  21031. func (s DetachPrincipalPolicyInput) GoString() string {
  21032. return s.String()
  21033. }
  21034. // Validate inspects the fields of the type to determine if they are valid.
  21035. func (s *DetachPrincipalPolicyInput) Validate() error {
  21036. invalidParams := request.ErrInvalidParams{Context: "DetachPrincipalPolicyInput"}
  21037. if s.PolicyName == nil {
  21038. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  21039. }
  21040. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  21041. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  21042. }
  21043. if s.Principal == nil {
  21044. invalidParams.Add(request.NewErrParamRequired("Principal"))
  21045. }
  21046. if invalidParams.Len() > 0 {
  21047. return invalidParams
  21048. }
  21049. return nil
  21050. }
  21051. // SetPolicyName sets the PolicyName field's value.
  21052. func (s *DetachPrincipalPolicyInput) SetPolicyName(v string) *DetachPrincipalPolicyInput {
  21053. s.PolicyName = &v
  21054. return s
  21055. }
  21056. // SetPrincipal sets the Principal field's value.
  21057. func (s *DetachPrincipalPolicyInput) SetPrincipal(v string) *DetachPrincipalPolicyInput {
  21058. s.Principal = &v
  21059. return s
  21060. }
  21061. type DetachPrincipalPolicyOutput struct {
  21062. _ struct{} `type:"structure"`
  21063. }
  21064. // String returns the string representation
  21065. func (s DetachPrincipalPolicyOutput) String() string {
  21066. return awsutil.Prettify(s)
  21067. }
  21068. // GoString returns the string representation
  21069. func (s DetachPrincipalPolicyOutput) GoString() string {
  21070. return s.String()
  21071. }
  21072. type DetachSecurityProfileInput struct {
  21073. _ struct{} `type:"structure"`
  21074. // The security profile that is detached.
  21075. //
  21076. // SecurityProfileName is a required field
  21077. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  21078. // The ARN of the thing group from which the security profile is detached.
  21079. //
  21080. // SecurityProfileTargetArn is a required field
  21081. SecurityProfileTargetArn *string `location:"querystring" locationName:"securityProfileTargetArn" type:"string" required:"true"`
  21082. }
  21083. // String returns the string representation
  21084. func (s DetachSecurityProfileInput) String() string {
  21085. return awsutil.Prettify(s)
  21086. }
  21087. // GoString returns the string representation
  21088. func (s DetachSecurityProfileInput) GoString() string {
  21089. return s.String()
  21090. }
  21091. // Validate inspects the fields of the type to determine if they are valid.
  21092. func (s *DetachSecurityProfileInput) Validate() error {
  21093. invalidParams := request.ErrInvalidParams{Context: "DetachSecurityProfileInput"}
  21094. if s.SecurityProfileName == nil {
  21095. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  21096. }
  21097. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  21098. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  21099. }
  21100. if s.SecurityProfileTargetArn == nil {
  21101. invalidParams.Add(request.NewErrParamRequired("SecurityProfileTargetArn"))
  21102. }
  21103. if invalidParams.Len() > 0 {
  21104. return invalidParams
  21105. }
  21106. return nil
  21107. }
  21108. // SetSecurityProfileName sets the SecurityProfileName field's value.
  21109. func (s *DetachSecurityProfileInput) SetSecurityProfileName(v string) *DetachSecurityProfileInput {
  21110. s.SecurityProfileName = &v
  21111. return s
  21112. }
  21113. // SetSecurityProfileTargetArn sets the SecurityProfileTargetArn field's value.
  21114. func (s *DetachSecurityProfileInput) SetSecurityProfileTargetArn(v string) *DetachSecurityProfileInput {
  21115. s.SecurityProfileTargetArn = &v
  21116. return s
  21117. }
  21118. type DetachSecurityProfileOutput struct {
  21119. _ struct{} `type:"structure"`
  21120. }
  21121. // String returns the string representation
  21122. func (s DetachSecurityProfileOutput) String() string {
  21123. return awsutil.Prettify(s)
  21124. }
  21125. // GoString returns the string representation
  21126. func (s DetachSecurityProfileOutput) GoString() string {
  21127. return s.String()
  21128. }
  21129. // The input for the DetachThingPrincipal operation.
  21130. type DetachThingPrincipalInput struct {
  21131. _ struct{} `type:"structure"`
  21132. // If the principal is a certificate, this value must be ARN of the certificate.
  21133. // If the principal is an Amazon Cognito identity, this value must be the ID
  21134. // of the Amazon Cognito identity.
  21135. //
  21136. // Principal is a required field
  21137. Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"`
  21138. // The name of the thing.
  21139. //
  21140. // ThingName is a required field
  21141. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  21142. }
  21143. // String returns the string representation
  21144. func (s DetachThingPrincipalInput) String() string {
  21145. return awsutil.Prettify(s)
  21146. }
  21147. // GoString returns the string representation
  21148. func (s DetachThingPrincipalInput) GoString() string {
  21149. return s.String()
  21150. }
  21151. // Validate inspects the fields of the type to determine if they are valid.
  21152. func (s *DetachThingPrincipalInput) Validate() error {
  21153. invalidParams := request.ErrInvalidParams{Context: "DetachThingPrincipalInput"}
  21154. if s.Principal == nil {
  21155. invalidParams.Add(request.NewErrParamRequired("Principal"))
  21156. }
  21157. if s.ThingName == nil {
  21158. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  21159. }
  21160. if s.ThingName != nil && len(*s.ThingName) < 1 {
  21161. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  21162. }
  21163. if invalidParams.Len() > 0 {
  21164. return invalidParams
  21165. }
  21166. return nil
  21167. }
  21168. // SetPrincipal sets the Principal field's value.
  21169. func (s *DetachThingPrincipalInput) SetPrincipal(v string) *DetachThingPrincipalInput {
  21170. s.Principal = &v
  21171. return s
  21172. }
  21173. // SetThingName sets the ThingName field's value.
  21174. func (s *DetachThingPrincipalInput) SetThingName(v string) *DetachThingPrincipalInput {
  21175. s.ThingName = &v
  21176. return s
  21177. }
  21178. // The output from the DetachThingPrincipal operation.
  21179. type DetachThingPrincipalOutput struct {
  21180. _ struct{} `type:"structure"`
  21181. }
  21182. // String returns the string representation
  21183. func (s DetachThingPrincipalOutput) String() string {
  21184. return awsutil.Prettify(s)
  21185. }
  21186. // GoString returns the string representation
  21187. func (s DetachThingPrincipalOutput) GoString() string {
  21188. return s.String()
  21189. }
  21190. // The input for the DisableTopicRuleRequest operation.
  21191. type DisableTopicRuleInput struct {
  21192. _ struct{} `type:"structure"`
  21193. // The name of the rule to disable.
  21194. //
  21195. // RuleName is a required field
  21196. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  21197. }
  21198. // String returns the string representation
  21199. func (s DisableTopicRuleInput) String() string {
  21200. return awsutil.Prettify(s)
  21201. }
  21202. // GoString returns the string representation
  21203. func (s DisableTopicRuleInput) GoString() string {
  21204. return s.String()
  21205. }
  21206. // Validate inspects the fields of the type to determine if they are valid.
  21207. func (s *DisableTopicRuleInput) Validate() error {
  21208. invalidParams := request.ErrInvalidParams{Context: "DisableTopicRuleInput"}
  21209. if s.RuleName == nil {
  21210. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  21211. }
  21212. if s.RuleName != nil && len(*s.RuleName) < 1 {
  21213. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  21214. }
  21215. if invalidParams.Len() > 0 {
  21216. return invalidParams
  21217. }
  21218. return nil
  21219. }
  21220. // SetRuleName sets the RuleName field's value.
  21221. func (s *DisableTopicRuleInput) SetRuleName(v string) *DisableTopicRuleInput {
  21222. s.RuleName = &v
  21223. return s
  21224. }
  21225. type DisableTopicRuleOutput struct {
  21226. _ struct{} `type:"structure"`
  21227. }
  21228. // String returns the string representation
  21229. func (s DisableTopicRuleOutput) String() string {
  21230. return awsutil.Prettify(s)
  21231. }
  21232. // GoString returns the string representation
  21233. func (s DisableTopicRuleOutput) GoString() string {
  21234. return s.String()
  21235. }
  21236. // Describes an action to write to a DynamoDB table.
  21237. //
  21238. // The tableName, hashKeyField, and rangeKeyField values must match the values
  21239. // used when you created the table.
  21240. //
  21241. // The hashKeyValue and rangeKeyvalue fields use a substitution template syntax.
  21242. // These templates provide data at runtime. The syntax is as follows: ${sql-expression}.
  21243. //
  21244. // You can specify any valid expression in a WHERE or SELECT clause, including
  21245. // JSON properties, comparisons, calculations, and functions. For example, the
  21246. // following field uses the third level of the topic:
  21247. //
  21248. // "hashKeyValue": "${topic(3)}"
  21249. //
  21250. // The following field uses the timestamp:
  21251. //
  21252. // "rangeKeyValue": "${timestamp()}"
  21253. type DynamoDBAction struct {
  21254. _ struct{} `type:"structure"`
  21255. // The hash key name.
  21256. //
  21257. // HashKeyField is a required field
  21258. HashKeyField *string `locationName:"hashKeyField" type:"string" required:"true"`
  21259. // The hash key type. Valid values are "STRING" or "NUMBER"
  21260. HashKeyType *string `locationName:"hashKeyType" type:"string" enum:"DynamoKeyType"`
  21261. // The hash key value.
  21262. //
  21263. // HashKeyValue is a required field
  21264. HashKeyValue *string `locationName:"hashKeyValue" type:"string" required:"true"`
  21265. // The type of operation to be performed. This follows the substitution template,
  21266. // so it can be ${operation}, but the substitution must result in one of the
  21267. // following: INSERT, UPDATE, or DELETE.
  21268. Operation *string `locationName:"operation" type:"string"`
  21269. // The action payload. This name can be customized.
  21270. PayloadField *string `locationName:"payloadField" type:"string"`
  21271. // The range key name.
  21272. RangeKeyField *string `locationName:"rangeKeyField" type:"string"`
  21273. // The range key type. Valid values are "STRING" or "NUMBER"
  21274. RangeKeyType *string `locationName:"rangeKeyType" type:"string" enum:"DynamoKeyType"`
  21275. // The range key value.
  21276. RangeKeyValue *string `locationName:"rangeKeyValue" type:"string"`
  21277. // The ARN of the IAM role that grants access to the DynamoDB table.
  21278. //
  21279. // RoleArn is a required field
  21280. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  21281. // The name of the DynamoDB table.
  21282. //
  21283. // TableName is a required field
  21284. TableName *string `locationName:"tableName" type:"string" required:"true"`
  21285. }
  21286. // String returns the string representation
  21287. func (s DynamoDBAction) String() string {
  21288. return awsutil.Prettify(s)
  21289. }
  21290. // GoString returns the string representation
  21291. func (s DynamoDBAction) GoString() string {
  21292. return s.String()
  21293. }
  21294. // Validate inspects the fields of the type to determine if they are valid.
  21295. func (s *DynamoDBAction) Validate() error {
  21296. invalidParams := request.ErrInvalidParams{Context: "DynamoDBAction"}
  21297. if s.HashKeyField == nil {
  21298. invalidParams.Add(request.NewErrParamRequired("HashKeyField"))
  21299. }
  21300. if s.HashKeyValue == nil {
  21301. invalidParams.Add(request.NewErrParamRequired("HashKeyValue"))
  21302. }
  21303. if s.RoleArn == nil {
  21304. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  21305. }
  21306. if s.TableName == nil {
  21307. invalidParams.Add(request.NewErrParamRequired("TableName"))
  21308. }
  21309. if invalidParams.Len() > 0 {
  21310. return invalidParams
  21311. }
  21312. return nil
  21313. }
  21314. // SetHashKeyField sets the HashKeyField field's value.
  21315. func (s *DynamoDBAction) SetHashKeyField(v string) *DynamoDBAction {
  21316. s.HashKeyField = &v
  21317. return s
  21318. }
  21319. // SetHashKeyType sets the HashKeyType field's value.
  21320. func (s *DynamoDBAction) SetHashKeyType(v string) *DynamoDBAction {
  21321. s.HashKeyType = &v
  21322. return s
  21323. }
  21324. // SetHashKeyValue sets the HashKeyValue field's value.
  21325. func (s *DynamoDBAction) SetHashKeyValue(v string) *DynamoDBAction {
  21326. s.HashKeyValue = &v
  21327. return s
  21328. }
  21329. // SetOperation sets the Operation field's value.
  21330. func (s *DynamoDBAction) SetOperation(v string) *DynamoDBAction {
  21331. s.Operation = &v
  21332. return s
  21333. }
  21334. // SetPayloadField sets the PayloadField field's value.
  21335. func (s *DynamoDBAction) SetPayloadField(v string) *DynamoDBAction {
  21336. s.PayloadField = &v
  21337. return s
  21338. }
  21339. // SetRangeKeyField sets the RangeKeyField field's value.
  21340. func (s *DynamoDBAction) SetRangeKeyField(v string) *DynamoDBAction {
  21341. s.RangeKeyField = &v
  21342. return s
  21343. }
  21344. // SetRangeKeyType sets the RangeKeyType field's value.
  21345. func (s *DynamoDBAction) SetRangeKeyType(v string) *DynamoDBAction {
  21346. s.RangeKeyType = &v
  21347. return s
  21348. }
  21349. // SetRangeKeyValue sets the RangeKeyValue field's value.
  21350. func (s *DynamoDBAction) SetRangeKeyValue(v string) *DynamoDBAction {
  21351. s.RangeKeyValue = &v
  21352. return s
  21353. }
  21354. // SetRoleArn sets the RoleArn field's value.
  21355. func (s *DynamoDBAction) SetRoleArn(v string) *DynamoDBAction {
  21356. s.RoleArn = &v
  21357. return s
  21358. }
  21359. // SetTableName sets the TableName field's value.
  21360. func (s *DynamoDBAction) SetTableName(v string) *DynamoDBAction {
  21361. s.TableName = &v
  21362. return s
  21363. }
  21364. // Describes an action to write to a DynamoDB table.
  21365. //
  21366. // This DynamoDB action writes each attribute in the message payload into it's
  21367. // own column in the DynamoDB table.
  21368. type DynamoDBv2Action struct {
  21369. _ struct{} `type:"structure"`
  21370. // Specifies the DynamoDB table to which the message data will be written. For
  21371. // example:
  21372. //
  21373. // { "dynamoDBv2": { "roleArn": "aws:iam:12341251:my-role" "putItem": { "tableName":
  21374. // "my-table" } } }
  21375. //
  21376. // Each attribute in the message payload will be written to a separate column
  21377. // in the DynamoDB database.
  21378. //
  21379. // PutItem is a required field
  21380. PutItem *PutItemInput `locationName:"putItem" type:"structure" required:"true"`
  21381. // The ARN of the IAM role that grants access to the DynamoDB table.
  21382. //
  21383. // RoleArn is a required field
  21384. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  21385. }
  21386. // String returns the string representation
  21387. func (s DynamoDBv2Action) String() string {
  21388. return awsutil.Prettify(s)
  21389. }
  21390. // GoString returns the string representation
  21391. func (s DynamoDBv2Action) GoString() string {
  21392. return s.String()
  21393. }
  21394. // Validate inspects the fields of the type to determine if they are valid.
  21395. func (s *DynamoDBv2Action) Validate() error {
  21396. invalidParams := request.ErrInvalidParams{Context: "DynamoDBv2Action"}
  21397. if s.PutItem == nil {
  21398. invalidParams.Add(request.NewErrParamRequired("PutItem"))
  21399. }
  21400. if s.RoleArn == nil {
  21401. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  21402. }
  21403. if s.PutItem != nil {
  21404. if err := s.PutItem.Validate(); err != nil {
  21405. invalidParams.AddNested("PutItem", err.(request.ErrInvalidParams))
  21406. }
  21407. }
  21408. if invalidParams.Len() > 0 {
  21409. return invalidParams
  21410. }
  21411. return nil
  21412. }
  21413. // SetPutItem sets the PutItem field's value.
  21414. func (s *DynamoDBv2Action) SetPutItem(v *PutItemInput) *DynamoDBv2Action {
  21415. s.PutItem = v
  21416. return s
  21417. }
  21418. // SetRoleArn sets the RoleArn field's value.
  21419. func (s *DynamoDBv2Action) SetRoleArn(v string) *DynamoDBv2Action {
  21420. s.RoleArn = &v
  21421. return s
  21422. }
  21423. // The policy that has the effect on the authorization results.
  21424. type EffectivePolicy struct {
  21425. _ struct{} `type:"structure"`
  21426. // The policy ARN.
  21427. PolicyArn *string `locationName:"policyArn" type:"string"`
  21428. // The IAM policy document.
  21429. PolicyDocument *string `locationName:"policyDocument" type:"string"`
  21430. // The policy name.
  21431. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  21432. }
  21433. // String returns the string representation
  21434. func (s EffectivePolicy) String() string {
  21435. return awsutil.Prettify(s)
  21436. }
  21437. // GoString returns the string representation
  21438. func (s EffectivePolicy) GoString() string {
  21439. return s.String()
  21440. }
  21441. // SetPolicyArn sets the PolicyArn field's value.
  21442. func (s *EffectivePolicy) SetPolicyArn(v string) *EffectivePolicy {
  21443. s.PolicyArn = &v
  21444. return s
  21445. }
  21446. // SetPolicyDocument sets the PolicyDocument field's value.
  21447. func (s *EffectivePolicy) SetPolicyDocument(v string) *EffectivePolicy {
  21448. s.PolicyDocument = &v
  21449. return s
  21450. }
  21451. // SetPolicyName sets the PolicyName field's value.
  21452. func (s *EffectivePolicy) SetPolicyName(v string) *EffectivePolicy {
  21453. s.PolicyName = &v
  21454. return s
  21455. }
  21456. // Describes an action that writes data to an Amazon Elasticsearch Service domain.
  21457. type ElasticsearchAction struct {
  21458. _ struct{} `type:"structure"`
  21459. // The endpoint of your Elasticsearch domain.
  21460. //
  21461. // Endpoint is a required field
  21462. Endpoint *string `locationName:"endpoint" type:"string" required:"true"`
  21463. // The unique identifier for the document you are storing.
  21464. //
  21465. // Id is a required field
  21466. Id *string `locationName:"id" type:"string" required:"true"`
  21467. // The Elasticsearch index where you want to store your data.
  21468. //
  21469. // Index is a required field
  21470. Index *string `locationName:"index" type:"string" required:"true"`
  21471. // The IAM role ARN that has access to Elasticsearch.
  21472. //
  21473. // RoleArn is a required field
  21474. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  21475. // The type of document you are storing.
  21476. //
  21477. // Type is a required field
  21478. Type *string `locationName:"type" type:"string" required:"true"`
  21479. }
  21480. // String returns the string representation
  21481. func (s ElasticsearchAction) String() string {
  21482. return awsutil.Prettify(s)
  21483. }
  21484. // GoString returns the string representation
  21485. func (s ElasticsearchAction) GoString() string {
  21486. return s.String()
  21487. }
  21488. // Validate inspects the fields of the type to determine if they are valid.
  21489. func (s *ElasticsearchAction) Validate() error {
  21490. invalidParams := request.ErrInvalidParams{Context: "ElasticsearchAction"}
  21491. if s.Endpoint == nil {
  21492. invalidParams.Add(request.NewErrParamRequired("Endpoint"))
  21493. }
  21494. if s.Id == nil {
  21495. invalidParams.Add(request.NewErrParamRequired("Id"))
  21496. }
  21497. if s.Index == nil {
  21498. invalidParams.Add(request.NewErrParamRequired("Index"))
  21499. }
  21500. if s.RoleArn == nil {
  21501. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  21502. }
  21503. if s.Type == nil {
  21504. invalidParams.Add(request.NewErrParamRequired("Type"))
  21505. }
  21506. if invalidParams.Len() > 0 {
  21507. return invalidParams
  21508. }
  21509. return nil
  21510. }
  21511. // SetEndpoint sets the Endpoint field's value.
  21512. func (s *ElasticsearchAction) SetEndpoint(v string) *ElasticsearchAction {
  21513. s.Endpoint = &v
  21514. return s
  21515. }
  21516. // SetId sets the Id field's value.
  21517. func (s *ElasticsearchAction) SetId(v string) *ElasticsearchAction {
  21518. s.Id = &v
  21519. return s
  21520. }
  21521. // SetIndex sets the Index field's value.
  21522. func (s *ElasticsearchAction) SetIndex(v string) *ElasticsearchAction {
  21523. s.Index = &v
  21524. return s
  21525. }
  21526. // SetRoleArn sets the RoleArn field's value.
  21527. func (s *ElasticsearchAction) SetRoleArn(v string) *ElasticsearchAction {
  21528. s.RoleArn = &v
  21529. return s
  21530. }
  21531. // SetType sets the Type field's value.
  21532. func (s *ElasticsearchAction) SetType(v string) *ElasticsearchAction {
  21533. s.Type = &v
  21534. return s
  21535. }
  21536. // The input for the EnableTopicRuleRequest operation.
  21537. type EnableTopicRuleInput struct {
  21538. _ struct{} `type:"structure"`
  21539. // The name of the topic rule to enable.
  21540. //
  21541. // RuleName is a required field
  21542. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  21543. }
  21544. // String returns the string representation
  21545. func (s EnableTopicRuleInput) String() string {
  21546. return awsutil.Prettify(s)
  21547. }
  21548. // GoString returns the string representation
  21549. func (s EnableTopicRuleInput) GoString() string {
  21550. return s.String()
  21551. }
  21552. // Validate inspects the fields of the type to determine if they are valid.
  21553. func (s *EnableTopicRuleInput) Validate() error {
  21554. invalidParams := request.ErrInvalidParams{Context: "EnableTopicRuleInput"}
  21555. if s.RuleName == nil {
  21556. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  21557. }
  21558. if s.RuleName != nil && len(*s.RuleName) < 1 {
  21559. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  21560. }
  21561. if invalidParams.Len() > 0 {
  21562. return invalidParams
  21563. }
  21564. return nil
  21565. }
  21566. // SetRuleName sets the RuleName field's value.
  21567. func (s *EnableTopicRuleInput) SetRuleName(v string) *EnableTopicRuleInput {
  21568. s.RuleName = &v
  21569. return s
  21570. }
  21571. type EnableTopicRuleOutput struct {
  21572. _ struct{} `type:"structure"`
  21573. }
  21574. // String returns the string representation
  21575. func (s EnableTopicRuleOutput) String() string {
  21576. return awsutil.Prettify(s)
  21577. }
  21578. // GoString returns the string representation
  21579. func (s EnableTopicRuleOutput) GoString() string {
  21580. return s.String()
  21581. }
  21582. // Error information.
  21583. type ErrorInfo struct {
  21584. _ struct{} `type:"structure"`
  21585. // The error code.
  21586. Code *string `locationName:"code" type:"string"`
  21587. // The error message.
  21588. Message *string `locationName:"message" type:"string"`
  21589. }
  21590. // String returns the string representation
  21591. func (s ErrorInfo) String() string {
  21592. return awsutil.Prettify(s)
  21593. }
  21594. // GoString returns the string representation
  21595. func (s ErrorInfo) GoString() string {
  21596. return s.String()
  21597. }
  21598. // SetCode sets the Code field's value.
  21599. func (s *ErrorInfo) SetCode(v string) *ErrorInfo {
  21600. s.Code = &v
  21601. return s
  21602. }
  21603. // SetMessage sets the Message field's value.
  21604. func (s *ErrorInfo) SetMessage(v string) *ErrorInfo {
  21605. s.Message = &v
  21606. return s
  21607. }
  21608. // Information that explicitly denies authorization.
  21609. type ExplicitDeny struct {
  21610. _ struct{} `type:"structure"`
  21611. // The policies that denied the authorization.
  21612. Policies []*Policy `locationName:"policies" type:"list"`
  21613. }
  21614. // String returns the string representation
  21615. func (s ExplicitDeny) String() string {
  21616. return awsutil.Prettify(s)
  21617. }
  21618. // GoString returns the string representation
  21619. func (s ExplicitDeny) GoString() string {
  21620. return s.String()
  21621. }
  21622. // SetPolicies sets the Policies field's value.
  21623. func (s *ExplicitDeny) SetPolicies(v []*Policy) *ExplicitDeny {
  21624. s.Policies = v
  21625. return s
  21626. }
  21627. // Allows you to create an exponential rate of rollout for a job.
  21628. type ExponentialRolloutRate struct {
  21629. _ struct{} `type:"structure"`
  21630. // The minimum number of things that will be notified of a pending job, per
  21631. // minute at the start of job rollout. This parameter allows you to define the
  21632. // initial rate of rollout.
  21633. //
  21634. // BaseRatePerMinute is a required field
  21635. BaseRatePerMinute *int64 `locationName:"baseRatePerMinute" min:"1" type:"integer" required:"true"`
  21636. // The exponential factor to increase the rate of rollout for a job.
  21637. //
  21638. // IncrementFactor is a required field
  21639. IncrementFactor *float64 `locationName:"incrementFactor" min:"1" type:"double" required:"true"`
  21640. // The criteria to initiate the increase in rate of rollout for a job.
  21641. //
  21642. // AWS IoT supports up to one digit after the decimal (for example, 1.5, but
  21643. // not 1.55).
  21644. //
  21645. // RateIncreaseCriteria is a required field
  21646. RateIncreaseCriteria *RateIncreaseCriteria `locationName:"rateIncreaseCriteria" type:"structure" required:"true"`
  21647. }
  21648. // String returns the string representation
  21649. func (s ExponentialRolloutRate) String() string {
  21650. return awsutil.Prettify(s)
  21651. }
  21652. // GoString returns the string representation
  21653. func (s ExponentialRolloutRate) GoString() string {
  21654. return s.String()
  21655. }
  21656. // Validate inspects the fields of the type to determine if they are valid.
  21657. func (s *ExponentialRolloutRate) Validate() error {
  21658. invalidParams := request.ErrInvalidParams{Context: "ExponentialRolloutRate"}
  21659. if s.BaseRatePerMinute == nil {
  21660. invalidParams.Add(request.NewErrParamRequired("BaseRatePerMinute"))
  21661. }
  21662. if s.BaseRatePerMinute != nil && *s.BaseRatePerMinute < 1 {
  21663. invalidParams.Add(request.NewErrParamMinValue("BaseRatePerMinute", 1))
  21664. }
  21665. if s.IncrementFactor == nil {
  21666. invalidParams.Add(request.NewErrParamRequired("IncrementFactor"))
  21667. }
  21668. if s.IncrementFactor != nil && *s.IncrementFactor < 1 {
  21669. invalidParams.Add(request.NewErrParamMinValue("IncrementFactor", 1))
  21670. }
  21671. if s.RateIncreaseCriteria == nil {
  21672. invalidParams.Add(request.NewErrParamRequired("RateIncreaseCriteria"))
  21673. }
  21674. if s.RateIncreaseCriteria != nil {
  21675. if err := s.RateIncreaseCriteria.Validate(); err != nil {
  21676. invalidParams.AddNested("RateIncreaseCriteria", err.(request.ErrInvalidParams))
  21677. }
  21678. }
  21679. if invalidParams.Len() > 0 {
  21680. return invalidParams
  21681. }
  21682. return nil
  21683. }
  21684. // SetBaseRatePerMinute sets the BaseRatePerMinute field's value.
  21685. func (s *ExponentialRolloutRate) SetBaseRatePerMinute(v int64) *ExponentialRolloutRate {
  21686. s.BaseRatePerMinute = &v
  21687. return s
  21688. }
  21689. // SetIncrementFactor sets the IncrementFactor field's value.
  21690. func (s *ExponentialRolloutRate) SetIncrementFactor(v float64) *ExponentialRolloutRate {
  21691. s.IncrementFactor = &v
  21692. return s
  21693. }
  21694. // SetRateIncreaseCriteria sets the RateIncreaseCriteria field's value.
  21695. func (s *ExponentialRolloutRate) SetRateIncreaseCriteria(v *RateIncreaseCriteria) *ExponentialRolloutRate {
  21696. s.RateIncreaseCriteria = v
  21697. return s
  21698. }
  21699. // The location of the OTA update.
  21700. type FileLocation struct {
  21701. _ struct{} `type:"structure"`
  21702. // The location of the updated firmware in S3.
  21703. S3Location *S3Location `locationName:"s3Location" type:"structure"`
  21704. // The stream that contains the OTA update.
  21705. Stream *Stream `locationName:"stream" type:"structure"`
  21706. }
  21707. // String returns the string representation
  21708. func (s FileLocation) String() string {
  21709. return awsutil.Prettify(s)
  21710. }
  21711. // GoString returns the string representation
  21712. func (s FileLocation) GoString() string {
  21713. return s.String()
  21714. }
  21715. // Validate inspects the fields of the type to determine if they are valid.
  21716. func (s *FileLocation) Validate() error {
  21717. invalidParams := request.ErrInvalidParams{Context: "FileLocation"}
  21718. if s.S3Location != nil {
  21719. if err := s.S3Location.Validate(); err != nil {
  21720. invalidParams.AddNested("S3Location", err.(request.ErrInvalidParams))
  21721. }
  21722. }
  21723. if s.Stream != nil {
  21724. if err := s.Stream.Validate(); err != nil {
  21725. invalidParams.AddNested("Stream", err.(request.ErrInvalidParams))
  21726. }
  21727. }
  21728. if invalidParams.Len() > 0 {
  21729. return invalidParams
  21730. }
  21731. return nil
  21732. }
  21733. // SetS3Location sets the S3Location field's value.
  21734. func (s *FileLocation) SetS3Location(v *S3Location) *FileLocation {
  21735. s.S3Location = v
  21736. return s
  21737. }
  21738. // SetStream sets the Stream field's value.
  21739. func (s *FileLocation) SetStream(v *Stream) *FileLocation {
  21740. s.Stream = v
  21741. return s
  21742. }
  21743. // Describes an action that writes data to an Amazon Kinesis Firehose stream.
  21744. type FirehoseAction struct {
  21745. _ struct{} `type:"structure"`
  21746. // The delivery stream name.
  21747. //
  21748. // DeliveryStreamName is a required field
  21749. DeliveryStreamName *string `locationName:"deliveryStreamName" type:"string" required:"true"`
  21750. // The IAM role that grants access to the Amazon Kinesis Firehose stream.
  21751. //
  21752. // RoleArn is a required field
  21753. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  21754. // A character separator that will be used to separate records written to the
  21755. // Firehose stream. Valid values are: '\n' (newline), '\t' (tab), '\r\n' (Windows
  21756. // newline), ',' (comma).
  21757. Separator *string `locationName:"separator" type:"string"`
  21758. }
  21759. // String returns the string representation
  21760. func (s FirehoseAction) String() string {
  21761. return awsutil.Prettify(s)
  21762. }
  21763. // GoString returns the string representation
  21764. func (s FirehoseAction) GoString() string {
  21765. return s.String()
  21766. }
  21767. // Validate inspects the fields of the type to determine if they are valid.
  21768. func (s *FirehoseAction) Validate() error {
  21769. invalidParams := request.ErrInvalidParams{Context: "FirehoseAction"}
  21770. if s.DeliveryStreamName == nil {
  21771. invalidParams.Add(request.NewErrParamRequired("DeliveryStreamName"))
  21772. }
  21773. if s.RoleArn == nil {
  21774. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  21775. }
  21776. if invalidParams.Len() > 0 {
  21777. return invalidParams
  21778. }
  21779. return nil
  21780. }
  21781. // SetDeliveryStreamName sets the DeliveryStreamName field's value.
  21782. func (s *FirehoseAction) SetDeliveryStreamName(v string) *FirehoseAction {
  21783. s.DeliveryStreamName = &v
  21784. return s
  21785. }
  21786. // SetRoleArn sets the RoleArn field's value.
  21787. func (s *FirehoseAction) SetRoleArn(v string) *FirehoseAction {
  21788. s.RoleArn = &v
  21789. return s
  21790. }
  21791. // SetSeparator sets the Separator field's value.
  21792. func (s *FirehoseAction) SetSeparator(v string) *FirehoseAction {
  21793. s.Separator = &v
  21794. return s
  21795. }
  21796. type GetEffectivePoliciesInput struct {
  21797. _ struct{} `type:"structure"`
  21798. // The Cognito identity pool ID.
  21799. CognitoIdentityPoolId *string `locationName:"cognitoIdentityPoolId" type:"string"`
  21800. // The principal.
  21801. Principal *string `locationName:"principal" type:"string"`
  21802. // The thing name.
  21803. ThingName *string `location:"querystring" locationName:"thingName" min:"1" type:"string"`
  21804. }
  21805. // String returns the string representation
  21806. func (s GetEffectivePoliciesInput) String() string {
  21807. return awsutil.Prettify(s)
  21808. }
  21809. // GoString returns the string representation
  21810. func (s GetEffectivePoliciesInput) GoString() string {
  21811. return s.String()
  21812. }
  21813. // Validate inspects the fields of the type to determine if they are valid.
  21814. func (s *GetEffectivePoliciesInput) Validate() error {
  21815. invalidParams := request.ErrInvalidParams{Context: "GetEffectivePoliciesInput"}
  21816. if s.ThingName != nil && len(*s.ThingName) < 1 {
  21817. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  21818. }
  21819. if invalidParams.Len() > 0 {
  21820. return invalidParams
  21821. }
  21822. return nil
  21823. }
  21824. // SetCognitoIdentityPoolId sets the CognitoIdentityPoolId field's value.
  21825. func (s *GetEffectivePoliciesInput) SetCognitoIdentityPoolId(v string) *GetEffectivePoliciesInput {
  21826. s.CognitoIdentityPoolId = &v
  21827. return s
  21828. }
  21829. // SetPrincipal sets the Principal field's value.
  21830. func (s *GetEffectivePoliciesInput) SetPrincipal(v string) *GetEffectivePoliciesInput {
  21831. s.Principal = &v
  21832. return s
  21833. }
  21834. // SetThingName sets the ThingName field's value.
  21835. func (s *GetEffectivePoliciesInput) SetThingName(v string) *GetEffectivePoliciesInput {
  21836. s.ThingName = &v
  21837. return s
  21838. }
  21839. type GetEffectivePoliciesOutput struct {
  21840. _ struct{} `type:"structure"`
  21841. // The effective policies.
  21842. EffectivePolicies []*EffectivePolicy `locationName:"effectivePolicies" type:"list"`
  21843. }
  21844. // String returns the string representation
  21845. func (s GetEffectivePoliciesOutput) String() string {
  21846. return awsutil.Prettify(s)
  21847. }
  21848. // GoString returns the string representation
  21849. func (s GetEffectivePoliciesOutput) GoString() string {
  21850. return s.String()
  21851. }
  21852. // SetEffectivePolicies sets the EffectivePolicies field's value.
  21853. func (s *GetEffectivePoliciesOutput) SetEffectivePolicies(v []*EffectivePolicy) *GetEffectivePoliciesOutput {
  21854. s.EffectivePolicies = v
  21855. return s
  21856. }
  21857. type GetIndexingConfigurationInput struct {
  21858. _ struct{} `type:"structure"`
  21859. }
  21860. // String returns the string representation
  21861. func (s GetIndexingConfigurationInput) String() string {
  21862. return awsutil.Prettify(s)
  21863. }
  21864. // GoString returns the string representation
  21865. func (s GetIndexingConfigurationInput) GoString() string {
  21866. return s.String()
  21867. }
  21868. type GetIndexingConfigurationOutput struct {
  21869. _ struct{} `type:"structure"`
  21870. // The index configuration.
  21871. ThingGroupIndexingConfiguration *ThingGroupIndexingConfiguration `locationName:"thingGroupIndexingConfiguration" type:"structure"`
  21872. // Thing indexing configuration.
  21873. ThingIndexingConfiguration *ThingIndexingConfiguration `locationName:"thingIndexingConfiguration" type:"structure"`
  21874. }
  21875. // String returns the string representation
  21876. func (s GetIndexingConfigurationOutput) String() string {
  21877. return awsutil.Prettify(s)
  21878. }
  21879. // GoString returns the string representation
  21880. func (s GetIndexingConfigurationOutput) GoString() string {
  21881. return s.String()
  21882. }
  21883. // SetThingGroupIndexingConfiguration sets the ThingGroupIndexingConfiguration field's value.
  21884. func (s *GetIndexingConfigurationOutput) SetThingGroupIndexingConfiguration(v *ThingGroupIndexingConfiguration) *GetIndexingConfigurationOutput {
  21885. s.ThingGroupIndexingConfiguration = v
  21886. return s
  21887. }
  21888. // SetThingIndexingConfiguration sets the ThingIndexingConfiguration field's value.
  21889. func (s *GetIndexingConfigurationOutput) SetThingIndexingConfiguration(v *ThingIndexingConfiguration) *GetIndexingConfigurationOutput {
  21890. s.ThingIndexingConfiguration = v
  21891. return s
  21892. }
  21893. type GetJobDocumentInput struct {
  21894. _ struct{} `type:"structure"`
  21895. // The unique identifier you assigned to this job when it was created.
  21896. //
  21897. // JobId is a required field
  21898. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  21899. }
  21900. // String returns the string representation
  21901. func (s GetJobDocumentInput) String() string {
  21902. return awsutil.Prettify(s)
  21903. }
  21904. // GoString returns the string representation
  21905. func (s GetJobDocumentInput) GoString() string {
  21906. return s.String()
  21907. }
  21908. // Validate inspects the fields of the type to determine if they are valid.
  21909. func (s *GetJobDocumentInput) Validate() error {
  21910. invalidParams := request.ErrInvalidParams{Context: "GetJobDocumentInput"}
  21911. if s.JobId == nil {
  21912. invalidParams.Add(request.NewErrParamRequired("JobId"))
  21913. }
  21914. if s.JobId != nil && len(*s.JobId) < 1 {
  21915. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  21916. }
  21917. if invalidParams.Len() > 0 {
  21918. return invalidParams
  21919. }
  21920. return nil
  21921. }
  21922. // SetJobId sets the JobId field's value.
  21923. func (s *GetJobDocumentInput) SetJobId(v string) *GetJobDocumentInput {
  21924. s.JobId = &v
  21925. return s
  21926. }
  21927. type GetJobDocumentOutput struct {
  21928. _ struct{} `type:"structure"`
  21929. // The job document content.
  21930. Document *string `locationName:"document" type:"string"`
  21931. }
  21932. // String returns the string representation
  21933. func (s GetJobDocumentOutput) String() string {
  21934. return awsutil.Prettify(s)
  21935. }
  21936. // GoString returns the string representation
  21937. func (s GetJobDocumentOutput) GoString() string {
  21938. return s.String()
  21939. }
  21940. // SetDocument sets the Document field's value.
  21941. func (s *GetJobDocumentOutput) SetDocument(v string) *GetJobDocumentOutput {
  21942. s.Document = &v
  21943. return s
  21944. }
  21945. // The input for the GetLoggingOptions operation.
  21946. type GetLoggingOptionsInput struct {
  21947. _ struct{} `type:"structure"`
  21948. }
  21949. // String returns the string representation
  21950. func (s GetLoggingOptionsInput) String() string {
  21951. return awsutil.Prettify(s)
  21952. }
  21953. // GoString returns the string representation
  21954. func (s GetLoggingOptionsInput) GoString() string {
  21955. return s.String()
  21956. }
  21957. // The output from the GetLoggingOptions operation.
  21958. type GetLoggingOptionsOutput struct {
  21959. _ struct{} `type:"structure"`
  21960. // The logging level.
  21961. LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
  21962. // The ARN of the IAM role that grants access.
  21963. RoleArn *string `locationName:"roleArn" type:"string"`
  21964. }
  21965. // String returns the string representation
  21966. func (s GetLoggingOptionsOutput) String() string {
  21967. return awsutil.Prettify(s)
  21968. }
  21969. // GoString returns the string representation
  21970. func (s GetLoggingOptionsOutput) GoString() string {
  21971. return s.String()
  21972. }
  21973. // SetLogLevel sets the LogLevel field's value.
  21974. func (s *GetLoggingOptionsOutput) SetLogLevel(v string) *GetLoggingOptionsOutput {
  21975. s.LogLevel = &v
  21976. return s
  21977. }
  21978. // SetRoleArn sets the RoleArn field's value.
  21979. func (s *GetLoggingOptionsOutput) SetRoleArn(v string) *GetLoggingOptionsOutput {
  21980. s.RoleArn = &v
  21981. return s
  21982. }
  21983. type GetOTAUpdateInput struct {
  21984. _ struct{} `type:"structure"`
  21985. // The OTA update ID.
  21986. //
  21987. // OtaUpdateId is a required field
  21988. OtaUpdateId *string `location:"uri" locationName:"otaUpdateId" min:"1" type:"string" required:"true"`
  21989. }
  21990. // String returns the string representation
  21991. func (s GetOTAUpdateInput) String() string {
  21992. return awsutil.Prettify(s)
  21993. }
  21994. // GoString returns the string representation
  21995. func (s GetOTAUpdateInput) GoString() string {
  21996. return s.String()
  21997. }
  21998. // Validate inspects the fields of the type to determine if they are valid.
  21999. func (s *GetOTAUpdateInput) Validate() error {
  22000. invalidParams := request.ErrInvalidParams{Context: "GetOTAUpdateInput"}
  22001. if s.OtaUpdateId == nil {
  22002. invalidParams.Add(request.NewErrParamRequired("OtaUpdateId"))
  22003. }
  22004. if s.OtaUpdateId != nil && len(*s.OtaUpdateId) < 1 {
  22005. invalidParams.Add(request.NewErrParamMinLen("OtaUpdateId", 1))
  22006. }
  22007. if invalidParams.Len() > 0 {
  22008. return invalidParams
  22009. }
  22010. return nil
  22011. }
  22012. // SetOtaUpdateId sets the OtaUpdateId field's value.
  22013. func (s *GetOTAUpdateInput) SetOtaUpdateId(v string) *GetOTAUpdateInput {
  22014. s.OtaUpdateId = &v
  22015. return s
  22016. }
  22017. type GetOTAUpdateOutput struct {
  22018. _ struct{} `type:"structure"`
  22019. // The OTA update info.
  22020. OtaUpdateInfo *OTAUpdateInfo `locationName:"otaUpdateInfo" type:"structure"`
  22021. }
  22022. // String returns the string representation
  22023. func (s GetOTAUpdateOutput) String() string {
  22024. return awsutil.Prettify(s)
  22025. }
  22026. // GoString returns the string representation
  22027. func (s GetOTAUpdateOutput) GoString() string {
  22028. return s.String()
  22029. }
  22030. // SetOtaUpdateInfo sets the OtaUpdateInfo field's value.
  22031. func (s *GetOTAUpdateOutput) SetOtaUpdateInfo(v *OTAUpdateInfo) *GetOTAUpdateOutput {
  22032. s.OtaUpdateInfo = v
  22033. return s
  22034. }
  22035. // The input for the GetPolicy operation.
  22036. type GetPolicyInput struct {
  22037. _ struct{} `type:"structure"`
  22038. // The name of the policy.
  22039. //
  22040. // PolicyName is a required field
  22041. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  22042. }
  22043. // String returns the string representation
  22044. func (s GetPolicyInput) String() string {
  22045. return awsutil.Prettify(s)
  22046. }
  22047. // GoString returns the string representation
  22048. func (s GetPolicyInput) GoString() string {
  22049. return s.String()
  22050. }
  22051. // Validate inspects the fields of the type to determine if they are valid.
  22052. func (s *GetPolicyInput) Validate() error {
  22053. invalidParams := request.ErrInvalidParams{Context: "GetPolicyInput"}
  22054. if s.PolicyName == nil {
  22055. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  22056. }
  22057. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  22058. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  22059. }
  22060. if invalidParams.Len() > 0 {
  22061. return invalidParams
  22062. }
  22063. return nil
  22064. }
  22065. // SetPolicyName sets the PolicyName field's value.
  22066. func (s *GetPolicyInput) SetPolicyName(v string) *GetPolicyInput {
  22067. s.PolicyName = &v
  22068. return s
  22069. }
  22070. // The output from the GetPolicy operation.
  22071. type GetPolicyOutput struct {
  22072. _ struct{} `type:"structure"`
  22073. // The date the policy was created.
  22074. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  22075. // The default policy version ID.
  22076. DefaultVersionId *string `locationName:"defaultVersionId" type:"string"`
  22077. // The generation ID of the policy.
  22078. GenerationId *string `locationName:"generationId" type:"string"`
  22079. // The date the policy was last modified.
  22080. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  22081. // The policy ARN.
  22082. PolicyArn *string `locationName:"policyArn" type:"string"`
  22083. // The JSON document that describes the policy.
  22084. PolicyDocument *string `locationName:"policyDocument" type:"string"`
  22085. // The policy name.
  22086. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  22087. }
  22088. // String returns the string representation
  22089. func (s GetPolicyOutput) String() string {
  22090. return awsutil.Prettify(s)
  22091. }
  22092. // GoString returns the string representation
  22093. func (s GetPolicyOutput) GoString() string {
  22094. return s.String()
  22095. }
  22096. // SetCreationDate sets the CreationDate field's value.
  22097. func (s *GetPolicyOutput) SetCreationDate(v time.Time) *GetPolicyOutput {
  22098. s.CreationDate = &v
  22099. return s
  22100. }
  22101. // SetDefaultVersionId sets the DefaultVersionId field's value.
  22102. func (s *GetPolicyOutput) SetDefaultVersionId(v string) *GetPolicyOutput {
  22103. s.DefaultVersionId = &v
  22104. return s
  22105. }
  22106. // SetGenerationId sets the GenerationId field's value.
  22107. func (s *GetPolicyOutput) SetGenerationId(v string) *GetPolicyOutput {
  22108. s.GenerationId = &v
  22109. return s
  22110. }
  22111. // SetLastModifiedDate sets the LastModifiedDate field's value.
  22112. func (s *GetPolicyOutput) SetLastModifiedDate(v time.Time) *GetPolicyOutput {
  22113. s.LastModifiedDate = &v
  22114. return s
  22115. }
  22116. // SetPolicyArn sets the PolicyArn field's value.
  22117. func (s *GetPolicyOutput) SetPolicyArn(v string) *GetPolicyOutput {
  22118. s.PolicyArn = &v
  22119. return s
  22120. }
  22121. // SetPolicyDocument sets the PolicyDocument field's value.
  22122. func (s *GetPolicyOutput) SetPolicyDocument(v string) *GetPolicyOutput {
  22123. s.PolicyDocument = &v
  22124. return s
  22125. }
  22126. // SetPolicyName sets the PolicyName field's value.
  22127. func (s *GetPolicyOutput) SetPolicyName(v string) *GetPolicyOutput {
  22128. s.PolicyName = &v
  22129. return s
  22130. }
  22131. // The input for the GetPolicyVersion operation.
  22132. type GetPolicyVersionInput struct {
  22133. _ struct{} `type:"structure"`
  22134. // The name of the policy.
  22135. //
  22136. // PolicyName is a required field
  22137. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  22138. // The policy version ID.
  22139. //
  22140. // PolicyVersionId is a required field
  22141. PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"`
  22142. }
  22143. // String returns the string representation
  22144. func (s GetPolicyVersionInput) String() string {
  22145. return awsutil.Prettify(s)
  22146. }
  22147. // GoString returns the string representation
  22148. func (s GetPolicyVersionInput) GoString() string {
  22149. return s.String()
  22150. }
  22151. // Validate inspects the fields of the type to determine if they are valid.
  22152. func (s *GetPolicyVersionInput) Validate() error {
  22153. invalidParams := request.ErrInvalidParams{Context: "GetPolicyVersionInput"}
  22154. if s.PolicyName == nil {
  22155. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  22156. }
  22157. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  22158. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  22159. }
  22160. if s.PolicyVersionId == nil {
  22161. invalidParams.Add(request.NewErrParamRequired("PolicyVersionId"))
  22162. }
  22163. if s.PolicyVersionId != nil && len(*s.PolicyVersionId) < 1 {
  22164. invalidParams.Add(request.NewErrParamMinLen("PolicyVersionId", 1))
  22165. }
  22166. if invalidParams.Len() > 0 {
  22167. return invalidParams
  22168. }
  22169. return nil
  22170. }
  22171. // SetPolicyName sets the PolicyName field's value.
  22172. func (s *GetPolicyVersionInput) SetPolicyName(v string) *GetPolicyVersionInput {
  22173. s.PolicyName = &v
  22174. return s
  22175. }
  22176. // SetPolicyVersionId sets the PolicyVersionId field's value.
  22177. func (s *GetPolicyVersionInput) SetPolicyVersionId(v string) *GetPolicyVersionInput {
  22178. s.PolicyVersionId = &v
  22179. return s
  22180. }
  22181. // The output from the GetPolicyVersion operation.
  22182. type GetPolicyVersionOutput struct {
  22183. _ struct{} `type:"structure"`
  22184. // The date the policy version was created.
  22185. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  22186. // The generation ID of the policy version.
  22187. GenerationId *string `locationName:"generationId" type:"string"`
  22188. // Specifies whether the policy version is the default.
  22189. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"`
  22190. // The date the policy version was last modified.
  22191. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  22192. // The policy ARN.
  22193. PolicyArn *string `locationName:"policyArn" type:"string"`
  22194. // The JSON document that describes the policy.
  22195. PolicyDocument *string `locationName:"policyDocument" type:"string"`
  22196. // The policy name.
  22197. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  22198. // The policy version ID.
  22199. PolicyVersionId *string `locationName:"policyVersionId" type:"string"`
  22200. }
  22201. // String returns the string representation
  22202. func (s GetPolicyVersionOutput) String() string {
  22203. return awsutil.Prettify(s)
  22204. }
  22205. // GoString returns the string representation
  22206. func (s GetPolicyVersionOutput) GoString() string {
  22207. return s.String()
  22208. }
  22209. // SetCreationDate sets the CreationDate field's value.
  22210. func (s *GetPolicyVersionOutput) SetCreationDate(v time.Time) *GetPolicyVersionOutput {
  22211. s.CreationDate = &v
  22212. return s
  22213. }
  22214. // SetGenerationId sets the GenerationId field's value.
  22215. func (s *GetPolicyVersionOutput) SetGenerationId(v string) *GetPolicyVersionOutput {
  22216. s.GenerationId = &v
  22217. return s
  22218. }
  22219. // SetIsDefaultVersion sets the IsDefaultVersion field's value.
  22220. func (s *GetPolicyVersionOutput) SetIsDefaultVersion(v bool) *GetPolicyVersionOutput {
  22221. s.IsDefaultVersion = &v
  22222. return s
  22223. }
  22224. // SetLastModifiedDate sets the LastModifiedDate field's value.
  22225. func (s *GetPolicyVersionOutput) SetLastModifiedDate(v time.Time) *GetPolicyVersionOutput {
  22226. s.LastModifiedDate = &v
  22227. return s
  22228. }
  22229. // SetPolicyArn sets the PolicyArn field's value.
  22230. func (s *GetPolicyVersionOutput) SetPolicyArn(v string) *GetPolicyVersionOutput {
  22231. s.PolicyArn = &v
  22232. return s
  22233. }
  22234. // SetPolicyDocument sets the PolicyDocument field's value.
  22235. func (s *GetPolicyVersionOutput) SetPolicyDocument(v string) *GetPolicyVersionOutput {
  22236. s.PolicyDocument = &v
  22237. return s
  22238. }
  22239. // SetPolicyName sets the PolicyName field's value.
  22240. func (s *GetPolicyVersionOutput) SetPolicyName(v string) *GetPolicyVersionOutput {
  22241. s.PolicyName = &v
  22242. return s
  22243. }
  22244. // SetPolicyVersionId sets the PolicyVersionId field's value.
  22245. func (s *GetPolicyVersionOutput) SetPolicyVersionId(v string) *GetPolicyVersionOutput {
  22246. s.PolicyVersionId = &v
  22247. return s
  22248. }
  22249. // The input to the GetRegistrationCode operation.
  22250. type GetRegistrationCodeInput struct {
  22251. _ struct{} `type:"structure"`
  22252. }
  22253. // String returns the string representation
  22254. func (s GetRegistrationCodeInput) String() string {
  22255. return awsutil.Prettify(s)
  22256. }
  22257. // GoString returns the string representation
  22258. func (s GetRegistrationCodeInput) GoString() string {
  22259. return s.String()
  22260. }
  22261. // The output from the GetRegistrationCode operation.
  22262. type GetRegistrationCodeOutput struct {
  22263. _ struct{} `type:"structure"`
  22264. // The CA certificate registration code.
  22265. RegistrationCode *string `locationName:"registrationCode" min:"64" type:"string"`
  22266. }
  22267. // String returns the string representation
  22268. func (s GetRegistrationCodeOutput) String() string {
  22269. return awsutil.Prettify(s)
  22270. }
  22271. // GoString returns the string representation
  22272. func (s GetRegistrationCodeOutput) GoString() string {
  22273. return s.String()
  22274. }
  22275. // SetRegistrationCode sets the RegistrationCode field's value.
  22276. func (s *GetRegistrationCodeOutput) SetRegistrationCode(v string) *GetRegistrationCodeOutput {
  22277. s.RegistrationCode = &v
  22278. return s
  22279. }
  22280. // The input for the GetTopicRule operation.
  22281. type GetTopicRuleInput struct {
  22282. _ struct{} `type:"structure"`
  22283. // The name of the rule.
  22284. //
  22285. // RuleName is a required field
  22286. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  22287. }
  22288. // String returns the string representation
  22289. func (s GetTopicRuleInput) String() string {
  22290. return awsutil.Prettify(s)
  22291. }
  22292. // GoString returns the string representation
  22293. func (s GetTopicRuleInput) GoString() string {
  22294. return s.String()
  22295. }
  22296. // Validate inspects the fields of the type to determine if they are valid.
  22297. func (s *GetTopicRuleInput) Validate() error {
  22298. invalidParams := request.ErrInvalidParams{Context: "GetTopicRuleInput"}
  22299. if s.RuleName == nil {
  22300. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  22301. }
  22302. if s.RuleName != nil && len(*s.RuleName) < 1 {
  22303. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  22304. }
  22305. if invalidParams.Len() > 0 {
  22306. return invalidParams
  22307. }
  22308. return nil
  22309. }
  22310. // SetRuleName sets the RuleName field's value.
  22311. func (s *GetTopicRuleInput) SetRuleName(v string) *GetTopicRuleInput {
  22312. s.RuleName = &v
  22313. return s
  22314. }
  22315. // The output from the GetTopicRule operation.
  22316. type GetTopicRuleOutput struct {
  22317. _ struct{} `type:"structure"`
  22318. // The rule.
  22319. Rule *TopicRule `locationName:"rule" type:"structure"`
  22320. // The rule ARN.
  22321. RuleArn *string `locationName:"ruleArn" type:"string"`
  22322. }
  22323. // String returns the string representation
  22324. func (s GetTopicRuleOutput) String() string {
  22325. return awsutil.Prettify(s)
  22326. }
  22327. // GoString returns the string representation
  22328. func (s GetTopicRuleOutput) GoString() string {
  22329. return s.String()
  22330. }
  22331. // SetRule sets the Rule field's value.
  22332. func (s *GetTopicRuleOutput) SetRule(v *TopicRule) *GetTopicRuleOutput {
  22333. s.Rule = v
  22334. return s
  22335. }
  22336. // SetRuleArn sets the RuleArn field's value.
  22337. func (s *GetTopicRuleOutput) SetRuleArn(v string) *GetTopicRuleOutput {
  22338. s.RuleArn = &v
  22339. return s
  22340. }
  22341. type GetV2LoggingOptionsInput struct {
  22342. _ struct{} `type:"structure"`
  22343. }
  22344. // String returns the string representation
  22345. func (s GetV2LoggingOptionsInput) String() string {
  22346. return awsutil.Prettify(s)
  22347. }
  22348. // GoString returns the string representation
  22349. func (s GetV2LoggingOptionsInput) GoString() string {
  22350. return s.String()
  22351. }
  22352. type GetV2LoggingOptionsOutput struct {
  22353. _ struct{} `type:"structure"`
  22354. // The default log level.
  22355. DefaultLogLevel *string `locationName:"defaultLogLevel" type:"string" enum:"LogLevel"`
  22356. // Disables all logs.
  22357. DisableAllLogs *bool `locationName:"disableAllLogs" type:"boolean"`
  22358. // The IAM role ARN AWS IoT uses to write to your CloudWatch logs.
  22359. RoleArn *string `locationName:"roleArn" type:"string"`
  22360. }
  22361. // String returns the string representation
  22362. func (s GetV2LoggingOptionsOutput) String() string {
  22363. return awsutil.Prettify(s)
  22364. }
  22365. // GoString returns the string representation
  22366. func (s GetV2LoggingOptionsOutput) GoString() string {
  22367. return s.String()
  22368. }
  22369. // SetDefaultLogLevel sets the DefaultLogLevel field's value.
  22370. func (s *GetV2LoggingOptionsOutput) SetDefaultLogLevel(v string) *GetV2LoggingOptionsOutput {
  22371. s.DefaultLogLevel = &v
  22372. return s
  22373. }
  22374. // SetDisableAllLogs sets the DisableAllLogs field's value.
  22375. func (s *GetV2LoggingOptionsOutput) SetDisableAllLogs(v bool) *GetV2LoggingOptionsOutput {
  22376. s.DisableAllLogs = &v
  22377. return s
  22378. }
  22379. // SetRoleArn sets the RoleArn field's value.
  22380. func (s *GetV2LoggingOptionsOutput) SetRoleArn(v string) *GetV2LoggingOptionsOutput {
  22381. s.RoleArn = &v
  22382. return s
  22383. }
  22384. // The name and ARN of a group.
  22385. type GroupNameAndArn struct {
  22386. _ struct{} `type:"structure"`
  22387. // The group ARN.
  22388. GroupArn *string `locationName:"groupArn" type:"string"`
  22389. // The group name.
  22390. GroupName *string `locationName:"groupName" min:"1" type:"string"`
  22391. }
  22392. // String returns the string representation
  22393. func (s GroupNameAndArn) String() string {
  22394. return awsutil.Prettify(s)
  22395. }
  22396. // GoString returns the string representation
  22397. func (s GroupNameAndArn) GoString() string {
  22398. return s.String()
  22399. }
  22400. // SetGroupArn sets the GroupArn field's value.
  22401. func (s *GroupNameAndArn) SetGroupArn(v string) *GroupNameAndArn {
  22402. s.GroupArn = &v
  22403. return s
  22404. }
  22405. // SetGroupName sets the GroupName field's value.
  22406. func (s *GroupNameAndArn) SetGroupName(v string) *GroupNameAndArn {
  22407. s.GroupName = &v
  22408. return s
  22409. }
  22410. // Information that implicitly denies authorization. When policy doesn't explicitly
  22411. // deny or allow an action on a resource it is considered an implicit deny.
  22412. type ImplicitDeny struct {
  22413. _ struct{} `type:"structure"`
  22414. // Policies that don't contain a matching allow or deny statement for the specified
  22415. // action on the specified resource.
  22416. Policies []*Policy `locationName:"policies" type:"list"`
  22417. }
  22418. // String returns the string representation
  22419. func (s ImplicitDeny) String() string {
  22420. return awsutil.Prettify(s)
  22421. }
  22422. // GoString returns the string representation
  22423. func (s ImplicitDeny) GoString() string {
  22424. return s.String()
  22425. }
  22426. // SetPolicies sets the Policies field's value.
  22427. func (s *ImplicitDeny) SetPolicies(v []*Policy) *ImplicitDeny {
  22428. s.Policies = v
  22429. return s
  22430. }
  22431. // Sends messge data to an AWS IoT Analytics channel.
  22432. type IotAnalyticsAction struct {
  22433. _ struct{} `type:"structure"`
  22434. // (deprecated) The ARN of the IoT Analytics channel to which message data will
  22435. // be sent.
  22436. ChannelArn *string `locationName:"channelArn" type:"string"`
  22437. // The name of the IoT Analytics channel to which message data will be sent.
  22438. ChannelName *string `locationName:"channelName" type:"string"`
  22439. // The ARN of the role which has a policy that grants IoT Analytics permission
  22440. // to send message data via IoT Analytics (iotanalytics:BatchPutMessage).
  22441. RoleArn *string `locationName:"roleArn" type:"string"`
  22442. }
  22443. // String returns the string representation
  22444. func (s IotAnalyticsAction) String() string {
  22445. return awsutil.Prettify(s)
  22446. }
  22447. // GoString returns the string representation
  22448. func (s IotAnalyticsAction) GoString() string {
  22449. return s.String()
  22450. }
  22451. // SetChannelArn sets the ChannelArn field's value.
  22452. func (s *IotAnalyticsAction) SetChannelArn(v string) *IotAnalyticsAction {
  22453. s.ChannelArn = &v
  22454. return s
  22455. }
  22456. // SetChannelName sets the ChannelName field's value.
  22457. func (s *IotAnalyticsAction) SetChannelName(v string) *IotAnalyticsAction {
  22458. s.ChannelName = &v
  22459. return s
  22460. }
  22461. // SetRoleArn sets the RoleArn field's value.
  22462. func (s *IotAnalyticsAction) SetRoleArn(v string) *IotAnalyticsAction {
  22463. s.RoleArn = &v
  22464. return s
  22465. }
  22466. // Sends an input to an AWS IoT Events detector.
  22467. type IotEventsAction struct {
  22468. _ struct{} `type:"structure"`
  22469. // The name of the AWS IoT Events input.
  22470. //
  22471. // InputName is a required field
  22472. InputName *string `locationName:"inputName" min:"1" type:"string" required:"true"`
  22473. // [Optional] Use this to ensure that only one input (message) with a given
  22474. // messageId will be processed by an AWS IoT Events detector.
  22475. MessageId *string `locationName:"messageId" type:"string"`
  22476. // The ARN of the role that grants AWS IoT permission to send an input to an
  22477. // AWS IoT Events detector. ("Action":"iotevents:BatchPutMessage").
  22478. //
  22479. // RoleArn is a required field
  22480. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  22481. }
  22482. // String returns the string representation
  22483. func (s IotEventsAction) String() string {
  22484. return awsutil.Prettify(s)
  22485. }
  22486. // GoString returns the string representation
  22487. func (s IotEventsAction) GoString() string {
  22488. return s.String()
  22489. }
  22490. // Validate inspects the fields of the type to determine if they are valid.
  22491. func (s *IotEventsAction) Validate() error {
  22492. invalidParams := request.ErrInvalidParams{Context: "IotEventsAction"}
  22493. if s.InputName == nil {
  22494. invalidParams.Add(request.NewErrParamRequired("InputName"))
  22495. }
  22496. if s.InputName != nil && len(*s.InputName) < 1 {
  22497. invalidParams.Add(request.NewErrParamMinLen("InputName", 1))
  22498. }
  22499. if s.RoleArn == nil {
  22500. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  22501. }
  22502. if invalidParams.Len() > 0 {
  22503. return invalidParams
  22504. }
  22505. return nil
  22506. }
  22507. // SetInputName sets the InputName field's value.
  22508. func (s *IotEventsAction) SetInputName(v string) *IotEventsAction {
  22509. s.InputName = &v
  22510. return s
  22511. }
  22512. // SetMessageId sets the MessageId field's value.
  22513. func (s *IotEventsAction) SetMessageId(v string) *IotEventsAction {
  22514. s.MessageId = &v
  22515. return s
  22516. }
  22517. // SetRoleArn sets the RoleArn field's value.
  22518. func (s *IotEventsAction) SetRoleArn(v string) *IotEventsAction {
  22519. s.RoleArn = &v
  22520. return s
  22521. }
  22522. // The Job object contains details about a job.
  22523. type Job struct {
  22524. _ struct{} `type:"structure"`
  22525. // Configuration for criteria to abort the job.
  22526. AbortConfig *AbortConfig `locationName:"abortConfig" type:"structure"`
  22527. // If the job was updated, describes the reason for the update.
  22528. Comment *string `locationName:"comment" type:"string"`
  22529. // The time, in milliseconds since the epoch, when the job was completed.
  22530. CompletedAt *time.Time `locationName:"completedAt" type:"timestamp"`
  22531. // The time, in milliseconds since the epoch, when the job was created.
  22532. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  22533. // A short text description of the job.
  22534. Description *string `locationName:"description" type:"string"`
  22535. // Will be true if the job was canceled with the optional force parameter set
  22536. // to true.
  22537. ForceCanceled *bool `locationName:"forceCanceled" type:"boolean"`
  22538. // An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId".
  22539. JobArn *string `locationName:"jobArn" type:"string"`
  22540. // Allows you to create a staged rollout of a job.
  22541. JobExecutionsRolloutConfig *JobExecutionsRolloutConfig `locationName:"jobExecutionsRolloutConfig" type:"structure"`
  22542. // The unique identifier you assigned to this job when it was created.
  22543. JobId *string `locationName:"jobId" min:"1" type:"string"`
  22544. // Details about the job process.
  22545. JobProcessDetails *JobProcessDetails `locationName:"jobProcessDetails" type:"structure"`
  22546. // The time, in milliseconds since the epoch, when the job was last updated.
  22547. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  22548. // Configuration for pre-signed S3 URLs.
  22549. PresignedUrlConfig *PresignedUrlConfig `locationName:"presignedUrlConfig" type:"structure"`
  22550. // If the job was updated, provides the reason code for the update.
  22551. ReasonCode *string `locationName:"reasonCode" type:"string"`
  22552. // The status of the job, one of IN_PROGRESS, CANCELED, DELETION_IN_PROGRESS
  22553. // or COMPLETED.
  22554. Status *string `locationName:"status" type:"string" enum:"JobStatus"`
  22555. // Specifies whether the job will continue to run (CONTINUOUS), or will be complete
  22556. // after all those things specified as targets have completed the job (SNAPSHOT).
  22557. // If continuous, the job may also be run on a thing when a change is detected
  22558. // in a target. For example, a job will run on a device when the thing representing
  22559. // the device is added to a target group, even after the job was completed by
  22560. // all things originally in the group.
  22561. TargetSelection *string `locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  22562. // A list of IoT things and thing groups to which the job should be sent.
  22563. Targets []*string `locationName:"targets" min:"1" type:"list"`
  22564. // Specifies the amount of time each device has to finish its execution of the
  22565. // job. A timer is started when the job execution status is set to IN_PROGRESS.
  22566. // If the job execution status is not set to another terminal state before the
  22567. // timer expires, it will be automatically set to TIMED_OUT.
  22568. TimeoutConfig *TimeoutConfig `locationName:"timeoutConfig" type:"structure"`
  22569. }
  22570. // String returns the string representation
  22571. func (s Job) String() string {
  22572. return awsutil.Prettify(s)
  22573. }
  22574. // GoString returns the string representation
  22575. func (s Job) GoString() string {
  22576. return s.String()
  22577. }
  22578. // SetAbortConfig sets the AbortConfig field's value.
  22579. func (s *Job) SetAbortConfig(v *AbortConfig) *Job {
  22580. s.AbortConfig = v
  22581. return s
  22582. }
  22583. // SetComment sets the Comment field's value.
  22584. func (s *Job) SetComment(v string) *Job {
  22585. s.Comment = &v
  22586. return s
  22587. }
  22588. // SetCompletedAt sets the CompletedAt field's value.
  22589. func (s *Job) SetCompletedAt(v time.Time) *Job {
  22590. s.CompletedAt = &v
  22591. return s
  22592. }
  22593. // SetCreatedAt sets the CreatedAt field's value.
  22594. func (s *Job) SetCreatedAt(v time.Time) *Job {
  22595. s.CreatedAt = &v
  22596. return s
  22597. }
  22598. // SetDescription sets the Description field's value.
  22599. func (s *Job) SetDescription(v string) *Job {
  22600. s.Description = &v
  22601. return s
  22602. }
  22603. // SetForceCanceled sets the ForceCanceled field's value.
  22604. func (s *Job) SetForceCanceled(v bool) *Job {
  22605. s.ForceCanceled = &v
  22606. return s
  22607. }
  22608. // SetJobArn sets the JobArn field's value.
  22609. func (s *Job) SetJobArn(v string) *Job {
  22610. s.JobArn = &v
  22611. return s
  22612. }
  22613. // SetJobExecutionsRolloutConfig sets the JobExecutionsRolloutConfig field's value.
  22614. func (s *Job) SetJobExecutionsRolloutConfig(v *JobExecutionsRolloutConfig) *Job {
  22615. s.JobExecutionsRolloutConfig = v
  22616. return s
  22617. }
  22618. // SetJobId sets the JobId field's value.
  22619. func (s *Job) SetJobId(v string) *Job {
  22620. s.JobId = &v
  22621. return s
  22622. }
  22623. // SetJobProcessDetails sets the JobProcessDetails field's value.
  22624. func (s *Job) SetJobProcessDetails(v *JobProcessDetails) *Job {
  22625. s.JobProcessDetails = v
  22626. return s
  22627. }
  22628. // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  22629. func (s *Job) SetLastUpdatedAt(v time.Time) *Job {
  22630. s.LastUpdatedAt = &v
  22631. return s
  22632. }
  22633. // SetPresignedUrlConfig sets the PresignedUrlConfig field's value.
  22634. func (s *Job) SetPresignedUrlConfig(v *PresignedUrlConfig) *Job {
  22635. s.PresignedUrlConfig = v
  22636. return s
  22637. }
  22638. // SetReasonCode sets the ReasonCode field's value.
  22639. func (s *Job) SetReasonCode(v string) *Job {
  22640. s.ReasonCode = &v
  22641. return s
  22642. }
  22643. // SetStatus sets the Status field's value.
  22644. func (s *Job) SetStatus(v string) *Job {
  22645. s.Status = &v
  22646. return s
  22647. }
  22648. // SetTargetSelection sets the TargetSelection field's value.
  22649. func (s *Job) SetTargetSelection(v string) *Job {
  22650. s.TargetSelection = &v
  22651. return s
  22652. }
  22653. // SetTargets sets the Targets field's value.
  22654. func (s *Job) SetTargets(v []*string) *Job {
  22655. s.Targets = v
  22656. return s
  22657. }
  22658. // SetTimeoutConfig sets the TimeoutConfig field's value.
  22659. func (s *Job) SetTimeoutConfig(v *TimeoutConfig) *Job {
  22660. s.TimeoutConfig = v
  22661. return s
  22662. }
  22663. // The job execution object represents the execution of a job on a particular
  22664. // device.
  22665. type JobExecution struct {
  22666. _ struct{} `type:"structure"`
  22667. // The estimated number of seconds that remain before the job execution status
  22668. // will be changed to TIMED_OUT. The timeout interval can be anywhere between
  22669. // 1 minute and 7 days (1 to 10080 minutes). The actual job execution timeout
  22670. // can occur up to 60 seconds later than the estimated duration. This value
  22671. // will not be included if the job execution has reached a terminal status.
  22672. ApproximateSecondsBeforeTimedOut *int64 `locationName:"approximateSecondsBeforeTimedOut" type:"long"`
  22673. // A string (consisting of the digits "0" through "9") which identifies this
  22674. // particular job execution on this particular device. It can be used in commands
  22675. // which return or update job execution information.
  22676. ExecutionNumber *int64 `locationName:"executionNumber" type:"long"`
  22677. // Will be true if the job execution was canceled with the optional force parameter
  22678. // set to true.
  22679. ForceCanceled *bool `locationName:"forceCanceled" type:"boolean"`
  22680. // The unique identifier you assigned to the job when it was created.
  22681. JobId *string `locationName:"jobId" min:"1" type:"string"`
  22682. // The time, in milliseconds since the epoch, when the job execution was last
  22683. // updated.
  22684. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  22685. // The time, in milliseconds since the epoch, when the job execution was queued.
  22686. QueuedAt *time.Time `locationName:"queuedAt" type:"timestamp"`
  22687. // The time, in milliseconds since the epoch, when the job execution started.
  22688. StartedAt *time.Time `locationName:"startedAt" type:"timestamp"`
  22689. // The status of the job execution (IN_PROGRESS, QUEUED, FAILED, SUCCEEDED,
  22690. // TIMED_OUT, CANCELED, or REJECTED).
  22691. Status *string `locationName:"status" type:"string" enum:"JobExecutionStatus"`
  22692. // A collection of name/value pairs that describe the status of the job execution.
  22693. StatusDetails *JobExecutionStatusDetails `locationName:"statusDetails" type:"structure"`
  22694. // The ARN of the thing on which the job execution is running.
  22695. ThingArn *string `locationName:"thingArn" type:"string"`
  22696. // The version of the job execution. Job execution versions are incremented
  22697. // each time they are updated by a device.
  22698. VersionNumber *int64 `locationName:"versionNumber" type:"long"`
  22699. }
  22700. // String returns the string representation
  22701. func (s JobExecution) String() string {
  22702. return awsutil.Prettify(s)
  22703. }
  22704. // GoString returns the string representation
  22705. func (s JobExecution) GoString() string {
  22706. return s.String()
  22707. }
  22708. // SetApproximateSecondsBeforeTimedOut sets the ApproximateSecondsBeforeTimedOut field's value.
  22709. func (s *JobExecution) SetApproximateSecondsBeforeTimedOut(v int64) *JobExecution {
  22710. s.ApproximateSecondsBeforeTimedOut = &v
  22711. return s
  22712. }
  22713. // SetExecutionNumber sets the ExecutionNumber field's value.
  22714. func (s *JobExecution) SetExecutionNumber(v int64) *JobExecution {
  22715. s.ExecutionNumber = &v
  22716. return s
  22717. }
  22718. // SetForceCanceled sets the ForceCanceled field's value.
  22719. func (s *JobExecution) SetForceCanceled(v bool) *JobExecution {
  22720. s.ForceCanceled = &v
  22721. return s
  22722. }
  22723. // SetJobId sets the JobId field's value.
  22724. func (s *JobExecution) SetJobId(v string) *JobExecution {
  22725. s.JobId = &v
  22726. return s
  22727. }
  22728. // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  22729. func (s *JobExecution) SetLastUpdatedAt(v time.Time) *JobExecution {
  22730. s.LastUpdatedAt = &v
  22731. return s
  22732. }
  22733. // SetQueuedAt sets the QueuedAt field's value.
  22734. func (s *JobExecution) SetQueuedAt(v time.Time) *JobExecution {
  22735. s.QueuedAt = &v
  22736. return s
  22737. }
  22738. // SetStartedAt sets the StartedAt field's value.
  22739. func (s *JobExecution) SetStartedAt(v time.Time) *JobExecution {
  22740. s.StartedAt = &v
  22741. return s
  22742. }
  22743. // SetStatus sets the Status field's value.
  22744. func (s *JobExecution) SetStatus(v string) *JobExecution {
  22745. s.Status = &v
  22746. return s
  22747. }
  22748. // SetStatusDetails sets the StatusDetails field's value.
  22749. func (s *JobExecution) SetStatusDetails(v *JobExecutionStatusDetails) *JobExecution {
  22750. s.StatusDetails = v
  22751. return s
  22752. }
  22753. // SetThingArn sets the ThingArn field's value.
  22754. func (s *JobExecution) SetThingArn(v string) *JobExecution {
  22755. s.ThingArn = &v
  22756. return s
  22757. }
  22758. // SetVersionNumber sets the VersionNumber field's value.
  22759. func (s *JobExecution) SetVersionNumber(v int64) *JobExecution {
  22760. s.VersionNumber = &v
  22761. return s
  22762. }
  22763. // Details of the job execution status.
  22764. type JobExecutionStatusDetails struct {
  22765. _ struct{} `type:"structure"`
  22766. // The job execution status.
  22767. DetailsMap map[string]*string `locationName:"detailsMap" type:"map"`
  22768. }
  22769. // String returns the string representation
  22770. func (s JobExecutionStatusDetails) String() string {
  22771. return awsutil.Prettify(s)
  22772. }
  22773. // GoString returns the string representation
  22774. func (s JobExecutionStatusDetails) GoString() string {
  22775. return s.String()
  22776. }
  22777. // SetDetailsMap sets the DetailsMap field's value.
  22778. func (s *JobExecutionStatusDetails) SetDetailsMap(v map[string]*string) *JobExecutionStatusDetails {
  22779. s.DetailsMap = v
  22780. return s
  22781. }
  22782. // The job execution summary.
  22783. type JobExecutionSummary struct {
  22784. _ struct{} `type:"structure"`
  22785. // A string (consisting of the digits "0" through "9") which identifies this
  22786. // particular job execution on this particular device. It can be used later
  22787. // in commands which return or update job execution information.
  22788. ExecutionNumber *int64 `locationName:"executionNumber" type:"long"`
  22789. // The time, in milliseconds since the epoch, when the job execution was last
  22790. // updated.
  22791. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  22792. // The time, in milliseconds since the epoch, when the job execution was queued.
  22793. QueuedAt *time.Time `locationName:"queuedAt" type:"timestamp"`
  22794. // The time, in milliseconds since the epoch, when the job execution started.
  22795. StartedAt *time.Time `locationName:"startedAt" type:"timestamp"`
  22796. // The status of the job execution.
  22797. Status *string `locationName:"status" type:"string" enum:"JobExecutionStatus"`
  22798. }
  22799. // String returns the string representation
  22800. func (s JobExecutionSummary) String() string {
  22801. return awsutil.Prettify(s)
  22802. }
  22803. // GoString returns the string representation
  22804. func (s JobExecutionSummary) GoString() string {
  22805. return s.String()
  22806. }
  22807. // SetExecutionNumber sets the ExecutionNumber field's value.
  22808. func (s *JobExecutionSummary) SetExecutionNumber(v int64) *JobExecutionSummary {
  22809. s.ExecutionNumber = &v
  22810. return s
  22811. }
  22812. // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  22813. func (s *JobExecutionSummary) SetLastUpdatedAt(v time.Time) *JobExecutionSummary {
  22814. s.LastUpdatedAt = &v
  22815. return s
  22816. }
  22817. // SetQueuedAt sets the QueuedAt field's value.
  22818. func (s *JobExecutionSummary) SetQueuedAt(v time.Time) *JobExecutionSummary {
  22819. s.QueuedAt = &v
  22820. return s
  22821. }
  22822. // SetStartedAt sets the StartedAt field's value.
  22823. func (s *JobExecutionSummary) SetStartedAt(v time.Time) *JobExecutionSummary {
  22824. s.StartedAt = &v
  22825. return s
  22826. }
  22827. // SetStatus sets the Status field's value.
  22828. func (s *JobExecutionSummary) SetStatus(v string) *JobExecutionSummary {
  22829. s.Status = &v
  22830. return s
  22831. }
  22832. // Contains a summary of information about job executions for a specific job.
  22833. type JobExecutionSummaryForJob struct {
  22834. _ struct{} `type:"structure"`
  22835. // Contains a subset of information about a job execution.
  22836. JobExecutionSummary *JobExecutionSummary `locationName:"jobExecutionSummary" type:"structure"`
  22837. // The ARN of the thing on which the job execution is running.
  22838. ThingArn *string `locationName:"thingArn" type:"string"`
  22839. }
  22840. // String returns the string representation
  22841. func (s JobExecutionSummaryForJob) String() string {
  22842. return awsutil.Prettify(s)
  22843. }
  22844. // GoString returns the string representation
  22845. func (s JobExecutionSummaryForJob) GoString() string {
  22846. return s.String()
  22847. }
  22848. // SetJobExecutionSummary sets the JobExecutionSummary field's value.
  22849. func (s *JobExecutionSummaryForJob) SetJobExecutionSummary(v *JobExecutionSummary) *JobExecutionSummaryForJob {
  22850. s.JobExecutionSummary = v
  22851. return s
  22852. }
  22853. // SetThingArn sets the ThingArn field's value.
  22854. func (s *JobExecutionSummaryForJob) SetThingArn(v string) *JobExecutionSummaryForJob {
  22855. s.ThingArn = &v
  22856. return s
  22857. }
  22858. // The job execution summary for a thing.
  22859. type JobExecutionSummaryForThing struct {
  22860. _ struct{} `type:"structure"`
  22861. // Contains a subset of information about a job execution.
  22862. JobExecutionSummary *JobExecutionSummary `locationName:"jobExecutionSummary" type:"structure"`
  22863. // The unique identifier you assigned to this job when it was created.
  22864. JobId *string `locationName:"jobId" min:"1" type:"string"`
  22865. }
  22866. // String returns the string representation
  22867. func (s JobExecutionSummaryForThing) String() string {
  22868. return awsutil.Prettify(s)
  22869. }
  22870. // GoString returns the string representation
  22871. func (s JobExecutionSummaryForThing) GoString() string {
  22872. return s.String()
  22873. }
  22874. // SetJobExecutionSummary sets the JobExecutionSummary field's value.
  22875. func (s *JobExecutionSummaryForThing) SetJobExecutionSummary(v *JobExecutionSummary) *JobExecutionSummaryForThing {
  22876. s.JobExecutionSummary = v
  22877. return s
  22878. }
  22879. // SetJobId sets the JobId field's value.
  22880. func (s *JobExecutionSummaryForThing) SetJobId(v string) *JobExecutionSummaryForThing {
  22881. s.JobId = &v
  22882. return s
  22883. }
  22884. // Allows you to create a staged rollout of a job.
  22885. type JobExecutionsRolloutConfig struct {
  22886. _ struct{} `type:"structure"`
  22887. // The rate of increase for a job rollout. This parameter allows you to define
  22888. // an exponential rate for a job rollout.
  22889. ExponentialRate *ExponentialRolloutRate `locationName:"exponentialRate" type:"structure"`
  22890. // The maximum number of things that will be notified of a pending job, per
  22891. // minute. This parameter allows you to create a staged rollout.
  22892. MaximumPerMinute *int64 `locationName:"maximumPerMinute" min:"1" type:"integer"`
  22893. }
  22894. // String returns the string representation
  22895. func (s JobExecutionsRolloutConfig) String() string {
  22896. return awsutil.Prettify(s)
  22897. }
  22898. // GoString returns the string representation
  22899. func (s JobExecutionsRolloutConfig) GoString() string {
  22900. return s.String()
  22901. }
  22902. // Validate inspects the fields of the type to determine if they are valid.
  22903. func (s *JobExecutionsRolloutConfig) Validate() error {
  22904. invalidParams := request.ErrInvalidParams{Context: "JobExecutionsRolloutConfig"}
  22905. if s.MaximumPerMinute != nil && *s.MaximumPerMinute < 1 {
  22906. invalidParams.Add(request.NewErrParamMinValue("MaximumPerMinute", 1))
  22907. }
  22908. if s.ExponentialRate != nil {
  22909. if err := s.ExponentialRate.Validate(); err != nil {
  22910. invalidParams.AddNested("ExponentialRate", err.(request.ErrInvalidParams))
  22911. }
  22912. }
  22913. if invalidParams.Len() > 0 {
  22914. return invalidParams
  22915. }
  22916. return nil
  22917. }
  22918. // SetExponentialRate sets the ExponentialRate field's value.
  22919. func (s *JobExecutionsRolloutConfig) SetExponentialRate(v *ExponentialRolloutRate) *JobExecutionsRolloutConfig {
  22920. s.ExponentialRate = v
  22921. return s
  22922. }
  22923. // SetMaximumPerMinute sets the MaximumPerMinute field's value.
  22924. func (s *JobExecutionsRolloutConfig) SetMaximumPerMinute(v int64) *JobExecutionsRolloutConfig {
  22925. s.MaximumPerMinute = &v
  22926. return s
  22927. }
  22928. // The job process details.
  22929. type JobProcessDetails struct {
  22930. _ struct{} `type:"structure"`
  22931. // The number of things that cancelled the job.
  22932. NumberOfCanceledThings *int64 `locationName:"numberOfCanceledThings" type:"integer"`
  22933. // The number of things that failed executing the job.
  22934. NumberOfFailedThings *int64 `locationName:"numberOfFailedThings" type:"integer"`
  22935. // The number of things currently executing the job.
  22936. NumberOfInProgressThings *int64 `locationName:"numberOfInProgressThings" type:"integer"`
  22937. // The number of things that are awaiting execution of the job.
  22938. NumberOfQueuedThings *int64 `locationName:"numberOfQueuedThings" type:"integer"`
  22939. // The number of things that rejected the job.
  22940. NumberOfRejectedThings *int64 `locationName:"numberOfRejectedThings" type:"integer"`
  22941. // The number of things that are no longer scheduled to execute the job because
  22942. // they have been deleted or have been removed from the group that was a target
  22943. // of the job.
  22944. NumberOfRemovedThings *int64 `locationName:"numberOfRemovedThings" type:"integer"`
  22945. // The number of things which successfully completed the job.
  22946. NumberOfSucceededThings *int64 `locationName:"numberOfSucceededThings" type:"integer"`
  22947. // The number of things whose job execution status is TIMED_OUT.
  22948. NumberOfTimedOutThings *int64 `locationName:"numberOfTimedOutThings" type:"integer"`
  22949. // The target devices to which the job execution is being rolled out. This value
  22950. // will be null after the job execution has finished rolling out to all the
  22951. // target devices.
  22952. ProcessingTargets []*string `locationName:"processingTargets" type:"list"`
  22953. }
  22954. // String returns the string representation
  22955. func (s JobProcessDetails) String() string {
  22956. return awsutil.Prettify(s)
  22957. }
  22958. // GoString returns the string representation
  22959. func (s JobProcessDetails) GoString() string {
  22960. return s.String()
  22961. }
  22962. // SetNumberOfCanceledThings sets the NumberOfCanceledThings field's value.
  22963. func (s *JobProcessDetails) SetNumberOfCanceledThings(v int64) *JobProcessDetails {
  22964. s.NumberOfCanceledThings = &v
  22965. return s
  22966. }
  22967. // SetNumberOfFailedThings sets the NumberOfFailedThings field's value.
  22968. func (s *JobProcessDetails) SetNumberOfFailedThings(v int64) *JobProcessDetails {
  22969. s.NumberOfFailedThings = &v
  22970. return s
  22971. }
  22972. // SetNumberOfInProgressThings sets the NumberOfInProgressThings field's value.
  22973. func (s *JobProcessDetails) SetNumberOfInProgressThings(v int64) *JobProcessDetails {
  22974. s.NumberOfInProgressThings = &v
  22975. return s
  22976. }
  22977. // SetNumberOfQueuedThings sets the NumberOfQueuedThings field's value.
  22978. func (s *JobProcessDetails) SetNumberOfQueuedThings(v int64) *JobProcessDetails {
  22979. s.NumberOfQueuedThings = &v
  22980. return s
  22981. }
  22982. // SetNumberOfRejectedThings sets the NumberOfRejectedThings field's value.
  22983. func (s *JobProcessDetails) SetNumberOfRejectedThings(v int64) *JobProcessDetails {
  22984. s.NumberOfRejectedThings = &v
  22985. return s
  22986. }
  22987. // SetNumberOfRemovedThings sets the NumberOfRemovedThings field's value.
  22988. func (s *JobProcessDetails) SetNumberOfRemovedThings(v int64) *JobProcessDetails {
  22989. s.NumberOfRemovedThings = &v
  22990. return s
  22991. }
  22992. // SetNumberOfSucceededThings sets the NumberOfSucceededThings field's value.
  22993. func (s *JobProcessDetails) SetNumberOfSucceededThings(v int64) *JobProcessDetails {
  22994. s.NumberOfSucceededThings = &v
  22995. return s
  22996. }
  22997. // SetNumberOfTimedOutThings sets the NumberOfTimedOutThings field's value.
  22998. func (s *JobProcessDetails) SetNumberOfTimedOutThings(v int64) *JobProcessDetails {
  22999. s.NumberOfTimedOutThings = &v
  23000. return s
  23001. }
  23002. // SetProcessingTargets sets the ProcessingTargets field's value.
  23003. func (s *JobProcessDetails) SetProcessingTargets(v []*string) *JobProcessDetails {
  23004. s.ProcessingTargets = v
  23005. return s
  23006. }
  23007. // The job summary.
  23008. type JobSummary struct {
  23009. _ struct{} `type:"structure"`
  23010. // The time, in milliseconds since the epoch, when the job completed.
  23011. CompletedAt *time.Time `locationName:"completedAt" type:"timestamp"`
  23012. // The time, in milliseconds since the epoch, when the job was created.
  23013. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  23014. // The job ARN.
  23015. JobArn *string `locationName:"jobArn" type:"string"`
  23016. // The unique identifier you assigned to this job when it was created.
  23017. JobId *string `locationName:"jobId" min:"1" type:"string"`
  23018. // The time, in milliseconds since the epoch, when the job was last updated.
  23019. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  23020. // The job summary status.
  23021. Status *string `locationName:"status" type:"string" enum:"JobStatus"`
  23022. // Specifies whether the job will continue to run (CONTINUOUS), or will be complete
  23023. // after all those things specified as targets have completed the job (SNAPSHOT).
  23024. // If continuous, the job may also be run on a thing when a change is detected
  23025. // in a target. For example, a job will run on a thing when the thing is added
  23026. // to a target group, even after the job was completed by all things originally
  23027. // in the group.
  23028. TargetSelection *string `locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  23029. // The ID of the thing group.
  23030. ThingGroupId *string `locationName:"thingGroupId" min:"1" type:"string"`
  23031. }
  23032. // String returns the string representation
  23033. func (s JobSummary) String() string {
  23034. return awsutil.Prettify(s)
  23035. }
  23036. // GoString returns the string representation
  23037. func (s JobSummary) GoString() string {
  23038. return s.String()
  23039. }
  23040. // SetCompletedAt sets the CompletedAt field's value.
  23041. func (s *JobSummary) SetCompletedAt(v time.Time) *JobSummary {
  23042. s.CompletedAt = &v
  23043. return s
  23044. }
  23045. // SetCreatedAt sets the CreatedAt field's value.
  23046. func (s *JobSummary) SetCreatedAt(v time.Time) *JobSummary {
  23047. s.CreatedAt = &v
  23048. return s
  23049. }
  23050. // SetJobArn sets the JobArn field's value.
  23051. func (s *JobSummary) SetJobArn(v string) *JobSummary {
  23052. s.JobArn = &v
  23053. return s
  23054. }
  23055. // SetJobId sets the JobId field's value.
  23056. func (s *JobSummary) SetJobId(v string) *JobSummary {
  23057. s.JobId = &v
  23058. return s
  23059. }
  23060. // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  23061. func (s *JobSummary) SetLastUpdatedAt(v time.Time) *JobSummary {
  23062. s.LastUpdatedAt = &v
  23063. return s
  23064. }
  23065. // SetStatus sets the Status field's value.
  23066. func (s *JobSummary) SetStatus(v string) *JobSummary {
  23067. s.Status = &v
  23068. return s
  23069. }
  23070. // SetTargetSelection sets the TargetSelection field's value.
  23071. func (s *JobSummary) SetTargetSelection(v string) *JobSummary {
  23072. s.TargetSelection = &v
  23073. return s
  23074. }
  23075. // SetThingGroupId sets the ThingGroupId field's value.
  23076. func (s *JobSummary) SetThingGroupId(v string) *JobSummary {
  23077. s.ThingGroupId = &v
  23078. return s
  23079. }
  23080. // Describes a key pair.
  23081. type KeyPair struct {
  23082. _ struct{} `type:"structure"`
  23083. // The private key.
  23084. PrivateKey *string `min:"1" type:"string" sensitive:"true"`
  23085. // The public key.
  23086. PublicKey *string `min:"1" type:"string"`
  23087. }
  23088. // String returns the string representation
  23089. func (s KeyPair) String() string {
  23090. return awsutil.Prettify(s)
  23091. }
  23092. // GoString returns the string representation
  23093. func (s KeyPair) GoString() string {
  23094. return s.String()
  23095. }
  23096. // SetPrivateKey sets the PrivateKey field's value.
  23097. func (s *KeyPair) SetPrivateKey(v string) *KeyPair {
  23098. s.PrivateKey = &v
  23099. return s
  23100. }
  23101. // SetPublicKey sets the PublicKey field's value.
  23102. func (s *KeyPair) SetPublicKey(v string) *KeyPair {
  23103. s.PublicKey = &v
  23104. return s
  23105. }
  23106. // Describes an action to write data to an Amazon Kinesis stream.
  23107. type KinesisAction struct {
  23108. _ struct{} `type:"structure"`
  23109. // The partition key.
  23110. PartitionKey *string `locationName:"partitionKey" type:"string"`
  23111. // The ARN of the IAM role that grants access to the Amazon Kinesis stream.
  23112. //
  23113. // RoleArn is a required field
  23114. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  23115. // The name of the Amazon Kinesis stream.
  23116. //
  23117. // StreamName is a required field
  23118. StreamName *string `locationName:"streamName" type:"string" required:"true"`
  23119. }
  23120. // String returns the string representation
  23121. func (s KinesisAction) String() string {
  23122. return awsutil.Prettify(s)
  23123. }
  23124. // GoString returns the string representation
  23125. func (s KinesisAction) GoString() string {
  23126. return s.String()
  23127. }
  23128. // Validate inspects the fields of the type to determine if they are valid.
  23129. func (s *KinesisAction) Validate() error {
  23130. invalidParams := request.ErrInvalidParams{Context: "KinesisAction"}
  23131. if s.RoleArn == nil {
  23132. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  23133. }
  23134. if s.StreamName == nil {
  23135. invalidParams.Add(request.NewErrParamRequired("StreamName"))
  23136. }
  23137. if invalidParams.Len() > 0 {
  23138. return invalidParams
  23139. }
  23140. return nil
  23141. }
  23142. // SetPartitionKey sets the PartitionKey field's value.
  23143. func (s *KinesisAction) SetPartitionKey(v string) *KinesisAction {
  23144. s.PartitionKey = &v
  23145. return s
  23146. }
  23147. // SetRoleArn sets the RoleArn field's value.
  23148. func (s *KinesisAction) SetRoleArn(v string) *KinesisAction {
  23149. s.RoleArn = &v
  23150. return s
  23151. }
  23152. // SetStreamName sets the StreamName field's value.
  23153. func (s *KinesisAction) SetStreamName(v string) *KinesisAction {
  23154. s.StreamName = &v
  23155. return s
  23156. }
  23157. // Describes an action to invoke a Lambda function.
  23158. type LambdaAction struct {
  23159. _ struct{} `type:"structure"`
  23160. // The ARN of the Lambda function.
  23161. //
  23162. // FunctionArn is a required field
  23163. FunctionArn *string `locationName:"functionArn" type:"string" required:"true"`
  23164. }
  23165. // String returns the string representation
  23166. func (s LambdaAction) String() string {
  23167. return awsutil.Prettify(s)
  23168. }
  23169. // GoString returns the string representation
  23170. func (s LambdaAction) GoString() string {
  23171. return s.String()
  23172. }
  23173. // Validate inspects the fields of the type to determine if they are valid.
  23174. func (s *LambdaAction) Validate() error {
  23175. invalidParams := request.ErrInvalidParams{Context: "LambdaAction"}
  23176. if s.FunctionArn == nil {
  23177. invalidParams.Add(request.NewErrParamRequired("FunctionArn"))
  23178. }
  23179. if invalidParams.Len() > 0 {
  23180. return invalidParams
  23181. }
  23182. return nil
  23183. }
  23184. // SetFunctionArn sets the FunctionArn field's value.
  23185. func (s *LambdaAction) SetFunctionArn(v string) *LambdaAction {
  23186. s.FunctionArn = &v
  23187. return s
  23188. }
  23189. type ListActiveViolationsInput struct {
  23190. _ struct{} `type:"structure"`
  23191. // The maximum number of results to return at one time.
  23192. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  23193. // The token for the next set of results.
  23194. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  23195. // The name of the Device Defender security profile for which violations are
  23196. // listed.
  23197. SecurityProfileName *string `location:"querystring" locationName:"securityProfileName" min:"1" type:"string"`
  23198. // The name of the thing whose active violations are listed.
  23199. ThingName *string `location:"querystring" locationName:"thingName" min:"1" type:"string"`
  23200. }
  23201. // String returns the string representation
  23202. func (s ListActiveViolationsInput) String() string {
  23203. return awsutil.Prettify(s)
  23204. }
  23205. // GoString returns the string representation
  23206. func (s ListActiveViolationsInput) GoString() string {
  23207. return s.String()
  23208. }
  23209. // Validate inspects the fields of the type to determine if they are valid.
  23210. func (s *ListActiveViolationsInput) Validate() error {
  23211. invalidParams := request.ErrInvalidParams{Context: "ListActiveViolationsInput"}
  23212. if s.MaxResults != nil && *s.MaxResults < 1 {
  23213. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  23214. }
  23215. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  23216. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  23217. }
  23218. if s.ThingName != nil && len(*s.ThingName) < 1 {
  23219. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  23220. }
  23221. if invalidParams.Len() > 0 {
  23222. return invalidParams
  23223. }
  23224. return nil
  23225. }
  23226. // SetMaxResults sets the MaxResults field's value.
  23227. func (s *ListActiveViolationsInput) SetMaxResults(v int64) *ListActiveViolationsInput {
  23228. s.MaxResults = &v
  23229. return s
  23230. }
  23231. // SetNextToken sets the NextToken field's value.
  23232. func (s *ListActiveViolationsInput) SetNextToken(v string) *ListActiveViolationsInput {
  23233. s.NextToken = &v
  23234. return s
  23235. }
  23236. // SetSecurityProfileName sets the SecurityProfileName field's value.
  23237. func (s *ListActiveViolationsInput) SetSecurityProfileName(v string) *ListActiveViolationsInput {
  23238. s.SecurityProfileName = &v
  23239. return s
  23240. }
  23241. // SetThingName sets the ThingName field's value.
  23242. func (s *ListActiveViolationsInput) SetThingName(v string) *ListActiveViolationsInput {
  23243. s.ThingName = &v
  23244. return s
  23245. }
  23246. type ListActiveViolationsOutput struct {
  23247. _ struct{} `type:"structure"`
  23248. // The list of active violations.
  23249. ActiveViolations []*ActiveViolation `locationName:"activeViolations" type:"list"`
  23250. // A token that can be used to retrieve the next set of results, or null if
  23251. // there are no additional results.
  23252. NextToken *string `locationName:"nextToken" type:"string"`
  23253. }
  23254. // String returns the string representation
  23255. func (s ListActiveViolationsOutput) String() string {
  23256. return awsutil.Prettify(s)
  23257. }
  23258. // GoString returns the string representation
  23259. func (s ListActiveViolationsOutput) GoString() string {
  23260. return s.String()
  23261. }
  23262. // SetActiveViolations sets the ActiveViolations field's value.
  23263. func (s *ListActiveViolationsOutput) SetActiveViolations(v []*ActiveViolation) *ListActiveViolationsOutput {
  23264. s.ActiveViolations = v
  23265. return s
  23266. }
  23267. // SetNextToken sets the NextToken field's value.
  23268. func (s *ListActiveViolationsOutput) SetNextToken(v string) *ListActiveViolationsOutput {
  23269. s.NextToken = &v
  23270. return s
  23271. }
  23272. type ListAttachedPoliciesInput struct {
  23273. _ struct{} `type:"structure"`
  23274. // The token to retrieve the next set of results.
  23275. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  23276. // The maximum number of results to be returned per request.
  23277. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  23278. // When true, recursively list attached policies.
  23279. Recursive *bool `location:"querystring" locationName:"recursive" type:"boolean"`
  23280. // The group for which the policies will be listed.
  23281. //
  23282. // Target is a required field
  23283. Target *string `location:"uri" locationName:"target" type:"string" required:"true"`
  23284. }
  23285. // String returns the string representation
  23286. func (s ListAttachedPoliciesInput) String() string {
  23287. return awsutil.Prettify(s)
  23288. }
  23289. // GoString returns the string representation
  23290. func (s ListAttachedPoliciesInput) GoString() string {
  23291. return s.String()
  23292. }
  23293. // Validate inspects the fields of the type to determine if they are valid.
  23294. func (s *ListAttachedPoliciesInput) Validate() error {
  23295. invalidParams := request.ErrInvalidParams{Context: "ListAttachedPoliciesInput"}
  23296. if s.PageSize != nil && *s.PageSize < 1 {
  23297. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  23298. }
  23299. if s.Target == nil {
  23300. invalidParams.Add(request.NewErrParamRequired("Target"))
  23301. }
  23302. if s.Target != nil && len(*s.Target) < 1 {
  23303. invalidParams.Add(request.NewErrParamMinLen("Target", 1))
  23304. }
  23305. if invalidParams.Len() > 0 {
  23306. return invalidParams
  23307. }
  23308. return nil
  23309. }
  23310. // SetMarker sets the Marker field's value.
  23311. func (s *ListAttachedPoliciesInput) SetMarker(v string) *ListAttachedPoliciesInput {
  23312. s.Marker = &v
  23313. return s
  23314. }
  23315. // SetPageSize sets the PageSize field's value.
  23316. func (s *ListAttachedPoliciesInput) SetPageSize(v int64) *ListAttachedPoliciesInput {
  23317. s.PageSize = &v
  23318. return s
  23319. }
  23320. // SetRecursive sets the Recursive field's value.
  23321. func (s *ListAttachedPoliciesInput) SetRecursive(v bool) *ListAttachedPoliciesInput {
  23322. s.Recursive = &v
  23323. return s
  23324. }
  23325. // SetTarget sets the Target field's value.
  23326. func (s *ListAttachedPoliciesInput) SetTarget(v string) *ListAttachedPoliciesInput {
  23327. s.Target = &v
  23328. return s
  23329. }
  23330. type ListAttachedPoliciesOutput struct {
  23331. _ struct{} `type:"structure"`
  23332. // The token to retrieve the next set of results, or ``null`` if there are no
  23333. // more results.
  23334. NextMarker *string `locationName:"nextMarker" type:"string"`
  23335. // The policies.
  23336. Policies []*Policy `locationName:"policies" type:"list"`
  23337. }
  23338. // String returns the string representation
  23339. func (s ListAttachedPoliciesOutput) String() string {
  23340. return awsutil.Prettify(s)
  23341. }
  23342. // GoString returns the string representation
  23343. func (s ListAttachedPoliciesOutput) GoString() string {
  23344. return s.String()
  23345. }
  23346. // SetNextMarker sets the NextMarker field's value.
  23347. func (s *ListAttachedPoliciesOutput) SetNextMarker(v string) *ListAttachedPoliciesOutput {
  23348. s.NextMarker = &v
  23349. return s
  23350. }
  23351. // SetPolicies sets the Policies field's value.
  23352. func (s *ListAttachedPoliciesOutput) SetPolicies(v []*Policy) *ListAttachedPoliciesOutput {
  23353. s.Policies = v
  23354. return s
  23355. }
  23356. type ListAuditFindingsInput struct {
  23357. _ struct{} `type:"structure"`
  23358. // A filter to limit results to the findings for the specified audit check.
  23359. CheckName *string `locationName:"checkName" type:"string"`
  23360. // A filter to limit results to those found before the specified time. You must
  23361. // specify either the startTime and endTime or the taskId, but not both.
  23362. EndTime *time.Time `locationName:"endTime" type:"timestamp"`
  23363. // The maximum number of results to return at one time. The default is 25.
  23364. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  23365. // The token for the next set of results.
  23366. NextToken *string `locationName:"nextToken" type:"string"`
  23367. // Information identifying the non-compliant resource.
  23368. ResourceIdentifier *ResourceIdentifier `locationName:"resourceIdentifier" type:"structure"`
  23369. // A filter to limit results to those found after the specified time. You must
  23370. // specify either the startTime and endTime or the taskId, but not both.
  23371. StartTime *time.Time `locationName:"startTime" type:"timestamp"`
  23372. // A filter to limit results to the audit with the specified ID. You must specify
  23373. // either the taskId or the startTime and endTime, but not both.
  23374. TaskId *string `locationName:"taskId" min:"1" type:"string"`
  23375. }
  23376. // String returns the string representation
  23377. func (s ListAuditFindingsInput) String() string {
  23378. return awsutil.Prettify(s)
  23379. }
  23380. // GoString returns the string representation
  23381. func (s ListAuditFindingsInput) GoString() string {
  23382. return s.String()
  23383. }
  23384. // Validate inspects the fields of the type to determine if they are valid.
  23385. func (s *ListAuditFindingsInput) Validate() error {
  23386. invalidParams := request.ErrInvalidParams{Context: "ListAuditFindingsInput"}
  23387. if s.MaxResults != nil && *s.MaxResults < 1 {
  23388. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  23389. }
  23390. if s.TaskId != nil && len(*s.TaskId) < 1 {
  23391. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  23392. }
  23393. if s.ResourceIdentifier != nil {
  23394. if err := s.ResourceIdentifier.Validate(); err != nil {
  23395. invalidParams.AddNested("ResourceIdentifier", err.(request.ErrInvalidParams))
  23396. }
  23397. }
  23398. if invalidParams.Len() > 0 {
  23399. return invalidParams
  23400. }
  23401. return nil
  23402. }
  23403. // SetCheckName sets the CheckName field's value.
  23404. func (s *ListAuditFindingsInput) SetCheckName(v string) *ListAuditFindingsInput {
  23405. s.CheckName = &v
  23406. return s
  23407. }
  23408. // SetEndTime sets the EndTime field's value.
  23409. func (s *ListAuditFindingsInput) SetEndTime(v time.Time) *ListAuditFindingsInput {
  23410. s.EndTime = &v
  23411. return s
  23412. }
  23413. // SetMaxResults sets the MaxResults field's value.
  23414. func (s *ListAuditFindingsInput) SetMaxResults(v int64) *ListAuditFindingsInput {
  23415. s.MaxResults = &v
  23416. return s
  23417. }
  23418. // SetNextToken sets the NextToken field's value.
  23419. func (s *ListAuditFindingsInput) SetNextToken(v string) *ListAuditFindingsInput {
  23420. s.NextToken = &v
  23421. return s
  23422. }
  23423. // SetResourceIdentifier sets the ResourceIdentifier field's value.
  23424. func (s *ListAuditFindingsInput) SetResourceIdentifier(v *ResourceIdentifier) *ListAuditFindingsInput {
  23425. s.ResourceIdentifier = v
  23426. return s
  23427. }
  23428. // SetStartTime sets the StartTime field's value.
  23429. func (s *ListAuditFindingsInput) SetStartTime(v time.Time) *ListAuditFindingsInput {
  23430. s.StartTime = &v
  23431. return s
  23432. }
  23433. // SetTaskId sets the TaskId field's value.
  23434. func (s *ListAuditFindingsInput) SetTaskId(v string) *ListAuditFindingsInput {
  23435. s.TaskId = &v
  23436. return s
  23437. }
  23438. type ListAuditFindingsOutput struct {
  23439. _ struct{} `type:"structure"`
  23440. // The findings (results) of the audit.
  23441. Findings []*AuditFinding `locationName:"findings" type:"list"`
  23442. // A token that can be used to retrieve the next set of results, or null if
  23443. // there are no additional results.
  23444. NextToken *string `locationName:"nextToken" type:"string"`
  23445. }
  23446. // String returns the string representation
  23447. func (s ListAuditFindingsOutput) String() string {
  23448. return awsutil.Prettify(s)
  23449. }
  23450. // GoString returns the string representation
  23451. func (s ListAuditFindingsOutput) GoString() string {
  23452. return s.String()
  23453. }
  23454. // SetFindings sets the Findings field's value.
  23455. func (s *ListAuditFindingsOutput) SetFindings(v []*AuditFinding) *ListAuditFindingsOutput {
  23456. s.Findings = v
  23457. return s
  23458. }
  23459. // SetNextToken sets the NextToken field's value.
  23460. func (s *ListAuditFindingsOutput) SetNextToken(v string) *ListAuditFindingsOutput {
  23461. s.NextToken = &v
  23462. return s
  23463. }
  23464. type ListAuditTasksInput struct {
  23465. _ struct{} `type:"structure"`
  23466. // The end of the time period.
  23467. //
  23468. // EndTime is a required field
  23469. EndTime *time.Time `location:"querystring" locationName:"endTime" type:"timestamp" required:"true"`
  23470. // The maximum number of results to return at one time. The default is 25.
  23471. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  23472. // The token for the next set of results.
  23473. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  23474. // The beginning of the time period. Note that audit information is retained
  23475. // for a limited time (180 days). Requesting a start time prior to what is retained
  23476. // results in an "InvalidRequestException".
  23477. //
  23478. // StartTime is a required field
  23479. StartTime *time.Time `location:"querystring" locationName:"startTime" type:"timestamp" required:"true"`
  23480. // A filter to limit the output to audits with the specified completion status:
  23481. // can be one of "IN_PROGRESS", "COMPLETED", "FAILED" or "CANCELED".
  23482. TaskStatus *string `location:"querystring" locationName:"taskStatus" type:"string" enum:"AuditTaskStatus"`
  23483. // A filter to limit the output to the specified type of audit: can be one of
  23484. // "ON_DEMAND_AUDIT_TASK" or "SCHEDULED__AUDIT_TASK".
  23485. TaskType *string `location:"querystring" locationName:"taskType" type:"string" enum:"AuditTaskType"`
  23486. }
  23487. // String returns the string representation
  23488. func (s ListAuditTasksInput) String() string {
  23489. return awsutil.Prettify(s)
  23490. }
  23491. // GoString returns the string representation
  23492. func (s ListAuditTasksInput) GoString() string {
  23493. return s.String()
  23494. }
  23495. // Validate inspects the fields of the type to determine if they are valid.
  23496. func (s *ListAuditTasksInput) Validate() error {
  23497. invalidParams := request.ErrInvalidParams{Context: "ListAuditTasksInput"}
  23498. if s.EndTime == nil {
  23499. invalidParams.Add(request.NewErrParamRequired("EndTime"))
  23500. }
  23501. if s.MaxResults != nil && *s.MaxResults < 1 {
  23502. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  23503. }
  23504. if s.StartTime == nil {
  23505. invalidParams.Add(request.NewErrParamRequired("StartTime"))
  23506. }
  23507. if invalidParams.Len() > 0 {
  23508. return invalidParams
  23509. }
  23510. return nil
  23511. }
  23512. // SetEndTime sets the EndTime field's value.
  23513. func (s *ListAuditTasksInput) SetEndTime(v time.Time) *ListAuditTasksInput {
  23514. s.EndTime = &v
  23515. return s
  23516. }
  23517. // SetMaxResults sets the MaxResults field's value.
  23518. func (s *ListAuditTasksInput) SetMaxResults(v int64) *ListAuditTasksInput {
  23519. s.MaxResults = &v
  23520. return s
  23521. }
  23522. // SetNextToken sets the NextToken field's value.
  23523. func (s *ListAuditTasksInput) SetNextToken(v string) *ListAuditTasksInput {
  23524. s.NextToken = &v
  23525. return s
  23526. }
  23527. // SetStartTime sets the StartTime field's value.
  23528. func (s *ListAuditTasksInput) SetStartTime(v time.Time) *ListAuditTasksInput {
  23529. s.StartTime = &v
  23530. return s
  23531. }
  23532. // SetTaskStatus sets the TaskStatus field's value.
  23533. func (s *ListAuditTasksInput) SetTaskStatus(v string) *ListAuditTasksInput {
  23534. s.TaskStatus = &v
  23535. return s
  23536. }
  23537. // SetTaskType sets the TaskType field's value.
  23538. func (s *ListAuditTasksInput) SetTaskType(v string) *ListAuditTasksInput {
  23539. s.TaskType = &v
  23540. return s
  23541. }
  23542. type ListAuditTasksOutput struct {
  23543. _ struct{} `type:"structure"`
  23544. // A token that can be used to retrieve the next set of results, or null if
  23545. // there are no additional results.
  23546. NextToken *string `locationName:"nextToken" type:"string"`
  23547. // The audits that were performed during the specified time period.
  23548. Tasks []*AuditTaskMetadata `locationName:"tasks" type:"list"`
  23549. }
  23550. // String returns the string representation
  23551. func (s ListAuditTasksOutput) String() string {
  23552. return awsutil.Prettify(s)
  23553. }
  23554. // GoString returns the string representation
  23555. func (s ListAuditTasksOutput) GoString() string {
  23556. return s.String()
  23557. }
  23558. // SetNextToken sets the NextToken field's value.
  23559. func (s *ListAuditTasksOutput) SetNextToken(v string) *ListAuditTasksOutput {
  23560. s.NextToken = &v
  23561. return s
  23562. }
  23563. // SetTasks sets the Tasks field's value.
  23564. func (s *ListAuditTasksOutput) SetTasks(v []*AuditTaskMetadata) *ListAuditTasksOutput {
  23565. s.Tasks = v
  23566. return s
  23567. }
  23568. type ListAuthorizersInput struct {
  23569. _ struct{} `type:"structure"`
  23570. // Return the list of authorizers in ascending alphabetical order.
  23571. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  23572. // A marker used to get the next set of results.
  23573. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  23574. // The maximum number of results to return at one time.
  23575. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  23576. // The status of the list authorizers request.
  23577. Status *string `location:"querystring" locationName:"status" type:"string" enum:"AuthorizerStatus"`
  23578. }
  23579. // String returns the string representation
  23580. func (s ListAuthorizersInput) String() string {
  23581. return awsutil.Prettify(s)
  23582. }
  23583. // GoString returns the string representation
  23584. func (s ListAuthorizersInput) GoString() string {
  23585. return s.String()
  23586. }
  23587. // Validate inspects the fields of the type to determine if they are valid.
  23588. func (s *ListAuthorizersInput) Validate() error {
  23589. invalidParams := request.ErrInvalidParams{Context: "ListAuthorizersInput"}
  23590. if s.PageSize != nil && *s.PageSize < 1 {
  23591. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  23592. }
  23593. if invalidParams.Len() > 0 {
  23594. return invalidParams
  23595. }
  23596. return nil
  23597. }
  23598. // SetAscendingOrder sets the AscendingOrder field's value.
  23599. func (s *ListAuthorizersInput) SetAscendingOrder(v bool) *ListAuthorizersInput {
  23600. s.AscendingOrder = &v
  23601. return s
  23602. }
  23603. // SetMarker sets the Marker field's value.
  23604. func (s *ListAuthorizersInput) SetMarker(v string) *ListAuthorizersInput {
  23605. s.Marker = &v
  23606. return s
  23607. }
  23608. // SetPageSize sets the PageSize field's value.
  23609. func (s *ListAuthorizersInput) SetPageSize(v int64) *ListAuthorizersInput {
  23610. s.PageSize = &v
  23611. return s
  23612. }
  23613. // SetStatus sets the Status field's value.
  23614. func (s *ListAuthorizersInput) SetStatus(v string) *ListAuthorizersInput {
  23615. s.Status = &v
  23616. return s
  23617. }
  23618. type ListAuthorizersOutput struct {
  23619. _ struct{} `type:"structure"`
  23620. // The authorizers.
  23621. Authorizers []*AuthorizerSummary `locationName:"authorizers" type:"list"`
  23622. // A marker used to get the next set of results.
  23623. NextMarker *string `locationName:"nextMarker" type:"string"`
  23624. }
  23625. // String returns the string representation
  23626. func (s ListAuthorizersOutput) String() string {
  23627. return awsutil.Prettify(s)
  23628. }
  23629. // GoString returns the string representation
  23630. func (s ListAuthorizersOutput) GoString() string {
  23631. return s.String()
  23632. }
  23633. // SetAuthorizers sets the Authorizers field's value.
  23634. func (s *ListAuthorizersOutput) SetAuthorizers(v []*AuthorizerSummary) *ListAuthorizersOutput {
  23635. s.Authorizers = v
  23636. return s
  23637. }
  23638. // SetNextMarker sets the NextMarker field's value.
  23639. func (s *ListAuthorizersOutput) SetNextMarker(v string) *ListAuthorizersOutput {
  23640. s.NextMarker = &v
  23641. return s
  23642. }
  23643. type ListBillingGroupsInput struct {
  23644. _ struct{} `type:"structure"`
  23645. // The maximum number of results to return per request.
  23646. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  23647. // Limit the results to billing groups whose names have the given prefix.
  23648. NamePrefixFilter *string `location:"querystring" locationName:"namePrefixFilter" min:"1" type:"string"`
  23649. // The token to retrieve the next set of results.
  23650. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  23651. }
  23652. // String returns the string representation
  23653. func (s ListBillingGroupsInput) String() string {
  23654. return awsutil.Prettify(s)
  23655. }
  23656. // GoString returns the string representation
  23657. func (s ListBillingGroupsInput) GoString() string {
  23658. return s.String()
  23659. }
  23660. // Validate inspects the fields of the type to determine if they are valid.
  23661. func (s *ListBillingGroupsInput) Validate() error {
  23662. invalidParams := request.ErrInvalidParams{Context: "ListBillingGroupsInput"}
  23663. if s.MaxResults != nil && *s.MaxResults < 1 {
  23664. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  23665. }
  23666. if s.NamePrefixFilter != nil && len(*s.NamePrefixFilter) < 1 {
  23667. invalidParams.Add(request.NewErrParamMinLen("NamePrefixFilter", 1))
  23668. }
  23669. if invalidParams.Len() > 0 {
  23670. return invalidParams
  23671. }
  23672. return nil
  23673. }
  23674. // SetMaxResults sets the MaxResults field's value.
  23675. func (s *ListBillingGroupsInput) SetMaxResults(v int64) *ListBillingGroupsInput {
  23676. s.MaxResults = &v
  23677. return s
  23678. }
  23679. // SetNamePrefixFilter sets the NamePrefixFilter field's value.
  23680. func (s *ListBillingGroupsInput) SetNamePrefixFilter(v string) *ListBillingGroupsInput {
  23681. s.NamePrefixFilter = &v
  23682. return s
  23683. }
  23684. // SetNextToken sets the NextToken field's value.
  23685. func (s *ListBillingGroupsInput) SetNextToken(v string) *ListBillingGroupsInput {
  23686. s.NextToken = &v
  23687. return s
  23688. }
  23689. type ListBillingGroupsOutput struct {
  23690. _ struct{} `type:"structure"`
  23691. // The list of billing groups.
  23692. BillingGroups []*GroupNameAndArn `locationName:"billingGroups" type:"list"`
  23693. // The token used to get the next set of results, or null if there are no additional
  23694. // results.
  23695. NextToken *string `locationName:"nextToken" type:"string"`
  23696. }
  23697. // String returns the string representation
  23698. func (s ListBillingGroupsOutput) String() string {
  23699. return awsutil.Prettify(s)
  23700. }
  23701. // GoString returns the string representation
  23702. func (s ListBillingGroupsOutput) GoString() string {
  23703. return s.String()
  23704. }
  23705. // SetBillingGroups sets the BillingGroups field's value.
  23706. func (s *ListBillingGroupsOutput) SetBillingGroups(v []*GroupNameAndArn) *ListBillingGroupsOutput {
  23707. s.BillingGroups = v
  23708. return s
  23709. }
  23710. // SetNextToken sets the NextToken field's value.
  23711. func (s *ListBillingGroupsOutput) SetNextToken(v string) *ListBillingGroupsOutput {
  23712. s.NextToken = &v
  23713. return s
  23714. }
  23715. // Input for the ListCACertificates operation.
  23716. type ListCACertificatesInput struct {
  23717. _ struct{} `type:"structure"`
  23718. // Determines the order of the results.
  23719. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  23720. // The marker for the next set of results.
  23721. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  23722. // The result page size.
  23723. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  23724. }
  23725. // String returns the string representation
  23726. func (s ListCACertificatesInput) String() string {
  23727. return awsutil.Prettify(s)
  23728. }
  23729. // GoString returns the string representation
  23730. func (s ListCACertificatesInput) GoString() string {
  23731. return s.String()
  23732. }
  23733. // Validate inspects the fields of the type to determine if they are valid.
  23734. func (s *ListCACertificatesInput) Validate() error {
  23735. invalidParams := request.ErrInvalidParams{Context: "ListCACertificatesInput"}
  23736. if s.PageSize != nil && *s.PageSize < 1 {
  23737. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  23738. }
  23739. if invalidParams.Len() > 0 {
  23740. return invalidParams
  23741. }
  23742. return nil
  23743. }
  23744. // SetAscendingOrder sets the AscendingOrder field's value.
  23745. func (s *ListCACertificatesInput) SetAscendingOrder(v bool) *ListCACertificatesInput {
  23746. s.AscendingOrder = &v
  23747. return s
  23748. }
  23749. // SetMarker sets the Marker field's value.
  23750. func (s *ListCACertificatesInput) SetMarker(v string) *ListCACertificatesInput {
  23751. s.Marker = &v
  23752. return s
  23753. }
  23754. // SetPageSize sets the PageSize field's value.
  23755. func (s *ListCACertificatesInput) SetPageSize(v int64) *ListCACertificatesInput {
  23756. s.PageSize = &v
  23757. return s
  23758. }
  23759. // The output from the ListCACertificates operation.
  23760. type ListCACertificatesOutput struct {
  23761. _ struct{} `type:"structure"`
  23762. // The CA certificates registered in your AWS account.
  23763. Certificates []*CACertificate `locationName:"certificates" type:"list"`
  23764. // The current position within the list of CA certificates.
  23765. NextMarker *string `locationName:"nextMarker" type:"string"`
  23766. }
  23767. // String returns the string representation
  23768. func (s ListCACertificatesOutput) String() string {
  23769. return awsutil.Prettify(s)
  23770. }
  23771. // GoString returns the string representation
  23772. func (s ListCACertificatesOutput) GoString() string {
  23773. return s.String()
  23774. }
  23775. // SetCertificates sets the Certificates field's value.
  23776. func (s *ListCACertificatesOutput) SetCertificates(v []*CACertificate) *ListCACertificatesOutput {
  23777. s.Certificates = v
  23778. return s
  23779. }
  23780. // SetNextMarker sets the NextMarker field's value.
  23781. func (s *ListCACertificatesOutput) SetNextMarker(v string) *ListCACertificatesOutput {
  23782. s.NextMarker = &v
  23783. return s
  23784. }
  23785. // The input to the ListCertificatesByCA operation.
  23786. type ListCertificatesByCAInput struct {
  23787. _ struct{} `type:"structure"`
  23788. // Specifies the order for results. If True, the results are returned in ascending
  23789. // order, based on the creation date.
  23790. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  23791. // The ID of the CA certificate. This operation will list all registered device
  23792. // certificate that were signed by this CA certificate.
  23793. //
  23794. // CaCertificateId is a required field
  23795. CaCertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"`
  23796. // The marker for the next set of results.
  23797. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  23798. // The result page size.
  23799. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  23800. }
  23801. // String returns the string representation
  23802. func (s ListCertificatesByCAInput) String() string {
  23803. return awsutil.Prettify(s)
  23804. }
  23805. // GoString returns the string representation
  23806. func (s ListCertificatesByCAInput) GoString() string {
  23807. return s.String()
  23808. }
  23809. // Validate inspects the fields of the type to determine if they are valid.
  23810. func (s *ListCertificatesByCAInput) Validate() error {
  23811. invalidParams := request.ErrInvalidParams{Context: "ListCertificatesByCAInput"}
  23812. if s.CaCertificateId == nil {
  23813. invalidParams.Add(request.NewErrParamRequired("CaCertificateId"))
  23814. }
  23815. if s.CaCertificateId != nil && len(*s.CaCertificateId) < 64 {
  23816. invalidParams.Add(request.NewErrParamMinLen("CaCertificateId", 64))
  23817. }
  23818. if s.PageSize != nil && *s.PageSize < 1 {
  23819. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  23820. }
  23821. if invalidParams.Len() > 0 {
  23822. return invalidParams
  23823. }
  23824. return nil
  23825. }
  23826. // SetAscendingOrder sets the AscendingOrder field's value.
  23827. func (s *ListCertificatesByCAInput) SetAscendingOrder(v bool) *ListCertificatesByCAInput {
  23828. s.AscendingOrder = &v
  23829. return s
  23830. }
  23831. // SetCaCertificateId sets the CaCertificateId field's value.
  23832. func (s *ListCertificatesByCAInput) SetCaCertificateId(v string) *ListCertificatesByCAInput {
  23833. s.CaCertificateId = &v
  23834. return s
  23835. }
  23836. // SetMarker sets the Marker field's value.
  23837. func (s *ListCertificatesByCAInput) SetMarker(v string) *ListCertificatesByCAInput {
  23838. s.Marker = &v
  23839. return s
  23840. }
  23841. // SetPageSize sets the PageSize field's value.
  23842. func (s *ListCertificatesByCAInput) SetPageSize(v int64) *ListCertificatesByCAInput {
  23843. s.PageSize = &v
  23844. return s
  23845. }
  23846. // The output of the ListCertificatesByCA operation.
  23847. type ListCertificatesByCAOutput struct {
  23848. _ struct{} `type:"structure"`
  23849. // The device certificates signed by the specified CA certificate.
  23850. Certificates []*Certificate `locationName:"certificates" type:"list"`
  23851. // The marker for the next set of results, or null if there are no additional
  23852. // results.
  23853. NextMarker *string `locationName:"nextMarker" type:"string"`
  23854. }
  23855. // String returns the string representation
  23856. func (s ListCertificatesByCAOutput) String() string {
  23857. return awsutil.Prettify(s)
  23858. }
  23859. // GoString returns the string representation
  23860. func (s ListCertificatesByCAOutput) GoString() string {
  23861. return s.String()
  23862. }
  23863. // SetCertificates sets the Certificates field's value.
  23864. func (s *ListCertificatesByCAOutput) SetCertificates(v []*Certificate) *ListCertificatesByCAOutput {
  23865. s.Certificates = v
  23866. return s
  23867. }
  23868. // SetNextMarker sets the NextMarker field's value.
  23869. func (s *ListCertificatesByCAOutput) SetNextMarker(v string) *ListCertificatesByCAOutput {
  23870. s.NextMarker = &v
  23871. return s
  23872. }
  23873. // The input for the ListCertificates operation.
  23874. type ListCertificatesInput struct {
  23875. _ struct{} `type:"structure"`
  23876. // Specifies the order for results. If True, the results are returned in ascending
  23877. // order, based on the creation date.
  23878. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  23879. // The marker for the next set of results.
  23880. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  23881. // The result page size.
  23882. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  23883. }
  23884. // String returns the string representation
  23885. func (s ListCertificatesInput) String() string {
  23886. return awsutil.Prettify(s)
  23887. }
  23888. // GoString returns the string representation
  23889. func (s ListCertificatesInput) GoString() string {
  23890. return s.String()
  23891. }
  23892. // Validate inspects the fields of the type to determine if they are valid.
  23893. func (s *ListCertificatesInput) Validate() error {
  23894. invalidParams := request.ErrInvalidParams{Context: "ListCertificatesInput"}
  23895. if s.PageSize != nil && *s.PageSize < 1 {
  23896. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  23897. }
  23898. if invalidParams.Len() > 0 {
  23899. return invalidParams
  23900. }
  23901. return nil
  23902. }
  23903. // SetAscendingOrder sets the AscendingOrder field's value.
  23904. func (s *ListCertificatesInput) SetAscendingOrder(v bool) *ListCertificatesInput {
  23905. s.AscendingOrder = &v
  23906. return s
  23907. }
  23908. // SetMarker sets the Marker field's value.
  23909. func (s *ListCertificatesInput) SetMarker(v string) *ListCertificatesInput {
  23910. s.Marker = &v
  23911. return s
  23912. }
  23913. // SetPageSize sets the PageSize field's value.
  23914. func (s *ListCertificatesInput) SetPageSize(v int64) *ListCertificatesInput {
  23915. s.PageSize = &v
  23916. return s
  23917. }
  23918. // The output of the ListCertificates operation.
  23919. type ListCertificatesOutput struct {
  23920. _ struct{} `type:"structure"`
  23921. // The descriptions of the certificates.
  23922. Certificates []*Certificate `locationName:"certificates" type:"list"`
  23923. // The marker for the next set of results, or null if there are no additional
  23924. // results.
  23925. NextMarker *string `locationName:"nextMarker" type:"string"`
  23926. }
  23927. // String returns the string representation
  23928. func (s ListCertificatesOutput) String() string {
  23929. return awsutil.Prettify(s)
  23930. }
  23931. // GoString returns the string representation
  23932. func (s ListCertificatesOutput) GoString() string {
  23933. return s.String()
  23934. }
  23935. // SetCertificates sets the Certificates field's value.
  23936. func (s *ListCertificatesOutput) SetCertificates(v []*Certificate) *ListCertificatesOutput {
  23937. s.Certificates = v
  23938. return s
  23939. }
  23940. // SetNextMarker sets the NextMarker field's value.
  23941. func (s *ListCertificatesOutput) SetNextMarker(v string) *ListCertificatesOutput {
  23942. s.NextMarker = &v
  23943. return s
  23944. }
  23945. type ListIndicesInput struct {
  23946. _ struct{} `type:"structure"`
  23947. // The maximum number of results to return at one time.
  23948. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  23949. // The token used to get the next set of results, or null if there are no additional
  23950. // results.
  23951. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  23952. }
  23953. // String returns the string representation
  23954. func (s ListIndicesInput) String() string {
  23955. return awsutil.Prettify(s)
  23956. }
  23957. // GoString returns the string representation
  23958. func (s ListIndicesInput) GoString() string {
  23959. return s.String()
  23960. }
  23961. // Validate inspects the fields of the type to determine if they are valid.
  23962. func (s *ListIndicesInput) Validate() error {
  23963. invalidParams := request.ErrInvalidParams{Context: "ListIndicesInput"}
  23964. if s.MaxResults != nil && *s.MaxResults < 1 {
  23965. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  23966. }
  23967. if invalidParams.Len() > 0 {
  23968. return invalidParams
  23969. }
  23970. return nil
  23971. }
  23972. // SetMaxResults sets the MaxResults field's value.
  23973. func (s *ListIndicesInput) SetMaxResults(v int64) *ListIndicesInput {
  23974. s.MaxResults = &v
  23975. return s
  23976. }
  23977. // SetNextToken sets the NextToken field's value.
  23978. func (s *ListIndicesInput) SetNextToken(v string) *ListIndicesInput {
  23979. s.NextToken = &v
  23980. return s
  23981. }
  23982. type ListIndicesOutput struct {
  23983. _ struct{} `type:"structure"`
  23984. // The index names.
  23985. IndexNames []*string `locationName:"indexNames" type:"list"`
  23986. // The token used to get the next set of results, or null if there are no additional
  23987. // results.
  23988. NextToken *string `locationName:"nextToken" type:"string"`
  23989. }
  23990. // String returns the string representation
  23991. func (s ListIndicesOutput) String() string {
  23992. return awsutil.Prettify(s)
  23993. }
  23994. // GoString returns the string representation
  23995. func (s ListIndicesOutput) GoString() string {
  23996. return s.String()
  23997. }
  23998. // SetIndexNames sets the IndexNames field's value.
  23999. func (s *ListIndicesOutput) SetIndexNames(v []*string) *ListIndicesOutput {
  24000. s.IndexNames = v
  24001. return s
  24002. }
  24003. // SetNextToken sets the NextToken field's value.
  24004. func (s *ListIndicesOutput) SetNextToken(v string) *ListIndicesOutput {
  24005. s.NextToken = &v
  24006. return s
  24007. }
  24008. type ListJobExecutionsForJobInput struct {
  24009. _ struct{} `type:"structure"`
  24010. // The unique identifier you assigned to this job when it was created.
  24011. //
  24012. // JobId is a required field
  24013. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  24014. // The maximum number of results to be returned per request.
  24015. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24016. // The token to retrieve the next set of results.
  24017. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24018. // The status of the job.
  24019. Status *string `location:"querystring" locationName:"status" type:"string" enum:"JobExecutionStatus"`
  24020. }
  24021. // String returns the string representation
  24022. func (s ListJobExecutionsForJobInput) String() string {
  24023. return awsutil.Prettify(s)
  24024. }
  24025. // GoString returns the string representation
  24026. func (s ListJobExecutionsForJobInput) GoString() string {
  24027. return s.String()
  24028. }
  24029. // Validate inspects the fields of the type to determine if they are valid.
  24030. func (s *ListJobExecutionsForJobInput) Validate() error {
  24031. invalidParams := request.ErrInvalidParams{Context: "ListJobExecutionsForJobInput"}
  24032. if s.JobId == nil {
  24033. invalidParams.Add(request.NewErrParamRequired("JobId"))
  24034. }
  24035. if s.JobId != nil && len(*s.JobId) < 1 {
  24036. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  24037. }
  24038. if s.MaxResults != nil && *s.MaxResults < 1 {
  24039. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24040. }
  24041. if invalidParams.Len() > 0 {
  24042. return invalidParams
  24043. }
  24044. return nil
  24045. }
  24046. // SetJobId sets the JobId field's value.
  24047. func (s *ListJobExecutionsForJobInput) SetJobId(v string) *ListJobExecutionsForJobInput {
  24048. s.JobId = &v
  24049. return s
  24050. }
  24051. // SetMaxResults sets the MaxResults field's value.
  24052. func (s *ListJobExecutionsForJobInput) SetMaxResults(v int64) *ListJobExecutionsForJobInput {
  24053. s.MaxResults = &v
  24054. return s
  24055. }
  24056. // SetNextToken sets the NextToken field's value.
  24057. func (s *ListJobExecutionsForJobInput) SetNextToken(v string) *ListJobExecutionsForJobInput {
  24058. s.NextToken = &v
  24059. return s
  24060. }
  24061. // SetStatus sets the Status field's value.
  24062. func (s *ListJobExecutionsForJobInput) SetStatus(v string) *ListJobExecutionsForJobInput {
  24063. s.Status = &v
  24064. return s
  24065. }
  24066. type ListJobExecutionsForJobOutput struct {
  24067. _ struct{} `type:"structure"`
  24068. // A list of job execution summaries.
  24069. ExecutionSummaries []*JobExecutionSummaryForJob `locationName:"executionSummaries" type:"list"`
  24070. // The token for the next set of results, or null if there are no additional
  24071. // results.
  24072. NextToken *string `locationName:"nextToken" type:"string"`
  24073. }
  24074. // String returns the string representation
  24075. func (s ListJobExecutionsForJobOutput) String() string {
  24076. return awsutil.Prettify(s)
  24077. }
  24078. // GoString returns the string representation
  24079. func (s ListJobExecutionsForJobOutput) GoString() string {
  24080. return s.String()
  24081. }
  24082. // SetExecutionSummaries sets the ExecutionSummaries field's value.
  24083. func (s *ListJobExecutionsForJobOutput) SetExecutionSummaries(v []*JobExecutionSummaryForJob) *ListJobExecutionsForJobOutput {
  24084. s.ExecutionSummaries = v
  24085. return s
  24086. }
  24087. // SetNextToken sets the NextToken field's value.
  24088. func (s *ListJobExecutionsForJobOutput) SetNextToken(v string) *ListJobExecutionsForJobOutput {
  24089. s.NextToken = &v
  24090. return s
  24091. }
  24092. type ListJobExecutionsForThingInput struct {
  24093. _ struct{} `type:"structure"`
  24094. // The maximum number of results to be returned per request.
  24095. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24096. // The token to retrieve the next set of results.
  24097. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24098. // An optional filter that lets you search for jobs that have the specified
  24099. // status.
  24100. Status *string `location:"querystring" locationName:"status" type:"string" enum:"JobExecutionStatus"`
  24101. // The thing name.
  24102. //
  24103. // ThingName is a required field
  24104. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  24105. }
  24106. // String returns the string representation
  24107. func (s ListJobExecutionsForThingInput) String() string {
  24108. return awsutil.Prettify(s)
  24109. }
  24110. // GoString returns the string representation
  24111. func (s ListJobExecutionsForThingInput) GoString() string {
  24112. return s.String()
  24113. }
  24114. // Validate inspects the fields of the type to determine if they are valid.
  24115. func (s *ListJobExecutionsForThingInput) Validate() error {
  24116. invalidParams := request.ErrInvalidParams{Context: "ListJobExecutionsForThingInput"}
  24117. if s.MaxResults != nil && *s.MaxResults < 1 {
  24118. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24119. }
  24120. if s.ThingName == nil {
  24121. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  24122. }
  24123. if s.ThingName != nil && len(*s.ThingName) < 1 {
  24124. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  24125. }
  24126. if invalidParams.Len() > 0 {
  24127. return invalidParams
  24128. }
  24129. return nil
  24130. }
  24131. // SetMaxResults sets the MaxResults field's value.
  24132. func (s *ListJobExecutionsForThingInput) SetMaxResults(v int64) *ListJobExecutionsForThingInput {
  24133. s.MaxResults = &v
  24134. return s
  24135. }
  24136. // SetNextToken sets the NextToken field's value.
  24137. func (s *ListJobExecutionsForThingInput) SetNextToken(v string) *ListJobExecutionsForThingInput {
  24138. s.NextToken = &v
  24139. return s
  24140. }
  24141. // SetStatus sets the Status field's value.
  24142. func (s *ListJobExecutionsForThingInput) SetStatus(v string) *ListJobExecutionsForThingInput {
  24143. s.Status = &v
  24144. return s
  24145. }
  24146. // SetThingName sets the ThingName field's value.
  24147. func (s *ListJobExecutionsForThingInput) SetThingName(v string) *ListJobExecutionsForThingInput {
  24148. s.ThingName = &v
  24149. return s
  24150. }
  24151. type ListJobExecutionsForThingOutput struct {
  24152. _ struct{} `type:"structure"`
  24153. // A list of job execution summaries.
  24154. ExecutionSummaries []*JobExecutionSummaryForThing `locationName:"executionSummaries" type:"list"`
  24155. // The token for the next set of results, or null if there are no additional
  24156. // results.
  24157. NextToken *string `locationName:"nextToken" type:"string"`
  24158. }
  24159. // String returns the string representation
  24160. func (s ListJobExecutionsForThingOutput) String() string {
  24161. return awsutil.Prettify(s)
  24162. }
  24163. // GoString returns the string representation
  24164. func (s ListJobExecutionsForThingOutput) GoString() string {
  24165. return s.String()
  24166. }
  24167. // SetExecutionSummaries sets the ExecutionSummaries field's value.
  24168. func (s *ListJobExecutionsForThingOutput) SetExecutionSummaries(v []*JobExecutionSummaryForThing) *ListJobExecutionsForThingOutput {
  24169. s.ExecutionSummaries = v
  24170. return s
  24171. }
  24172. // SetNextToken sets the NextToken field's value.
  24173. func (s *ListJobExecutionsForThingOutput) SetNextToken(v string) *ListJobExecutionsForThingOutput {
  24174. s.NextToken = &v
  24175. return s
  24176. }
  24177. type ListJobsInput struct {
  24178. _ struct{} `type:"structure"`
  24179. // The maximum number of results to return per request.
  24180. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24181. // The token to retrieve the next set of results.
  24182. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24183. // An optional filter that lets you search for jobs that have the specified
  24184. // status.
  24185. Status *string `location:"querystring" locationName:"status" type:"string" enum:"JobStatus"`
  24186. // Specifies whether the job will continue to run (CONTINUOUS), or will be complete
  24187. // after all those things specified as targets have completed the job (SNAPSHOT).
  24188. // If continuous, the job may also be run on a thing when a change is detected
  24189. // in a target. For example, a job will run on a thing when the thing is added
  24190. // to a target group, even after the job was completed by all things originally
  24191. // in the group.
  24192. TargetSelection *string `location:"querystring" locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  24193. // A filter that limits the returned jobs to those for the specified group.
  24194. ThingGroupId *string `location:"querystring" locationName:"thingGroupId" min:"1" type:"string"`
  24195. // A filter that limits the returned jobs to those for the specified group.
  24196. ThingGroupName *string `location:"querystring" locationName:"thingGroupName" min:"1" type:"string"`
  24197. }
  24198. // String returns the string representation
  24199. func (s ListJobsInput) String() string {
  24200. return awsutil.Prettify(s)
  24201. }
  24202. // GoString returns the string representation
  24203. func (s ListJobsInput) GoString() string {
  24204. return s.String()
  24205. }
  24206. // Validate inspects the fields of the type to determine if they are valid.
  24207. func (s *ListJobsInput) Validate() error {
  24208. invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"}
  24209. if s.MaxResults != nil && *s.MaxResults < 1 {
  24210. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24211. }
  24212. if s.ThingGroupId != nil && len(*s.ThingGroupId) < 1 {
  24213. invalidParams.Add(request.NewErrParamMinLen("ThingGroupId", 1))
  24214. }
  24215. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  24216. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  24217. }
  24218. if invalidParams.Len() > 0 {
  24219. return invalidParams
  24220. }
  24221. return nil
  24222. }
  24223. // SetMaxResults sets the MaxResults field's value.
  24224. func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput {
  24225. s.MaxResults = &v
  24226. return s
  24227. }
  24228. // SetNextToken sets the NextToken field's value.
  24229. func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput {
  24230. s.NextToken = &v
  24231. return s
  24232. }
  24233. // SetStatus sets the Status field's value.
  24234. func (s *ListJobsInput) SetStatus(v string) *ListJobsInput {
  24235. s.Status = &v
  24236. return s
  24237. }
  24238. // SetTargetSelection sets the TargetSelection field's value.
  24239. func (s *ListJobsInput) SetTargetSelection(v string) *ListJobsInput {
  24240. s.TargetSelection = &v
  24241. return s
  24242. }
  24243. // SetThingGroupId sets the ThingGroupId field's value.
  24244. func (s *ListJobsInput) SetThingGroupId(v string) *ListJobsInput {
  24245. s.ThingGroupId = &v
  24246. return s
  24247. }
  24248. // SetThingGroupName sets the ThingGroupName field's value.
  24249. func (s *ListJobsInput) SetThingGroupName(v string) *ListJobsInput {
  24250. s.ThingGroupName = &v
  24251. return s
  24252. }
  24253. type ListJobsOutput struct {
  24254. _ struct{} `type:"structure"`
  24255. // A list of jobs.
  24256. Jobs []*JobSummary `locationName:"jobs" type:"list"`
  24257. // The token for the next set of results, or null if there are no additional
  24258. // results.
  24259. NextToken *string `locationName:"nextToken" type:"string"`
  24260. }
  24261. // String returns the string representation
  24262. func (s ListJobsOutput) String() string {
  24263. return awsutil.Prettify(s)
  24264. }
  24265. // GoString returns the string representation
  24266. func (s ListJobsOutput) GoString() string {
  24267. return s.String()
  24268. }
  24269. // SetJobs sets the Jobs field's value.
  24270. func (s *ListJobsOutput) SetJobs(v []*JobSummary) *ListJobsOutput {
  24271. s.Jobs = v
  24272. return s
  24273. }
  24274. // SetNextToken sets the NextToken field's value.
  24275. func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput {
  24276. s.NextToken = &v
  24277. return s
  24278. }
  24279. type ListOTAUpdatesInput struct {
  24280. _ struct{} `type:"structure"`
  24281. // The maximum number of results to return at one time.
  24282. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24283. // A token used to retrieve the next set of results.
  24284. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24285. // The OTA update job status.
  24286. OtaUpdateStatus *string `location:"querystring" locationName:"otaUpdateStatus" type:"string" enum:"OTAUpdateStatus"`
  24287. }
  24288. // String returns the string representation
  24289. func (s ListOTAUpdatesInput) String() string {
  24290. return awsutil.Prettify(s)
  24291. }
  24292. // GoString returns the string representation
  24293. func (s ListOTAUpdatesInput) GoString() string {
  24294. return s.String()
  24295. }
  24296. // Validate inspects the fields of the type to determine if they are valid.
  24297. func (s *ListOTAUpdatesInput) Validate() error {
  24298. invalidParams := request.ErrInvalidParams{Context: "ListOTAUpdatesInput"}
  24299. if s.MaxResults != nil && *s.MaxResults < 1 {
  24300. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24301. }
  24302. if invalidParams.Len() > 0 {
  24303. return invalidParams
  24304. }
  24305. return nil
  24306. }
  24307. // SetMaxResults sets the MaxResults field's value.
  24308. func (s *ListOTAUpdatesInput) SetMaxResults(v int64) *ListOTAUpdatesInput {
  24309. s.MaxResults = &v
  24310. return s
  24311. }
  24312. // SetNextToken sets the NextToken field's value.
  24313. func (s *ListOTAUpdatesInput) SetNextToken(v string) *ListOTAUpdatesInput {
  24314. s.NextToken = &v
  24315. return s
  24316. }
  24317. // SetOtaUpdateStatus sets the OtaUpdateStatus field's value.
  24318. func (s *ListOTAUpdatesInput) SetOtaUpdateStatus(v string) *ListOTAUpdatesInput {
  24319. s.OtaUpdateStatus = &v
  24320. return s
  24321. }
  24322. type ListOTAUpdatesOutput struct {
  24323. _ struct{} `type:"structure"`
  24324. // A token to use to get the next set of results.
  24325. NextToken *string `locationName:"nextToken" type:"string"`
  24326. // A list of OTA update jobs.
  24327. OtaUpdates []*OTAUpdateSummary `locationName:"otaUpdates" type:"list"`
  24328. }
  24329. // String returns the string representation
  24330. func (s ListOTAUpdatesOutput) String() string {
  24331. return awsutil.Prettify(s)
  24332. }
  24333. // GoString returns the string representation
  24334. func (s ListOTAUpdatesOutput) GoString() string {
  24335. return s.String()
  24336. }
  24337. // SetNextToken sets the NextToken field's value.
  24338. func (s *ListOTAUpdatesOutput) SetNextToken(v string) *ListOTAUpdatesOutput {
  24339. s.NextToken = &v
  24340. return s
  24341. }
  24342. // SetOtaUpdates sets the OtaUpdates field's value.
  24343. func (s *ListOTAUpdatesOutput) SetOtaUpdates(v []*OTAUpdateSummary) *ListOTAUpdatesOutput {
  24344. s.OtaUpdates = v
  24345. return s
  24346. }
  24347. // The input to the ListOutgoingCertificates operation.
  24348. type ListOutgoingCertificatesInput struct {
  24349. _ struct{} `type:"structure"`
  24350. // Specifies the order for results. If True, the results are returned in ascending
  24351. // order, based on the creation date.
  24352. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  24353. // The marker for the next set of results.
  24354. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  24355. // The result page size.
  24356. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  24357. }
  24358. // String returns the string representation
  24359. func (s ListOutgoingCertificatesInput) String() string {
  24360. return awsutil.Prettify(s)
  24361. }
  24362. // GoString returns the string representation
  24363. func (s ListOutgoingCertificatesInput) GoString() string {
  24364. return s.String()
  24365. }
  24366. // Validate inspects the fields of the type to determine if they are valid.
  24367. func (s *ListOutgoingCertificatesInput) Validate() error {
  24368. invalidParams := request.ErrInvalidParams{Context: "ListOutgoingCertificatesInput"}
  24369. if s.PageSize != nil && *s.PageSize < 1 {
  24370. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  24371. }
  24372. if invalidParams.Len() > 0 {
  24373. return invalidParams
  24374. }
  24375. return nil
  24376. }
  24377. // SetAscendingOrder sets the AscendingOrder field's value.
  24378. func (s *ListOutgoingCertificatesInput) SetAscendingOrder(v bool) *ListOutgoingCertificatesInput {
  24379. s.AscendingOrder = &v
  24380. return s
  24381. }
  24382. // SetMarker sets the Marker field's value.
  24383. func (s *ListOutgoingCertificatesInput) SetMarker(v string) *ListOutgoingCertificatesInput {
  24384. s.Marker = &v
  24385. return s
  24386. }
  24387. // SetPageSize sets the PageSize field's value.
  24388. func (s *ListOutgoingCertificatesInput) SetPageSize(v int64) *ListOutgoingCertificatesInput {
  24389. s.PageSize = &v
  24390. return s
  24391. }
  24392. // The output from the ListOutgoingCertificates operation.
  24393. type ListOutgoingCertificatesOutput struct {
  24394. _ struct{} `type:"structure"`
  24395. // The marker for the next set of results.
  24396. NextMarker *string `locationName:"nextMarker" type:"string"`
  24397. // The certificates that are being transferred but not yet accepted.
  24398. OutgoingCertificates []*OutgoingCertificate `locationName:"outgoingCertificates" type:"list"`
  24399. }
  24400. // String returns the string representation
  24401. func (s ListOutgoingCertificatesOutput) String() string {
  24402. return awsutil.Prettify(s)
  24403. }
  24404. // GoString returns the string representation
  24405. func (s ListOutgoingCertificatesOutput) GoString() string {
  24406. return s.String()
  24407. }
  24408. // SetNextMarker sets the NextMarker field's value.
  24409. func (s *ListOutgoingCertificatesOutput) SetNextMarker(v string) *ListOutgoingCertificatesOutput {
  24410. s.NextMarker = &v
  24411. return s
  24412. }
  24413. // SetOutgoingCertificates sets the OutgoingCertificates field's value.
  24414. func (s *ListOutgoingCertificatesOutput) SetOutgoingCertificates(v []*OutgoingCertificate) *ListOutgoingCertificatesOutput {
  24415. s.OutgoingCertificates = v
  24416. return s
  24417. }
  24418. // The input for the ListPolicies operation.
  24419. type ListPoliciesInput struct {
  24420. _ struct{} `type:"structure"`
  24421. // Specifies the order for results. If true, the results are returned in ascending
  24422. // creation order.
  24423. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  24424. // The marker for the next set of results.
  24425. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  24426. // The result page size.
  24427. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  24428. }
  24429. // String returns the string representation
  24430. func (s ListPoliciesInput) String() string {
  24431. return awsutil.Prettify(s)
  24432. }
  24433. // GoString returns the string representation
  24434. func (s ListPoliciesInput) GoString() string {
  24435. return s.String()
  24436. }
  24437. // Validate inspects the fields of the type to determine if they are valid.
  24438. func (s *ListPoliciesInput) Validate() error {
  24439. invalidParams := request.ErrInvalidParams{Context: "ListPoliciesInput"}
  24440. if s.PageSize != nil && *s.PageSize < 1 {
  24441. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  24442. }
  24443. if invalidParams.Len() > 0 {
  24444. return invalidParams
  24445. }
  24446. return nil
  24447. }
  24448. // SetAscendingOrder sets the AscendingOrder field's value.
  24449. func (s *ListPoliciesInput) SetAscendingOrder(v bool) *ListPoliciesInput {
  24450. s.AscendingOrder = &v
  24451. return s
  24452. }
  24453. // SetMarker sets the Marker field's value.
  24454. func (s *ListPoliciesInput) SetMarker(v string) *ListPoliciesInput {
  24455. s.Marker = &v
  24456. return s
  24457. }
  24458. // SetPageSize sets the PageSize field's value.
  24459. func (s *ListPoliciesInput) SetPageSize(v int64) *ListPoliciesInput {
  24460. s.PageSize = &v
  24461. return s
  24462. }
  24463. // The output from the ListPolicies operation.
  24464. type ListPoliciesOutput struct {
  24465. _ struct{} `type:"structure"`
  24466. // The marker for the next set of results, or null if there are no additional
  24467. // results.
  24468. NextMarker *string `locationName:"nextMarker" type:"string"`
  24469. // The descriptions of the policies.
  24470. Policies []*Policy `locationName:"policies" type:"list"`
  24471. }
  24472. // String returns the string representation
  24473. func (s ListPoliciesOutput) String() string {
  24474. return awsutil.Prettify(s)
  24475. }
  24476. // GoString returns the string representation
  24477. func (s ListPoliciesOutput) GoString() string {
  24478. return s.String()
  24479. }
  24480. // SetNextMarker sets the NextMarker field's value.
  24481. func (s *ListPoliciesOutput) SetNextMarker(v string) *ListPoliciesOutput {
  24482. s.NextMarker = &v
  24483. return s
  24484. }
  24485. // SetPolicies sets the Policies field's value.
  24486. func (s *ListPoliciesOutput) SetPolicies(v []*Policy) *ListPoliciesOutput {
  24487. s.Policies = v
  24488. return s
  24489. }
  24490. // The input for the ListPolicyPrincipals operation.
  24491. type ListPolicyPrincipalsInput struct {
  24492. _ struct{} `type:"structure"`
  24493. // Specifies the order for results. If true, the results are returned in ascending
  24494. // creation order.
  24495. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  24496. // The marker for the next set of results.
  24497. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  24498. // The result page size.
  24499. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  24500. // The policy name.
  24501. //
  24502. // PolicyName is a required field
  24503. PolicyName *string `location:"header" locationName:"x-amzn-iot-policy" min:"1" type:"string" required:"true"`
  24504. }
  24505. // String returns the string representation
  24506. func (s ListPolicyPrincipalsInput) String() string {
  24507. return awsutil.Prettify(s)
  24508. }
  24509. // GoString returns the string representation
  24510. func (s ListPolicyPrincipalsInput) GoString() string {
  24511. return s.String()
  24512. }
  24513. // Validate inspects the fields of the type to determine if they are valid.
  24514. func (s *ListPolicyPrincipalsInput) Validate() error {
  24515. invalidParams := request.ErrInvalidParams{Context: "ListPolicyPrincipalsInput"}
  24516. if s.PageSize != nil && *s.PageSize < 1 {
  24517. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  24518. }
  24519. if s.PolicyName == nil {
  24520. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  24521. }
  24522. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  24523. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  24524. }
  24525. if invalidParams.Len() > 0 {
  24526. return invalidParams
  24527. }
  24528. return nil
  24529. }
  24530. // SetAscendingOrder sets the AscendingOrder field's value.
  24531. func (s *ListPolicyPrincipalsInput) SetAscendingOrder(v bool) *ListPolicyPrincipalsInput {
  24532. s.AscendingOrder = &v
  24533. return s
  24534. }
  24535. // SetMarker sets the Marker field's value.
  24536. func (s *ListPolicyPrincipalsInput) SetMarker(v string) *ListPolicyPrincipalsInput {
  24537. s.Marker = &v
  24538. return s
  24539. }
  24540. // SetPageSize sets the PageSize field's value.
  24541. func (s *ListPolicyPrincipalsInput) SetPageSize(v int64) *ListPolicyPrincipalsInput {
  24542. s.PageSize = &v
  24543. return s
  24544. }
  24545. // SetPolicyName sets the PolicyName field's value.
  24546. func (s *ListPolicyPrincipalsInput) SetPolicyName(v string) *ListPolicyPrincipalsInput {
  24547. s.PolicyName = &v
  24548. return s
  24549. }
  24550. // The output from the ListPolicyPrincipals operation.
  24551. type ListPolicyPrincipalsOutput struct {
  24552. _ struct{} `type:"structure"`
  24553. // The marker for the next set of results, or null if there are no additional
  24554. // results.
  24555. NextMarker *string `locationName:"nextMarker" type:"string"`
  24556. // The descriptions of the principals.
  24557. Principals []*string `locationName:"principals" type:"list"`
  24558. }
  24559. // String returns the string representation
  24560. func (s ListPolicyPrincipalsOutput) String() string {
  24561. return awsutil.Prettify(s)
  24562. }
  24563. // GoString returns the string representation
  24564. func (s ListPolicyPrincipalsOutput) GoString() string {
  24565. return s.String()
  24566. }
  24567. // SetNextMarker sets the NextMarker field's value.
  24568. func (s *ListPolicyPrincipalsOutput) SetNextMarker(v string) *ListPolicyPrincipalsOutput {
  24569. s.NextMarker = &v
  24570. return s
  24571. }
  24572. // SetPrincipals sets the Principals field's value.
  24573. func (s *ListPolicyPrincipalsOutput) SetPrincipals(v []*string) *ListPolicyPrincipalsOutput {
  24574. s.Principals = v
  24575. return s
  24576. }
  24577. // The input for the ListPolicyVersions operation.
  24578. type ListPolicyVersionsInput struct {
  24579. _ struct{} `type:"structure"`
  24580. // The policy name.
  24581. //
  24582. // PolicyName is a required field
  24583. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  24584. }
  24585. // String returns the string representation
  24586. func (s ListPolicyVersionsInput) String() string {
  24587. return awsutil.Prettify(s)
  24588. }
  24589. // GoString returns the string representation
  24590. func (s ListPolicyVersionsInput) GoString() string {
  24591. return s.String()
  24592. }
  24593. // Validate inspects the fields of the type to determine if they are valid.
  24594. func (s *ListPolicyVersionsInput) Validate() error {
  24595. invalidParams := request.ErrInvalidParams{Context: "ListPolicyVersionsInput"}
  24596. if s.PolicyName == nil {
  24597. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  24598. }
  24599. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  24600. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  24601. }
  24602. if invalidParams.Len() > 0 {
  24603. return invalidParams
  24604. }
  24605. return nil
  24606. }
  24607. // SetPolicyName sets the PolicyName field's value.
  24608. func (s *ListPolicyVersionsInput) SetPolicyName(v string) *ListPolicyVersionsInput {
  24609. s.PolicyName = &v
  24610. return s
  24611. }
  24612. // The output from the ListPolicyVersions operation.
  24613. type ListPolicyVersionsOutput struct {
  24614. _ struct{} `type:"structure"`
  24615. // The policy versions.
  24616. PolicyVersions []*PolicyVersion `locationName:"policyVersions" type:"list"`
  24617. }
  24618. // String returns the string representation
  24619. func (s ListPolicyVersionsOutput) String() string {
  24620. return awsutil.Prettify(s)
  24621. }
  24622. // GoString returns the string representation
  24623. func (s ListPolicyVersionsOutput) GoString() string {
  24624. return s.String()
  24625. }
  24626. // SetPolicyVersions sets the PolicyVersions field's value.
  24627. func (s *ListPolicyVersionsOutput) SetPolicyVersions(v []*PolicyVersion) *ListPolicyVersionsOutput {
  24628. s.PolicyVersions = v
  24629. return s
  24630. }
  24631. // The input for the ListPrincipalPolicies operation.
  24632. type ListPrincipalPoliciesInput struct {
  24633. _ struct{} `type:"structure"`
  24634. // Specifies the order for results. If true, results are returned in ascending
  24635. // creation order.
  24636. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  24637. // The marker for the next set of results.
  24638. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  24639. // The result page size.
  24640. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  24641. // The principal.
  24642. //
  24643. // Principal is a required field
  24644. Principal *string `location:"header" locationName:"x-amzn-iot-principal" type:"string" required:"true"`
  24645. }
  24646. // String returns the string representation
  24647. func (s ListPrincipalPoliciesInput) String() string {
  24648. return awsutil.Prettify(s)
  24649. }
  24650. // GoString returns the string representation
  24651. func (s ListPrincipalPoliciesInput) GoString() string {
  24652. return s.String()
  24653. }
  24654. // Validate inspects the fields of the type to determine if they are valid.
  24655. func (s *ListPrincipalPoliciesInput) Validate() error {
  24656. invalidParams := request.ErrInvalidParams{Context: "ListPrincipalPoliciesInput"}
  24657. if s.PageSize != nil && *s.PageSize < 1 {
  24658. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  24659. }
  24660. if s.Principal == nil {
  24661. invalidParams.Add(request.NewErrParamRequired("Principal"))
  24662. }
  24663. if invalidParams.Len() > 0 {
  24664. return invalidParams
  24665. }
  24666. return nil
  24667. }
  24668. // SetAscendingOrder sets the AscendingOrder field's value.
  24669. func (s *ListPrincipalPoliciesInput) SetAscendingOrder(v bool) *ListPrincipalPoliciesInput {
  24670. s.AscendingOrder = &v
  24671. return s
  24672. }
  24673. // SetMarker sets the Marker field's value.
  24674. func (s *ListPrincipalPoliciesInput) SetMarker(v string) *ListPrincipalPoliciesInput {
  24675. s.Marker = &v
  24676. return s
  24677. }
  24678. // SetPageSize sets the PageSize field's value.
  24679. func (s *ListPrincipalPoliciesInput) SetPageSize(v int64) *ListPrincipalPoliciesInput {
  24680. s.PageSize = &v
  24681. return s
  24682. }
  24683. // SetPrincipal sets the Principal field's value.
  24684. func (s *ListPrincipalPoliciesInput) SetPrincipal(v string) *ListPrincipalPoliciesInput {
  24685. s.Principal = &v
  24686. return s
  24687. }
  24688. // The output from the ListPrincipalPolicies operation.
  24689. type ListPrincipalPoliciesOutput struct {
  24690. _ struct{} `type:"structure"`
  24691. // The marker for the next set of results, or null if there are no additional
  24692. // results.
  24693. NextMarker *string `locationName:"nextMarker" type:"string"`
  24694. // The policies.
  24695. Policies []*Policy `locationName:"policies" type:"list"`
  24696. }
  24697. // String returns the string representation
  24698. func (s ListPrincipalPoliciesOutput) String() string {
  24699. return awsutil.Prettify(s)
  24700. }
  24701. // GoString returns the string representation
  24702. func (s ListPrincipalPoliciesOutput) GoString() string {
  24703. return s.String()
  24704. }
  24705. // SetNextMarker sets the NextMarker field's value.
  24706. func (s *ListPrincipalPoliciesOutput) SetNextMarker(v string) *ListPrincipalPoliciesOutput {
  24707. s.NextMarker = &v
  24708. return s
  24709. }
  24710. // SetPolicies sets the Policies field's value.
  24711. func (s *ListPrincipalPoliciesOutput) SetPolicies(v []*Policy) *ListPrincipalPoliciesOutput {
  24712. s.Policies = v
  24713. return s
  24714. }
  24715. // The input for the ListPrincipalThings operation.
  24716. type ListPrincipalThingsInput struct {
  24717. _ struct{} `type:"structure"`
  24718. // The maximum number of results to return in this operation.
  24719. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24720. // The token to retrieve the next set of results.
  24721. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24722. // The principal.
  24723. //
  24724. // Principal is a required field
  24725. Principal *string `location:"header" locationName:"x-amzn-principal" type:"string" required:"true"`
  24726. }
  24727. // String returns the string representation
  24728. func (s ListPrincipalThingsInput) String() string {
  24729. return awsutil.Prettify(s)
  24730. }
  24731. // GoString returns the string representation
  24732. func (s ListPrincipalThingsInput) GoString() string {
  24733. return s.String()
  24734. }
  24735. // Validate inspects the fields of the type to determine if they are valid.
  24736. func (s *ListPrincipalThingsInput) Validate() error {
  24737. invalidParams := request.ErrInvalidParams{Context: "ListPrincipalThingsInput"}
  24738. if s.MaxResults != nil && *s.MaxResults < 1 {
  24739. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24740. }
  24741. if s.Principal == nil {
  24742. invalidParams.Add(request.NewErrParamRequired("Principal"))
  24743. }
  24744. if invalidParams.Len() > 0 {
  24745. return invalidParams
  24746. }
  24747. return nil
  24748. }
  24749. // SetMaxResults sets the MaxResults field's value.
  24750. func (s *ListPrincipalThingsInput) SetMaxResults(v int64) *ListPrincipalThingsInput {
  24751. s.MaxResults = &v
  24752. return s
  24753. }
  24754. // SetNextToken sets the NextToken field's value.
  24755. func (s *ListPrincipalThingsInput) SetNextToken(v string) *ListPrincipalThingsInput {
  24756. s.NextToken = &v
  24757. return s
  24758. }
  24759. // SetPrincipal sets the Principal field's value.
  24760. func (s *ListPrincipalThingsInput) SetPrincipal(v string) *ListPrincipalThingsInput {
  24761. s.Principal = &v
  24762. return s
  24763. }
  24764. // The output from the ListPrincipalThings operation.
  24765. type ListPrincipalThingsOutput struct {
  24766. _ struct{} `type:"structure"`
  24767. // The token used to get the next set of results, or null if there are no additional
  24768. // results.
  24769. NextToken *string `locationName:"nextToken" type:"string"`
  24770. // The things.
  24771. Things []*string `locationName:"things" type:"list"`
  24772. }
  24773. // String returns the string representation
  24774. func (s ListPrincipalThingsOutput) String() string {
  24775. return awsutil.Prettify(s)
  24776. }
  24777. // GoString returns the string representation
  24778. func (s ListPrincipalThingsOutput) GoString() string {
  24779. return s.String()
  24780. }
  24781. // SetNextToken sets the NextToken field's value.
  24782. func (s *ListPrincipalThingsOutput) SetNextToken(v string) *ListPrincipalThingsOutput {
  24783. s.NextToken = &v
  24784. return s
  24785. }
  24786. // SetThings sets the Things field's value.
  24787. func (s *ListPrincipalThingsOutput) SetThings(v []*string) *ListPrincipalThingsOutput {
  24788. s.Things = v
  24789. return s
  24790. }
  24791. type ListRoleAliasesInput struct {
  24792. _ struct{} `type:"structure"`
  24793. // Return the list of role aliases in ascending alphabetical order.
  24794. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  24795. // A marker used to get the next set of results.
  24796. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  24797. // The maximum number of results to return at one time.
  24798. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  24799. }
  24800. // String returns the string representation
  24801. func (s ListRoleAliasesInput) String() string {
  24802. return awsutil.Prettify(s)
  24803. }
  24804. // GoString returns the string representation
  24805. func (s ListRoleAliasesInput) GoString() string {
  24806. return s.String()
  24807. }
  24808. // Validate inspects the fields of the type to determine if they are valid.
  24809. func (s *ListRoleAliasesInput) Validate() error {
  24810. invalidParams := request.ErrInvalidParams{Context: "ListRoleAliasesInput"}
  24811. if s.PageSize != nil && *s.PageSize < 1 {
  24812. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  24813. }
  24814. if invalidParams.Len() > 0 {
  24815. return invalidParams
  24816. }
  24817. return nil
  24818. }
  24819. // SetAscendingOrder sets the AscendingOrder field's value.
  24820. func (s *ListRoleAliasesInput) SetAscendingOrder(v bool) *ListRoleAliasesInput {
  24821. s.AscendingOrder = &v
  24822. return s
  24823. }
  24824. // SetMarker sets the Marker field's value.
  24825. func (s *ListRoleAliasesInput) SetMarker(v string) *ListRoleAliasesInput {
  24826. s.Marker = &v
  24827. return s
  24828. }
  24829. // SetPageSize sets the PageSize field's value.
  24830. func (s *ListRoleAliasesInput) SetPageSize(v int64) *ListRoleAliasesInput {
  24831. s.PageSize = &v
  24832. return s
  24833. }
  24834. type ListRoleAliasesOutput struct {
  24835. _ struct{} `type:"structure"`
  24836. // A marker used to get the next set of results.
  24837. NextMarker *string `locationName:"nextMarker" type:"string"`
  24838. // The role aliases.
  24839. RoleAliases []*string `locationName:"roleAliases" type:"list"`
  24840. }
  24841. // String returns the string representation
  24842. func (s ListRoleAliasesOutput) String() string {
  24843. return awsutil.Prettify(s)
  24844. }
  24845. // GoString returns the string representation
  24846. func (s ListRoleAliasesOutput) GoString() string {
  24847. return s.String()
  24848. }
  24849. // SetNextMarker sets the NextMarker field's value.
  24850. func (s *ListRoleAliasesOutput) SetNextMarker(v string) *ListRoleAliasesOutput {
  24851. s.NextMarker = &v
  24852. return s
  24853. }
  24854. // SetRoleAliases sets the RoleAliases field's value.
  24855. func (s *ListRoleAliasesOutput) SetRoleAliases(v []*string) *ListRoleAliasesOutput {
  24856. s.RoleAliases = v
  24857. return s
  24858. }
  24859. type ListScheduledAuditsInput struct {
  24860. _ struct{} `type:"structure"`
  24861. // The maximum number of results to return at one time. The default is 25.
  24862. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24863. // The token for the next set of results.
  24864. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24865. }
  24866. // String returns the string representation
  24867. func (s ListScheduledAuditsInput) String() string {
  24868. return awsutil.Prettify(s)
  24869. }
  24870. // GoString returns the string representation
  24871. func (s ListScheduledAuditsInput) GoString() string {
  24872. return s.String()
  24873. }
  24874. // Validate inspects the fields of the type to determine if they are valid.
  24875. func (s *ListScheduledAuditsInput) Validate() error {
  24876. invalidParams := request.ErrInvalidParams{Context: "ListScheduledAuditsInput"}
  24877. if s.MaxResults != nil && *s.MaxResults < 1 {
  24878. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24879. }
  24880. if invalidParams.Len() > 0 {
  24881. return invalidParams
  24882. }
  24883. return nil
  24884. }
  24885. // SetMaxResults sets the MaxResults field's value.
  24886. func (s *ListScheduledAuditsInput) SetMaxResults(v int64) *ListScheduledAuditsInput {
  24887. s.MaxResults = &v
  24888. return s
  24889. }
  24890. // SetNextToken sets the NextToken field's value.
  24891. func (s *ListScheduledAuditsInput) SetNextToken(v string) *ListScheduledAuditsInput {
  24892. s.NextToken = &v
  24893. return s
  24894. }
  24895. type ListScheduledAuditsOutput struct {
  24896. _ struct{} `type:"structure"`
  24897. // A token that can be used to retrieve the next set of results, or null if
  24898. // there are no additional results.
  24899. NextToken *string `locationName:"nextToken" type:"string"`
  24900. // The list of scheduled audits.
  24901. ScheduledAudits []*ScheduledAuditMetadata `locationName:"scheduledAudits" type:"list"`
  24902. }
  24903. // String returns the string representation
  24904. func (s ListScheduledAuditsOutput) String() string {
  24905. return awsutil.Prettify(s)
  24906. }
  24907. // GoString returns the string representation
  24908. func (s ListScheduledAuditsOutput) GoString() string {
  24909. return s.String()
  24910. }
  24911. // SetNextToken sets the NextToken field's value.
  24912. func (s *ListScheduledAuditsOutput) SetNextToken(v string) *ListScheduledAuditsOutput {
  24913. s.NextToken = &v
  24914. return s
  24915. }
  24916. // SetScheduledAudits sets the ScheduledAudits field's value.
  24917. func (s *ListScheduledAuditsOutput) SetScheduledAudits(v []*ScheduledAuditMetadata) *ListScheduledAuditsOutput {
  24918. s.ScheduledAudits = v
  24919. return s
  24920. }
  24921. type ListSecurityProfilesForTargetInput struct {
  24922. _ struct{} `type:"structure"`
  24923. // The maximum number of results to return at one time.
  24924. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  24925. // The token for the next set of results.
  24926. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  24927. // If true, return child groups as well.
  24928. Recursive *bool `location:"querystring" locationName:"recursive" type:"boolean"`
  24929. // The ARN of the target (thing group) whose attached security profiles you
  24930. // want to get.
  24931. //
  24932. // SecurityProfileTargetArn is a required field
  24933. SecurityProfileTargetArn *string `location:"querystring" locationName:"securityProfileTargetArn" type:"string" required:"true"`
  24934. }
  24935. // String returns the string representation
  24936. func (s ListSecurityProfilesForTargetInput) String() string {
  24937. return awsutil.Prettify(s)
  24938. }
  24939. // GoString returns the string representation
  24940. func (s ListSecurityProfilesForTargetInput) GoString() string {
  24941. return s.String()
  24942. }
  24943. // Validate inspects the fields of the type to determine if they are valid.
  24944. func (s *ListSecurityProfilesForTargetInput) Validate() error {
  24945. invalidParams := request.ErrInvalidParams{Context: "ListSecurityProfilesForTargetInput"}
  24946. if s.MaxResults != nil && *s.MaxResults < 1 {
  24947. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  24948. }
  24949. if s.SecurityProfileTargetArn == nil {
  24950. invalidParams.Add(request.NewErrParamRequired("SecurityProfileTargetArn"))
  24951. }
  24952. if invalidParams.Len() > 0 {
  24953. return invalidParams
  24954. }
  24955. return nil
  24956. }
  24957. // SetMaxResults sets the MaxResults field's value.
  24958. func (s *ListSecurityProfilesForTargetInput) SetMaxResults(v int64) *ListSecurityProfilesForTargetInput {
  24959. s.MaxResults = &v
  24960. return s
  24961. }
  24962. // SetNextToken sets the NextToken field's value.
  24963. func (s *ListSecurityProfilesForTargetInput) SetNextToken(v string) *ListSecurityProfilesForTargetInput {
  24964. s.NextToken = &v
  24965. return s
  24966. }
  24967. // SetRecursive sets the Recursive field's value.
  24968. func (s *ListSecurityProfilesForTargetInput) SetRecursive(v bool) *ListSecurityProfilesForTargetInput {
  24969. s.Recursive = &v
  24970. return s
  24971. }
  24972. // SetSecurityProfileTargetArn sets the SecurityProfileTargetArn field's value.
  24973. func (s *ListSecurityProfilesForTargetInput) SetSecurityProfileTargetArn(v string) *ListSecurityProfilesForTargetInput {
  24974. s.SecurityProfileTargetArn = &v
  24975. return s
  24976. }
  24977. type ListSecurityProfilesForTargetOutput struct {
  24978. _ struct{} `type:"structure"`
  24979. // A token that can be used to retrieve the next set of results, or null if
  24980. // there are no additional results.
  24981. NextToken *string `locationName:"nextToken" type:"string"`
  24982. // A list of security profiles and their associated targets.
  24983. SecurityProfileTargetMappings []*SecurityProfileTargetMapping `locationName:"securityProfileTargetMappings" type:"list"`
  24984. }
  24985. // String returns the string representation
  24986. func (s ListSecurityProfilesForTargetOutput) String() string {
  24987. return awsutil.Prettify(s)
  24988. }
  24989. // GoString returns the string representation
  24990. func (s ListSecurityProfilesForTargetOutput) GoString() string {
  24991. return s.String()
  24992. }
  24993. // SetNextToken sets the NextToken field's value.
  24994. func (s *ListSecurityProfilesForTargetOutput) SetNextToken(v string) *ListSecurityProfilesForTargetOutput {
  24995. s.NextToken = &v
  24996. return s
  24997. }
  24998. // SetSecurityProfileTargetMappings sets the SecurityProfileTargetMappings field's value.
  24999. func (s *ListSecurityProfilesForTargetOutput) SetSecurityProfileTargetMappings(v []*SecurityProfileTargetMapping) *ListSecurityProfilesForTargetOutput {
  25000. s.SecurityProfileTargetMappings = v
  25001. return s
  25002. }
  25003. type ListSecurityProfilesInput struct {
  25004. _ struct{} `type:"structure"`
  25005. // The maximum number of results to return at one time.
  25006. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25007. // The token for the next set of results.
  25008. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25009. }
  25010. // String returns the string representation
  25011. func (s ListSecurityProfilesInput) String() string {
  25012. return awsutil.Prettify(s)
  25013. }
  25014. // GoString returns the string representation
  25015. func (s ListSecurityProfilesInput) GoString() string {
  25016. return s.String()
  25017. }
  25018. // Validate inspects the fields of the type to determine if they are valid.
  25019. func (s *ListSecurityProfilesInput) Validate() error {
  25020. invalidParams := request.ErrInvalidParams{Context: "ListSecurityProfilesInput"}
  25021. if s.MaxResults != nil && *s.MaxResults < 1 {
  25022. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25023. }
  25024. if invalidParams.Len() > 0 {
  25025. return invalidParams
  25026. }
  25027. return nil
  25028. }
  25029. // SetMaxResults sets the MaxResults field's value.
  25030. func (s *ListSecurityProfilesInput) SetMaxResults(v int64) *ListSecurityProfilesInput {
  25031. s.MaxResults = &v
  25032. return s
  25033. }
  25034. // SetNextToken sets the NextToken field's value.
  25035. func (s *ListSecurityProfilesInput) SetNextToken(v string) *ListSecurityProfilesInput {
  25036. s.NextToken = &v
  25037. return s
  25038. }
  25039. type ListSecurityProfilesOutput struct {
  25040. _ struct{} `type:"structure"`
  25041. // A token that can be used to retrieve the next set of results, or null if
  25042. // there are no additional results.
  25043. NextToken *string `locationName:"nextToken" type:"string"`
  25044. // A list of security profile identifiers (names and ARNs).
  25045. SecurityProfileIdentifiers []*SecurityProfileIdentifier `locationName:"securityProfileIdentifiers" type:"list"`
  25046. }
  25047. // String returns the string representation
  25048. func (s ListSecurityProfilesOutput) String() string {
  25049. return awsutil.Prettify(s)
  25050. }
  25051. // GoString returns the string representation
  25052. func (s ListSecurityProfilesOutput) GoString() string {
  25053. return s.String()
  25054. }
  25055. // SetNextToken sets the NextToken field's value.
  25056. func (s *ListSecurityProfilesOutput) SetNextToken(v string) *ListSecurityProfilesOutput {
  25057. s.NextToken = &v
  25058. return s
  25059. }
  25060. // SetSecurityProfileIdentifiers sets the SecurityProfileIdentifiers field's value.
  25061. func (s *ListSecurityProfilesOutput) SetSecurityProfileIdentifiers(v []*SecurityProfileIdentifier) *ListSecurityProfilesOutput {
  25062. s.SecurityProfileIdentifiers = v
  25063. return s
  25064. }
  25065. type ListStreamsInput struct {
  25066. _ struct{} `type:"structure"`
  25067. // Set to true to return the list of streams in ascending order.
  25068. AscendingOrder *bool `location:"querystring" locationName:"isAscendingOrder" type:"boolean"`
  25069. // The maximum number of results to return at a time.
  25070. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25071. // A token used to get the next set of results.
  25072. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25073. }
  25074. // String returns the string representation
  25075. func (s ListStreamsInput) String() string {
  25076. return awsutil.Prettify(s)
  25077. }
  25078. // GoString returns the string representation
  25079. func (s ListStreamsInput) GoString() string {
  25080. return s.String()
  25081. }
  25082. // Validate inspects the fields of the type to determine if they are valid.
  25083. func (s *ListStreamsInput) Validate() error {
  25084. invalidParams := request.ErrInvalidParams{Context: "ListStreamsInput"}
  25085. if s.MaxResults != nil && *s.MaxResults < 1 {
  25086. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25087. }
  25088. if invalidParams.Len() > 0 {
  25089. return invalidParams
  25090. }
  25091. return nil
  25092. }
  25093. // SetAscendingOrder sets the AscendingOrder field's value.
  25094. func (s *ListStreamsInput) SetAscendingOrder(v bool) *ListStreamsInput {
  25095. s.AscendingOrder = &v
  25096. return s
  25097. }
  25098. // SetMaxResults sets the MaxResults field's value.
  25099. func (s *ListStreamsInput) SetMaxResults(v int64) *ListStreamsInput {
  25100. s.MaxResults = &v
  25101. return s
  25102. }
  25103. // SetNextToken sets the NextToken field's value.
  25104. func (s *ListStreamsInput) SetNextToken(v string) *ListStreamsInput {
  25105. s.NextToken = &v
  25106. return s
  25107. }
  25108. type ListStreamsOutput struct {
  25109. _ struct{} `type:"structure"`
  25110. // A token used to get the next set of results.
  25111. NextToken *string `locationName:"nextToken" type:"string"`
  25112. // A list of streams.
  25113. Streams []*StreamSummary `locationName:"streams" type:"list"`
  25114. }
  25115. // String returns the string representation
  25116. func (s ListStreamsOutput) String() string {
  25117. return awsutil.Prettify(s)
  25118. }
  25119. // GoString returns the string representation
  25120. func (s ListStreamsOutput) GoString() string {
  25121. return s.String()
  25122. }
  25123. // SetNextToken sets the NextToken field's value.
  25124. func (s *ListStreamsOutput) SetNextToken(v string) *ListStreamsOutput {
  25125. s.NextToken = &v
  25126. return s
  25127. }
  25128. // SetStreams sets the Streams field's value.
  25129. func (s *ListStreamsOutput) SetStreams(v []*StreamSummary) *ListStreamsOutput {
  25130. s.Streams = v
  25131. return s
  25132. }
  25133. type ListTagsForResourceInput struct {
  25134. _ struct{} `type:"structure"`
  25135. // The token to retrieve the next set of results.
  25136. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25137. // The ARN of the resource.
  25138. //
  25139. // ResourceArn is a required field
  25140. ResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string" required:"true"`
  25141. }
  25142. // String returns the string representation
  25143. func (s ListTagsForResourceInput) String() string {
  25144. return awsutil.Prettify(s)
  25145. }
  25146. // GoString returns the string representation
  25147. func (s ListTagsForResourceInput) GoString() string {
  25148. return s.String()
  25149. }
  25150. // Validate inspects the fields of the type to determine if they are valid.
  25151. func (s *ListTagsForResourceInput) Validate() error {
  25152. invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
  25153. if s.ResourceArn == nil {
  25154. invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  25155. }
  25156. if invalidParams.Len() > 0 {
  25157. return invalidParams
  25158. }
  25159. return nil
  25160. }
  25161. // SetNextToken sets the NextToken field's value.
  25162. func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput {
  25163. s.NextToken = &v
  25164. return s
  25165. }
  25166. // SetResourceArn sets the ResourceArn field's value.
  25167. func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
  25168. s.ResourceArn = &v
  25169. return s
  25170. }
  25171. type ListTagsForResourceOutput struct {
  25172. _ struct{} `type:"structure"`
  25173. // The token used to get the next set of results, or null if there are no additional
  25174. // results.
  25175. NextToken *string `locationName:"nextToken" type:"string"`
  25176. // The list of tags assigned to the resource.
  25177. Tags []*Tag `locationName:"tags" type:"list"`
  25178. }
  25179. // String returns the string representation
  25180. func (s ListTagsForResourceOutput) String() string {
  25181. return awsutil.Prettify(s)
  25182. }
  25183. // GoString returns the string representation
  25184. func (s ListTagsForResourceOutput) GoString() string {
  25185. return s.String()
  25186. }
  25187. // SetNextToken sets the NextToken field's value.
  25188. func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput {
  25189. s.NextToken = &v
  25190. return s
  25191. }
  25192. // SetTags sets the Tags field's value.
  25193. func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
  25194. s.Tags = v
  25195. return s
  25196. }
  25197. type ListTargetsForPolicyInput struct {
  25198. _ struct{} `type:"structure"`
  25199. // A marker used to get the next set of results.
  25200. Marker *string `location:"querystring" locationName:"marker" type:"string"`
  25201. // The maximum number of results to return at one time.
  25202. PageSize *int64 `location:"querystring" locationName:"pageSize" min:"1" type:"integer"`
  25203. // The policy name.
  25204. //
  25205. // PolicyName is a required field
  25206. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  25207. }
  25208. // String returns the string representation
  25209. func (s ListTargetsForPolicyInput) String() string {
  25210. return awsutil.Prettify(s)
  25211. }
  25212. // GoString returns the string representation
  25213. func (s ListTargetsForPolicyInput) GoString() string {
  25214. return s.String()
  25215. }
  25216. // Validate inspects the fields of the type to determine if they are valid.
  25217. func (s *ListTargetsForPolicyInput) Validate() error {
  25218. invalidParams := request.ErrInvalidParams{Context: "ListTargetsForPolicyInput"}
  25219. if s.PageSize != nil && *s.PageSize < 1 {
  25220. invalidParams.Add(request.NewErrParamMinValue("PageSize", 1))
  25221. }
  25222. if s.PolicyName == nil {
  25223. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  25224. }
  25225. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  25226. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  25227. }
  25228. if invalidParams.Len() > 0 {
  25229. return invalidParams
  25230. }
  25231. return nil
  25232. }
  25233. // SetMarker sets the Marker field's value.
  25234. func (s *ListTargetsForPolicyInput) SetMarker(v string) *ListTargetsForPolicyInput {
  25235. s.Marker = &v
  25236. return s
  25237. }
  25238. // SetPageSize sets the PageSize field's value.
  25239. func (s *ListTargetsForPolicyInput) SetPageSize(v int64) *ListTargetsForPolicyInput {
  25240. s.PageSize = &v
  25241. return s
  25242. }
  25243. // SetPolicyName sets the PolicyName field's value.
  25244. func (s *ListTargetsForPolicyInput) SetPolicyName(v string) *ListTargetsForPolicyInput {
  25245. s.PolicyName = &v
  25246. return s
  25247. }
  25248. type ListTargetsForPolicyOutput struct {
  25249. _ struct{} `type:"structure"`
  25250. // A marker used to get the next set of results.
  25251. NextMarker *string `locationName:"nextMarker" type:"string"`
  25252. // The policy targets.
  25253. Targets []*string `locationName:"targets" type:"list"`
  25254. }
  25255. // String returns the string representation
  25256. func (s ListTargetsForPolicyOutput) String() string {
  25257. return awsutil.Prettify(s)
  25258. }
  25259. // GoString returns the string representation
  25260. func (s ListTargetsForPolicyOutput) GoString() string {
  25261. return s.String()
  25262. }
  25263. // SetNextMarker sets the NextMarker field's value.
  25264. func (s *ListTargetsForPolicyOutput) SetNextMarker(v string) *ListTargetsForPolicyOutput {
  25265. s.NextMarker = &v
  25266. return s
  25267. }
  25268. // SetTargets sets the Targets field's value.
  25269. func (s *ListTargetsForPolicyOutput) SetTargets(v []*string) *ListTargetsForPolicyOutput {
  25270. s.Targets = v
  25271. return s
  25272. }
  25273. type ListTargetsForSecurityProfileInput struct {
  25274. _ struct{} `type:"structure"`
  25275. // The maximum number of results to return at one time.
  25276. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25277. // The token for the next set of results.
  25278. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25279. // The security profile.
  25280. //
  25281. // SecurityProfileName is a required field
  25282. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  25283. }
  25284. // String returns the string representation
  25285. func (s ListTargetsForSecurityProfileInput) String() string {
  25286. return awsutil.Prettify(s)
  25287. }
  25288. // GoString returns the string representation
  25289. func (s ListTargetsForSecurityProfileInput) GoString() string {
  25290. return s.String()
  25291. }
  25292. // Validate inspects the fields of the type to determine if they are valid.
  25293. func (s *ListTargetsForSecurityProfileInput) Validate() error {
  25294. invalidParams := request.ErrInvalidParams{Context: "ListTargetsForSecurityProfileInput"}
  25295. if s.MaxResults != nil && *s.MaxResults < 1 {
  25296. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25297. }
  25298. if s.SecurityProfileName == nil {
  25299. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  25300. }
  25301. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  25302. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  25303. }
  25304. if invalidParams.Len() > 0 {
  25305. return invalidParams
  25306. }
  25307. return nil
  25308. }
  25309. // SetMaxResults sets the MaxResults field's value.
  25310. func (s *ListTargetsForSecurityProfileInput) SetMaxResults(v int64) *ListTargetsForSecurityProfileInput {
  25311. s.MaxResults = &v
  25312. return s
  25313. }
  25314. // SetNextToken sets the NextToken field's value.
  25315. func (s *ListTargetsForSecurityProfileInput) SetNextToken(v string) *ListTargetsForSecurityProfileInput {
  25316. s.NextToken = &v
  25317. return s
  25318. }
  25319. // SetSecurityProfileName sets the SecurityProfileName field's value.
  25320. func (s *ListTargetsForSecurityProfileInput) SetSecurityProfileName(v string) *ListTargetsForSecurityProfileInput {
  25321. s.SecurityProfileName = &v
  25322. return s
  25323. }
  25324. type ListTargetsForSecurityProfileOutput struct {
  25325. _ struct{} `type:"structure"`
  25326. // A token that can be used to retrieve the next set of results, or null if
  25327. // there are no additional results.
  25328. NextToken *string `locationName:"nextToken" type:"string"`
  25329. // The thing groups to which the security profile is attached.
  25330. SecurityProfileTargets []*SecurityProfileTarget `locationName:"securityProfileTargets" type:"list"`
  25331. }
  25332. // String returns the string representation
  25333. func (s ListTargetsForSecurityProfileOutput) String() string {
  25334. return awsutil.Prettify(s)
  25335. }
  25336. // GoString returns the string representation
  25337. func (s ListTargetsForSecurityProfileOutput) GoString() string {
  25338. return s.String()
  25339. }
  25340. // SetNextToken sets the NextToken field's value.
  25341. func (s *ListTargetsForSecurityProfileOutput) SetNextToken(v string) *ListTargetsForSecurityProfileOutput {
  25342. s.NextToken = &v
  25343. return s
  25344. }
  25345. // SetSecurityProfileTargets sets the SecurityProfileTargets field's value.
  25346. func (s *ListTargetsForSecurityProfileOutput) SetSecurityProfileTargets(v []*SecurityProfileTarget) *ListTargetsForSecurityProfileOutput {
  25347. s.SecurityProfileTargets = v
  25348. return s
  25349. }
  25350. type ListThingGroupsForThingInput struct {
  25351. _ struct{} `type:"structure"`
  25352. // The maximum number of results to return at one time.
  25353. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25354. // The token to retrieve the next set of results.
  25355. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25356. // The thing name.
  25357. //
  25358. // ThingName is a required field
  25359. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  25360. }
  25361. // String returns the string representation
  25362. func (s ListThingGroupsForThingInput) String() string {
  25363. return awsutil.Prettify(s)
  25364. }
  25365. // GoString returns the string representation
  25366. func (s ListThingGroupsForThingInput) GoString() string {
  25367. return s.String()
  25368. }
  25369. // Validate inspects the fields of the type to determine if they are valid.
  25370. func (s *ListThingGroupsForThingInput) Validate() error {
  25371. invalidParams := request.ErrInvalidParams{Context: "ListThingGroupsForThingInput"}
  25372. if s.MaxResults != nil && *s.MaxResults < 1 {
  25373. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25374. }
  25375. if s.ThingName == nil {
  25376. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  25377. }
  25378. if s.ThingName != nil && len(*s.ThingName) < 1 {
  25379. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  25380. }
  25381. if invalidParams.Len() > 0 {
  25382. return invalidParams
  25383. }
  25384. return nil
  25385. }
  25386. // SetMaxResults sets the MaxResults field's value.
  25387. func (s *ListThingGroupsForThingInput) SetMaxResults(v int64) *ListThingGroupsForThingInput {
  25388. s.MaxResults = &v
  25389. return s
  25390. }
  25391. // SetNextToken sets the NextToken field's value.
  25392. func (s *ListThingGroupsForThingInput) SetNextToken(v string) *ListThingGroupsForThingInput {
  25393. s.NextToken = &v
  25394. return s
  25395. }
  25396. // SetThingName sets the ThingName field's value.
  25397. func (s *ListThingGroupsForThingInput) SetThingName(v string) *ListThingGroupsForThingInput {
  25398. s.ThingName = &v
  25399. return s
  25400. }
  25401. type ListThingGroupsForThingOutput struct {
  25402. _ struct{} `type:"structure"`
  25403. // The token used to get the next set of results, or null if there are no additional
  25404. // results.
  25405. NextToken *string `locationName:"nextToken" type:"string"`
  25406. // The thing groups.
  25407. ThingGroups []*GroupNameAndArn `locationName:"thingGroups" type:"list"`
  25408. }
  25409. // String returns the string representation
  25410. func (s ListThingGroupsForThingOutput) String() string {
  25411. return awsutil.Prettify(s)
  25412. }
  25413. // GoString returns the string representation
  25414. func (s ListThingGroupsForThingOutput) GoString() string {
  25415. return s.String()
  25416. }
  25417. // SetNextToken sets the NextToken field's value.
  25418. func (s *ListThingGroupsForThingOutput) SetNextToken(v string) *ListThingGroupsForThingOutput {
  25419. s.NextToken = &v
  25420. return s
  25421. }
  25422. // SetThingGroups sets the ThingGroups field's value.
  25423. func (s *ListThingGroupsForThingOutput) SetThingGroups(v []*GroupNameAndArn) *ListThingGroupsForThingOutput {
  25424. s.ThingGroups = v
  25425. return s
  25426. }
  25427. type ListThingGroupsInput struct {
  25428. _ struct{} `type:"structure"`
  25429. // The maximum number of results to return at one time.
  25430. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25431. // A filter that limits the results to those with the specified name prefix.
  25432. NamePrefixFilter *string `location:"querystring" locationName:"namePrefixFilter" min:"1" type:"string"`
  25433. // The token to retrieve the next set of results.
  25434. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25435. // A filter that limits the results to those with the specified parent group.
  25436. ParentGroup *string `location:"querystring" locationName:"parentGroup" min:"1" type:"string"`
  25437. // If true, return child groups as well.
  25438. Recursive *bool `location:"querystring" locationName:"recursive" type:"boolean"`
  25439. }
  25440. // String returns the string representation
  25441. func (s ListThingGroupsInput) String() string {
  25442. return awsutil.Prettify(s)
  25443. }
  25444. // GoString returns the string representation
  25445. func (s ListThingGroupsInput) GoString() string {
  25446. return s.String()
  25447. }
  25448. // Validate inspects the fields of the type to determine if they are valid.
  25449. func (s *ListThingGroupsInput) Validate() error {
  25450. invalidParams := request.ErrInvalidParams{Context: "ListThingGroupsInput"}
  25451. if s.MaxResults != nil && *s.MaxResults < 1 {
  25452. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25453. }
  25454. if s.NamePrefixFilter != nil && len(*s.NamePrefixFilter) < 1 {
  25455. invalidParams.Add(request.NewErrParamMinLen("NamePrefixFilter", 1))
  25456. }
  25457. if s.ParentGroup != nil && len(*s.ParentGroup) < 1 {
  25458. invalidParams.Add(request.NewErrParamMinLen("ParentGroup", 1))
  25459. }
  25460. if invalidParams.Len() > 0 {
  25461. return invalidParams
  25462. }
  25463. return nil
  25464. }
  25465. // SetMaxResults sets the MaxResults field's value.
  25466. func (s *ListThingGroupsInput) SetMaxResults(v int64) *ListThingGroupsInput {
  25467. s.MaxResults = &v
  25468. return s
  25469. }
  25470. // SetNamePrefixFilter sets the NamePrefixFilter field's value.
  25471. func (s *ListThingGroupsInput) SetNamePrefixFilter(v string) *ListThingGroupsInput {
  25472. s.NamePrefixFilter = &v
  25473. return s
  25474. }
  25475. // SetNextToken sets the NextToken field's value.
  25476. func (s *ListThingGroupsInput) SetNextToken(v string) *ListThingGroupsInput {
  25477. s.NextToken = &v
  25478. return s
  25479. }
  25480. // SetParentGroup sets the ParentGroup field's value.
  25481. func (s *ListThingGroupsInput) SetParentGroup(v string) *ListThingGroupsInput {
  25482. s.ParentGroup = &v
  25483. return s
  25484. }
  25485. // SetRecursive sets the Recursive field's value.
  25486. func (s *ListThingGroupsInput) SetRecursive(v bool) *ListThingGroupsInput {
  25487. s.Recursive = &v
  25488. return s
  25489. }
  25490. type ListThingGroupsOutput struct {
  25491. _ struct{} `type:"structure"`
  25492. // The token used to get the next set of results, or null if there are no additional
  25493. // results.
  25494. NextToken *string `locationName:"nextToken" type:"string"`
  25495. // The thing groups.
  25496. ThingGroups []*GroupNameAndArn `locationName:"thingGroups" type:"list"`
  25497. }
  25498. // String returns the string representation
  25499. func (s ListThingGroupsOutput) String() string {
  25500. return awsutil.Prettify(s)
  25501. }
  25502. // GoString returns the string representation
  25503. func (s ListThingGroupsOutput) GoString() string {
  25504. return s.String()
  25505. }
  25506. // SetNextToken sets the NextToken field's value.
  25507. func (s *ListThingGroupsOutput) SetNextToken(v string) *ListThingGroupsOutput {
  25508. s.NextToken = &v
  25509. return s
  25510. }
  25511. // SetThingGroups sets the ThingGroups field's value.
  25512. func (s *ListThingGroupsOutput) SetThingGroups(v []*GroupNameAndArn) *ListThingGroupsOutput {
  25513. s.ThingGroups = v
  25514. return s
  25515. }
  25516. // The input for the ListThingPrincipal operation.
  25517. type ListThingPrincipalsInput struct {
  25518. _ struct{} `type:"structure"`
  25519. // The name of the thing.
  25520. //
  25521. // ThingName is a required field
  25522. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  25523. }
  25524. // String returns the string representation
  25525. func (s ListThingPrincipalsInput) String() string {
  25526. return awsutil.Prettify(s)
  25527. }
  25528. // GoString returns the string representation
  25529. func (s ListThingPrincipalsInput) GoString() string {
  25530. return s.String()
  25531. }
  25532. // Validate inspects the fields of the type to determine if they are valid.
  25533. func (s *ListThingPrincipalsInput) Validate() error {
  25534. invalidParams := request.ErrInvalidParams{Context: "ListThingPrincipalsInput"}
  25535. if s.ThingName == nil {
  25536. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  25537. }
  25538. if s.ThingName != nil && len(*s.ThingName) < 1 {
  25539. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  25540. }
  25541. if invalidParams.Len() > 0 {
  25542. return invalidParams
  25543. }
  25544. return nil
  25545. }
  25546. // SetThingName sets the ThingName field's value.
  25547. func (s *ListThingPrincipalsInput) SetThingName(v string) *ListThingPrincipalsInput {
  25548. s.ThingName = &v
  25549. return s
  25550. }
  25551. // The output from the ListThingPrincipals operation.
  25552. type ListThingPrincipalsOutput struct {
  25553. _ struct{} `type:"structure"`
  25554. // The principals associated with the thing.
  25555. Principals []*string `locationName:"principals" type:"list"`
  25556. }
  25557. // String returns the string representation
  25558. func (s ListThingPrincipalsOutput) String() string {
  25559. return awsutil.Prettify(s)
  25560. }
  25561. // GoString returns the string representation
  25562. func (s ListThingPrincipalsOutput) GoString() string {
  25563. return s.String()
  25564. }
  25565. // SetPrincipals sets the Principals field's value.
  25566. func (s *ListThingPrincipalsOutput) SetPrincipals(v []*string) *ListThingPrincipalsOutput {
  25567. s.Principals = v
  25568. return s
  25569. }
  25570. type ListThingRegistrationTaskReportsInput struct {
  25571. _ struct{} `type:"structure"`
  25572. // The maximum number of results to return per request.
  25573. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25574. // The token to retrieve the next set of results.
  25575. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25576. // The type of task report.
  25577. //
  25578. // ReportType is a required field
  25579. ReportType *string `location:"querystring" locationName:"reportType" type:"string" required:"true" enum:"ReportType"`
  25580. // The id of the task.
  25581. //
  25582. // TaskId is a required field
  25583. TaskId *string `location:"uri" locationName:"taskId" type:"string" required:"true"`
  25584. }
  25585. // String returns the string representation
  25586. func (s ListThingRegistrationTaskReportsInput) String() string {
  25587. return awsutil.Prettify(s)
  25588. }
  25589. // GoString returns the string representation
  25590. func (s ListThingRegistrationTaskReportsInput) GoString() string {
  25591. return s.String()
  25592. }
  25593. // Validate inspects the fields of the type to determine if they are valid.
  25594. func (s *ListThingRegistrationTaskReportsInput) Validate() error {
  25595. invalidParams := request.ErrInvalidParams{Context: "ListThingRegistrationTaskReportsInput"}
  25596. if s.MaxResults != nil && *s.MaxResults < 1 {
  25597. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25598. }
  25599. if s.ReportType == nil {
  25600. invalidParams.Add(request.NewErrParamRequired("ReportType"))
  25601. }
  25602. if s.TaskId == nil {
  25603. invalidParams.Add(request.NewErrParamRequired("TaskId"))
  25604. }
  25605. if s.TaskId != nil && len(*s.TaskId) < 1 {
  25606. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  25607. }
  25608. if invalidParams.Len() > 0 {
  25609. return invalidParams
  25610. }
  25611. return nil
  25612. }
  25613. // SetMaxResults sets the MaxResults field's value.
  25614. func (s *ListThingRegistrationTaskReportsInput) SetMaxResults(v int64) *ListThingRegistrationTaskReportsInput {
  25615. s.MaxResults = &v
  25616. return s
  25617. }
  25618. // SetNextToken sets the NextToken field's value.
  25619. func (s *ListThingRegistrationTaskReportsInput) SetNextToken(v string) *ListThingRegistrationTaskReportsInput {
  25620. s.NextToken = &v
  25621. return s
  25622. }
  25623. // SetReportType sets the ReportType field's value.
  25624. func (s *ListThingRegistrationTaskReportsInput) SetReportType(v string) *ListThingRegistrationTaskReportsInput {
  25625. s.ReportType = &v
  25626. return s
  25627. }
  25628. // SetTaskId sets the TaskId field's value.
  25629. func (s *ListThingRegistrationTaskReportsInput) SetTaskId(v string) *ListThingRegistrationTaskReportsInput {
  25630. s.TaskId = &v
  25631. return s
  25632. }
  25633. type ListThingRegistrationTaskReportsOutput struct {
  25634. _ struct{} `type:"structure"`
  25635. // The token used to get the next set of results, or null if there are no additional
  25636. // results.
  25637. NextToken *string `locationName:"nextToken" type:"string"`
  25638. // The type of task report.
  25639. ReportType *string `locationName:"reportType" type:"string" enum:"ReportType"`
  25640. // Links to the task resources.
  25641. ResourceLinks []*string `locationName:"resourceLinks" type:"list"`
  25642. }
  25643. // String returns the string representation
  25644. func (s ListThingRegistrationTaskReportsOutput) String() string {
  25645. return awsutil.Prettify(s)
  25646. }
  25647. // GoString returns the string representation
  25648. func (s ListThingRegistrationTaskReportsOutput) GoString() string {
  25649. return s.String()
  25650. }
  25651. // SetNextToken sets the NextToken field's value.
  25652. func (s *ListThingRegistrationTaskReportsOutput) SetNextToken(v string) *ListThingRegistrationTaskReportsOutput {
  25653. s.NextToken = &v
  25654. return s
  25655. }
  25656. // SetReportType sets the ReportType field's value.
  25657. func (s *ListThingRegistrationTaskReportsOutput) SetReportType(v string) *ListThingRegistrationTaskReportsOutput {
  25658. s.ReportType = &v
  25659. return s
  25660. }
  25661. // SetResourceLinks sets the ResourceLinks field's value.
  25662. func (s *ListThingRegistrationTaskReportsOutput) SetResourceLinks(v []*string) *ListThingRegistrationTaskReportsOutput {
  25663. s.ResourceLinks = v
  25664. return s
  25665. }
  25666. type ListThingRegistrationTasksInput struct {
  25667. _ struct{} `type:"structure"`
  25668. // The maximum number of results to return at one time.
  25669. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25670. // The token to retrieve the next set of results.
  25671. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25672. // The status of the bulk thing provisioning task.
  25673. Status *string `location:"querystring" locationName:"status" type:"string" enum:"Status"`
  25674. }
  25675. // String returns the string representation
  25676. func (s ListThingRegistrationTasksInput) String() string {
  25677. return awsutil.Prettify(s)
  25678. }
  25679. // GoString returns the string representation
  25680. func (s ListThingRegistrationTasksInput) GoString() string {
  25681. return s.String()
  25682. }
  25683. // Validate inspects the fields of the type to determine if they are valid.
  25684. func (s *ListThingRegistrationTasksInput) Validate() error {
  25685. invalidParams := request.ErrInvalidParams{Context: "ListThingRegistrationTasksInput"}
  25686. if s.MaxResults != nil && *s.MaxResults < 1 {
  25687. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25688. }
  25689. if invalidParams.Len() > 0 {
  25690. return invalidParams
  25691. }
  25692. return nil
  25693. }
  25694. // SetMaxResults sets the MaxResults field's value.
  25695. func (s *ListThingRegistrationTasksInput) SetMaxResults(v int64) *ListThingRegistrationTasksInput {
  25696. s.MaxResults = &v
  25697. return s
  25698. }
  25699. // SetNextToken sets the NextToken field's value.
  25700. func (s *ListThingRegistrationTasksInput) SetNextToken(v string) *ListThingRegistrationTasksInput {
  25701. s.NextToken = &v
  25702. return s
  25703. }
  25704. // SetStatus sets the Status field's value.
  25705. func (s *ListThingRegistrationTasksInput) SetStatus(v string) *ListThingRegistrationTasksInput {
  25706. s.Status = &v
  25707. return s
  25708. }
  25709. type ListThingRegistrationTasksOutput struct {
  25710. _ struct{} `type:"structure"`
  25711. // The token used to get the next set of results, or null if there are no additional
  25712. // results.
  25713. NextToken *string `locationName:"nextToken" type:"string"`
  25714. // A list of bulk thing provisioning task IDs.
  25715. TaskIds []*string `locationName:"taskIds" type:"list"`
  25716. }
  25717. // String returns the string representation
  25718. func (s ListThingRegistrationTasksOutput) String() string {
  25719. return awsutil.Prettify(s)
  25720. }
  25721. // GoString returns the string representation
  25722. func (s ListThingRegistrationTasksOutput) GoString() string {
  25723. return s.String()
  25724. }
  25725. // SetNextToken sets the NextToken field's value.
  25726. func (s *ListThingRegistrationTasksOutput) SetNextToken(v string) *ListThingRegistrationTasksOutput {
  25727. s.NextToken = &v
  25728. return s
  25729. }
  25730. // SetTaskIds sets the TaskIds field's value.
  25731. func (s *ListThingRegistrationTasksOutput) SetTaskIds(v []*string) *ListThingRegistrationTasksOutput {
  25732. s.TaskIds = v
  25733. return s
  25734. }
  25735. // The input for the ListThingTypes operation.
  25736. type ListThingTypesInput struct {
  25737. _ struct{} `type:"structure"`
  25738. // The maximum number of results to return in this operation.
  25739. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25740. // The token to retrieve the next set of results.
  25741. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25742. // The name of the thing type.
  25743. ThingTypeName *string `location:"querystring" locationName:"thingTypeName" min:"1" type:"string"`
  25744. }
  25745. // String returns the string representation
  25746. func (s ListThingTypesInput) String() string {
  25747. return awsutil.Prettify(s)
  25748. }
  25749. // GoString returns the string representation
  25750. func (s ListThingTypesInput) GoString() string {
  25751. return s.String()
  25752. }
  25753. // Validate inspects the fields of the type to determine if they are valid.
  25754. func (s *ListThingTypesInput) Validate() error {
  25755. invalidParams := request.ErrInvalidParams{Context: "ListThingTypesInput"}
  25756. if s.MaxResults != nil && *s.MaxResults < 1 {
  25757. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25758. }
  25759. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  25760. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  25761. }
  25762. if invalidParams.Len() > 0 {
  25763. return invalidParams
  25764. }
  25765. return nil
  25766. }
  25767. // SetMaxResults sets the MaxResults field's value.
  25768. func (s *ListThingTypesInput) SetMaxResults(v int64) *ListThingTypesInput {
  25769. s.MaxResults = &v
  25770. return s
  25771. }
  25772. // SetNextToken sets the NextToken field's value.
  25773. func (s *ListThingTypesInput) SetNextToken(v string) *ListThingTypesInput {
  25774. s.NextToken = &v
  25775. return s
  25776. }
  25777. // SetThingTypeName sets the ThingTypeName field's value.
  25778. func (s *ListThingTypesInput) SetThingTypeName(v string) *ListThingTypesInput {
  25779. s.ThingTypeName = &v
  25780. return s
  25781. }
  25782. // The output for the ListThingTypes operation.
  25783. type ListThingTypesOutput struct {
  25784. _ struct{} `type:"structure"`
  25785. // The token for the next set of results, or null if there are no additional
  25786. // results.
  25787. NextToken *string `locationName:"nextToken" type:"string"`
  25788. // The thing types.
  25789. ThingTypes []*ThingTypeDefinition `locationName:"thingTypes" type:"list"`
  25790. }
  25791. // String returns the string representation
  25792. func (s ListThingTypesOutput) String() string {
  25793. return awsutil.Prettify(s)
  25794. }
  25795. // GoString returns the string representation
  25796. func (s ListThingTypesOutput) GoString() string {
  25797. return s.String()
  25798. }
  25799. // SetNextToken sets the NextToken field's value.
  25800. func (s *ListThingTypesOutput) SetNextToken(v string) *ListThingTypesOutput {
  25801. s.NextToken = &v
  25802. return s
  25803. }
  25804. // SetThingTypes sets the ThingTypes field's value.
  25805. func (s *ListThingTypesOutput) SetThingTypes(v []*ThingTypeDefinition) *ListThingTypesOutput {
  25806. s.ThingTypes = v
  25807. return s
  25808. }
  25809. type ListThingsInBillingGroupInput struct {
  25810. _ struct{} `type:"structure"`
  25811. // The name of the billing group.
  25812. //
  25813. // BillingGroupName is a required field
  25814. BillingGroupName *string `location:"uri" locationName:"billingGroupName" min:"1" type:"string" required:"true"`
  25815. // The maximum number of results to return per request.
  25816. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25817. // The token to retrieve the next set of results.
  25818. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25819. }
  25820. // String returns the string representation
  25821. func (s ListThingsInBillingGroupInput) String() string {
  25822. return awsutil.Prettify(s)
  25823. }
  25824. // GoString returns the string representation
  25825. func (s ListThingsInBillingGroupInput) GoString() string {
  25826. return s.String()
  25827. }
  25828. // Validate inspects the fields of the type to determine if they are valid.
  25829. func (s *ListThingsInBillingGroupInput) Validate() error {
  25830. invalidParams := request.ErrInvalidParams{Context: "ListThingsInBillingGroupInput"}
  25831. if s.BillingGroupName == nil {
  25832. invalidParams.Add(request.NewErrParamRequired("BillingGroupName"))
  25833. }
  25834. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  25835. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  25836. }
  25837. if s.MaxResults != nil && *s.MaxResults < 1 {
  25838. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25839. }
  25840. if invalidParams.Len() > 0 {
  25841. return invalidParams
  25842. }
  25843. return nil
  25844. }
  25845. // SetBillingGroupName sets the BillingGroupName field's value.
  25846. func (s *ListThingsInBillingGroupInput) SetBillingGroupName(v string) *ListThingsInBillingGroupInput {
  25847. s.BillingGroupName = &v
  25848. return s
  25849. }
  25850. // SetMaxResults sets the MaxResults field's value.
  25851. func (s *ListThingsInBillingGroupInput) SetMaxResults(v int64) *ListThingsInBillingGroupInput {
  25852. s.MaxResults = &v
  25853. return s
  25854. }
  25855. // SetNextToken sets the NextToken field's value.
  25856. func (s *ListThingsInBillingGroupInput) SetNextToken(v string) *ListThingsInBillingGroupInput {
  25857. s.NextToken = &v
  25858. return s
  25859. }
  25860. type ListThingsInBillingGroupOutput struct {
  25861. _ struct{} `type:"structure"`
  25862. // The token used to get the next set of results, or null if there are no additional
  25863. // results.
  25864. NextToken *string `locationName:"nextToken" type:"string"`
  25865. // A list of things in the billing group.
  25866. Things []*string `locationName:"things" type:"list"`
  25867. }
  25868. // String returns the string representation
  25869. func (s ListThingsInBillingGroupOutput) String() string {
  25870. return awsutil.Prettify(s)
  25871. }
  25872. // GoString returns the string representation
  25873. func (s ListThingsInBillingGroupOutput) GoString() string {
  25874. return s.String()
  25875. }
  25876. // SetNextToken sets the NextToken field's value.
  25877. func (s *ListThingsInBillingGroupOutput) SetNextToken(v string) *ListThingsInBillingGroupOutput {
  25878. s.NextToken = &v
  25879. return s
  25880. }
  25881. // SetThings sets the Things field's value.
  25882. func (s *ListThingsInBillingGroupOutput) SetThings(v []*string) *ListThingsInBillingGroupOutput {
  25883. s.Things = v
  25884. return s
  25885. }
  25886. type ListThingsInThingGroupInput struct {
  25887. _ struct{} `type:"structure"`
  25888. // The maximum number of results to return at one time.
  25889. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25890. // The token to retrieve the next set of results.
  25891. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25892. // When true, list things in this thing group and in all child groups as well.
  25893. Recursive *bool `location:"querystring" locationName:"recursive" type:"boolean"`
  25894. // The thing group name.
  25895. //
  25896. // ThingGroupName is a required field
  25897. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  25898. }
  25899. // String returns the string representation
  25900. func (s ListThingsInThingGroupInput) String() string {
  25901. return awsutil.Prettify(s)
  25902. }
  25903. // GoString returns the string representation
  25904. func (s ListThingsInThingGroupInput) GoString() string {
  25905. return s.String()
  25906. }
  25907. // Validate inspects the fields of the type to determine if they are valid.
  25908. func (s *ListThingsInThingGroupInput) Validate() error {
  25909. invalidParams := request.ErrInvalidParams{Context: "ListThingsInThingGroupInput"}
  25910. if s.MaxResults != nil && *s.MaxResults < 1 {
  25911. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25912. }
  25913. if s.ThingGroupName == nil {
  25914. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  25915. }
  25916. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  25917. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  25918. }
  25919. if invalidParams.Len() > 0 {
  25920. return invalidParams
  25921. }
  25922. return nil
  25923. }
  25924. // SetMaxResults sets the MaxResults field's value.
  25925. func (s *ListThingsInThingGroupInput) SetMaxResults(v int64) *ListThingsInThingGroupInput {
  25926. s.MaxResults = &v
  25927. return s
  25928. }
  25929. // SetNextToken sets the NextToken field's value.
  25930. func (s *ListThingsInThingGroupInput) SetNextToken(v string) *ListThingsInThingGroupInput {
  25931. s.NextToken = &v
  25932. return s
  25933. }
  25934. // SetRecursive sets the Recursive field's value.
  25935. func (s *ListThingsInThingGroupInput) SetRecursive(v bool) *ListThingsInThingGroupInput {
  25936. s.Recursive = &v
  25937. return s
  25938. }
  25939. // SetThingGroupName sets the ThingGroupName field's value.
  25940. func (s *ListThingsInThingGroupInput) SetThingGroupName(v string) *ListThingsInThingGroupInput {
  25941. s.ThingGroupName = &v
  25942. return s
  25943. }
  25944. type ListThingsInThingGroupOutput struct {
  25945. _ struct{} `type:"structure"`
  25946. // The token used to get the next set of results, or null if there are no additional
  25947. // results.
  25948. NextToken *string `locationName:"nextToken" type:"string"`
  25949. // The things in the specified thing group.
  25950. Things []*string `locationName:"things" type:"list"`
  25951. }
  25952. // String returns the string representation
  25953. func (s ListThingsInThingGroupOutput) String() string {
  25954. return awsutil.Prettify(s)
  25955. }
  25956. // GoString returns the string representation
  25957. func (s ListThingsInThingGroupOutput) GoString() string {
  25958. return s.String()
  25959. }
  25960. // SetNextToken sets the NextToken field's value.
  25961. func (s *ListThingsInThingGroupOutput) SetNextToken(v string) *ListThingsInThingGroupOutput {
  25962. s.NextToken = &v
  25963. return s
  25964. }
  25965. // SetThings sets the Things field's value.
  25966. func (s *ListThingsInThingGroupOutput) SetThings(v []*string) *ListThingsInThingGroupOutput {
  25967. s.Things = v
  25968. return s
  25969. }
  25970. // The input for the ListThings operation.
  25971. type ListThingsInput struct {
  25972. _ struct{} `type:"structure"`
  25973. // The attribute name used to search for things.
  25974. AttributeName *string `location:"querystring" locationName:"attributeName" type:"string"`
  25975. // The attribute value used to search for things.
  25976. AttributeValue *string `location:"querystring" locationName:"attributeValue" type:"string"`
  25977. // The maximum number of results to return in this operation.
  25978. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  25979. // The token to retrieve the next set of results.
  25980. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  25981. // The name of the thing type used to search for things.
  25982. ThingTypeName *string `location:"querystring" locationName:"thingTypeName" min:"1" type:"string"`
  25983. }
  25984. // String returns the string representation
  25985. func (s ListThingsInput) String() string {
  25986. return awsutil.Prettify(s)
  25987. }
  25988. // GoString returns the string representation
  25989. func (s ListThingsInput) GoString() string {
  25990. return s.String()
  25991. }
  25992. // Validate inspects the fields of the type to determine if they are valid.
  25993. func (s *ListThingsInput) Validate() error {
  25994. invalidParams := request.ErrInvalidParams{Context: "ListThingsInput"}
  25995. if s.MaxResults != nil && *s.MaxResults < 1 {
  25996. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  25997. }
  25998. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  25999. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  26000. }
  26001. if invalidParams.Len() > 0 {
  26002. return invalidParams
  26003. }
  26004. return nil
  26005. }
  26006. // SetAttributeName sets the AttributeName field's value.
  26007. func (s *ListThingsInput) SetAttributeName(v string) *ListThingsInput {
  26008. s.AttributeName = &v
  26009. return s
  26010. }
  26011. // SetAttributeValue sets the AttributeValue field's value.
  26012. func (s *ListThingsInput) SetAttributeValue(v string) *ListThingsInput {
  26013. s.AttributeValue = &v
  26014. return s
  26015. }
  26016. // SetMaxResults sets the MaxResults field's value.
  26017. func (s *ListThingsInput) SetMaxResults(v int64) *ListThingsInput {
  26018. s.MaxResults = &v
  26019. return s
  26020. }
  26021. // SetNextToken sets the NextToken field's value.
  26022. func (s *ListThingsInput) SetNextToken(v string) *ListThingsInput {
  26023. s.NextToken = &v
  26024. return s
  26025. }
  26026. // SetThingTypeName sets the ThingTypeName field's value.
  26027. func (s *ListThingsInput) SetThingTypeName(v string) *ListThingsInput {
  26028. s.ThingTypeName = &v
  26029. return s
  26030. }
  26031. // The output from the ListThings operation.
  26032. type ListThingsOutput struct {
  26033. _ struct{} `type:"structure"`
  26034. // The token used to get the next set of results, or null if there are no additional
  26035. // results.
  26036. NextToken *string `locationName:"nextToken" type:"string"`
  26037. // The things.
  26038. Things []*ThingAttribute `locationName:"things" type:"list"`
  26039. }
  26040. // String returns the string representation
  26041. func (s ListThingsOutput) String() string {
  26042. return awsutil.Prettify(s)
  26043. }
  26044. // GoString returns the string representation
  26045. func (s ListThingsOutput) GoString() string {
  26046. return s.String()
  26047. }
  26048. // SetNextToken sets the NextToken field's value.
  26049. func (s *ListThingsOutput) SetNextToken(v string) *ListThingsOutput {
  26050. s.NextToken = &v
  26051. return s
  26052. }
  26053. // SetThings sets the Things field's value.
  26054. func (s *ListThingsOutput) SetThings(v []*ThingAttribute) *ListThingsOutput {
  26055. s.Things = v
  26056. return s
  26057. }
  26058. // The input for the ListTopicRules operation.
  26059. type ListTopicRulesInput struct {
  26060. _ struct{} `type:"structure"`
  26061. // The maximum number of results to return.
  26062. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  26063. // A token used to retrieve the next value.
  26064. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  26065. // Specifies whether the rule is disabled.
  26066. RuleDisabled *bool `location:"querystring" locationName:"ruleDisabled" type:"boolean"`
  26067. // The topic.
  26068. Topic *string `location:"querystring" locationName:"topic" type:"string"`
  26069. }
  26070. // String returns the string representation
  26071. func (s ListTopicRulesInput) String() string {
  26072. return awsutil.Prettify(s)
  26073. }
  26074. // GoString returns the string representation
  26075. func (s ListTopicRulesInput) GoString() string {
  26076. return s.String()
  26077. }
  26078. // Validate inspects the fields of the type to determine if they are valid.
  26079. func (s *ListTopicRulesInput) Validate() error {
  26080. invalidParams := request.ErrInvalidParams{Context: "ListTopicRulesInput"}
  26081. if s.MaxResults != nil && *s.MaxResults < 1 {
  26082. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  26083. }
  26084. if invalidParams.Len() > 0 {
  26085. return invalidParams
  26086. }
  26087. return nil
  26088. }
  26089. // SetMaxResults sets the MaxResults field's value.
  26090. func (s *ListTopicRulesInput) SetMaxResults(v int64) *ListTopicRulesInput {
  26091. s.MaxResults = &v
  26092. return s
  26093. }
  26094. // SetNextToken sets the NextToken field's value.
  26095. func (s *ListTopicRulesInput) SetNextToken(v string) *ListTopicRulesInput {
  26096. s.NextToken = &v
  26097. return s
  26098. }
  26099. // SetRuleDisabled sets the RuleDisabled field's value.
  26100. func (s *ListTopicRulesInput) SetRuleDisabled(v bool) *ListTopicRulesInput {
  26101. s.RuleDisabled = &v
  26102. return s
  26103. }
  26104. // SetTopic sets the Topic field's value.
  26105. func (s *ListTopicRulesInput) SetTopic(v string) *ListTopicRulesInput {
  26106. s.Topic = &v
  26107. return s
  26108. }
  26109. // The output from the ListTopicRules operation.
  26110. type ListTopicRulesOutput struct {
  26111. _ struct{} `type:"structure"`
  26112. // A token used to retrieve the next value.
  26113. NextToken *string `locationName:"nextToken" type:"string"`
  26114. // The rules.
  26115. Rules []*TopicRuleListItem `locationName:"rules" type:"list"`
  26116. }
  26117. // String returns the string representation
  26118. func (s ListTopicRulesOutput) String() string {
  26119. return awsutil.Prettify(s)
  26120. }
  26121. // GoString returns the string representation
  26122. func (s ListTopicRulesOutput) GoString() string {
  26123. return s.String()
  26124. }
  26125. // SetNextToken sets the NextToken field's value.
  26126. func (s *ListTopicRulesOutput) SetNextToken(v string) *ListTopicRulesOutput {
  26127. s.NextToken = &v
  26128. return s
  26129. }
  26130. // SetRules sets the Rules field's value.
  26131. func (s *ListTopicRulesOutput) SetRules(v []*TopicRuleListItem) *ListTopicRulesOutput {
  26132. s.Rules = v
  26133. return s
  26134. }
  26135. type ListV2LoggingLevelsInput struct {
  26136. _ struct{} `type:"structure"`
  26137. // The maximum number of results to return at one time.
  26138. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  26139. // The token used to get the next set of results, or null if there are no additional
  26140. // results.
  26141. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  26142. // The type of resource for which you are configuring logging. Must be THING_Group.
  26143. TargetType *string `location:"querystring" locationName:"targetType" type:"string" enum:"LogTargetType"`
  26144. }
  26145. // String returns the string representation
  26146. func (s ListV2LoggingLevelsInput) String() string {
  26147. return awsutil.Prettify(s)
  26148. }
  26149. // GoString returns the string representation
  26150. func (s ListV2LoggingLevelsInput) GoString() string {
  26151. return s.String()
  26152. }
  26153. // Validate inspects the fields of the type to determine if they are valid.
  26154. func (s *ListV2LoggingLevelsInput) Validate() error {
  26155. invalidParams := request.ErrInvalidParams{Context: "ListV2LoggingLevelsInput"}
  26156. if s.MaxResults != nil && *s.MaxResults < 1 {
  26157. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  26158. }
  26159. if invalidParams.Len() > 0 {
  26160. return invalidParams
  26161. }
  26162. return nil
  26163. }
  26164. // SetMaxResults sets the MaxResults field's value.
  26165. func (s *ListV2LoggingLevelsInput) SetMaxResults(v int64) *ListV2LoggingLevelsInput {
  26166. s.MaxResults = &v
  26167. return s
  26168. }
  26169. // SetNextToken sets the NextToken field's value.
  26170. func (s *ListV2LoggingLevelsInput) SetNextToken(v string) *ListV2LoggingLevelsInput {
  26171. s.NextToken = &v
  26172. return s
  26173. }
  26174. // SetTargetType sets the TargetType field's value.
  26175. func (s *ListV2LoggingLevelsInput) SetTargetType(v string) *ListV2LoggingLevelsInput {
  26176. s.TargetType = &v
  26177. return s
  26178. }
  26179. type ListV2LoggingLevelsOutput struct {
  26180. _ struct{} `type:"structure"`
  26181. // The logging configuration for a target.
  26182. LogTargetConfigurations []*LogTargetConfiguration `locationName:"logTargetConfigurations" type:"list"`
  26183. // The token used to get the next set of results, or null if there are no additional
  26184. // results.
  26185. NextToken *string `locationName:"nextToken" type:"string"`
  26186. }
  26187. // String returns the string representation
  26188. func (s ListV2LoggingLevelsOutput) String() string {
  26189. return awsutil.Prettify(s)
  26190. }
  26191. // GoString returns the string representation
  26192. func (s ListV2LoggingLevelsOutput) GoString() string {
  26193. return s.String()
  26194. }
  26195. // SetLogTargetConfigurations sets the LogTargetConfigurations field's value.
  26196. func (s *ListV2LoggingLevelsOutput) SetLogTargetConfigurations(v []*LogTargetConfiguration) *ListV2LoggingLevelsOutput {
  26197. s.LogTargetConfigurations = v
  26198. return s
  26199. }
  26200. // SetNextToken sets the NextToken field's value.
  26201. func (s *ListV2LoggingLevelsOutput) SetNextToken(v string) *ListV2LoggingLevelsOutput {
  26202. s.NextToken = &v
  26203. return s
  26204. }
  26205. type ListViolationEventsInput struct {
  26206. _ struct{} `type:"structure"`
  26207. // The end time for the alerts to be listed.
  26208. //
  26209. // EndTime is a required field
  26210. EndTime *time.Time `location:"querystring" locationName:"endTime" type:"timestamp" required:"true"`
  26211. // The maximum number of results to return at one time.
  26212. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
  26213. // The token for the next set of results.
  26214. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
  26215. // A filter to limit results to those alerts generated by the specified security
  26216. // profile.
  26217. SecurityProfileName *string `location:"querystring" locationName:"securityProfileName" min:"1" type:"string"`
  26218. // The start time for the alerts to be listed.
  26219. //
  26220. // StartTime is a required field
  26221. StartTime *time.Time `location:"querystring" locationName:"startTime" type:"timestamp" required:"true"`
  26222. // A filter to limit results to those alerts caused by the specified thing.
  26223. ThingName *string `location:"querystring" locationName:"thingName" min:"1" type:"string"`
  26224. }
  26225. // String returns the string representation
  26226. func (s ListViolationEventsInput) String() string {
  26227. return awsutil.Prettify(s)
  26228. }
  26229. // GoString returns the string representation
  26230. func (s ListViolationEventsInput) GoString() string {
  26231. return s.String()
  26232. }
  26233. // Validate inspects the fields of the type to determine if they are valid.
  26234. func (s *ListViolationEventsInput) Validate() error {
  26235. invalidParams := request.ErrInvalidParams{Context: "ListViolationEventsInput"}
  26236. if s.EndTime == nil {
  26237. invalidParams.Add(request.NewErrParamRequired("EndTime"))
  26238. }
  26239. if s.MaxResults != nil && *s.MaxResults < 1 {
  26240. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  26241. }
  26242. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  26243. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  26244. }
  26245. if s.StartTime == nil {
  26246. invalidParams.Add(request.NewErrParamRequired("StartTime"))
  26247. }
  26248. if s.ThingName != nil && len(*s.ThingName) < 1 {
  26249. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  26250. }
  26251. if invalidParams.Len() > 0 {
  26252. return invalidParams
  26253. }
  26254. return nil
  26255. }
  26256. // SetEndTime sets the EndTime field's value.
  26257. func (s *ListViolationEventsInput) SetEndTime(v time.Time) *ListViolationEventsInput {
  26258. s.EndTime = &v
  26259. return s
  26260. }
  26261. // SetMaxResults sets the MaxResults field's value.
  26262. func (s *ListViolationEventsInput) SetMaxResults(v int64) *ListViolationEventsInput {
  26263. s.MaxResults = &v
  26264. return s
  26265. }
  26266. // SetNextToken sets the NextToken field's value.
  26267. func (s *ListViolationEventsInput) SetNextToken(v string) *ListViolationEventsInput {
  26268. s.NextToken = &v
  26269. return s
  26270. }
  26271. // SetSecurityProfileName sets the SecurityProfileName field's value.
  26272. func (s *ListViolationEventsInput) SetSecurityProfileName(v string) *ListViolationEventsInput {
  26273. s.SecurityProfileName = &v
  26274. return s
  26275. }
  26276. // SetStartTime sets the StartTime field's value.
  26277. func (s *ListViolationEventsInput) SetStartTime(v time.Time) *ListViolationEventsInput {
  26278. s.StartTime = &v
  26279. return s
  26280. }
  26281. // SetThingName sets the ThingName field's value.
  26282. func (s *ListViolationEventsInput) SetThingName(v string) *ListViolationEventsInput {
  26283. s.ThingName = &v
  26284. return s
  26285. }
  26286. type ListViolationEventsOutput struct {
  26287. _ struct{} `type:"structure"`
  26288. // A token that can be used to retrieve the next set of results, or null if
  26289. // there are no additional results.
  26290. NextToken *string `locationName:"nextToken" type:"string"`
  26291. // The security profile violation alerts issued for this account during the
  26292. // given time frame, potentially filtered by security profile, behavior violated,
  26293. // or thing (device) violating.
  26294. ViolationEvents []*ViolationEvent `locationName:"violationEvents" type:"list"`
  26295. }
  26296. // String returns the string representation
  26297. func (s ListViolationEventsOutput) String() string {
  26298. return awsutil.Prettify(s)
  26299. }
  26300. // GoString returns the string representation
  26301. func (s ListViolationEventsOutput) GoString() string {
  26302. return s.String()
  26303. }
  26304. // SetNextToken sets the NextToken field's value.
  26305. func (s *ListViolationEventsOutput) SetNextToken(v string) *ListViolationEventsOutput {
  26306. s.NextToken = &v
  26307. return s
  26308. }
  26309. // SetViolationEvents sets the ViolationEvents field's value.
  26310. func (s *ListViolationEventsOutput) SetViolationEvents(v []*ViolationEvent) *ListViolationEventsOutput {
  26311. s.ViolationEvents = v
  26312. return s
  26313. }
  26314. // A log target.
  26315. type LogTarget struct {
  26316. _ struct{} `type:"structure"`
  26317. // The target name.
  26318. TargetName *string `locationName:"targetName" type:"string"`
  26319. // The target type.
  26320. //
  26321. // TargetType is a required field
  26322. TargetType *string `locationName:"targetType" type:"string" required:"true" enum:"LogTargetType"`
  26323. }
  26324. // String returns the string representation
  26325. func (s LogTarget) String() string {
  26326. return awsutil.Prettify(s)
  26327. }
  26328. // GoString returns the string representation
  26329. func (s LogTarget) GoString() string {
  26330. return s.String()
  26331. }
  26332. // Validate inspects the fields of the type to determine if they are valid.
  26333. func (s *LogTarget) Validate() error {
  26334. invalidParams := request.ErrInvalidParams{Context: "LogTarget"}
  26335. if s.TargetType == nil {
  26336. invalidParams.Add(request.NewErrParamRequired("TargetType"))
  26337. }
  26338. if invalidParams.Len() > 0 {
  26339. return invalidParams
  26340. }
  26341. return nil
  26342. }
  26343. // SetTargetName sets the TargetName field's value.
  26344. func (s *LogTarget) SetTargetName(v string) *LogTarget {
  26345. s.TargetName = &v
  26346. return s
  26347. }
  26348. // SetTargetType sets the TargetType field's value.
  26349. func (s *LogTarget) SetTargetType(v string) *LogTarget {
  26350. s.TargetType = &v
  26351. return s
  26352. }
  26353. // The target configuration.
  26354. type LogTargetConfiguration struct {
  26355. _ struct{} `type:"structure"`
  26356. // The logging level.
  26357. LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
  26358. // A log target
  26359. LogTarget *LogTarget `locationName:"logTarget" type:"structure"`
  26360. }
  26361. // String returns the string representation
  26362. func (s LogTargetConfiguration) String() string {
  26363. return awsutil.Prettify(s)
  26364. }
  26365. // GoString returns the string representation
  26366. func (s LogTargetConfiguration) GoString() string {
  26367. return s.String()
  26368. }
  26369. // SetLogLevel sets the LogLevel field's value.
  26370. func (s *LogTargetConfiguration) SetLogLevel(v string) *LogTargetConfiguration {
  26371. s.LogLevel = &v
  26372. return s
  26373. }
  26374. // SetLogTarget sets the LogTarget field's value.
  26375. func (s *LogTargetConfiguration) SetLogTarget(v *LogTarget) *LogTargetConfiguration {
  26376. s.LogTarget = v
  26377. return s
  26378. }
  26379. // Describes the logging options payload.
  26380. type LoggingOptionsPayload struct {
  26381. _ struct{} `type:"structure"`
  26382. // The log level.
  26383. LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"`
  26384. // The ARN of the IAM role that grants access.
  26385. //
  26386. // RoleArn is a required field
  26387. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  26388. }
  26389. // String returns the string representation
  26390. func (s LoggingOptionsPayload) String() string {
  26391. return awsutil.Prettify(s)
  26392. }
  26393. // GoString returns the string representation
  26394. func (s LoggingOptionsPayload) GoString() string {
  26395. return s.String()
  26396. }
  26397. // Validate inspects the fields of the type to determine if they are valid.
  26398. func (s *LoggingOptionsPayload) Validate() error {
  26399. invalidParams := request.ErrInvalidParams{Context: "LoggingOptionsPayload"}
  26400. if s.RoleArn == nil {
  26401. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  26402. }
  26403. if invalidParams.Len() > 0 {
  26404. return invalidParams
  26405. }
  26406. return nil
  26407. }
  26408. // SetLogLevel sets the LogLevel field's value.
  26409. func (s *LoggingOptionsPayload) SetLogLevel(v string) *LoggingOptionsPayload {
  26410. s.LogLevel = &v
  26411. return s
  26412. }
  26413. // SetRoleArn sets the RoleArn field's value.
  26414. func (s *LoggingOptionsPayload) SetRoleArn(v string) *LoggingOptionsPayload {
  26415. s.RoleArn = &v
  26416. return s
  26417. }
  26418. // The value to be compared with the metric.
  26419. type MetricValue struct {
  26420. _ struct{} `type:"structure"`
  26421. // If the comparisonOperator calls for a set of CIDRs, use this to specify that
  26422. // set to be compared with the metric.
  26423. Cidrs []*string `locationName:"cidrs" type:"list"`
  26424. // If the comparisonOperator calls for a numeric value, use this to specify
  26425. // that numeric value to be compared with the metric.
  26426. Count *int64 `locationName:"count" type:"long"`
  26427. // If the comparisonOperator calls for a set of ports, use this to specify that
  26428. // set to be compared with the metric.
  26429. Ports []*int64 `locationName:"ports" type:"list"`
  26430. }
  26431. // String returns the string representation
  26432. func (s MetricValue) String() string {
  26433. return awsutil.Prettify(s)
  26434. }
  26435. // GoString returns the string representation
  26436. func (s MetricValue) GoString() string {
  26437. return s.String()
  26438. }
  26439. // SetCidrs sets the Cidrs field's value.
  26440. func (s *MetricValue) SetCidrs(v []*string) *MetricValue {
  26441. s.Cidrs = v
  26442. return s
  26443. }
  26444. // SetCount sets the Count field's value.
  26445. func (s *MetricValue) SetCount(v int64) *MetricValue {
  26446. s.Count = &v
  26447. return s
  26448. }
  26449. // SetPorts sets the Ports field's value.
  26450. func (s *MetricValue) SetPorts(v []*int64) *MetricValue {
  26451. s.Ports = v
  26452. return s
  26453. }
  26454. // Information about the resource that was non-compliant with the audit check.
  26455. type NonCompliantResource struct {
  26456. _ struct{} `type:"structure"`
  26457. // Additional information about the non-compliant resource.
  26458. AdditionalInfo map[string]*string `locationName:"additionalInfo" type:"map"`
  26459. // Information identifying the non-compliant resource.
  26460. ResourceIdentifier *ResourceIdentifier `locationName:"resourceIdentifier" type:"structure"`
  26461. // The type of the non-compliant resource.
  26462. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"`
  26463. }
  26464. // String returns the string representation
  26465. func (s NonCompliantResource) String() string {
  26466. return awsutil.Prettify(s)
  26467. }
  26468. // GoString returns the string representation
  26469. func (s NonCompliantResource) GoString() string {
  26470. return s.String()
  26471. }
  26472. // SetAdditionalInfo sets the AdditionalInfo field's value.
  26473. func (s *NonCompliantResource) SetAdditionalInfo(v map[string]*string) *NonCompliantResource {
  26474. s.AdditionalInfo = v
  26475. return s
  26476. }
  26477. // SetResourceIdentifier sets the ResourceIdentifier field's value.
  26478. func (s *NonCompliantResource) SetResourceIdentifier(v *ResourceIdentifier) *NonCompliantResource {
  26479. s.ResourceIdentifier = v
  26480. return s
  26481. }
  26482. // SetResourceType sets the ResourceType field's value.
  26483. func (s *NonCompliantResource) SetResourceType(v string) *NonCompliantResource {
  26484. s.ResourceType = &v
  26485. return s
  26486. }
  26487. // Describes a file to be associated with an OTA update.
  26488. type OTAUpdateFile struct {
  26489. _ struct{} `type:"structure"`
  26490. // A list of name/attribute pairs.
  26491. Attributes map[string]*string `locationName:"attributes" type:"map"`
  26492. // The code signing method of the file.
  26493. CodeSigning *CodeSigning `locationName:"codeSigning" type:"structure"`
  26494. // The location of the updated firmware.
  26495. FileLocation *FileLocation `locationName:"fileLocation" type:"structure"`
  26496. // The name of the file.
  26497. FileName *string `locationName:"fileName" type:"string"`
  26498. // The file version.
  26499. FileVersion *string `locationName:"fileVersion" type:"string"`
  26500. }
  26501. // String returns the string representation
  26502. func (s OTAUpdateFile) String() string {
  26503. return awsutil.Prettify(s)
  26504. }
  26505. // GoString returns the string representation
  26506. func (s OTAUpdateFile) GoString() string {
  26507. return s.String()
  26508. }
  26509. // Validate inspects the fields of the type to determine if they are valid.
  26510. func (s *OTAUpdateFile) Validate() error {
  26511. invalidParams := request.ErrInvalidParams{Context: "OTAUpdateFile"}
  26512. if s.CodeSigning != nil {
  26513. if err := s.CodeSigning.Validate(); err != nil {
  26514. invalidParams.AddNested("CodeSigning", err.(request.ErrInvalidParams))
  26515. }
  26516. }
  26517. if s.FileLocation != nil {
  26518. if err := s.FileLocation.Validate(); err != nil {
  26519. invalidParams.AddNested("FileLocation", err.(request.ErrInvalidParams))
  26520. }
  26521. }
  26522. if invalidParams.Len() > 0 {
  26523. return invalidParams
  26524. }
  26525. return nil
  26526. }
  26527. // SetAttributes sets the Attributes field's value.
  26528. func (s *OTAUpdateFile) SetAttributes(v map[string]*string) *OTAUpdateFile {
  26529. s.Attributes = v
  26530. return s
  26531. }
  26532. // SetCodeSigning sets the CodeSigning field's value.
  26533. func (s *OTAUpdateFile) SetCodeSigning(v *CodeSigning) *OTAUpdateFile {
  26534. s.CodeSigning = v
  26535. return s
  26536. }
  26537. // SetFileLocation sets the FileLocation field's value.
  26538. func (s *OTAUpdateFile) SetFileLocation(v *FileLocation) *OTAUpdateFile {
  26539. s.FileLocation = v
  26540. return s
  26541. }
  26542. // SetFileName sets the FileName field's value.
  26543. func (s *OTAUpdateFile) SetFileName(v string) *OTAUpdateFile {
  26544. s.FileName = &v
  26545. return s
  26546. }
  26547. // SetFileVersion sets the FileVersion field's value.
  26548. func (s *OTAUpdateFile) SetFileVersion(v string) *OTAUpdateFile {
  26549. s.FileVersion = &v
  26550. return s
  26551. }
  26552. // Information about an OTA update.
  26553. type OTAUpdateInfo struct {
  26554. _ struct{} `type:"structure"`
  26555. // A collection of name/value pairs
  26556. AdditionalParameters map[string]*string `locationName:"additionalParameters" type:"map"`
  26557. // The AWS IoT job ARN associated with the OTA update.
  26558. AwsIotJobArn *string `locationName:"awsIotJobArn" type:"string"`
  26559. // The AWS IoT job ID associated with the OTA update.
  26560. AwsIotJobId *string `locationName:"awsIotJobId" type:"string"`
  26561. // Configuration for the rollout of OTA updates.
  26562. AwsJobExecutionsRolloutConfig *AwsJobExecutionsRolloutConfig `locationName:"awsJobExecutionsRolloutConfig" type:"structure"`
  26563. // The date when the OTA update was created.
  26564. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  26565. // A description of the OTA update.
  26566. Description *string `locationName:"description" type:"string"`
  26567. // Error information associated with the OTA update.
  26568. ErrorInfo *ErrorInfo `locationName:"errorInfo" type:"structure"`
  26569. // The date when the OTA update was last updated.
  26570. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  26571. // The OTA update ARN.
  26572. OtaUpdateArn *string `locationName:"otaUpdateArn" type:"string"`
  26573. // A list of files associated with the OTA update.
  26574. OtaUpdateFiles []*OTAUpdateFile `locationName:"otaUpdateFiles" min:"1" type:"list"`
  26575. // The OTA update ID.
  26576. OtaUpdateId *string `locationName:"otaUpdateId" min:"1" type:"string"`
  26577. // The status of the OTA update.
  26578. OtaUpdateStatus *string `locationName:"otaUpdateStatus" type:"string" enum:"OTAUpdateStatus"`
  26579. // Specifies whether the OTA update will continue to run (CONTINUOUS), or will
  26580. // be complete after all those things specified as targets have completed the
  26581. // OTA update (SNAPSHOT). If continuous, the OTA update may also be run on a
  26582. // thing when a change is detected in a target. For example, an OTA update will
  26583. // run on a thing when the thing is added to a target group, even after the
  26584. // OTA update was completed by all things originally in the group.
  26585. TargetSelection *string `locationName:"targetSelection" type:"string" enum:"TargetSelection"`
  26586. // The targets of the OTA update.
  26587. Targets []*string `locationName:"targets" min:"1" type:"list"`
  26588. }
  26589. // String returns the string representation
  26590. func (s OTAUpdateInfo) String() string {
  26591. return awsutil.Prettify(s)
  26592. }
  26593. // GoString returns the string representation
  26594. func (s OTAUpdateInfo) GoString() string {
  26595. return s.String()
  26596. }
  26597. // SetAdditionalParameters sets the AdditionalParameters field's value.
  26598. func (s *OTAUpdateInfo) SetAdditionalParameters(v map[string]*string) *OTAUpdateInfo {
  26599. s.AdditionalParameters = v
  26600. return s
  26601. }
  26602. // SetAwsIotJobArn sets the AwsIotJobArn field's value.
  26603. func (s *OTAUpdateInfo) SetAwsIotJobArn(v string) *OTAUpdateInfo {
  26604. s.AwsIotJobArn = &v
  26605. return s
  26606. }
  26607. // SetAwsIotJobId sets the AwsIotJobId field's value.
  26608. func (s *OTAUpdateInfo) SetAwsIotJobId(v string) *OTAUpdateInfo {
  26609. s.AwsIotJobId = &v
  26610. return s
  26611. }
  26612. // SetAwsJobExecutionsRolloutConfig sets the AwsJobExecutionsRolloutConfig field's value.
  26613. func (s *OTAUpdateInfo) SetAwsJobExecutionsRolloutConfig(v *AwsJobExecutionsRolloutConfig) *OTAUpdateInfo {
  26614. s.AwsJobExecutionsRolloutConfig = v
  26615. return s
  26616. }
  26617. // SetCreationDate sets the CreationDate field's value.
  26618. func (s *OTAUpdateInfo) SetCreationDate(v time.Time) *OTAUpdateInfo {
  26619. s.CreationDate = &v
  26620. return s
  26621. }
  26622. // SetDescription sets the Description field's value.
  26623. func (s *OTAUpdateInfo) SetDescription(v string) *OTAUpdateInfo {
  26624. s.Description = &v
  26625. return s
  26626. }
  26627. // SetErrorInfo sets the ErrorInfo field's value.
  26628. func (s *OTAUpdateInfo) SetErrorInfo(v *ErrorInfo) *OTAUpdateInfo {
  26629. s.ErrorInfo = v
  26630. return s
  26631. }
  26632. // SetLastModifiedDate sets the LastModifiedDate field's value.
  26633. func (s *OTAUpdateInfo) SetLastModifiedDate(v time.Time) *OTAUpdateInfo {
  26634. s.LastModifiedDate = &v
  26635. return s
  26636. }
  26637. // SetOtaUpdateArn sets the OtaUpdateArn field's value.
  26638. func (s *OTAUpdateInfo) SetOtaUpdateArn(v string) *OTAUpdateInfo {
  26639. s.OtaUpdateArn = &v
  26640. return s
  26641. }
  26642. // SetOtaUpdateFiles sets the OtaUpdateFiles field's value.
  26643. func (s *OTAUpdateInfo) SetOtaUpdateFiles(v []*OTAUpdateFile) *OTAUpdateInfo {
  26644. s.OtaUpdateFiles = v
  26645. return s
  26646. }
  26647. // SetOtaUpdateId sets the OtaUpdateId field's value.
  26648. func (s *OTAUpdateInfo) SetOtaUpdateId(v string) *OTAUpdateInfo {
  26649. s.OtaUpdateId = &v
  26650. return s
  26651. }
  26652. // SetOtaUpdateStatus sets the OtaUpdateStatus field's value.
  26653. func (s *OTAUpdateInfo) SetOtaUpdateStatus(v string) *OTAUpdateInfo {
  26654. s.OtaUpdateStatus = &v
  26655. return s
  26656. }
  26657. // SetTargetSelection sets the TargetSelection field's value.
  26658. func (s *OTAUpdateInfo) SetTargetSelection(v string) *OTAUpdateInfo {
  26659. s.TargetSelection = &v
  26660. return s
  26661. }
  26662. // SetTargets sets the Targets field's value.
  26663. func (s *OTAUpdateInfo) SetTargets(v []*string) *OTAUpdateInfo {
  26664. s.Targets = v
  26665. return s
  26666. }
  26667. // An OTA update summary.
  26668. type OTAUpdateSummary struct {
  26669. _ struct{} `type:"structure"`
  26670. // The date when the OTA update was created.
  26671. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  26672. // The OTA update ARN.
  26673. OtaUpdateArn *string `locationName:"otaUpdateArn" type:"string"`
  26674. // The OTA update ID.
  26675. OtaUpdateId *string `locationName:"otaUpdateId" min:"1" type:"string"`
  26676. }
  26677. // String returns the string representation
  26678. func (s OTAUpdateSummary) String() string {
  26679. return awsutil.Prettify(s)
  26680. }
  26681. // GoString returns the string representation
  26682. func (s OTAUpdateSummary) GoString() string {
  26683. return s.String()
  26684. }
  26685. // SetCreationDate sets the CreationDate field's value.
  26686. func (s *OTAUpdateSummary) SetCreationDate(v time.Time) *OTAUpdateSummary {
  26687. s.CreationDate = &v
  26688. return s
  26689. }
  26690. // SetOtaUpdateArn sets the OtaUpdateArn field's value.
  26691. func (s *OTAUpdateSummary) SetOtaUpdateArn(v string) *OTAUpdateSummary {
  26692. s.OtaUpdateArn = &v
  26693. return s
  26694. }
  26695. // SetOtaUpdateId sets the OtaUpdateId field's value.
  26696. func (s *OTAUpdateSummary) SetOtaUpdateId(v string) *OTAUpdateSummary {
  26697. s.OtaUpdateId = &v
  26698. return s
  26699. }
  26700. // A certificate that has been transferred but not yet accepted.
  26701. type OutgoingCertificate struct {
  26702. _ struct{} `type:"structure"`
  26703. // The certificate ARN.
  26704. CertificateArn *string `locationName:"certificateArn" type:"string"`
  26705. // The certificate ID.
  26706. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  26707. // The certificate creation date.
  26708. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  26709. // The date the transfer was initiated.
  26710. TransferDate *time.Time `locationName:"transferDate" type:"timestamp"`
  26711. // The transfer message.
  26712. TransferMessage *string `locationName:"transferMessage" type:"string"`
  26713. // The AWS account to which the transfer was made.
  26714. TransferredTo *string `locationName:"transferredTo" min:"12" type:"string"`
  26715. }
  26716. // String returns the string representation
  26717. func (s OutgoingCertificate) String() string {
  26718. return awsutil.Prettify(s)
  26719. }
  26720. // GoString returns the string representation
  26721. func (s OutgoingCertificate) GoString() string {
  26722. return s.String()
  26723. }
  26724. // SetCertificateArn sets the CertificateArn field's value.
  26725. func (s *OutgoingCertificate) SetCertificateArn(v string) *OutgoingCertificate {
  26726. s.CertificateArn = &v
  26727. return s
  26728. }
  26729. // SetCertificateId sets the CertificateId field's value.
  26730. func (s *OutgoingCertificate) SetCertificateId(v string) *OutgoingCertificate {
  26731. s.CertificateId = &v
  26732. return s
  26733. }
  26734. // SetCreationDate sets the CreationDate field's value.
  26735. func (s *OutgoingCertificate) SetCreationDate(v time.Time) *OutgoingCertificate {
  26736. s.CreationDate = &v
  26737. return s
  26738. }
  26739. // SetTransferDate sets the TransferDate field's value.
  26740. func (s *OutgoingCertificate) SetTransferDate(v time.Time) *OutgoingCertificate {
  26741. s.TransferDate = &v
  26742. return s
  26743. }
  26744. // SetTransferMessage sets the TransferMessage field's value.
  26745. func (s *OutgoingCertificate) SetTransferMessage(v string) *OutgoingCertificate {
  26746. s.TransferMessage = &v
  26747. return s
  26748. }
  26749. // SetTransferredTo sets the TransferredTo field's value.
  26750. func (s *OutgoingCertificate) SetTransferredTo(v string) *OutgoingCertificate {
  26751. s.TransferredTo = &v
  26752. return s
  26753. }
  26754. // Describes an AWS IoT policy.
  26755. type Policy struct {
  26756. _ struct{} `type:"structure"`
  26757. // The policy ARN.
  26758. PolicyArn *string `locationName:"policyArn" type:"string"`
  26759. // The policy name.
  26760. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  26761. }
  26762. // String returns the string representation
  26763. func (s Policy) String() string {
  26764. return awsutil.Prettify(s)
  26765. }
  26766. // GoString returns the string representation
  26767. func (s Policy) GoString() string {
  26768. return s.String()
  26769. }
  26770. // SetPolicyArn sets the PolicyArn field's value.
  26771. func (s *Policy) SetPolicyArn(v string) *Policy {
  26772. s.PolicyArn = &v
  26773. return s
  26774. }
  26775. // SetPolicyName sets the PolicyName field's value.
  26776. func (s *Policy) SetPolicyName(v string) *Policy {
  26777. s.PolicyName = &v
  26778. return s
  26779. }
  26780. // Describes a policy version.
  26781. type PolicyVersion struct {
  26782. _ struct{} `type:"structure"`
  26783. // The date and time the policy was created.
  26784. CreateDate *time.Time `locationName:"createDate" type:"timestamp"`
  26785. // Specifies whether the policy version is the default.
  26786. IsDefaultVersion *bool `locationName:"isDefaultVersion" type:"boolean"`
  26787. // The policy version ID.
  26788. VersionId *string `locationName:"versionId" type:"string"`
  26789. }
  26790. // String returns the string representation
  26791. func (s PolicyVersion) String() string {
  26792. return awsutil.Prettify(s)
  26793. }
  26794. // GoString returns the string representation
  26795. func (s PolicyVersion) GoString() string {
  26796. return s.String()
  26797. }
  26798. // SetCreateDate sets the CreateDate field's value.
  26799. func (s *PolicyVersion) SetCreateDate(v time.Time) *PolicyVersion {
  26800. s.CreateDate = &v
  26801. return s
  26802. }
  26803. // SetIsDefaultVersion sets the IsDefaultVersion field's value.
  26804. func (s *PolicyVersion) SetIsDefaultVersion(v bool) *PolicyVersion {
  26805. s.IsDefaultVersion = &v
  26806. return s
  26807. }
  26808. // SetVersionId sets the VersionId field's value.
  26809. func (s *PolicyVersion) SetVersionId(v string) *PolicyVersion {
  26810. s.VersionId = &v
  26811. return s
  26812. }
  26813. // Information about the version of the policy associated with the resource.
  26814. type PolicyVersionIdentifier struct {
  26815. _ struct{} `type:"structure"`
  26816. // The name of the policy.
  26817. PolicyName *string `locationName:"policyName" min:"1" type:"string"`
  26818. // The ID of the version of the policy associated with the resource.
  26819. PolicyVersionId *string `locationName:"policyVersionId" type:"string"`
  26820. }
  26821. // String returns the string representation
  26822. func (s PolicyVersionIdentifier) String() string {
  26823. return awsutil.Prettify(s)
  26824. }
  26825. // GoString returns the string representation
  26826. func (s PolicyVersionIdentifier) GoString() string {
  26827. return s.String()
  26828. }
  26829. // Validate inspects the fields of the type to determine if they are valid.
  26830. func (s *PolicyVersionIdentifier) Validate() error {
  26831. invalidParams := request.ErrInvalidParams{Context: "PolicyVersionIdentifier"}
  26832. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  26833. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  26834. }
  26835. if invalidParams.Len() > 0 {
  26836. return invalidParams
  26837. }
  26838. return nil
  26839. }
  26840. // SetPolicyName sets the PolicyName field's value.
  26841. func (s *PolicyVersionIdentifier) SetPolicyName(v string) *PolicyVersionIdentifier {
  26842. s.PolicyName = &v
  26843. return s
  26844. }
  26845. // SetPolicyVersionId sets the PolicyVersionId field's value.
  26846. func (s *PolicyVersionIdentifier) SetPolicyVersionId(v string) *PolicyVersionIdentifier {
  26847. s.PolicyVersionId = &v
  26848. return s
  26849. }
  26850. // Configuration for pre-signed S3 URLs.
  26851. type PresignedUrlConfig struct {
  26852. _ struct{} `type:"structure"`
  26853. // How long (in seconds) pre-signed URLs are valid. Valid values are 60 - 3600,
  26854. // the default value is 3600 seconds. Pre-signed URLs are generated when Jobs
  26855. // receives an MQTT request for the job document.
  26856. ExpiresInSec *int64 `locationName:"expiresInSec" min:"60" type:"long"`
  26857. // The ARN of an IAM role that grants grants permission to download files from
  26858. // the S3 bucket where the job data/updates are stored. The role must also grant
  26859. // permission for IoT to download the files.
  26860. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  26861. }
  26862. // String returns the string representation
  26863. func (s PresignedUrlConfig) String() string {
  26864. return awsutil.Prettify(s)
  26865. }
  26866. // GoString returns the string representation
  26867. func (s PresignedUrlConfig) GoString() string {
  26868. return s.String()
  26869. }
  26870. // Validate inspects the fields of the type to determine if they are valid.
  26871. func (s *PresignedUrlConfig) Validate() error {
  26872. invalidParams := request.ErrInvalidParams{Context: "PresignedUrlConfig"}
  26873. if s.ExpiresInSec != nil && *s.ExpiresInSec < 60 {
  26874. invalidParams.Add(request.NewErrParamMinValue("ExpiresInSec", 60))
  26875. }
  26876. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  26877. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  26878. }
  26879. if invalidParams.Len() > 0 {
  26880. return invalidParams
  26881. }
  26882. return nil
  26883. }
  26884. // SetExpiresInSec sets the ExpiresInSec field's value.
  26885. func (s *PresignedUrlConfig) SetExpiresInSec(v int64) *PresignedUrlConfig {
  26886. s.ExpiresInSec = &v
  26887. return s
  26888. }
  26889. // SetRoleArn sets the RoleArn field's value.
  26890. func (s *PresignedUrlConfig) SetRoleArn(v string) *PresignedUrlConfig {
  26891. s.RoleArn = &v
  26892. return s
  26893. }
  26894. // The input for the DynamoActionVS action that specifies the DynamoDB table
  26895. // to which the message data will be written.
  26896. type PutItemInput struct {
  26897. _ struct{} `type:"structure"`
  26898. // The table where the message data will be written
  26899. //
  26900. // TableName is a required field
  26901. TableName *string `locationName:"tableName" type:"string" required:"true"`
  26902. }
  26903. // String returns the string representation
  26904. func (s PutItemInput) String() string {
  26905. return awsutil.Prettify(s)
  26906. }
  26907. // GoString returns the string representation
  26908. func (s PutItemInput) GoString() string {
  26909. return s.String()
  26910. }
  26911. // Validate inspects the fields of the type to determine if they are valid.
  26912. func (s *PutItemInput) Validate() error {
  26913. invalidParams := request.ErrInvalidParams{Context: "PutItemInput"}
  26914. if s.TableName == nil {
  26915. invalidParams.Add(request.NewErrParamRequired("TableName"))
  26916. }
  26917. if invalidParams.Len() > 0 {
  26918. return invalidParams
  26919. }
  26920. return nil
  26921. }
  26922. // SetTableName sets the TableName field's value.
  26923. func (s *PutItemInput) SetTableName(v string) *PutItemInput {
  26924. s.TableName = &v
  26925. return s
  26926. }
  26927. // Allows you to define a criteria to initiate the increase in rate of rollout
  26928. // for a job.
  26929. type RateIncreaseCriteria struct {
  26930. _ struct{} `type:"structure"`
  26931. // The threshold for number of notified things that will initiate the increase
  26932. // in rate of rollout.
  26933. NumberOfNotifiedThings *int64 `locationName:"numberOfNotifiedThings" min:"1" type:"integer"`
  26934. // The threshold for number of succeeded things that will initiate the increase
  26935. // in rate of rollout.
  26936. NumberOfSucceededThings *int64 `locationName:"numberOfSucceededThings" min:"1" type:"integer"`
  26937. }
  26938. // String returns the string representation
  26939. func (s RateIncreaseCriteria) String() string {
  26940. return awsutil.Prettify(s)
  26941. }
  26942. // GoString returns the string representation
  26943. func (s RateIncreaseCriteria) GoString() string {
  26944. return s.String()
  26945. }
  26946. // Validate inspects the fields of the type to determine if they are valid.
  26947. func (s *RateIncreaseCriteria) Validate() error {
  26948. invalidParams := request.ErrInvalidParams{Context: "RateIncreaseCriteria"}
  26949. if s.NumberOfNotifiedThings != nil && *s.NumberOfNotifiedThings < 1 {
  26950. invalidParams.Add(request.NewErrParamMinValue("NumberOfNotifiedThings", 1))
  26951. }
  26952. if s.NumberOfSucceededThings != nil && *s.NumberOfSucceededThings < 1 {
  26953. invalidParams.Add(request.NewErrParamMinValue("NumberOfSucceededThings", 1))
  26954. }
  26955. if invalidParams.Len() > 0 {
  26956. return invalidParams
  26957. }
  26958. return nil
  26959. }
  26960. // SetNumberOfNotifiedThings sets the NumberOfNotifiedThings field's value.
  26961. func (s *RateIncreaseCriteria) SetNumberOfNotifiedThings(v int64) *RateIncreaseCriteria {
  26962. s.NumberOfNotifiedThings = &v
  26963. return s
  26964. }
  26965. // SetNumberOfSucceededThings sets the NumberOfSucceededThings field's value.
  26966. func (s *RateIncreaseCriteria) SetNumberOfSucceededThings(v int64) *RateIncreaseCriteria {
  26967. s.NumberOfSucceededThings = &v
  26968. return s
  26969. }
  26970. // The input to the RegisterCACertificate operation.
  26971. type RegisterCACertificateInput struct {
  26972. _ struct{} `type:"structure"`
  26973. // Allows this CA certificate to be used for auto registration of device certificates.
  26974. AllowAutoRegistration *bool `location:"querystring" locationName:"allowAutoRegistration" type:"boolean"`
  26975. // The CA certificate.
  26976. //
  26977. // CaCertificate is a required field
  26978. CaCertificate *string `locationName:"caCertificate" min:"1" type:"string" required:"true"`
  26979. // Information about the registration configuration.
  26980. RegistrationConfig *RegistrationConfig `locationName:"registrationConfig" type:"structure"`
  26981. // A boolean value that specifies if the CA certificate is set to active.
  26982. SetAsActive *bool `location:"querystring" locationName:"setAsActive" type:"boolean"`
  26983. // The private key verification certificate.
  26984. //
  26985. // VerificationCertificate is a required field
  26986. VerificationCertificate *string `locationName:"verificationCertificate" min:"1" type:"string" required:"true"`
  26987. }
  26988. // String returns the string representation
  26989. func (s RegisterCACertificateInput) String() string {
  26990. return awsutil.Prettify(s)
  26991. }
  26992. // GoString returns the string representation
  26993. func (s RegisterCACertificateInput) GoString() string {
  26994. return s.String()
  26995. }
  26996. // Validate inspects the fields of the type to determine if they are valid.
  26997. func (s *RegisterCACertificateInput) Validate() error {
  26998. invalidParams := request.ErrInvalidParams{Context: "RegisterCACertificateInput"}
  26999. if s.CaCertificate == nil {
  27000. invalidParams.Add(request.NewErrParamRequired("CaCertificate"))
  27001. }
  27002. if s.CaCertificate != nil && len(*s.CaCertificate) < 1 {
  27003. invalidParams.Add(request.NewErrParamMinLen("CaCertificate", 1))
  27004. }
  27005. if s.VerificationCertificate == nil {
  27006. invalidParams.Add(request.NewErrParamRequired("VerificationCertificate"))
  27007. }
  27008. if s.VerificationCertificate != nil && len(*s.VerificationCertificate) < 1 {
  27009. invalidParams.Add(request.NewErrParamMinLen("VerificationCertificate", 1))
  27010. }
  27011. if s.RegistrationConfig != nil {
  27012. if err := s.RegistrationConfig.Validate(); err != nil {
  27013. invalidParams.AddNested("RegistrationConfig", err.(request.ErrInvalidParams))
  27014. }
  27015. }
  27016. if invalidParams.Len() > 0 {
  27017. return invalidParams
  27018. }
  27019. return nil
  27020. }
  27021. // SetAllowAutoRegistration sets the AllowAutoRegistration field's value.
  27022. func (s *RegisterCACertificateInput) SetAllowAutoRegistration(v bool) *RegisterCACertificateInput {
  27023. s.AllowAutoRegistration = &v
  27024. return s
  27025. }
  27026. // SetCaCertificate sets the CaCertificate field's value.
  27027. func (s *RegisterCACertificateInput) SetCaCertificate(v string) *RegisterCACertificateInput {
  27028. s.CaCertificate = &v
  27029. return s
  27030. }
  27031. // SetRegistrationConfig sets the RegistrationConfig field's value.
  27032. func (s *RegisterCACertificateInput) SetRegistrationConfig(v *RegistrationConfig) *RegisterCACertificateInput {
  27033. s.RegistrationConfig = v
  27034. return s
  27035. }
  27036. // SetSetAsActive sets the SetAsActive field's value.
  27037. func (s *RegisterCACertificateInput) SetSetAsActive(v bool) *RegisterCACertificateInput {
  27038. s.SetAsActive = &v
  27039. return s
  27040. }
  27041. // SetVerificationCertificate sets the VerificationCertificate field's value.
  27042. func (s *RegisterCACertificateInput) SetVerificationCertificate(v string) *RegisterCACertificateInput {
  27043. s.VerificationCertificate = &v
  27044. return s
  27045. }
  27046. // The output from the RegisterCACertificateResponse operation.
  27047. type RegisterCACertificateOutput struct {
  27048. _ struct{} `type:"structure"`
  27049. // The CA certificate ARN.
  27050. CertificateArn *string `locationName:"certificateArn" type:"string"`
  27051. // The CA certificate identifier.
  27052. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  27053. }
  27054. // String returns the string representation
  27055. func (s RegisterCACertificateOutput) String() string {
  27056. return awsutil.Prettify(s)
  27057. }
  27058. // GoString returns the string representation
  27059. func (s RegisterCACertificateOutput) GoString() string {
  27060. return s.String()
  27061. }
  27062. // SetCertificateArn sets the CertificateArn field's value.
  27063. func (s *RegisterCACertificateOutput) SetCertificateArn(v string) *RegisterCACertificateOutput {
  27064. s.CertificateArn = &v
  27065. return s
  27066. }
  27067. // SetCertificateId sets the CertificateId field's value.
  27068. func (s *RegisterCACertificateOutput) SetCertificateId(v string) *RegisterCACertificateOutput {
  27069. s.CertificateId = &v
  27070. return s
  27071. }
  27072. // The input to the RegisterCertificate operation.
  27073. type RegisterCertificateInput struct {
  27074. _ struct{} `type:"structure"`
  27075. // The CA certificate used to sign the device certificate being registered.
  27076. CaCertificatePem *string `locationName:"caCertificatePem" min:"1" type:"string"`
  27077. // The certificate data, in PEM format.
  27078. //
  27079. // CertificatePem is a required field
  27080. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string" required:"true"`
  27081. // A boolean value that specifies if the CA certificate is set to active.
  27082. //
  27083. // Deprecated: SetAsActive has been deprecated
  27084. SetAsActive *bool `location:"querystring" locationName:"setAsActive" deprecated:"true" type:"boolean"`
  27085. // The status of the register certificate request.
  27086. Status *string `locationName:"status" type:"string" enum:"CertificateStatus"`
  27087. }
  27088. // String returns the string representation
  27089. func (s RegisterCertificateInput) String() string {
  27090. return awsutil.Prettify(s)
  27091. }
  27092. // GoString returns the string representation
  27093. func (s RegisterCertificateInput) GoString() string {
  27094. return s.String()
  27095. }
  27096. // Validate inspects the fields of the type to determine if they are valid.
  27097. func (s *RegisterCertificateInput) Validate() error {
  27098. invalidParams := request.ErrInvalidParams{Context: "RegisterCertificateInput"}
  27099. if s.CaCertificatePem != nil && len(*s.CaCertificatePem) < 1 {
  27100. invalidParams.Add(request.NewErrParamMinLen("CaCertificatePem", 1))
  27101. }
  27102. if s.CertificatePem == nil {
  27103. invalidParams.Add(request.NewErrParamRequired("CertificatePem"))
  27104. }
  27105. if s.CertificatePem != nil && len(*s.CertificatePem) < 1 {
  27106. invalidParams.Add(request.NewErrParamMinLen("CertificatePem", 1))
  27107. }
  27108. if invalidParams.Len() > 0 {
  27109. return invalidParams
  27110. }
  27111. return nil
  27112. }
  27113. // SetCaCertificatePem sets the CaCertificatePem field's value.
  27114. func (s *RegisterCertificateInput) SetCaCertificatePem(v string) *RegisterCertificateInput {
  27115. s.CaCertificatePem = &v
  27116. return s
  27117. }
  27118. // SetCertificatePem sets the CertificatePem field's value.
  27119. func (s *RegisterCertificateInput) SetCertificatePem(v string) *RegisterCertificateInput {
  27120. s.CertificatePem = &v
  27121. return s
  27122. }
  27123. // SetSetAsActive sets the SetAsActive field's value.
  27124. func (s *RegisterCertificateInput) SetSetAsActive(v bool) *RegisterCertificateInput {
  27125. s.SetAsActive = &v
  27126. return s
  27127. }
  27128. // SetStatus sets the Status field's value.
  27129. func (s *RegisterCertificateInput) SetStatus(v string) *RegisterCertificateInput {
  27130. s.Status = &v
  27131. return s
  27132. }
  27133. // The output from the RegisterCertificate operation.
  27134. type RegisterCertificateOutput struct {
  27135. _ struct{} `type:"structure"`
  27136. // The certificate ARN.
  27137. CertificateArn *string `locationName:"certificateArn" type:"string"`
  27138. // The certificate identifier.
  27139. CertificateId *string `locationName:"certificateId" min:"64" type:"string"`
  27140. }
  27141. // String returns the string representation
  27142. func (s RegisterCertificateOutput) String() string {
  27143. return awsutil.Prettify(s)
  27144. }
  27145. // GoString returns the string representation
  27146. func (s RegisterCertificateOutput) GoString() string {
  27147. return s.String()
  27148. }
  27149. // SetCertificateArn sets the CertificateArn field's value.
  27150. func (s *RegisterCertificateOutput) SetCertificateArn(v string) *RegisterCertificateOutput {
  27151. s.CertificateArn = &v
  27152. return s
  27153. }
  27154. // SetCertificateId sets the CertificateId field's value.
  27155. func (s *RegisterCertificateOutput) SetCertificateId(v string) *RegisterCertificateOutput {
  27156. s.CertificateId = &v
  27157. return s
  27158. }
  27159. type RegisterThingInput struct {
  27160. _ struct{} `type:"structure"`
  27161. // The parameters for provisioning a thing. See Programmatic Provisioning (http://docs.aws.amazon.com/iot/latest/developerguide/programmatic-provisioning.html)
  27162. // for more information.
  27163. Parameters map[string]*string `locationName:"parameters" type:"map"`
  27164. // The provisioning template. See Programmatic Provisioning (http://docs.aws.amazon.com/iot/latest/developerguide/programmatic-provisioning.html)
  27165. // for more information.
  27166. //
  27167. // TemplateBody is a required field
  27168. TemplateBody *string `locationName:"templateBody" type:"string" required:"true"`
  27169. }
  27170. // String returns the string representation
  27171. func (s RegisterThingInput) String() string {
  27172. return awsutil.Prettify(s)
  27173. }
  27174. // GoString returns the string representation
  27175. func (s RegisterThingInput) GoString() string {
  27176. return s.String()
  27177. }
  27178. // Validate inspects the fields of the type to determine if they are valid.
  27179. func (s *RegisterThingInput) Validate() error {
  27180. invalidParams := request.ErrInvalidParams{Context: "RegisterThingInput"}
  27181. if s.TemplateBody == nil {
  27182. invalidParams.Add(request.NewErrParamRequired("TemplateBody"))
  27183. }
  27184. if invalidParams.Len() > 0 {
  27185. return invalidParams
  27186. }
  27187. return nil
  27188. }
  27189. // SetParameters sets the Parameters field's value.
  27190. func (s *RegisterThingInput) SetParameters(v map[string]*string) *RegisterThingInput {
  27191. s.Parameters = v
  27192. return s
  27193. }
  27194. // SetTemplateBody sets the TemplateBody field's value.
  27195. func (s *RegisterThingInput) SetTemplateBody(v string) *RegisterThingInput {
  27196. s.TemplateBody = &v
  27197. return s
  27198. }
  27199. type RegisterThingOutput struct {
  27200. _ struct{} `type:"structure"`
  27201. // .
  27202. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"`
  27203. // ARNs for the generated resources.
  27204. ResourceArns map[string]*string `locationName:"resourceArns" type:"map"`
  27205. }
  27206. // String returns the string representation
  27207. func (s RegisterThingOutput) String() string {
  27208. return awsutil.Prettify(s)
  27209. }
  27210. // GoString returns the string representation
  27211. func (s RegisterThingOutput) GoString() string {
  27212. return s.String()
  27213. }
  27214. // SetCertificatePem sets the CertificatePem field's value.
  27215. func (s *RegisterThingOutput) SetCertificatePem(v string) *RegisterThingOutput {
  27216. s.CertificatePem = &v
  27217. return s
  27218. }
  27219. // SetResourceArns sets the ResourceArns field's value.
  27220. func (s *RegisterThingOutput) SetResourceArns(v map[string]*string) *RegisterThingOutput {
  27221. s.ResourceArns = v
  27222. return s
  27223. }
  27224. // The registration configuration.
  27225. type RegistrationConfig struct {
  27226. _ struct{} `type:"structure"`
  27227. // The ARN of the role.
  27228. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  27229. // The template body.
  27230. TemplateBody *string `locationName:"templateBody" type:"string"`
  27231. }
  27232. // String returns the string representation
  27233. func (s RegistrationConfig) String() string {
  27234. return awsutil.Prettify(s)
  27235. }
  27236. // GoString returns the string representation
  27237. func (s RegistrationConfig) GoString() string {
  27238. return s.String()
  27239. }
  27240. // Validate inspects the fields of the type to determine if they are valid.
  27241. func (s *RegistrationConfig) Validate() error {
  27242. invalidParams := request.ErrInvalidParams{Context: "RegistrationConfig"}
  27243. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  27244. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  27245. }
  27246. if invalidParams.Len() > 0 {
  27247. return invalidParams
  27248. }
  27249. return nil
  27250. }
  27251. // SetRoleArn sets the RoleArn field's value.
  27252. func (s *RegistrationConfig) SetRoleArn(v string) *RegistrationConfig {
  27253. s.RoleArn = &v
  27254. return s
  27255. }
  27256. // SetTemplateBody sets the TemplateBody field's value.
  27257. func (s *RegistrationConfig) SetTemplateBody(v string) *RegistrationConfig {
  27258. s.TemplateBody = &v
  27259. return s
  27260. }
  27261. // The input for the RejectCertificateTransfer operation.
  27262. type RejectCertificateTransferInput struct {
  27263. _ struct{} `type:"structure"`
  27264. // The ID of the certificate. (The last part of the certificate ARN contains
  27265. // the certificate ID.)
  27266. //
  27267. // CertificateId is a required field
  27268. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  27269. // The reason the certificate transfer was rejected.
  27270. RejectReason *string `locationName:"rejectReason" type:"string"`
  27271. }
  27272. // String returns the string representation
  27273. func (s RejectCertificateTransferInput) String() string {
  27274. return awsutil.Prettify(s)
  27275. }
  27276. // GoString returns the string representation
  27277. func (s RejectCertificateTransferInput) GoString() string {
  27278. return s.String()
  27279. }
  27280. // Validate inspects the fields of the type to determine if they are valid.
  27281. func (s *RejectCertificateTransferInput) Validate() error {
  27282. invalidParams := request.ErrInvalidParams{Context: "RejectCertificateTransferInput"}
  27283. if s.CertificateId == nil {
  27284. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  27285. }
  27286. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  27287. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  27288. }
  27289. if invalidParams.Len() > 0 {
  27290. return invalidParams
  27291. }
  27292. return nil
  27293. }
  27294. // SetCertificateId sets the CertificateId field's value.
  27295. func (s *RejectCertificateTransferInput) SetCertificateId(v string) *RejectCertificateTransferInput {
  27296. s.CertificateId = &v
  27297. return s
  27298. }
  27299. // SetRejectReason sets the RejectReason field's value.
  27300. func (s *RejectCertificateTransferInput) SetRejectReason(v string) *RejectCertificateTransferInput {
  27301. s.RejectReason = &v
  27302. return s
  27303. }
  27304. type RejectCertificateTransferOutput struct {
  27305. _ struct{} `type:"structure"`
  27306. }
  27307. // String returns the string representation
  27308. func (s RejectCertificateTransferOutput) String() string {
  27309. return awsutil.Prettify(s)
  27310. }
  27311. // GoString returns the string representation
  27312. func (s RejectCertificateTransferOutput) GoString() string {
  27313. return s.String()
  27314. }
  27315. // Information about a related resource.
  27316. type RelatedResource struct {
  27317. _ struct{} `type:"structure"`
  27318. // Additional information about the resource.
  27319. AdditionalInfo map[string]*string `locationName:"additionalInfo" type:"map"`
  27320. // Information identifying the resource.
  27321. ResourceIdentifier *ResourceIdentifier `locationName:"resourceIdentifier" type:"structure"`
  27322. // The type of resource.
  27323. ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"`
  27324. }
  27325. // String returns the string representation
  27326. func (s RelatedResource) String() string {
  27327. return awsutil.Prettify(s)
  27328. }
  27329. // GoString returns the string representation
  27330. func (s RelatedResource) GoString() string {
  27331. return s.String()
  27332. }
  27333. // SetAdditionalInfo sets the AdditionalInfo field's value.
  27334. func (s *RelatedResource) SetAdditionalInfo(v map[string]*string) *RelatedResource {
  27335. s.AdditionalInfo = v
  27336. return s
  27337. }
  27338. // SetResourceIdentifier sets the ResourceIdentifier field's value.
  27339. func (s *RelatedResource) SetResourceIdentifier(v *ResourceIdentifier) *RelatedResource {
  27340. s.ResourceIdentifier = v
  27341. return s
  27342. }
  27343. // SetResourceType sets the ResourceType field's value.
  27344. func (s *RelatedResource) SetResourceType(v string) *RelatedResource {
  27345. s.ResourceType = &v
  27346. return s
  27347. }
  27348. type RemoveThingFromBillingGroupInput struct {
  27349. _ struct{} `type:"structure"`
  27350. // The ARN of the billing group.
  27351. BillingGroupArn *string `locationName:"billingGroupArn" type:"string"`
  27352. // The name of the billing group.
  27353. BillingGroupName *string `locationName:"billingGroupName" min:"1" type:"string"`
  27354. // The ARN of the thing to be removed from the billing group.
  27355. ThingArn *string `locationName:"thingArn" type:"string"`
  27356. // The name of the thing to be removed from the billing group.
  27357. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  27358. }
  27359. // String returns the string representation
  27360. func (s RemoveThingFromBillingGroupInput) String() string {
  27361. return awsutil.Prettify(s)
  27362. }
  27363. // GoString returns the string representation
  27364. func (s RemoveThingFromBillingGroupInput) GoString() string {
  27365. return s.String()
  27366. }
  27367. // Validate inspects the fields of the type to determine if they are valid.
  27368. func (s *RemoveThingFromBillingGroupInput) Validate() error {
  27369. invalidParams := request.ErrInvalidParams{Context: "RemoveThingFromBillingGroupInput"}
  27370. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  27371. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  27372. }
  27373. if s.ThingName != nil && len(*s.ThingName) < 1 {
  27374. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  27375. }
  27376. if invalidParams.Len() > 0 {
  27377. return invalidParams
  27378. }
  27379. return nil
  27380. }
  27381. // SetBillingGroupArn sets the BillingGroupArn field's value.
  27382. func (s *RemoveThingFromBillingGroupInput) SetBillingGroupArn(v string) *RemoveThingFromBillingGroupInput {
  27383. s.BillingGroupArn = &v
  27384. return s
  27385. }
  27386. // SetBillingGroupName sets the BillingGroupName field's value.
  27387. func (s *RemoveThingFromBillingGroupInput) SetBillingGroupName(v string) *RemoveThingFromBillingGroupInput {
  27388. s.BillingGroupName = &v
  27389. return s
  27390. }
  27391. // SetThingArn sets the ThingArn field's value.
  27392. func (s *RemoveThingFromBillingGroupInput) SetThingArn(v string) *RemoveThingFromBillingGroupInput {
  27393. s.ThingArn = &v
  27394. return s
  27395. }
  27396. // SetThingName sets the ThingName field's value.
  27397. func (s *RemoveThingFromBillingGroupInput) SetThingName(v string) *RemoveThingFromBillingGroupInput {
  27398. s.ThingName = &v
  27399. return s
  27400. }
  27401. type RemoveThingFromBillingGroupOutput struct {
  27402. _ struct{} `type:"structure"`
  27403. }
  27404. // String returns the string representation
  27405. func (s RemoveThingFromBillingGroupOutput) String() string {
  27406. return awsutil.Prettify(s)
  27407. }
  27408. // GoString returns the string representation
  27409. func (s RemoveThingFromBillingGroupOutput) GoString() string {
  27410. return s.String()
  27411. }
  27412. type RemoveThingFromThingGroupInput struct {
  27413. _ struct{} `type:"structure"`
  27414. // The ARN of the thing to remove from the group.
  27415. ThingArn *string `locationName:"thingArn" type:"string"`
  27416. // The group ARN.
  27417. ThingGroupArn *string `locationName:"thingGroupArn" type:"string"`
  27418. // The group name.
  27419. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  27420. // The name of the thing to remove from the group.
  27421. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  27422. }
  27423. // String returns the string representation
  27424. func (s RemoveThingFromThingGroupInput) String() string {
  27425. return awsutil.Prettify(s)
  27426. }
  27427. // GoString returns the string representation
  27428. func (s RemoveThingFromThingGroupInput) GoString() string {
  27429. return s.String()
  27430. }
  27431. // Validate inspects the fields of the type to determine if they are valid.
  27432. func (s *RemoveThingFromThingGroupInput) Validate() error {
  27433. invalidParams := request.ErrInvalidParams{Context: "RemoveThingFromThingGroupInput"}
  27434. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  27435. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  27436. }
  27437. if s.ThingName != nil && len(*s.ThingName) < 1 {
  27438. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  27439. }
  27440. if invalidParams.Len() > 0 {
  27441. return invalidParams
  27442. }
  27443. return nil
  27444. }
  27445. // SetThingArn sets the ThingArn field's value.
  27446. func (s *RemoveThingFromThingGroupInput) SetThingArn(v string) *RemoveThingFromThingGroupInput {
  27447. s.ThingArn = &v
  27448. return s
  27449. }
  27450. // SetThingGroupArn sets the ThingGroupArn field's value.
  27451. func (s *RemoveThingFromThingGroupInput) SetThingGroupArn(v string) *RemoveThingFromThingGroupInput {
  27452. s.ThingGroupArn = &v
  27453. return s
  27454. }
  27455. // SetThingGroupName sets the ThingGroupName field's value.
  27456. func (s *RemoveThingFromThingGroupInput) SetThingGroupName(v string) *RemoveThingFromThingGroupInput {
  27457. s.ThingGroupName = &v
  27458. return s
  27459. }
  27460. // SetThingName sets the ThingName field's value.
  27461. func (s *RemoveThingFromThingGroupInput) SetThingName(v string) *RemoveThingFromThingGroupInput {
  27462. s.ThingName = &v
  27463. return s
  27464. }
  27465. type RemoveThingFromThingGroupOutput struct {
  27466. _ struct{} `type:"structure"`
  27467. }
  27468. // String returns the string representation
  27469. func (s RemoveThingFromThingGroupOutput) String() string {
  27470. return awsutil.Prettify(s)
  27471. }
  27472. // GoString returns the string representation
  27473. func (s RemoveThingFromThingGroupOutput) GoString() string {
  27474. return s.String()
  27475. }
  27476. // The input for the ReplaceTopicRule operation.
  27477. type ReplaceTopicRuleInput struct {
  27478. _ struct{} `type:"structure" payload:"TopicRulePayload"`
  27479. // The name of the rule.
  27480. //
  27481. // RuleName is a required field
  27482. RuleName *string `location:"uri" locationName:"ruleName" min:"1" type:"string" required:"true"`
  27483. // The rule payload.
  27484. //
  27485. // TopicRulePayload is a required field
  27486. TopicRulePayload *TopicRulePayload `locationName:"topicRulePayload" type:"structure" required:"true"`
  27487. }
  27488. // String returns the string representation
  27489. func (s ReplaceTopicRuleInput) String() string {
  27490. return awsutil.Prettify(s)
  27491. }
  27492. // GoString returns the string representation
  27493. func (s ReplaceTopicRuleInput) GoString() string {
  27494. return s.String()
  27495. }
  27496. // Validate inspects the fields of the type to determine if they are valid.
  27497. func (s *ReplaceTopicRuleInput) Validate() error {
  27498. invalidParams := request.ErrInvalidParams{Context: "ReplaceTopicRuleInput"}
  27499. if s.RuleName == nil {
  27500. invalidParams.Add(request.NewErrParamRequired("RuleName"))
  27501. }
  27502. if s.RuleName != nil && len(*s.RuleName) < 1 {
  27503. invalidParams.Add(request.NewErrParamMinLen("RuleName", 1))
  27504. }
  27505. if s.TopicRulePayload == nil {
  27506. invalidParams.Add(request.NewErrParamRequired("TopicRulePayload"))
  27507. }
  27508. if s.TopicRulePayload != nil {
  27509. if err := s.TopicRulePayload.Validate(); err != nil {
  27510. invalidParams.AddNested("TopicRulePayload", err.(request.ErrInvalidParams))
  27511. }
  27512. }
  27513. if invalidParams.Len() > 0 {
  27514. return invalidParams
  27515. }
  27516. return nil
  27517. }
  27518. // SetRuleName sets the RuleName field's value.
  27519. func (s *ReplaceTopicRuleInput) SetRuleName(v string) *ReplaceTopicRuleInput {
  27520. s.RuleName = &v
  27521. return s
  27522. }
  27523. // SetTopicRulePayload sets the TopicRulePayload field's value.
  27524. func (s *ReplaceTopicRuleInput) SetTopicRulePayload(v *TopicRulePayload) *ReplaceTopicRuleInput {
  27525. s.TopicRulePayload = v
  27526. return s
  27527. }
  27528. type ReplaceTopicRuleOutput struct {
  27529. _ struct{} `type:"structure"`
  27530. }
  27531. // String returns the string representation
  27532. func (s ReplaceTopicRuleOutput) String() string {
  27533. return awsutil.Prettify(s)
  27534. }
  27535. // GoString returns the string representation
  27536. func (s ReplaceTopicRuleOutput) GoString() string {
  27537. return s.String()
  27538. }
  27539. // Describes an action to republish to another topic.
  27540. type RepublishAction struct {
  27541. _ struct{} `type:"structure"`
  27542. // The ARN of the IAM role that grants access.
  27543. //
  27544. // RoleArn is a required field
  27545. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  27546. // The name of the MQTT topic.
  27547. //
  27548. // Topic is a required field
  27549. Topic *string `locationName:"topic" type:"string" required:"true"`
  27550. }
  27551. // String returns the string representation
  27552. func (s RepublishAction) String() string {
  27553. return awsutil.Prettify(s)
  27554. }
  27555. // GoString returns the string representation
  27556. func (s RepublishAction) GoString() string {
  27557. return s.String()
  27558. }
  27559. // Validate inspects the fields of the type to determine if they are valid.
  27560. func (s *RepublishAction) Validate() error {
  27561. invalidParams := request.ErrInvalidParams{Context: "RepublishAction"}
  27562. if s.RoleArn == nil {
  27563. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  27564. }
  27565. if s.Topic == nil {
  27566. invalidParams.Add(request.NewErrParamRequired("Topic"))
  27567. }
  27568. if invalidParams.Len() > 0 {
  27569. return invalidParams
  27570. }
  27571. return nil
  27572. }
  27573. // SetRoleArn sets the RoleArn field's value.
  27574. func (s *RepublishAction) SetRoleArn(v string) *RepublishAction {
  27575. s.RoleArn = &v
  27576. return s
  27577. }
  27578. // SetTopic sets the Topic field's value.
  27579. func (s *RepublishAction) SetTopic(v string) *RepublishAction {
  27580. s.Topic = &v
  27581. return s
  27582. }
  27583. // Information identifying the non-compliant resource.
  27584. type ResourceIdentifier struct {
  27585. _ struct{} `type:"structure"`
  27586. // The account with which the resource is associated.
  27587. Account *string `locationName:"account" min:"12" type:"string"`
  27588. // The ID of the CA certificate used to authorize the certificate.
  27589. CaCertificateId *string `locationName:"caCertificateId" min:"64" type:"string"`
  27590. // The client ID.
  27591. ClientId *string `locationName:"clientId" type:"string"`
  27592. // The ID of the Cognito Identity Pool.
  27593. CognitoIdentityPoolId *string `locationName:"cognitoIdentityPoolId" type:"string"`
  27594. // The ID of the certificate attached to the resource.
  27595. DeviceCertificateId *string `locationName:"deviceCertificateId" min:"64" type:"string"`
  27596. // The version of the policy associated with the resource.
  27597. PolicyVersionIdentifier *PolicyVersionIdentifier `locationName:"policyVersionIdentifier" type:"structure"`
  27598. }
  27599. // String returns the string representation
  27600. func (s ResourceIdentifier) String() string {
  27601. return awsutil.Prettify(s)
  27602. }
  27603. // GoString returns the string representation
  27604. func (s ResourceIdentifier) GoString() string {
  27605. return s.String()
  27606. }
  27607. // Validate inspects the fields of the type to determine if they are valid.
  27608. func (s *ResourceIdentifier) Validate() error {
  27609. invalidParams := request.ErrInvalidParams{Context: "ResourceIdentifier"}
  27610. if s.Account != nil && len(*s.Account) < 12 {
  27611. invalidParams.Add(request.NewErrParamMinLen("Account", 12))
  27612. }
  27613. if s.CaCertificateId != nil && len(*s.CaCertificateId) < 64 {
  27614. invalidParams.Add(request.NewErrParamMinLen("CaCertificateId", 64))
  27615. }
  27616. if s.DeviceCertificateId != nil && len(*s.DeviceCertificateId) < 64 {
  27617. invalidParams.Add(request.NewErrParamMinLen("DeviceCertificateId", 64))
  27618. }
  27619. if s.PolicyVersionIdentifier != nil {
  27620. if err := s.PolicyVersionIdentifier.Validate(); err != nil {
  27621. invalidParams.AddNested("PolicyVersionIdentifier", err.(request.ErrInvalidParams))
  27622. }
  27623. }
  27624. if invalidParams.Len() > 0 {
  27625. return invalidParams
  27626. }
  27627. return nil
  27628. }
  27629. // SetAccount sets the Account field's value.
  27630. func (s *ResourceIdentifier) SetAccount(v string) *ResourceIdentifier {
  27631. s.Account = &v
  27632. return s
  27633. }
  27634. // SetCaCertificateId sets the CaCertificateId field's value.
  27635. func (s *ResourceIdentifier) SetCaCertificateId(v string) *ResourceIdentifier {
  27636. s.CaCertificateId = &v
  27637. return s
  27638. }
  27639. // SetClientId sets the ClientId field's value.
  27640. func (s *ResourceIdentifier) SetClientId(v string) *ResourceIdentifier {
  27641. s.ClientId = &v
  27642. return s
  27643. }
  27644. // SetCognitoIdentityPoolId sets the CognitoIdentityPoolId field's value.
  27645. func (s *ResourceIdentifier) SetCognitoIdentityPoolId(v string) *ResourceIdentifier {
  27646. s.CognitoIdentityPoolId = &v
  27647. return s
  27648. }
  27649. // SetDeviceCertificateId sets the DeviceCertificateId field's value.
  27650. func (s *ResourceIdentifier) SetDeviceCertificateId(v string) *ResourceIdentifier {
  27651. s.DeviceCertificateId = &v
  27652. return s
  27653. }
  27654. // SetPolicyVersionIdentifier sets the PolicyVersionIdentifier field's value.
  27655. func (s *ResourceIdentifier) SetPolicyVersionIdentifier(v *PolicyVersionIdentifier) *ResourceIdentifier {
  27656. s.PolicyVersionIdentifier = v
  27657. return s
  27658. }
  27659. // Role alias description.
  27660. type RoleAliasDescription struct {
  27661. _ struct{} `type:"structure"`
  27662. // The UNIX timestamp of when the role alias was created.
  27663. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  27664. // The number of seconds for which the credential is valid.
  27665. CredentialDurationSeconds *int64 `locationName:"credentialDurationSeconds" min:"900" type:"integer"`
  27666. // The UNIX timestamp of when the role alias was last modified.
  27667. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  27668. // The role alias owner.
  27669. Owner *string `locationName:"owner" min:"12" type:"string"`
  27670. // The role alias.
  27671. RoleAlias *string `locationName:"roleAlias" min:"1" type:"string"`
  27672. // The ARN of the role alias.
  27673. RoleAliasArn *string `locationName:"roleAliasArn" type:"string"`
  27674. // The role ARN.
  27675. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  27676. }
  27677. // String returns the string representation
  27678. func (s RoleAliasDescription) String() string {
  27679. return awsutil.Prettify(s)
  27680. }
  27681. // GoString returns the string representation
  27682. func (s RoleAliasDescription) GoString() string {
  27683. return s.String()
  27684. }
  27685. // SetCreationDate sets the CreationDate field's value.
  27686. func (s *RoleAliasDescription) SetCreationDate(v time.Time) *RoleAliasDescription {
  27687. s.CreationDate = &v
  27688. return s
  27689. }
  27690. // SetCredentialDurationSeconds sets the CredentialDurationSeconds field's value.
  27691. func (s *RoleAliasDescription) SetCredentialDurationSeconds(v int64) *RoleAliasDescription {
  27692. s.CredentialDurationSeconds = &v
  27693. return s
  27694. }
  27695. // SetLastModifiedDate sets the LastModifiedDate field's value.
  27696. func (s *RoleAliasDescription) SetLastModifiedDate(v time.Time) *RoleAliasDescription {
  27697. s.LastModifiedDate = &v
  27698. return s
  27699. }
  27700. // SetOwner sets the Owner field's value.
  27701. func (s *RoleAliasDescription) SetOwner(v string) *RoleAliasDescription {
  27702. s.Owner = &v
  27703. return s
  27704. }
  27705. // SetRoleAlias sets the RoleAlias field's value.
  27706. func (s *RoleAliasDescription) SetRoleAlias(v string) *RoleAliasDescription {
  27707. s.RoleAlias = &v
  27708. return s
  27709. }
  27710. // SetRoleAliasArn sets the RoleAliasArn field's value.
  27711. func (s *RoleAliasDescription) SetRoleAliasArn(v string) *RoleAliasDescription {
  27712. s.RoleAliasArn = &v
  27713. return s
  27714. }
  27715. // SetRoleArn sets the RoleArn field's value.
  27716. func (s *RoleAliasDescription) SetRoleArn(v string) *RoleAliasDescription {
  27717. s.RoleArn = &v
  27718. return s
  27719. }
  27720. // Describes an action to write data to an Amazon S3 bucket.
  27721. type S3Action struct {
  27722. _ struct{} `type:"structure"`
  27723. // The Amazon S3 bucket.
  27724. //
  27725. // BucketName is a required field
  27726. BucketName *string `locationName:"bucketName" type:"string" required:"true"`
  27727. // The Amazon S3 canned ACL that controls access to the object identified by
  27728. // the object key. For more information, see S3 canned ACLs (http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl).
  27729. CannedAcl *string `locationName:"cannedAcl" type:"string" enum:"CannedAccessControlList"`
  27730. // The object key.
  27731. //
  27732. // Key is a required field
  27733. Key *string `locationName:"key" type:"string" required:"true"`
  27734. // The ARN of the IAM role that grants access.
  27735. //
  27736. // RoleArn is a required field
  27737. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  27738. }
  27739. // String returns the string representation
  27740. func (s S3Action) String() string {
  27741. return awsutil.Prettify(s)
  27742. }
  27743. // GoString returns the string representation
  27744. func (s S3Action) GoString() string {
  27745. return s.String()
  27746. }
  27747. // Validate inspects the fields of the type to determine if they are valid.
  27748. func (s *S3Action) Validate() error {
  27749. invalidParams := request.ErrInvalidParams{Context: "S3Action"}
  27750. if s.BucketName == nil {
  27751. invalidParams.Add(request.NewErrParamRequired("BucketName"))
  27752. }
  27753. if s.Key == nil {
  27754. invalidParams.Add(request.NewErrParamRequired("Key"))
  27755. }
  27756. if s.RoleArn == nil {
  27757. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  27758. }
  27759. if invalidParams.Len() > 0 {
  27760. return invalidParams
  27761. }
  27762. return nil
  27763. }
  27764. // SetBucketName sets the BucketName field's value.
  27765. func (s *S3Action) SetBucketName(v string) *S3Action {
  27766. s.BucketName = &v
  27767. return s
  27768. }
  27769. // SetCannedAcl sets the CannedAcl field's value.
  27770. func (s *S3Action) SetCannedAcl(v string) *S3Action {
  27771. s.CannedAcl = &v
  27772. return s
  27773. }
  27774. // SetKey sets the Key field's value.
  27775. func (s *S3Action) SetKey(v string) *S3Action {
  27776. s.Key = &v
  27777. return s
  27778. }
  27779. // SetRoleArn sets the RoleArn field's value.
  27780. func (s *S3Action) SetRoleArn(v string) *S3Action {
  27781. s.RoleArn = &v
  27782. return s
  27783. }
  27784. // Describes the location of updated firmware in S3.
  27785. type S3Destination struct {
  27786. _ struct{} `type:"structure"`
  27787. // The S3 bucket that contains the updated firmware.
  27788. Bucket *string `locationName:"bucket" min:"1" type:"string"`
  27789. // The S3 prefix.
  27790. Prefix *string `locationName:"prefix" type:"string"`
  27791. }
  27792. // String returns the string representation
  27793. func (s S3Destination) String() string {
  27794. return awsutil.Prettify(s)
  27795. }
  27796. // GoString returns the string representation
  27797. func (s S3Destination) GoString() string {
  27798. return s.String()
  27799. }
  27800. // Validate inspects the fields of the type to determine if they are valid.
  27801. func (s *S3Destination) Validate() error {
  27802. invalidParams := request.ErrInvalidParams{Context: "S3Destination"}
  27803. if s.Bucket != nil && len(*s.Bucket) < 1 {
  27804. invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
  27805. }
  27806. if invalidParams.Len() > 0 {
  27807. return invalidParams
  27808. }
  27809. return nil
  27810. }
  27811. // SetBucket sets the Bucket field's value.
  27812. func (s *S3Destination) SetBucket(v string) *S3Destination {
  27813. s.Bucket = &v
  27814. return s
  27815. }
  27816. // SetPrefix sets the Prefix field's value.
  27817. func (s *S3Destination) SetPrefix(v string) *S3Destination {
  27818. s.Prefix = &v
  27819. return s
  27820. }
  27821. // The S3 location.
  27822. type S3Location struct {
  27823. _ struct{} `type:"structure"`
  27824. // The S3 bucket.
  27825. Bucket *string `locationName:"bucket" min:"1" type:"string"`
  27826. // The S3 key.
  27827. Key *string `locationName:"key" min:"1" type:"string"`
  27828. // The S3 bucket version.
  27829. Version *string `locationName:"version" type:"string"`
  27830. }
  27831. // String returns the string representation
  27832. func (s S3Location) String() string {
  27833. return awsutil.Prettify(s)
  27834. }
  27835. // GoString returns the string representation
  27836. func (s S3Location) GoString() string {
  27837. return s.String()
  27838. }
  27839. // Validate inspects the fields of the type to determine if they are valid.
  27840. func (s *S3Location) Validate() error {
  27841. invalidParams := request.ErrInvalidParams{Context: "S3Location"}
  27842. if s.Bucket != nil && len(*s.Bucket) < 1 {
  27843. invalidParams.Add(request.NewErrParamMinLen("Bucket", 1))
  27844. }
  27845. if s.Key != nil && len(*s.Key) < 1 {
  27846. invalidParams.Add(request.NewErrParamMinLen("Key", 1))
  27847. }
  27848. if invalidParams.Len() > 0 {
  27849. return invalidParams
  27850. }
  27851. return nil
  27852. }
  27853. // SetBucket sets the Bucket field's value.
  27854. func (s *S3Location) SetBucket(v string) *S3Location {
  27855. s.Bucket = &v
  27856. return s
  27857. }
  27858. // SetKey sets the Key field's value.
  27859. func (s *S3Location) SetKey(v string) *S3Location {
  27860. s.Key = &v
  27861. return s
  27862. }
  27863. // SetVersion sets the Version field's value.
  27864. func (s *S3Location) SetVersion(v string) *S3Location {
  27865. s.Version = &v
  27866. return s
  27867. }
  27868. // Describes an action to write a message to a Salesforce IoT Cloud Input Stream.
  27869. type SalesforceAction struct {
  27870. _ struct{} `type:"structure"`
  27871. // The token used to authenticate access to the Salesforce IoT Cloud Input Stream.
  27872. // The token is available from the Salesforce IoT Cloud platform after creation
  27873. // of the Input Stream.
  27874. //
  27875. // Token is a required field
  27876. Token *string `locationName:"token" min:"40" type:"string" required:"true"`
  27877. // The URL exposed by the Salesforce IoT Cloud Input Stream. The URL is available
  27878. // from the Salesforce IoT Cloud platform after creation of the Input Stream.
  27879. //
  27880. // Url is a required field
  27881. Url *string `locationName:"url" type:"string" required:"true"`
  27882. }
  27883. // String returns the string representation
  27884. func (s SalesforceAction) String() string {
  27885. return awsutil.Prettify(s)
  27886. }
  27887. // GoString returns the string representation
  27888. func (s SalesforceAction) GoString() string {
  27889. return s.String()
  27890. }
  27891. // Validate inspects the fields of the type to determine if they are valid.
  27892. func (s *SalesforceAction) Validate() error {
  27893. invalidParams := request.ErrInvalidParams{Context: "SalesforceAction"}
  27894. if s.Token == nil {
  27895. invalidParams.Add(request.NewErrParamRequired("Token"))
  27896. }
  27897. if s.Token != nil && len(*s.Token) < 40 {
  27898. invalidParams.Add(request.NewErrParamMinLen("Token", 40))
  27899. }
  27900. if s.Url == nil {
  27901. invalidParams.Add(request.NewErrParamRequired("Url"))
  27902. }
  27903. if invalidParams.Len() > 0 {
  27904. return invalidParams
  27905. }
  27906. return nil
  27907. }
  27908. // SetToken sets the Token field's value.
  27909. func (s *SalesforceAction) SetToken(v string) *SalesforceAction {
  27910. s.Token = &v
  27911. return s
  27912. }
  27913. // SetUrl sets the Url field's value.
  27914. func (s *SalesforceAction) SetUrl(v string) *SalesforceAction {
  27915. s.Url = &v
  27916. return s
  27917. }
  27918. // Information about the scheduled audit.
  27919. type ScheduledAuditMetadata struct {
  27920. _ struct{} `type:"structure"`
  27921. // The day of the month on which the scheduled audit is run (if the frequency
  27922. // is "MONTHLY"). If days 29-31 are specified, and the month does not have that
  27923. // many days, the audit takes place on the "LAST" day of the month.
  27924. DayOfMonth *string `locationName:"dayOfMonth" type:"string"`
  27925. // The day of the week on which the scheduled audit is run (if the frequency
  27926. // is "WEEKLY" or "BIWEEKLY").
  27927. DayOfWeek *string `locationName:"dayOfWeek" type:"string" enum:"DayOfWeek"`
  27928. // How often the scheduled audit takes place.
  27929. Frequency *string `locationName:"frequency" type:"string" enum:"AuditFrequency"`
  27930. // The ARN of the scheduled audit.
  27931. ScheduledAuditArn *string `locationName:"scheduledAuditArn" type:"string"`
  27932. // The name of the scheduled audit.
  27933. ScheduledAuditName *string `locationName:"scheduledAuditName" min:"1" type:"string"`
  27934. }
  27935. // String returns the string representation
  27936. func (s ScheduledAuditMetadata) String() string {
  27937. return awsutil.Prettify(s)
  27938. }
  27939. // GoString returns the string representation
  27940. func (s ScheduledAuditMetadata) GoString() string {
  27941. return s.String()
  27942. }
  27943. // SetDayOfMonth sets the DayOfMonth field's value.
  27944. func (s *ScheduledAuditMetadata) SetDayOfMonth(v string) *ScheduledAuditMetadata {
  27945. s.DayOfMonth = &v
  27946. return s
  27947. }
  27948. // SetDayOfWeek sets the DayOfWeek field's value.
  27949. func (s *ScheduledAuditMetadata) SetDayOfWeek(v string) *ScheduledAuditMetadata {
  27950. s.DayOfWeek = &v
  27951. return s
  27952. }
  27953. // SetFrequency sets the Frequency field's value.
  27954. func (s *ScheduledAuditMetadata) SetFrequency(v string) *ScheduledAuditMetadata {
  27955. s.Frequency = &v
  27956. return s
  27957. }
  27958. // SetScheduledAuditArn sets the ScheduledAuditArn field's value.
  27959. func (s *ScheduledAuditMetadata) SetScheduledAuditArn(v string) *ScheduledAuditMetadata {
  27960. s.ScheduledAuditArn = &v
  27961. return s
  27962. }
  27963. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  27964. func (s *ScheduledAuditMetadata) SetScheduledAuditName(v string) *ScheduledAuditMetadata {
  27965. s.ScheduledAuditName = &v
  27966. return s
  27967. }
  27968. type SearchIndexInput struct {
  27969. _ struct{} `type:"structure"`
  27970. // The search index name.
  27971. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  27972. // The maximum number of results to return at one time.
  27973. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
  27974. // The token used to get the next set of results, or null if there are no additional
  27975. // results.
  27976. NextToken *string `locationName:"nextToken" type:"string"`
  27977. // The search query string.
  27978. //
  27979. // QueryString is a required field
  27980. QueryString *string `locationName:"queryString" min:"1" type:"string" required:"true"`
  27981. // The query version.
  27982. QueryVersion *string `locationName:"queryVersion" type:"string"`
  27983. }
  27984. // String returns the string representation
  27985. func (s SearchIndexInput) String() string {
  27986. return awsutil.Prettify(s)
  27987. }
  27988. // GoString returns the string representation
  27989. func (s SearchIndexInput) GoString() string {
  27990. return s.String()
  27991. }
  27992. // Validate inspects the fields of the type to determine if they are valid.
  27993. func (s *SearchIndexInput) Validate() error {
  27994. invalidParams := request.ErrInvalidParams{Context: "SearchIndexInput"}
  27995. if s.IndexName != nil && len(*s.IndexName) < 1 {
  27996. invalidParams.Add(request.NewErrParamMinLen("IndexName", 1))
  27997. }
  27998. if s.MaxResults != nil && *s.MaxResults < 1 {
  27999. invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  28000. }
  28001. if s.QueryString == nil {
  28002. invalidParams.Add(request.NewErrParamRequired("QueryString"))
  28003. }
  28004. if s.QueryString != nil && len(*s.QueryString) < 1 {
  28005. invalidParams.Add(request.NewErrParamMinLen("QueryString", 1))
  28006. }
  28007. if invalidParams.Len() > 0 {
  28008. return invalidParams
  28009. }
  28010. return nil
  28011. }
  28012. // SetIndexName sets the IndexName field's value.
  28013. func (s *SearchIndexInput) SetIndexName(v string) *SearchIndexInput {
  28014. s.IndexName = &v
  28015. return s
  28016. }
  28017. // SetMaxResults sets the MaxResults field's value.
  28018. func (s *SearchIndexInput) SetMaxResults(v int64) *SearchIndexInput {
  28019. s.MaxResults = &v
  28020. return s
  28021. }
  28022. // SetNextToken sets the NextToken field's value.
  28023. func (s *SearchIndexInput) SetNextToken(v string) *SearchIndexInput {
  28024. s.NextToken = &v
  28025. return s
  28026. }
  28027. // SetQueryString sets the QueryString field's value.
  28028. func (s *SearchIndexInput) SetQueryString(v string) *SearchIndexInput {
  28029. s.QueryString = &v
  28030. return s
  28031. }
  28032. // SetQueryVersion sets the QueryVersion field's value.
  28033. func (s *SearchIndexInput) SetQueryVersion(v string) *SearchIndexInput {
  28034. s.QueryVersion = &v
  28035. return s
  28036. }
  28037. type SearchIndexOutput struct {
  28038. _ struct{} `type:"structure"`
  28039. // The token used to get the next set of results, or null if there are no additional
  28040. // results.
  28041. NextToken *string `locationName:"nextToken" type:"string"`
  28042. // The thing groups that match the search query.
  28043. ThingGroups []*ThingGroupDocument `locationName:"thingGroups" type:"list"`
  28044. // The things that match the search query.
  28045. Things []*ThingDocument `locationName:"things" type:"list"`
  28046. }
  28047. // String returns the string representation
  28048. func (s SearchIndexOutput) String() string {
  28049. return awsutil.Prettify(s)
  28050. }
  28051. // GoString returns the string representation
  28052. func (s SearchIndexOutput) GoString() string {
  28053. return s.String()
  28054. }
  28055. // SetNextToken sets the NextToken field's value.
  28056. func (s *SearchIndexOutput) SetNextToken(v string) *SearchIndexOutput {
  28057. s.NextToken = &v
  28058. return s
  28059. }
  28060. // SetThingGroups sets the ThingGroups field's value.
  28061. func (s *SearchIndexOutput) SetThingGroups(v []*ThingGroupDocument) *SearchIndexOutput {
  28062. s.ThingGroups = v
  28063. return s
  28064. }
  28065. // SetThings sets the Things field's value.
  28066. func (s *SearchIndexOutput) SetThings(v []*ThingDocument) *SearchIndexOutput {
  28067. s.Things = v
  28068. return s
  28069. }
  28070. // Identifying information for a Device Defender security profile.
  28071. type SecurityProfileIdentifier struct {
  28072. _ struct{} `type:"structure"`
  28073. // The ARN of the security profile.
  28074. //
  28075. // Arn is a required field
  28076. Arn *string `locationName:"arn" type:"string" required:"true"`
  28077. // The name you have given to the security profile.
  28078. //
  28079. // Name is a required field
  28080. Name *string `locationName:"name" min:"1" type:"string" required:"true"`
  28081. }
  28082. // String returns the string representation
  28083. func (s SecurityProfileIdentifier) String() string {
  28084. return awsutil.Prettify(s)
  28085. }
  28086. // GoString returns the string representation
  28087. func (s SecurityProfileIdentifier) GoString() string {
  28088. return s.String()
  28089. }
  28090. // SetArn sets the Arn field's value.
  28091. func (s *SecurityProfileIdentifier) SetArn(v string) *SecurityProfileIdentifier {
  28092. s.Arn = &v
  28093. return s
  28094. }
  28095. // SetName sets the Name field's value.
  28096. func (s *SecurityProfileIdentifier) SetName(v string) *SecurityProfileIdentifier {
  28097. s.Name = &v
  28098. return s
  28099. }
  28100. // A target to which an alert is sent when a security profile behavior is violated.
  28101. type SecurityProfileTarget struct {
  28102. _ struct{} `type:"structure"`
  28103. // The ARN of the security profile.
  28104. //
  28105. // Arn is a required field
  28106. Arn *string `locationName:"arn" type:"string" required:"true"`
  28107. }
  28108. // String returns the string representation
  28109. func (s SecurityProfileTarget) String() string {
  28110. return awsutil.Prettify(s)
  28111. }
  28112. // GoString returns the string representation
  28113. func (s SecurityProfileTarget) GoString() string {
  28114. return s.String()
  28115. }
  28116. // SetArn sets the Arn field's value.
  28117. func (s *SecurityProfileTarget) SetArn(v string) *SecurityProfileTarget {
  28118. s.Arn = &v
  28119. return s
  28120. }
  28121. // Information about a security profile and the target associated with it.
  28122. type SecurityProfileTargetMapping struct {
  28123. _ struct{} `type:"structure"`
  28124. // Information that identifies the security profile.
  28125. SecurityProfileIdentifier *SecurityProfileIdentifier `locationName:"securityProfileIdentifier" type:"structure"`
  28126. // Information about the target (thing group) associated with the security profile.
  28127. Target *SecurityProfileTarget `locationName:"target" type:"structure"`
  28128. }
  28129. // String returns the string representation
  28130. func (s SecurityProfileTargetMapping) String() string {
  28131. return awsutil.Prettify(s)
  28132. }
  28133. // GoString returns the string representation
  28134. func (s SecurityProfileTargetMapping) GoString() string {
  28135. return s.String()
  28136. }
  28137. // SetSecurityProfileIdentifier sets the SecurityProfileIdentifier field's value.
  28138. func (s *SecurityProfileTargetMapping) SetSecurityProfileIdentifier(v *SecurityProfileIdentifier) *SecurityProfileTargetMapping {
  28139. s.SecurityProfileIdentifier = v
  28140. return s
  28141. }
  28142. // SetTarget sets the Target field's value.
  28143. func (s *SecurityProfileTargetMapping) SetTarget(v *SecurityProfileTarget) *SecurityProfileTargetMapping {
  28144. s.Target = v
  28145. return s
  28146. }
  28147. type SetDefaultAuthorizerInput struct {
  28148. _ struct{} `type:"structure"`
  28149. // The authorizer name.
  28150. //
  28151. // AuthorizerName is a required field
  28152. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string" required:"true"`
  28153. }
  28154. // String returns the string representation
  28155. func (s SetDefaultAuthorizerInput) String() string {
  28156. return awsutil.Prettify(s)
  28157. }
  28158. // GoString returns the string representation
  28159. func (s SetDefaultAuthorizerInput) GoString() string {
  28160. return s.String()
  28161. }
  28162. // Validate inspects the fields of the type to determine if they are valid.
  28163. func (s *SetDefaultAuthorizerInput) Validate() error {
  28164. invalidParams := request.ErrInvalidParams{Context: "SetDefaultAuthorizerInput"}
  28165. if s.AuthorizerName == nil {
  28166. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  28167. }
  28168. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  28169. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  28170. }
  28171. if invalidParams.Len() > 0 {
  28172. return invalidParams
  28173. }
  28174. return nil
  28175. }
  28176. // SetAuthorizerName sets the AuthorizerName field's value.
  28177. func (s *SetDefaultAuthorizerInput) SetAuthorizerName(v string) *SetDefaultAuthorizerInput {
  28178. s.AuthorizerName = &v
  28179. return s
  28180. }
  28181. type SetDefaultAuthorizerOutput struct {
  28182. _ struct{} `type:"structure"`
  28183. // The authorizer ARN.
  28184. AuthorizerArn *string `locationName:"authorizerArn" type:"string"`
  28185. // The authorizer name.
  28186. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string"`
  28187. }
  28188. // String returns the string representation
  28189. func (s SetDefaultAuthorizerOutput) String() string {
  28190. return awsutil.Prettify(s)
  28191. }
  28192. // GoString returns the string representation
  28193. func (s SetDefaultAuthorizerOutput) GoString() string {
  28194. return s.String()
  28195. }
  28196. // SetAuthorizerArn sets the AuthorizerArn field's value.
  28197. func (s *SetDefaultAuthorizerOutput) SetAuthorizerArn(v string) *SetDefaultAuthorizerOutput {
  28198. s.AuthorizerArn = &v
  28199. return s
  28200. }
  28201. // SetAuthorizerName sets the AuthorizerName field's value.
  28202. func (s *SetDefaultAuthorizerOutput) SetAuthorizerName(v string) *SetDefaultAuthorizerOutput {
  28203. s.AuthorizerName = &v
  28204. return s
  28205. }
  28206. // The input for the SetDefaultPolicyVersion operation.
  28207. type SetDefaultPolicyVersionInput struct {
  28208. _ struct{} `type:"structure"`
  28209. // The policy name.
  28210. //
  28211. // PolicyName is a required field
  28212. PolicyName *string `location:"uri" locationName:"policyName" min:"1" type:"string" required:"true"`
  28213. // The policy version ID.
  28214. //
  28215. // PolicyVersionId is a required field
  28216. PolicyVersionId *string `location:"uri" locationName:"policyVersionId" type:"string" required:"true"`
  28217. }
  28218. // String returns the string representation
  28219. func (s SetDefaultPolicyVersionInput) String() string {
  28220. return awsutil.Prettify(s)
  28221. }
  28222. // GoString returns the string representation
  28223. func (s SetDefaultPolicyVersionInput) GoString() string {
  28224. return s.String()
  28225. }
  28226. // Validate inspects the fields of the type to determine if they are valid.
  28227. func (s *SetDefaultPolicyVersionInput) Validate() error {
  28228. invalidParams := request.ErrInvalidParams{Context: "SetDefaultPolicyVersionInput"}
  28229. if s.PolicyName == nil {
  28230. invalidParams.Add(request.NewErrParamRequired("PolicyName"))
  28231. }
  28232. if s.PolicyName != nil && len(*s.PolicyName) < 1 {
  28233. invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1))
  28234. }
  28235. if s.PolicyVersionId == nil {
  28236. invalidParams.Add(request.NewErrParamRequired("PolicyVersionId"))
  28237. }
  28238. if s.PolicyVersionId != nil && len(*s.PolicyVersionId) < 1 {
  28239. invalidParams.Add(request.NewErrParamMinLen("PolicyVersionId", 1))
  28240. }
  28241. if invalidParams.Len() > 0 {
  28242. return invalidParams
  28243. }
  28244. return nil
  28245. }
  28246. // SetPolicyName sets the PolicyName field's value.
  28247. func (s *SetDefaultPolicyVersionInput) SetPolicyName(v string) *SetDefaultPolicyVersionInput {
  28248. s.PolicyName = &v
  28249. return s
  28250. }
  28251. // SetPolicyVersionId sets the PolicyVersionId field's value.
  28252. func (s *SetDefaultPolicyVersionInput) SetPolicyVersionId(v string) *SetDefaultPolicyVersionInput {
  28253. s.PolicyVersionId = &v
  28254. return s
  28255. }
  28256. type SetDefaultPolicyVersionOutput struct {
  28257. _ struct{} `type:"structure"`
  28258. }
  28259. // String returns the string representation
  28260. func (s SetDefaultPolicyVersionOutput) String() string {
  28261. return awsutil.Prettify(s)
  28262. }
  28263. // GoString returns the string representation
  28264. func (s SetDefaultPolicyVersionOutput) GoString() string {
  28265. return s.String()
  28266. }
  28267. // The input for the SetLoggingOptions operation.
  28268. type SetLoggingOptionsInput struct {
  28269. _ struct{} `type:"structure" payload:"LoggingOptionsPayload"`
  28270. // The logging options payload.
  28271. //
  28272. // LoggingOptionsPayload is a required field
  28273. LoggingOptionsPayload *LoggingOptionsPayload `locationName:"loggingOptionsPayload" type:"structure" required:"true"`
  28274. }
  28275. // String returns the string representation
  28276. func (s SetLoggingOptionsInput) String() string {
  28277. return awsutil.Prettify(s)
  28278. }
  28279. // GoString returns the string representation
  28280. func (s SetLoggingOptionsInput) GoString() string {
  28281. return s.String()
  28282. }
  28283. // Validate inspects the fields of the type to determine if they are valid.
  28284. func (s *SetLoggingOptionsInput) Validate() error {
  28285. invalidParams := request.ErrInvalidParams{Context: "SetLoggingOptionsInput"}
  28286. if s.LoggingOptionsPayload == nil {
  28287. invalidParams.Add(request.NewErrParamRequired("LoggingOptionsPayload"))
  28288. }
  28289. if s.LoggingOptionsPayload != nil {
  28290. if err := s.LoggingOptionsPayload.Validate(); err != nil {
  28291. invalidParams.AddNested("LoggingOptionsPayload", err.(request.ErrInvalidParams))
  28292. }
  28293. }
  28294. if invalidParams.Len() > 0 {
  28295. return invalidParams
  28296. }
  28297. return nil
  28298. }
  28299. // SetLoggingOptionsPayload sets the LoggingOptionsPayload field's value.
  28300. func (s *SetLoggingOptionsInput) SetLoggingOptionsPayload(v *LoggingOptionsPayload) *SetLoggingOptionsInput {
  28301. s.LoggingOptionsPayload = v
  28302. return s
  28303. }
  28304. type SetLoggingOptionsOutput struct {
  28305. _ struct{} `type:"structure"`
  28306. }
  28307. // String returns the string representation
  28308. func (s SetLoggingOptionsOutput) String() string {
  28309. return awsutil.Prettify(s)
  28310. }
  28311. // GoString returns the string representation
  28312. func (s SetLoggingOptionsOutput) GoString() string {
  28313. return s.String()
  28314. }
  28315. type SetV2LoggingLevelInput struct {
  28316. _ struct{} `type:"structure"`
  28317. // The log level.
  28318. //
  28319. // LogLevel is a required field
  28320. LogLevel *string `locationName:"logLevel" type:"string" required:"true" enum:"LogLevel"`
  28321. // The log target.
  28322. //
  28323. // LogTarget is a required field
  28324. LogTarget *LogTarget `locationName:"logTarget" type:"structure" required:"true"`
  28325. }
  28326. // String returns the string representation
  28327. func (s SetV2LoggingLevelInput) String() string {
  28328. return awsutil.Prettify(s)
  28329. }
  28330. // GoString returns the string representation
  28331. func (s SetV2LoggingLevelInput) GoString() string {
  28332. return s.String()
  28333. }
  28334. // Validate inspects the fields of the type to determine if they are valid.
  28335. func (s *SetV2LoggingLevelInput) Validate() error {
  28336. invalidParams := request.ErrInvalidParams{Context: "SetV2LoggingLevelInput"}
  28337. if s.LogLevel == nil {
  28338. invalidParams.Add(request.NewErrParamRequired("LogLevel"))
  28339. }
  28340. if s.LogTarget == nil {
  28341. invalidParams.Add(request.NewErrParamRequired("LogTarget"))
  28342. }
  28343. if s.LogTarget != nil {
  28344. if err := s.LogTarget.Validate(); err != nil {
  28345. invalidParams.AddNested("LogTarget", err.(request.ErrInvalidParams))
  28346. }
  28347. }
  28348. if invalidParams.Len() > 0 {
  28349. return invalidParams
  28350. }
  28351. return nil
  28352. }
  28353. // SetLogLevel sets the LogLevel field's value.
  28354. func (s *SetV2LoggingLevelInput) SetLogLevel(v string) *SetV2LoggingLevelInput {
  28355. s.LogLevel = &v
  28356. return s
  28357. }
  28358. // SetLogTarget sets the LogTarget field's value.
  28359. func (s *SetV2LoggingLevelInput) SetLogTarget(v *LogTarget) *SetV2LoggingLevelInput {
  28360. s.LogTarget = v
  28361. return s
  28362. }
  28363. type SetV2LoggingLevelOutput struct {
  28364. _ struct{} `type:"structure"`
  28365. }
  28366. // String returns the string representation
  28367. func (s SetV2LoggingLevelOutput) String() string {
  28368. return awsutil.Prettify(s)
  28369. }
  28370. // GoString returns the string representation
  28371. func (s SetV2LoggingLevelOutput) GoString() string {
  28372. return s.String()
  28373. }
  28374. type SetV2LoggingOptionsInput struct {
  28375. _ struct{} `type:"structure"`
  28376. // The default logging level.
  28377. DefaultLogLevel *string `locationName:"defaultLogLevel" type:"string" enum:"LogLevel"`
  28378. // If true all logs are disabled. The default is false.
  28379. DisableAllLogs *bool `locationName:"disableAllLogs" type:"boolean"`
  28380. // The ARN of the role that allows IoT to write to Cloudwatch logs.
  28381. RoleArn *string `locationName:"roleArn" type:"string"`
  28382. }
  28383. // String returns the string representation
  28384. func (s SetV2LoggingOptionsInput) String() string {
  28385. return awsutil.Prettify(s)
  28386. }
  28387. // GoString returns the string representation
  28388. func (s SetV2LoggingOptionsInput) GoString() string {
  28389. return s.String()
  28390. }
  28391. // SetDefaultLogLevel sets the DefaultLogLevel field's value.
  28392. func (s *SetV2LoggingOptionsInput) SetDefaultLogLevel(v string) *SetV2LoggingOptionsInput {
  28393. s.DefaultLogLevel = &v
  28394. return s
  28395. }
  28396. // SetDisableAllLogs sets the DisableAllLogs field's value.
  28397. func (s *SetV2LoggingOptionsInput) SetDisableAllLogs(v bool) *SetV2LoggingOptionsInput {
  28398. s.DisableAllLogs = &v
  28399. return s
  28400. }
  28401. // SetRoleArn sets the RoleArn field's value.
  28402. func (s *SetV2LoggingOptionsInput) SetRoleArn(v string) *SetV2LoggingOptionsInput {
  28403. s.RoleArn = &v
  28404. return s
  28405. }
  28406. type SetV2LoggingOptionsOutput struct {
  28407. _ struct{} `type:"structure"`
  28408. }
  28409. // String returns the string representation
  28410. func (s SetV2LoggingOptionsOutput) String() string {
  28411. return awsutil.Prettify(s)
  28412. }
  28413. // GoString returns the string representation
  28414. func (s SetV2LoggingOptionsOutput) GoString() string {
  28415. return s.String()
  28416. }
  28417. // Describes the code-signing profile.
  28418. type SigningProfileParameter struct {
  28419. _ struct{} `type:"structure"`
  28420. // Certificate ARN.
  28421. CertificateArn *string `locationName:"certificateArn" type:"string"`
  28422. // The location of the code-signing certificate on your device.
  28423. CertificatePathOnDevice *string `locationName:"certificatePathOnDevice" type:"string"`
  28424. // The hardware platform of your device.
  28425. Platform *string `locationName:"platform" type:"string"`
  28426. }
  28427. // String returns the string representation
  28428. func (s SigningProfileParameter) String() string {
  28429. return awsutil.Prettify(s)
  28430. }
  28431. // GoString returns the string representation
  28432. func (s SigningProfileParameter) GoString() string {
  28433. return s.String()
  28434. }
  28435. // SetCertificateArn sets the CertificateArn field's value.
  28436. func (s *SigningProfileParameter) SetCertificateArn(v string) *SigningProfileParameter {
  28437. s.CertificateArn = &v
  28438. return s
  28439. }
  28440. // SetCertificatePathOnDevice sets the CertificatePathOnDevice field's value.
  28441. func (s *SigningProfileParameter) SetCertificatePathOnDevice(v string) *SigningProfileParameter {
  28442. s.CertificatePathOnDevice = &v
  28443. return s
  28444. }
  28445. // SetPlatform sets the Platform field's value.
  28446. func (s *SigningProfileParameter) SetPlatform(v string) *SigningProfileParameter {
  28447. s.Platform = &v
  28448. return s
  28449. }
  28450. // Describes an action to publish to an Amazon SNS topic.
  28451. type SnsAction struct {
  28452. _ struct{} `type:"structure"`
  28453. // (Optional) The message format of the message to publish. Accepted values
  28454. // are "JSON" and "RAW". The default value of the attribute is "RAW". SNS uses
  28455. // this setting to determine if the payload should be parsed and relevant platform-specific
  28456. // bits of the payload should be extracted. To read more about SNS message formats,
  28457. // see http://docs.aws.amazon.com/sns/latest/dg/json-formats.html (http://docs.aws.amazon.com/sns/latest/dg/json-formats.html)
  28458. // refer to their official documentation.
  28459. MessageFormat *string `locationName:"messageFormat" type:"string" enum:"MessageFormat"`
  28460. // The ARN of the IAM role that grants access.
  28461. //
  28462. // RoleArn is a required field
  28463. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  28464. // The ARN of the SNS topic.
  28465. //
  28466. // TargetArn is a required field
  28467. TargetArn *string `locationName:"targetArn" type:"string" required:"true"`
  28468. }
  28469. // String returns the string representation
  28470. func (s SnsAction) String() string {
  28471. return awsutil.Prettify(s)
  28472. }
  28473. // GoString returns the string representation
  28474. func (s SnsAction) GoString() string {
  28475. return s.String()
  28476. }
  28477. // Validate inspects the fields of the type to determine if they are valid.
  28478. func (s *SnsAction) Validate() error {
  28479. invalidParams := request.ErrInvalidParams{Context: "SnsAction"}
  28480. if s.RoleArn == nil {
  28481. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  28482. }
  28483. if s.TargetArn == nil {
  28484. invalidParams.Add(request.NewErrParamRequired("TargetArn"))
  28485. }
  28486. if invalidParams.Len() > 0 {
  28487. return invalidParams
  28488. }
  28489. return nil
  28490. }
  28491. // SetMessageFormat sets the MessageFormat field's value.
  28492. func (s *SnsAction) SetMessageFormat(v string) *SnsAction {
  28493. s.MessageFormat = &v
  28494. return s
  28495. }
  28496. // SetRoleArn sets the RoleArn field's value.
  28497. func (s *SnsAction) SetRoleArn(v string) *SnsAction {
  28498. s.RoleArn = &v
  28499. return s
  28500. }
  28501. // SetTargetArn sets the TargetArn field's value.
  28502. func (s *SnsAction) SetTargetArn(v string) *SnsAction {
  28503. s.TargetArn = &v
  28504. return s
  28505. }
  28506. // Describes an action to publish data to an Amazon SQS queue.
  28507. type SqsAction struct {
  28508. _ struct{} `type:"structure"`
  28509. // The URL of the Amazon SQS queue.
  28510. //
  28511. // QueueUrl is a required field
  28512. QueueUrl *string `locationName:"queueUrl" type:"string" required:"true"`
  28513. // The ARN of the IAM role that grants access.
  28514. //
  28515. // RoleArn is a required field
  28516. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  28517. // Specifies whether to use Base64 encoding.
  28518. UseBase64 *bool `locationName:"useBase64" type:"boolean"`
  28519. }
  28520. // String returns the string representation
  28521. func (s SqsAction) String() string {
  28522. return awsutil.Prettify(s)
  28523. }
  28524. // GoString returns the string representation
  28525. func (s SqsAction) GoString() string {
  28526. return s.String()
  28527. }
  28528. // Validate inspects the fields of the type to determine if they are valid.
  28529. func (s *SqsAction) Validate() error {
  28530. invalidParams := request.ErrInvalidParams{Context: "SqsAction"}
  28531. if s.QueueUrl == nil {
  28532. invalidParams.Add(request.NewErrParamRequired("QueueUrl"))
  28533. }
  28534. if s.RoleArn == nil {
  28535. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  28536. }
  28537. if invalidParams.Len() > 0 {
  28538. return invalidParams
  28539. }
  28540. return nil
  28541. }
  28542. // SetQueueUrl sets the QueueUrl field's value.
  28543. func (s *SqsAction) SetQueueUrl(v string) *SqsAction {
  28544. s.QueueUrl = &v
  28545. return s
  28546. }
  28547. // SetRoleArn sets the RoleArn field's value.
  28548. func (s *SqsAction) SetRoleArn(v string) *SqsAction {
  28549. s.RoleArn = &v
  28550. return s
  28551. }
  28552. // SetUseBase64 sets the UseBase64 field's value.
  28553. func (s *SqsAction) SetUseBase64(v bool) *SqsAction {
  28554. s.UseBase64 = &v
  28555. return s
  28556. }
  28557. type StartOnDemandAuditTaskInput struct {
  28558. _ struct{} `type:"structure"`
  28559. // Which checks are performed during the audit. The checks you specify must
  28560. // be enabled for your account or an exception occurs. Use DescribeAccountAuditConfiguration
  28561. // to see the list of all checks including those that are enabled or UpdateAccountAuditConfiguration
  28562. // to select which checks are enabled.
  28563. //
  28564. // TargetCheckNames is a required field
  28565. TargetCheckNames []*string `locationName:"targetCheckNames" type:"list" required:"true"`
  28566. }
  28567. // String returns the string representation
  28568. func (s StartOnDemandAuditTaskInput) String() string {
  28569. return awsutil.Prettify(s)
  28570. }
  28571. // GoString returns the string representation
  28572. func (s StartOnDemandAuditTaskInput) GoString() string {
  28573. return s.String()
  28574. }
  28575. // Validate inspects the fields of the type to determine if they are valid.
  28576. func (s *StartOnDemandAuditTaskInput) Validate() error {
  28577. invalidParams := request.ErrInvalidParams{Context: "StartOnDemandAuditTaskInput"}
  28578. if s.TargetCheckNames == nil {
  28579. invalidParams.Add(request.NewErrParamRequired("TargetCheckNames"))
  28580. }
  28581. if invalidParams.Len() > 0 {
  28582. return invalidParams
  28583. }
  28584. return nil
  28585. }
  28586. // SetTargetCheckNames sets the TargetCheckNames field's value.
  28587. func (s *StartOnDemandAuditTaskInput) SetTargetCheckNames(v []*string) *StartOnDemandAuditTaskInput {
  28588. s.TargetCheckNames = v
  28589. return s
  28590. }
  28591. type StartOnDemandAuditTaskOutput struct {
  28592. _ struct{} `type:"structure"`
  28593. // The ID of the on-demand audit you started.
  28594. TaskId *string `locationName:"taskId" min:"1" type:"string"`
  28595. }
  28596. // String returns the string representation
  28597. func (s StartOnDemandAuditTaskOutput) String() string {
  28598. return awsutil.Prettify(s)
  28599. }
  28600. // GoString returns the string representation
  28601. func (s StartOnDemandAuditTaskOutput) GoString() string {
  28602. return s.String()
  28603. }
  28604. // SetTaskId sets the TaskId field's value.
  28605. func (s *StartOnDemandAuditTaskOutput) SetTaskId(v string) *StartOnDemandAuditTaskOutput {
  28606. s.TaskId = &v
  28607. return s
  28608. }
  28609. // Information required to start a signing job.
  28610. type StartSigningJobParameter struct {
  28611. _ struct{} `type:"structure"`
  28612. // The location to write the code-signed file.
  28613. Destination *Destination `locationName:"destination" type:"structure"`
  28614. // The code-signing profile name.
  28615. SigningProfileName *string `locationName:"signingProfileName" type:"string"`
  28616. // Describes the code-signing profile.
  28617. SigningProfileParameter *SigningProfileParameter `locationName:"signingProfileParameter" type:"structure"`
  28618. }
  28619. // String returns the string representation
  28620. func (s StartSigningJobParameter) String() string {
  28621. return awsutil.Prettify(s)
  28622. }
  28623. // GoString returns the string representation
  28624. func (s StartSigningJobParameter) GoString() string {
  28625. return s.String()
  28626. }
  28627. // Validate inspects the fields of the type to determine if they are valid.
  28628. func (s *StartSigningJobParameter) Validate() error {
  28629. invalidParams := request.ErrInvalidParams{Context: "StartSigningJobParameter"}
  28630. if s.Destination != nil {
  28631. if err := s.Destination.Validate(); err != nil {
  28632. invalidParams.AddNested("Destination", err.(request.ErrInvalidParams))
  28633. }
  28634. }
  28635. if invalidParams.Len() > 0 {
  28636. return invalidParams
  28637. }
  28638. return nil
  28639. }
  28640. // SetDestination sets the Destination field's value.
  28641. func (s *StartSigningJobParameter) SetDestination(v *Destination) *StartSigningJobParameter {
  28642. s.Destination = v
  28643. return s
  28644. }
  28645. // SetSigningProfileName sets the SigningProfileName field's value.
  28646. func (s *StartSigningJobParameter) SetSigningProfileName(v string) *StartSigningJobParameter {
  28647. s.SigningProfileName = &v
  28648. return s
  28649. }
  28650. // SetSigningProfileParameter sets the SigningProfileParameter field's value.
  28651. func (s *StartSigningJobParameter) SetSigningProfileParameter(v *SigningProfileParameter) *StartSigningJobParameter {
  28652. s.SigningProfileParameter = v
  28653. return s
  28654. }
  28655. type StartThingRegistrationTaskInput struct {
  28656. _ struct{} `type:"structure"`
  28657. // The S3 bucket that contains the input file.
  28658. //
  28659. // InputFileBucket is a required field
  28660. InputFileBucket *string `locationName:"inputFileBucket" min:"3" type:"string" required:"true"`
  28661. // The name of input file within the S3 bucket. This file contains a newline
  28662. // delimited JSON file. Each line contains the parameter values to provision
  28663. // one device (thing).
  28664. //
  28665. // InputFileKey is a required field
  28666. InputFileKey *string `locationName:"inputFileKey" min:"1" type:"string" required:"true"`
  28667. // The IAM role ARN that grants permission the input file.
  28668. //
  28669. // RoleArn is a required field
  28670. RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"`
  28671. // The provisioning template.
  28672. //
  28673. // TemplateBody is a required field
  28674. TemplateBody *string `locationName:"templateBody" type:"string" required:"true"`
  28675. }
  28676. // String returns the string representation
  28677. func (s StartThingRegistrationTaskInput) String() string {
  28678. return awsutil.Prettify(s)
  28679. }
  28680. // GoString returns the string representation
  28681. func (s StartThingRegistrationTaskInput) GoString() string {
  28682. return s.String()
  28683. }
  28684. // Validate inspects the fields of the type to determine if they are valid.
  28685. func (s *StartThingRegistrationTaskInput) Validate() error {
  28686. invalidParams := request.ErrInvalidParams{Context: "StartThingRegistrationTaskInput"}
  28687. if s.InputFileBucket == nil {
  28688. invalidParams.Add(request.NewErrParamRequired("InputFileBucket"))
  28689. }
  28690. if s.InputFileBucket != nil && len(*s.InputFileBucket) < 3 {
  28691. invalidParams.Add(request.NewErrParamMinLen("InputFileBucket", 3))
  28692. }
  28693. if s.InputFileKey == nil {
  28694. invalidParams.Add(request.NewErrParamRequired("InputFileKey"))
  28695. }
  28696. if s.InputFileKey != nil && len(*s.InputFileKey) < 1 {
  28697. invalidParams.Add(request.NewErrParamMinLen("InputFileKey", 1))
  28698. }
  28699. if s.RoleArn == nil {
  28700. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  28701. }
  28702. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  28703. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  28704. }
  28705. if s.TemplateBody == nil {
  28706. invalidParams.Add(request.NewErrParamRequired("TemplateBody"))
  28707. }
  28708. if invalidParams.Len() > 0 {
  28709. return invalidParams
  28710. }
  28711. return nil
  28712. }
  28713. // SetInputFileBucket sets the InputFileBucket field's value.
  28714. func (s *StartThingRegistrationTaskInput) SetInputFileBucket(v string) *StartThingRegistrationTaskInput {
  28715. s.InputFileBucket = &v
  28716. return s
  28717. }
  28718. // SetInputFileKey sets the InputFileKey field's value.
  28719. func (s *StartThingRegistrationTaskInput) SetInputFileKey(v string) *StartThingRegistrationTaskInput {
  28720. s.InputFileKey = &v
  28721. return s
  28722. }
  28723. // SetRoleArn sets the RoleArn field's value.
  28724. func (s *StartThingRegistrationTaskInput) SetRoleArn(v string) *StartThingRegistrationTaskInput {
  28725. s.RoleArn = &v
  28726. return s
  28727. }
  28728. // SetTemplateBody sets the TemplateBody field's value.
  28729. func (s *StartThingRegistrationTaskInput) SetTemplateBody(v string) *StartThingRegistrationTaskInput {
  28730. s.TemplateBody = &v
  28731. return s
  28732. }
  28733. type StartThingRegistrationTaskOutput struct {
  28734. _ struct{} `type:"structure"`
  28735. // The bulk thing provisioning task ID.
  28736. TaskId *string `locationName:"taskId" type:"string"`
  28737. }
  28738. // String returns the string representation
  28739. func (s StartThingRegistrationTaskOutput) String() string {
  28740. return awsutil.Prettify(s)
  28741. }
  28742. // GoString returns the string representation
  28743. func (s StartThingRegistrationTaskOutput) GoString() string {
  28744. return s.String()
  28745. }
  28746. // SetTaskId sets the TaskId field's value.
  28747. func (s *StartThingRegistrationTaskOutput) SetTaskId(v string) *StartThingRegistrationTaskOutput {
  28748. s.TaskId = &v
  28749. return s
  28750. }
  28751. // Starts execution of a Step Functions state machine.
  28752. type StepFunctionsAction struct {
  28753. _ struct{} `type:"structure"`
  28754. // (Optional) A name will be given to the state machine execution consisting
  28755. // of this prefix followed by a UUID. Step Functions automatically creates a
  28756. // unique name for each state machine execution if one is not provided.
  28757. ExecutionNamePrefix *string `locationName:"executionNamePrefix" type:"string"`
  28758. // The ARN of the role that grants IoT permission to start execution of a state
  28759. // machine ("Action":"states:StartExecution").
  28760. //
  28761. // RoleArn is a required field
  28762. RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
  28763. // The name of the Step Functions state machine whose execution will be started.
  28764. //
  28765. // StateMachineName is a required field
  28766. StateMachineName *string `locationName:"stateMachineName" type:"string" required:"true"`
  28767. }
  28768. // String returns the string representation
  28769. func (s StepFunctionsAction) String() string {
  28770. return awsutil.Prettify(s)
  28771. }
  28772. // GoString returns the string representation
  28773. func (s StepFunctionsAction) GoString() string {
  28774. return s.String()
  28775. }
  28776. // Validate inspects the fields of the type to determine if they are valid.
  28777. func (s *StepFunctionsAction) Validate() error {
  28778. invalidParams := request.ErrInvalidParams{Context: "StepFunctionsAction"}
  28779. if s.RoleArn == nil {
  28780. invalidParams.Add(request.NewErrParamRequired("RoleArn"))
  28781. }
  28782. if s.StateMachineName == nil {
  28783. invalidParams.Add(request.NewErrParamRequired("StateMachineName"))
  28784. }
  28785. if invalidParams.Len() > 0 {
  28786. return invalidParams
  28787. }
  28788. return nil
  28789. }
  28790. // SetExecutionNamePrefix sets the ExecutionNamePrefix field's value.
  28791. func (s *StepFunctionsAction) SetExecutionNamePrefix(v string) *StepFunctionsAction {
  28792. s.ExecutionNamePrefix = &v
  28793. return s
  28794. }
  28795. // SetRoleArn sets the RoleArn field's value.
  28796. func (s *StepFunctionsAction) SetRoleArn(v string) *StepFunctionsAction {
  28797. s.RoleArn = &v
  28798. return s
  28799. }
  28800. // SetStateMachineName sets the StateMachineName field's value.
  28801. func (s *StepFunctionsAction) SetStateMachineName(v string) *StepFunctionsAction {
  28802. s.StateMachineName = &v
  28803. return s
  28804. }
  28805. type StopThingRegistrationTaskInput struct {
  28806. _ struct{} `type:"structure"`
  28807. // The bulk thing provisioning task ID.
  28808. //
  28809. // TaskId is a required field
  28810. TaskId *string `location:"uri" locationName:"taskId" type:"string" required:"true"`
  28811. }
  28812. // String returns the string representation
  28813. func (s StopThingRegistrationTaskInput) String() string {
  28814. return awsutil.Prettify(s)
  28815. }
  28816. // GoString returns the string representation
  28817. func (s StopThingRegistrationTaskInput) GoString() string {
  28818. return s.String()
  28819. }
  28820. // Validate inspects the fields of the type to determine if they are valid.
  28821. func (s *StopThingRegistrationTaskInput) Validate() error {
  28822. invalidParams := request.ErrInvalidParams{Context: "StopThingRegistrationTaskInput"}
  28823. if s.TaskId == nil {
  28824. invalidParams.Add(request.NewErrParamRequired("TaskId"))
  28825. }
  28826. if s.TaskId != nil && len(*s.TaskId) < 1 {
  28827. invalidParams.Add(request.NewErrParamMinLen("TaskId", 1))
  28828. }
  28829. if invalidParams.Len() > 0 {
  28830. return invalidParams
  28831. }
  28832. return nil
  28833. }
  28834. // SetTaskId sets the TaskId field's value.
  28835. func (s *StopThingRegistrationTaskInput) SetTaskId(v string) *StopThingRegistrationTaskInput {
  28836. s.TaskId = &v
  28837. return s
  28838. }
  28839. type StopThingRegistrationTaskOutput struct {
  28840. _ struct{} `type:"structure"`
  28841. }
  28842. // String returns the string representation
  28843. func (s StopThingRegistrationTaskOutput) String() string {
  28844. return awsutil.Prettify(s)
  28845. }
  28846. // GoString returns the string representation
  28847. func (s StopThingRegistrationTaskOutput) GoString() string {
  28848. return s.String()
  28849. }
  28850. // Describes a group of files that can be streamed.
  28851. type Stream struct {
  28852. _ struct{} `type:"structure"`
  28853. // The ID of a file associated with a stream.
  28854. FileId *int64 `locationName:"fileId" type:"integer"`
  28855. // The stream ID.
  28856. StreamId *string `locationName:"streamId" min:"1" type:"string"`
  28857. }
  28858. // String returns the string representation
  28859. func (s Stream) String() string {
  28860. return awsutil.Prettify(s)
  28861. }
  28862. // GoString returns the string representation
  28863. func (s Stream) GoString() string {
  28864. return s.String()
  28865. }
  28866. // Validate inspects the fields of the type to determine if they are valid.
  28867. func (s *Stream) Validate() error {
  28868. invalidParams := request.ErrInvalidParams{Context: "Stream"}
  28869. if s.StreamId != nil && len(*s.StreamId) < 1 {
  28870. invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  28871. }
  28872. if invalidParams.Len() > 0 {
  28873. return invalidParams
  28874. }
  28875. return nil
  28876. }
  28877. // SetFileId sets the FileId field's value.
  28878. func (s *Stream) SetFileId(v int64) *Stream {
  28879. s.FileId = &v
  28880. return s
  28881. }
  28882. // SetStreamId sets the StreamId field's value.
  28883. func (s *Stream) SetStreamId(v string) *Stream {
  28884. s.StreamId = &v
  28885. return s
  28886. }
  28887. // Represents a file to stream.
  28888. type StreamFile struct {
  28889. _ struct{} `type:"structure"`
  28890. // The file ID.
  28891. FileId *int64 `locationName:"fileId" type:"integer"`
  28892. // The location of the file in S3.
  28893. S3Location *S3Location `locationName:"s3Location" type:"structure"`
  28894. }
  28895. // String returns the string representation
  28896. func (s StreamFile) String() string {
  28897. return awsutil.Prettify(s)
  28898. }
  28899. // GoString returns the string representation
  28900. func (s StreamFile) GoString() string {
  28901. return s.String()
  28902. }
  28903. // Validate inspects the fields of the type to determine if they are valid.
  28904. func (s *StreamFile) Validate() error {
  28905. invalidParams := request.ErrInvalidParams{Context: "StreamFile"}
  28906. if s.S3Location != nil {
  28907. if err := s.S3Location.Validate(); err != nil {
  28908. invalidParams.AddNested("S3Location", err.(request.ErrInvalidParams))
  28909. }
  28910. }
  28911. if invalidParams.Len() > 0 {
  28912. return invalidParams
  28913. }
  28914. return nil
  28915. }
  28916. // SetFileId sets the FileId field's value.
  28917. func (s *StreamFile) SetFileId(v int64) *StreamFile {
  28918. s.FileId = &v
  28919. return s
  28920. }
  28921. // SetS3Location sets the S3Location field's value.
  28922. func (s *StreamFile) SetS3Location(v *S3Location) *StreamFile {
  28923. s.S3Location = v
  28924. return s
  28925. }
  28926. // Information about a stream.
  28927. type StreamInfo struct {
  28928. _ struct{} `type:"structure"`
  28929. // The date when the stream was created.
  28930. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  28931. // The description of the stream.
  28932. Description *string `locationName:"description" type:"string"`
  28933. // The files to stream.
  28934. Files []*StreamFile `locationName:"files" min:"1" type:"list"`
  28935. // The date when the stream was last updated.
  28936. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp"`
  28937. // An IAM role AWS IoT assumes to access your S3 files.
  28938. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  28939. // The stream ARN.
  28940. StreamArn *string `locationName:"streamArn" type:"string"`
  28941. // The stream ID.
  28942. StreamId *string `locationName:"streamId" min:"1" type:"string"`
  28943. // The stream version.
  28944. StreamVersion *int64 `locationName:"streamVersion" type:"integer"`
  28945. }
  28946. // String returns the string representation
  28947. func (s StreamInfo) String() string {
  28948. return awsutil.Prettify(s)
  28949. }
  28950. // GoString returns the string representation
  28951. func (s StreamInfo) GoString() string {
  28952. return s.String()
  28953. }
  28954. // SetCreatedAt sets the CreatedAt field's value.
  28955. func (s *StreamInfo) SetCreatedAt(v time.Time) *StreamInfo {
  28956. s.CreatedAt = &v
  28957. return s
  28958. }
  28959. // SetDescription sets the Description field's value.
  28960. func (s *StreamInfo) SetDescription(v string) *StreamInfo {
  28961. s.Description = &v
  28962. return s
  28963. }
  28964. // SetFiles sets the Files field's value.
  28965. func (s *StreamInfo) SetFiles(v []*StreamFile) *StreamInfo {
  28966. s.Files = v
  28967. return s
  28968. }
  28969. // SetLastUpdatedAt sets the LastUpdatedAt field's value.
  28970. func (s *StreamInfo) SetLastUpdatedAt(v time.Time) *StreamInfo {
  28971. s.LastUpdatedAt = &v
  28972. return s
  28973. }
  28974. // SetRoleArn sets the RoleArn field's value.
  28975. func (s *StreamInfo) SetRoleArn(v string) *StreamInfo {
  28976. s.RoleArn = &v
  28977. return s
  28978. }
  28979. // SetStreamArn sets the StreamArn field's value.
  28980. func (s *StreamInfo) SetStreamArn(v string) *StreamInfo {
  28981. s.StreamArn = &v
  28982. return s
  28983. }
  28984. // SetStreamId sets the StreamId field's value.
  28985. func (s *StreamInfo) SetStreamId(v string) *StreamInfo {
  28986. s.StreamId = &v
  28987. return s
  28988. }
  28989. // SetStreamVersion sets the StreamVersion field's value.
  28990. func (s *StreamInfo) SetStreamVersion(v int64) *StreamInfo {
  28991. s.StreamVersion = &v
  28992. return s
  28993. }
  28994. // A summary of a stream.
  28995. type StreamSummary struct {
  28996. _ struct{} `type:"structure"`
  28997. // A description of the stream.
  28998. Description *string `locationName:"description" type:"string"`
  28999. // The stream ARN.
  29000. StreamArn *string `locationName:"streamArn" type:"string"`
  29001. // The stream ID.
  29002. StreamId *string `locationName:"streamId" min:"1" type:"string"`
  29003. // The stream version.
  29004. StreamVersion *int64 `locationName:"streamVersion" type:"integer"`
  29005. }
  29006. // String returns the string representation
  29007. func (s StreamSummary) String() string {
  29008. return awsutil.Prettify(s)
  29009. }
  29010. // GoString returns the string representation
  29011. func (s StreamSummary) GoString() string {
  29012. return s.String()
  29013. }
  29014. // SetDescription sets the Description field's value.
  29015. func (s *StreamSummary) SetDescription(v string) *StreamSummary {
  29016. s.Description = &v
  29017. return s
  29018. }
  29019. // SetStreamArn sets the StreamArn field's value.
  29020. func (s *StreamSummary) SetStreamArn(v string) *StreamSummary {
  29021. s.StreamArn = &v
  29022. return s
  29023. }
  29024. // SetStreamId sets the StreamId field's value.
  29025. func (s *StreamSummary) SetStreamId(v string) *StreamSummary {
  29026. s.StreamId = &v
  29027. return s
  29028. }
  29029. // SetStreamVersion sets the StreamVersion field's value.
  29030. func (s *StreamSummary) SetStreamVersion(v int64) *StreamSummary {
  29031. s.StreamVersion = &v
  29032. return s
  29033. }
  29034. // A set of key/value pairs that are used to manage the resource.
  29035. type Tag struct {
  29036. _ struct{} `type:"structure"`
  29037. // The tag's key.
  29038. Key *string `type:"string"`
  29039. // The tag's value.
  29040. Value *string `type:"string"`
  29041. }
  29042. // String returns the string representation
  29043. func (s Tag) String() string {
  29044. return awsutil.Prettify(s)
  29045. }
  29046. // GoString returns the string representation
  29047. func (s Tag) GoString() string {
  29048. return s.String()
  29049. }
  29050. // SetKey sets the Key field's value.
  29051. func (s *Tag) SetKey(v string) *Tag {
  29052. s.Key = &v
  29053. return s
  29054. }
  29055. // SetValue sets the Value field's value.
  29056. func (s *Tag) SetValue(v string) *Tag {
  29057. s.Value = &v
  29058. return s
  29059. }
  29060. type TagResourceInput struct {
  29061. _ struct{} `type:"structure"`
  29062. // The ARN of the resource.
  29063. //
  29064. // ResourceArn is a required field
  29065. ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
  29066. // The new or modified tags for the resource.
  29067. //
  29068. // Tags is a required field
  29069. Tags []*Tag `locationName:"tags" type:"list" required:"true"`
  29070. }
  29071. // String returns the string representation
  29072. func (s TagResourceInput) String() string {
  29073. return awsutil.Prettify(s)
  29074. }
  29075. // GoString returns the string representation
  29076. func (s TagResourceInput) GoString() string {
  29077. return s.String()
  29078. }
  29079. // Validate inspects the fields of the type to determine if they are valid.
  29080. func (s *TagResourceInput) Validate() error {
  29081. invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
  29082. if s.ResourceArn == nil {
  29083. invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  29084. }
  29085. if s.Tags == nil {
  29086. invalidParams.Add(request.NewErrParamRequired("Tags"))
  29087. }
  29088. if invalidParams.Len() > 0 {
  29089. return invalidParams
  29090. }
  29091. return nil
  29092. }
  29093. // SetResourceArn sets the ResourceArn field's value.
  29094. func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
  29095. s.ResourceArn = &v
  29096. return s
  29097. }
  29098. // SetTags sets the Tags field's value.
  29099. func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
  29100. s.Tags = v
  29101. return s
  29102. }
  29103. type TagResourceOutput struct {
  29104. _ struct{} `type:"structure"`
  29105. }
  29106. // String returns the string representation
  29107. func (s TagResourceOutput) String() string {
  29108. return awsutil.Prettify(s)
  29109. }
  29110. // GoString returns the string representation
  29111. func (s TagResourceOutput) GoString() string {
  29112. return s.String()
  29113. }
  29114. // Statistics for the checks performed during the audit.
  29115. type TaskStatistics struct {
  29116. _ struct{} `type:"structure"`
  29117. // The number of checks that did not run because the audit was canceled.
  29118. CanceledChecks *int64 `locationName:"canceledChecks" type:"integer"`
  29119. // The number of checks that found compliant resources.
  29120. CompliantChecks *int64 `locationName:"compliantChecks" type:"integer"`
  29121. // The number of checks
  29122. FailedChecks *int64 `locationName:"failedChecks" type:"integer"`
  29123. // The number of checks in progress.
  29124. InProgressChecks *int64 `locationName:"inProgressChecks" type:"integer"`
  29125. // The number of checks that found non-compliant resources.
  29126. NonCompliantChecks *int64 `locationName:"nonCompliantChecks" type:"integer"`
  29127. // The number of checks in this audit.
  29128. TotalChecks *int64 `locationName:"totalChecks" type:"integer"`
  29129. // The number of checks waiting for data collection.
  29130. WaitingForDataCollectionChecks *int64 `locationName:"waitingForDataCollectionChecks" type:"integer"`
  29131. }
  29132. // String returns the string representation
  29133. func (s TaskStatistics) String() string {
  29134. return awsutil.Prettify(s)
  29135. }
  29136. // GoString returns the string representation
  29137. func (s TaskStatistics) GoString() string {
  29138. return s.String()
  29139. }
  29140. // SetCanceledChecks sets the CanceledChecks field's value.
  29141. func (s *TaskStatistics) SetCanceledChecks(v int64) *TaskStatistics {
  29142. s.CanceledChecks = &v
  29143. return s
  29144. }
  29145. // SetCompliantChecks sets the CompliantChecks field's value.
  29146. func (s *TaskStatistics) SetCompliantChecks(v int64) *TaskStatistics {
  29147. s.CompliantChecks = &v
  29148. return s
  29149. }
  29150. // SetFailedChecks sets the FailedChecks field's value.
  29151. func (s *TaskStatistics) SetFailedChecks(v int64) *TaskStatistics {
  29152. s.FailedChecks = &v
  29153. return s
  29154. }
  29155. // SetInProgressChecks sets the InProgressChecks field's value.
  29156. func (s *TaskStatistics) SetInProgressChecks(v int64) *TaskStatistics {
  29157. s.InProgressChecks = &v
  29158. return s
  29159. }
  29160. // SetNonCompliantChecks sets the NonCompliantChecks field's value.
  29161. func (s *TaskStatistics) SetNonCompliantChecks(v int64) *TaskStatistics {
  29162. s.NonCompliantChecks = &v
  29163. return s
  29164. }
  29165. // SetTotalChecks sets the TotalChecks field's value.
  29166. func (s *TaskStatistics) SetTotalChecks(v int64) *TaskStatistics {
  29167. s.TotalChecks = &v
  29168. return s
  29169. }
  29170. // SetWaitingForDataCollectionChecks sets the WaitingForDataCollectionChecks field's value.
  29171. func (s *TaskStatistics) SetWaitingForDataCollectionChecks(v int64) *TaskStatistics {
  29172. s.WaitingForDataCollectionChecks = &v
  29173. return s
  29174. }
  29175. type TestAuthorizationInput struct {
  29176. _ struct{} `type:"structure"`
  29177. // A list of authorization info objects. Simulating authorization will create
  29178. // a response for each authInfo object in the list.
  29179. //
  29180. // AuthInfos is a required field
  29181. AuthInfos []*AuthInfo `locationName:"authInfos" min:"1" type:"list" required:"true"`
  29182. // The MQTT client ID.
  29183. ClientId *string `location:"querystring" locationName:"clientId" type:"string"`
  29184. // The Cognito identity pool ID.
  29185. CognitoIdentityPoolId *string `locationName:"cognitoIdentityPoolId" type:"string"`
  29186. // When testing custom authorization, the policies specified here are treated
  29187. // as if they are attached to the principal being authorized.
  29188. PolicyNamesToAdd []*string `locationName:"policyNamesToAdd" type:"list"`
  29189. // When testing custom authorization, the policies specified here are treated
  29190. // as if they are not attached to the principal being authorized.
  29191. PolicyNamesToSkip []*string `locationName:"policyNamesToSkip" type:"list"`
  29192. // The principal.
  29193. Principal *string `locationName:"principal" type:"string"`
  29194. }
  29195. // String returns the string representation
  29196. func (s TestAuthorizationInput) String() string {
  29197. return awsutil.Prettify(s)
  29198. }
  29199. // GoString returns the string representation
  29200. func (s TestAuthorizationInput) GoString() string {
  29201. return s.String()
  29202. }
  29203. // Validate inspects the fields of the type to determine if they are valid.
  29204. func (s *TestAuthorizationInput) Validate() error {
  29205. invalidParams := request.ErrInvalidParams{Context: "TestAuthorizationInput"}
  29206. if s.AuthInfos == nil {
  29207. invalidParams.Add(request.NewErrParamRequired("AuthInfos"))
  29208. }
  29209. if s.AuthInfos != nil && len(s.AuthInfos) < 1 {
  29210. invalidParams.Add(request.NewErrParamMinLen("AuthInfos", 1))
  29211. }
  29212. if invalidParams.Len() > 0 {
  29213. return invalidParams
  29214. }
  29215. return nil
  29216. }
  29217. // SetAuthInfos sets the AuthInfos field's value.
  29218. func (s *TestAuthorizationInput) SetAuthInfos(v []*AuthInfo) *TestAuthorizationInput {
  29219. s.AuthInfos = v
  29220. return s
  29221. }
  29222. // SetClientId sets the ClientId field's value.
  29223. func (s *TestAuthorizationInput) SetClientId(v string) *TestAuthorizationInput {
  29224. s.ClientId = &v
  29225. return s
  29226. }
  29227. // SetCognitoIdentityPoolId sets the CognitoIdentityPoolId field's value.
  29228. func (s *TestAuthorizationInput) SetCognitoIdentityPoolId(v string) *TestAuthorizationInput {
  29229. s.CognitoIdentityPoolId = &v
  29230. return s
  29231. }
  29232. // SetPolicyNamesToAdd sets the PolicyNamesToAdd field's value.
  29233. func (s *TestAuthorizationInput) SetPolicyNamesToAdd(v []*string) *TestAuthorizationInput {
  29234. s.PolicyNamesToAdd = v
  29235. return s
  29236. }
  29237. // SetPolicyNamesToSkip sets the PolicyNamesToSkip field's value.
  29238. func (s *TestAuthorizationInput) SetPolicyNamesToSkip(v []*string) *TestAuthorizationInput {
  29239. s.PolicyNamesToSkip = v
  29240. return s
  29241. }
  29242. // SetPrincipal sets the Principal field's value.
  29243. func (s *TestAuthorizationInput) SetPrincipal(v string) *TestAuthorizationInput {
  29244. s.Principal = &v
  29245. return s
  29246. }
  29247. type TestAuthorizationOutput struct {
  29248. _ struct{} `type:"structure"`
  29249. // The authentication results.
  29250. AuthResults []*AuthResult `locationName:"authResults" type:"list"`
  29251. }
  29252. // String returns the string representation
  29253. func (s TestAuthorizationOutput) String() string {
  29254. return awsutil.Prettify(s)
  29255. }
  29256. // GoString returns the string representation
  29257. func (s TestAuthorizationOutput) GoString() string {
  29258. return s.String()
  29259. }
  29260. // SetAuthResults sets the AuthResults field's value.
  29261. func (s *TestAuthorizationOutput) SetAuthResults(v []*AuthResult) *TestAuthorizationOutput {
  29262. s.AuthResults = v
  29263. return s
  29264. }
  29265. type TestInvokeAuthorizerInput struct {
  29266. _ struct{} `type:"structure"`
  29267. // The custom authorizer name.
  29268. //
  29269. // AuthorizerName is a required field
  29270. AuthorizerName *string `location:"uri" locationName:"authorizerName" min:"1" type:"string" required:"true"`
  29271. // The token returned by your custom authentication service.
  29272. //
  29273. // Token is a required field
  29274. Token *string `locationName:"token" min:"1" type:"string" required:"true"`
  29275. // The signature made with the token and your custom authentication service's
  29276. // private key.
  29277. //
  29278. // TokenSignature is a required field
  29279. TokenSignature *string `locationName:"tokenSignature" min:"1" type:"string" required:"true"`
  29280. }
  29281. // String returns the string representation
  29282. func (s TestInvokeAuthorizerInput) String() string {
  29283. return awsutil.Prettify(s)
  29284. }
  29285. // GoString returns the string representation
  29286. func (s TestInvokeAuthorizerInput) GoString() string {
  29287. return s.String()
  29288. }
  29289. // Validate inspects the fields of the type to determine if they are valid.
  29290. func (s *TestInvokeAuthorizerInput) Validate() error {
  29291. invalidParams := request.ErrInvalidParams{Context: "TestInvokeAuthorizerInput"}
  29292. if s.AuthorizerName == nil {
  29293. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  29294. }
  29295. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  29296. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  29297. }
  29298. if s.Token == nil {
  29299. invalidParams.Add(request.NewErrParamRequired("Token"))
  29300. }
  29301. if s.Token != nil && len(*s.Token) < 1 {
  29302. invalidParams.Add(request.NewErrParamMinLen("Token", 1))
  29303. }
  29304. if s.TokenSignature == nil {
  29305. invalidParams.Add(request.NewErrParamRequired("TokenSignature"))
  29306. }
  29307. if s.TokenSignature != nil && len(*s.TokenSignature) < 1 {
  29308. invalidParams.Add(request.NewErrParamMinLen("TokenSignature", 1))
  29309. }
  29310. if invalidParams.Len() > 0 {
  29311. return invalidParams
  29312. }
  29313. return nil
  29314. }
  29315. // SetAuthorizerName sets the AuthorizerName field's value.
  29316. func (s *TestInvokeAuthorizerInput) SetAuthorizerName(v string) *TestInvokeAuthorizerInput {
  29317. s.AuthorizerName = &v
  29318. return s
  29319. }
  29320. // SetToken sets the Token field's value.
  29321. func (s *TestInvokeAuthorizerInput) SetToken(v string) *TestInvokeAuthorizerInput {
  29322. s.Token = &v
  29323. return s
  29324. }
  29325. // SetTokenSignature sets the TokenSignature field's value.
  29326. func (s *TestInvokeAuthorizerInput) SetTokenSignature(v string) *TestInvokeAuthorizerInput {
  29327. s.TokenSignature = &v
  29328. return s
  29329. }
  29330. type TestInvokeAuthorizerOutput struct {
  29331. _ struct{} `type:"structure"`
  29332. // The number of seconds after which the connection is terminated.
  29333. DisconnectAfterInSeconds *int64 `locationName:"disconnectAfterInSeconds" type:"integer"`
  29334. // True if the token is authenticated, otherwise false.
  29335. IsAuthenticated *bool `locationName:"isAuthenticated" type:"boolean"`
  29336. // IAM policy documents.
  29337. PolicyDocuments []*string `locationName:"policyDocuments" type:"list"`
  29338. // The principal ID.
  29339. PrincipalId *string `locationName:"principalId" min:"1" type:"string"`
  29340. // The number of seconds after which the temporary credentials are refreshed.
  29341. RefreshAfterInSeconds *int64 `locationName:"refreshAfterInSeconds" type:"integer"`
  29342. }
  29343. // String returns the string representation
  29344. func (s TestInvokeAuthorizerOutput) String() string {
  29345. return awsutil.Prettify(s)
  29346. }
  29347. // GoString returns the string representation
  29348. func (s TestInvokeAuthorizerOutput) GoString() string {
  29349. return s.String()
  29350. }
  29351. // SetDisconnectAfterInSeconds sets the DisconnectAfterInSeconds field's value.
  29352. func (s *TestInvokeAuthorizerOutput) SetDisconnectAfterInSeconds(v int64) *TestInvokeAuthorizerOutput {
  29353. s.DisconnectAfterInSeconds = &v
  29354. return s
  29355. }
  29356. // SetIsAuthenticated sets the IsAuthenticated field's value.
  29357. func (s *TestInvokeAuthorizerOutput) SetIsAuthenticated(v bool) *TestInvokeAuthorizerOutput {
  29358. s.IsAuthenticated = &v
  29359. return s
  29360. }
  29361. // SetPolicyDocuments sets the PolicyDocuments field's value.
  29362. func (s *TestInvokeAuthorizerOutput) SetPolicyDocuments(v []*string) *TestInvokeAuthorizerOutput {
  29363. s.PolicyDocuments = v
  29364. return s
  29365. }
  29366. // SetPrincipalId sets the PrincipalId field's value.
  29367. func (s *TestInvokeAuthorizerOutput) SetPrincipalId(v string) *TestInvokeAuthorizerOutput {
  29368. s.PrincipalId = &v
  29369. return s
  29370. }
  29371. // SetRefreshAfterInSeconds sets the RefreshAfterInSeconds field's value.
  29372. func (s *TestInvokeAuthorizerOutput) SetRefreshAfterInSeconds(v int64) *TestInvokeAuthorizerOutput {
  29373. s.RefreshAfterInSeconds = &v
  29374. return s
  29375. }
  29376. // The properties of the thing, including thing name, thing type name, and a
  29377. // list of thing attributes.
  29378. type ThingAttribute struct {
  29379. _ struct{} `type:"structure"`
  29380. // A list of thing attributes which are name-value pairs.
  29381. Attributes map[string]*string `locationName:"attributes" type:"map"`
  29382. // The thing ARN.
  29383. ThingArn *string `locationName:"thingArn" type:"string"`
  29384. // The name of the thing.
  29385. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  29386. // The name of the thing type, if the thing has been associated with a type.
  29387. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  29388. // The version of the thing record in the registry.
  29389. Version *int64 `locationName:"version" type:"long"`
  29390. }
  29391. // String returns the string representation
  29392. func (s ThingAttribute) String() string {
  29393. return awsutil.Prettify(s)
  29394. }
  29395. // GoString returns the string representation
  29396. func (s ThingAttribute) GoString() string {
  29397. return s.String()
  29398. }
  29399. // SetAttributes sets the Attributes field's value.
  29400. func (s *ThingAttribute) SetAttributes(v map[string]*string) *ThingAttribute {
  29401. s.Attributes = v
  29402. return s
  29403. }
  29404. // SetThingArn sets the ThingArn field's value.
  29405. func (s *ThingAttribute) SetThingArn(v string) *ThingAttribute {
  29406. s.ThingArn = &v
  29407. return s
  29408. }
  29409. // SetThingName sets the ThingName field's value.
  29410. func (s *ThingAttribute) SetThingName(v string) *ThingAttribute {
  29411. s.ThingName = &v
  29412. return s
  29413. }
  29414. // SetThingTypeName sets the ThingTypeName field's value.
  29415. func (s *ThingAttribute) SetThingTypeName(v string) *ThingAttribute {
  29416. s.ThingTypeName = &v
  29417. return s
  29418. }
  29419. // SetVersion sets the Version field's value.
  29420. func (s *ThingAttribute) SetVersion(v int64) *ThingAttribute {
  29421. s.Version = &v
  29422. return s
  29423. }
  29424. // The connectivity status of the thing.
  29425. type ThingConnectivity struct {
  29426. _ struct{} `type:"structure"`
  29427. // True if the thing is connected to the AWS IoT service, false if it is not
  29428. // connected.
  29429. Connected *bool `locationName:"connected" type:"boolean"`
  29430. // The epoch time (in milliseconds) when the thing last connected or disconnected.
  29431. // Note that if the thing has been disconnected for more than a few weeks, the
  29432. // time value can be missing.
  29433. Timestamp *int64 `locationName:"timestamp" type:"long"`
  29434. }
  29435. // String returns the string representation
  29436. func (s ThingConnectivity) String() string {
  29437. return awsutil.Prettify(s)
  29438. }
  29439. // GoString returns the string representation
  29440. func (s ThingConnectivity) GoString() string {
  29441. return s.String()
  29442. }
  29443. // SetConnected sets the Connected field's value.
  29444. func (s *ThingConnectivity) SetConnected(v bool) *ThingConnectivity {
  29445. s.Connected = &v
  29446. return s
  29447. }
  29448. // SetTimestamp sets the Timestamp field's value.
  29449. func (s *ThingConnectivity) SetTimestamp(v int64) *ThingConnectivity {
  29450. s.Timestamp = &v
  29451. return s
  29452. }
  29453. // The thing search index document.
  29454. type ThingDocument struct {
  29455. _ struct{} `type:"structure"`
  29456. // The attributes.
  29457. Attributes map[string]*string `locationName:"attributes" type:"map"`
  29458. // Indicates whether or not the thing is connected to the AWS IoT service.
  29459. Connectivity *ThingConnectivity `locationName:"connectivity" type:"structure"`
  29460. // The shadow.
  29461. Shadow *string `locationName:"shadow" type:"string"`
  29462. // Thing group names.
  29463. ThingGroupNames []*string `locationName:"thingGroupNames" type:"list"`
  29464. // The thing ID.
  29465. ThingId *string `locationName:"thingId" type:"string"`
  29466. // The thing name.
  29467. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  29468. // The thing type name.
  29469. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  29470. }
  29471. // String returns the string representation
  29472. func (s ThingDocument) String() string {
  29473. return awsutil.Prettify(s)
  29474. }
  29475. // GoString returns the string representation
  29476. func (s ThingDocument) GoString() string {
  29477. return s.String()
  29478. }
  29479. // SetAttributes sets the Attributes field's value.
  29480. func (s *ThingDocument) SetAttributes(v map[string]*string) *ThingDocument {
  29481. s.Attributes = v
  29482. return s
  29483. }
  29484. // SetConnectivity sets the Connectivity field's value.
  29485. func (s *ThingDocument) SetConnectivity(v *ThingConnectivity) *ThingDocument {
  29486. s.Connectivity = v
  29487. return s
  29488. }
  29489. // SetShadow sets the Shadow field's value.
  29490. func (s *ThingDocument) SetShadow(v string) *ThingDocument {
  29491. s.Shadow = &v
  29492. return s
  29493. }
  29494. // SetThingGroupNames sets the ThingGroupNames field's value.
  29495. func (s *ThingDocument) SetThingGroupNames(v []*string) *ThingDocument {
  29496. s.ThingGroupNames = v
  29497. return s
  29498. }
  29499. // SetThingId sets the ThingId field's value.
  29500. func (s *ThingDocument) SetThingId(v string) *ThingDocument {
  29501. s.ThingId = &v
  29502. return s
  29503. }
  29504. // SetThingName sets the ThingName field's value.
  29505. func (s *ThingDocument) SetThingName(v string) *ThingDocument {
  29506. s.ThingName = &v
  29507. return s
  29508. }
  29509. // SetThingTypeName sets the ThingTypeName field's value.
  29510. func (s *ThingDocument) SetThingTypeName(v string) *ThingDocument {
  29511. s.ThingTypeName = &v
  29512. return s
  29513. }
  29514. // The thing group search index document.
  29515. type ThingGroupDocument struct {
  29516. _ struct{} `type:"structure"`
  29517. // The thing group attributes.
  29518. Attributes map[string]*string `locationName:"attributes" type:"map"`
  29519. // Parent group names.
  29520. ParentGroupNames []*string `locationName:"parentGroupNames" type:"list"`
  29521. // The thing group description.
  29522. ThingGroupDescription *string `locationName:"thingGroupDescription" type:"string"`
  29523. // The thing group ID.
  29524. ThingGroupId *string `locationName:"thingGroupId" min:"1" type:"string"`
  29525. // The thing group name.
  29526. ThingGroupName *string `locationName:"thingGroupName" min:"1" type:"string"`
  29527. }
  29528. // String returns the string representation
  29529. func (s ThingGroupDocument) String() string {
  29530. return awsutil.Prettify(s)
  29531. }
  29532. // GoString returns the string representation
  29533. func (s ThingGroupDocument) GoString() string {
  29534. return s.String()
  29535. }
  29536. // SetAttributes sets the Attributes field's value.
  29537. func (s *ThingGroupDocument) SetAttributes(v map[string]*string) *ThingGroupDocument {
  29538. s.Attributes = v
  29539. return s
  29540. }
  29541. // SetParentGroupNames sets the ParentGroupNames field's value.
  29542. func (s *ThingGroupDocument) SetParentGroupNames(v []*string) *ThingGroupDocument {
  29543. s.ParentGroupNames = v
  29544. return s
  29545. }
  29546. // SetThingGroupDescription sets the ThingGroupDescription field's value.
  29547. func (s *ThingGroupDocument) SetThingGroupDescription(v string) *ThingGroupDocument {
  29548. s.ThingGroupDescription = &v
  29549. return s
  29550. }
  29551. // SetThingGroupId sets the ThingGroupId field's value.
  29552. func (s *ThingGroupDocument) SetThingGroupId(v string) *ThingGroupDocument {
  29553. s.ThingGroupId = &v
  29554. return s
  29555. }
  29556. // SetThingGroupName sets the ThingGroupName field's value.
  29557. func (s *ThingGroupDocument) SetThingGroupName(v string) *ThingGroupDocument {
  29558. s.ThingGroupName = &v
  29559. return s
  29560. }
  29561. // Thing group indexing configuration.
  29562. type ThingGroupIndexingConfiguration struct {
  29563. _ struct{} `type:"structure"`
  29564. // Thing group indexing mode.
  29565. //
  29566. // ThingGroupIndexingMode is a required field
  29567. ThingGroupIndexingMode *string `locationName:"thingGroupIndexingMode" type:"string" required:"true" enum:"ThingGroupIndexingMode"`
  29568. }
  29569. // String returns the string representation
  29570. func (s ThingGroupIndexingConfiguration) String() string {
  29571. return awsutil.Prettify(s)
  29572. }
  29573. // GoString returns the string representation
  29574. func (s ThingGroupIndexingConfiguration) GoString() string {
  29575. return s.String()
  29576. }
  29577. // Validate inspects the fields of the type to determine if they are valid.
  29578. func (s *ThingGroupIndexingConfiguration) Validate() error {
  29579. invalidParams := request.ErrInvalidParams{Context: "ThingGroupIndexingConfiguration"}
  29580. if s.ThingGroupIndexingMode == nil {
  29581. invalidParams.Add(request.NewErrParamRequired("ThingGroupIndexingMode"))
  29582. }
  29583. if invalidParams.Len() > 0 {
  29584. return invalidParams
  29585. }
  29586. return nil
  29587. }
  29588. // SetThingGroupIndexingMode sets the ThingGroupIndexingMode field's value.
  29589. func (s *ThingGroupIndexingConfiguration) SetThingGroupIndexingMode(v string) *ThingGroupIndexingConfiguration {
  29590. s.ThingGroupIndexingMode = &v
  29591. return s
  29592. }
  29593. // Thing group metadata.
  29594. type ThingGroupMetadata struct {
  29595. _ struct{} `type:"structure"`
  29596. // The UNIX timestamp of when the thing group was created.
  29597. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  29598. // The parent thing group name.
  29599. ParentGroupName *string `locationName:"parentGroupName" min:"1" type:"string"`
  29600. // The root parent thing group.
  29601. RootToParentThingGroups []*GroupNameAndArn `locationName:"rootToParentThingGroups" type:"list"`
  29602. }
  29603. // String returns the string representation
  29604. func (s ThingGroupMetadata) String() string {
  29605. return awsutil.Prettify(s)
  29606. }
  29607. // GoString returns the string representation
  29608. func (s ThingGroupMetadata) GoString() string {
  29609. return s.String()
  29610. }
  29611. // SetCreationDate sets the CreationDate field's value.
  29612. func (s *ThingGroupMetadata) SetCreationDate(v time.Time) *ThingGroupMetadata {
  29613. s.CreationDate = &v
  29614. return s
  29615. }
  29616. // SetParentGroupName sets the ParentGroupName field's value.
  29617. func (s *ThingGroupMetadata) SetParentGroupName(v string) *ThingGroupMetadata {
  29618. s.ParentGroupName = &v
  29619. return s
  29620. }
  29621. // SetRootToParentThingGroups sets the RootToParentThingGroups field's value.
  29622. func (s *ThingGroupMetadata) SetRootToParentThingGroups(v []*GroupNameAndArn) *ThingGroupMetadata {
  29623. s.RootToParentThingGroups = v
  29624. return s
  29625. }
  29626. // Thing group properties.
  29627. type ThingGroupProperties struct {
  29628. _ struct{} `type:"structure"`
  29629. // The thing group attributes in JSON format.
  29630. AttributePayload *AttributePayload `locationName:"attributePayload" type:"structure"`
  29631. // The thing group description.
  29632. ThingGroupDescription *string `locationName:"thingGroupDescription" type:"string"`
  29633. }
  29634. // String returns the string representation
  29635. func (s ThingGroupProperties) String() string {
  29636. return awsutil.Prettify(s)
  29637. }
  29638. // GoString returns the string representation
  29639. func (s ThingGroupProperties) GoString() string {
  29640. return s.String()
  29641. }
  29642. // SetAttributePayload sets the AttributePayload field's value.
  29643. func (s *ThingGroupProperties) SetAttributePayload(v *AttributePayload) *ThingGroupProperties {
  29644. s.AttributePayload = v
  29645. return s
  29646. }
  29647. // SetThingGroupDescription sets the ThingGroupDescription field's value.
  29648. func (s *ThingGroupProperties) SetThingGroupDescription(v string) *ThingGroupProperties {
  29649. s.ThingGroupDescription = &v
  29650. return s
  29651. }
  29652. // The thing indexing configuration. For more information, see Managing Thing
  29653. // Indexing (https://docs.aws.amazon.com/iot/latest/developerguide/managing-index.html).
  29654. type ThingIndexingConfiguration struct {
  29655. _ struct{} `type:"structure"`
  29656. // Thing connectivity indexing mode. Valid values are:
  29657. //
  29658. // * STATUS – Your thing index will contain connectivity status. In order
  29659. // to enable thing connectivity indexing, thingIndexMode must not be set
  29660. // to OFF.
  29661. //
  29662. // * OFF - Thing connectivity status indexing is disabled.
  29663. ThingConnectivityIndexingMode *string `locationName:"thingConnectivityIndexingMode" type:"string" enum:"ThingConnectivityIndexingMode"`
  29664. // Thing indexing mode. Valid values are:
  29665. //
  29666. // * REGISTRY – Your thing index will contain only registry data.
  29667. //
  29668. // * REGISTRY_AND_SHADOW - Your thing index will contain registry and shadow
  29669. // data.
  29670. //
  29671. // * OFF - Thing indexing is disabled.
  29672. //
  29673. // ThingIndexingMode is a required field
  29674. ThingIndexingMode *string `locationName:"thingIndexingMode" type:"string" required:"true" enum:"ThingIndexingMode"`
  29675. }
  29676. // String returns the string representation
  29677. func (s ThingIndexingConfiguration) String() string {
  29678. return awsutil.Prettify(s)
  29679. }
  29680. // GoString returns the string representation
  29681. func (s ThingIndexingConfiguration) GoString() string {
  29682. return s.String()
  29683. }
  29684. // Validate inspects the fields of the type to determine if they are valid.
  29685. func (s *ThingIndexingConfiguration) Validate() error {
  29686. invalidParams := request.ErrInvalidParams{Context: "ThingIndexingConfiguration"}
  29687. if s.ThingIndexingMode == nil {
  29688. invalidParams.Add(request.NewErrParamRequired("ThingIndexingMode"))
  29689. }
  29690. if invalidParams.Len() > 0 {
  29691. return invalidParams
  29692. }
  29693. return nil
  29694. }
  29695. // SetThingConnectivityIndexingMode sets the ThingConnectivityIndexingMode field's value.
  29696. func (s *ThingIndexingConfiguration) SetThingConnectivityIndexingMode(v string) *ThingIndexingConfiguration {
  29697. s.ThingConnectivityIndexingMode = &v
  29698. return s
  29699. }
  29700. // SetThingIndexingMode sets the ThingIndexingMode field's value.
  29701. func (s *ThingIndexingConfiguration) SetThingIndexingMode(v string) *ThingIndexingConfiguration {
  29702. s.ThingIndexingMode = &v
  29703. return s
  29704. }
  29705. // The definition of the thing type, including thing type name and description.
  29706. type ThingTypeDefinition struct {
  29707. _ struct{} `type:"structure"`
  29708. // The thing type ARN.
  29709. ThingTypeArn *string `locationName:"thingTypeArn" type:"string"`
  29710. // The ThingTypeMetadata contains additional information about the thing type
  29711. // including: creation date and time, a value indicating whether the thing type
  29712. // is deprecated, and a date and time when it was deprecated.
  29713. ThingTypeMetadata *ThingTypeMetadata `locationName:"thingTypeMetadata" type:"structure"`
  29714. // The name of the thing type.
  29715. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  29716. // The ThingTypeProperties for the thing type.
  29717. ThingTypeProperties *ThingTypeProperties `locationName:"thingTypeProperties" type:"structure"`
  29718. }
  29719. // String returns the string representation
  29720. func (s ThingTypeDefinition) String() string {
  29721. return awsutil.Prettify(s)
  29722. }
  29723. // GoString returns the string representation
  29724. func (s ThingTypeDefinition) GoString() string {
  29725. return s.String()
  29726. }
  29727. // SetThingTypeArn sets the ThingTypeArn field's value.
  29728. func (s *ThingTypeDefinition) SetThingTypeArn(v string) *ThingTypeDefinition {
  29729. s.ThingTypeArn = &v
  29730. return s
  29731. }
  29732. // SetThingTypeMetadata sets the ThingTypeMetadata field's value.
  29733. func (s *ThingTypeDefinition) SetThingTypeMetadata(v *ThingTypeMetadata) *ThingTypeDefinition {
  29734. s.ThingTypeMetadata = v
  29735. return s
  29736. }
  29737. // SetThingTypeName sets the ThingTypeName field's value.
  29738. func (s *ThingTypeDefinition) SetThingTypeName(v string) *ThingTypeDefinition {
  29739. s.ThingTypeName = &v
  29740. return s
  29741. }
  29742. // SetThingTypeProperties sets the ThingTypeProperties field's value.
  29743. func (s *ThingTypeDefinition) SetThingTypeProperties(v *ThingTypeProperties) *ThingTypeDefinition {
  29744. s.ThingTypeProperties = v
  29745. return s
  29746. }
  29747. // The ThingTypeMetadata contains additional information about the thing type
  29748. // including: creation date and time, a value indicating whether the thing type
  29749. // is deprecated, and a date and time when time was deprecated.
  29750. type ThingTypeMetadata struct {
  29751. _ struct{} `type:"structure"`
  29752. // The date and time when the thing type was created.
  29753. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  29754. // Whether the thing type is deprecated. If true, no new things could be associated
  29755. // with this type.
  29756. Deprecated *bool `locationName:"deprecated" type:"boolean"`
  29757. // The date and time when the thing type was deprecated.
  29758. DeprecationDate *time.Time `locationName:"deprecationDate" type:"timestamp"`
  29759. }
  29760. // String returns the string representation
  29761. func (s ThingTypeMetadata) String() string {
  29762. return awsutil.Prettify(s)
  29763. }
  29764. // GoString returns the string representation
  29765. func (s ThingTypeMetadata) GoString() string {
  29766. return s.String()
  29767. }
  29768. // SetCreationDate sets the CreationDate field's value.
  29769. func (s *ThingTypeMetadata) SetCreationDate(v time.Time) *ThingTypeMetadata {
  29770. s.CreationDate = &v
  29771. return s
  29772. }
  29773. // SetDeprecated sets the Deprecated field's value.
  29774. func (s *ThingTypeMetadata) SetDeprecated(v bool) *ThingTypeMetadata {
  29775. s.Deprecated = &v
  29776. return s
  29777. }
  29778. // SetDeprecationDate sets the DeprecationDate field's value.
  29779. func (s *ThingTypeMetadata) SetDeprecationDate(v time.Time) *ThingTypeMetadata {
  29780. s.DeprecationDate = &v
  29781. return s
  29782. }
  29783. // The ThingTypeProperties contains information about the thing type including:
  29784. // a thing type description, and a list of searchable thing attribute names.
  29785. type ThingTypeProperties struct {
  29786. _ struct{} `type:"structure"`
  29787. // A list of searchable thing attribute names.
  29788. SearchableAttributes []*string `locationName:"searchableAttributes" type:"list"`
  29789. // The description of the thing type.
  29790. ThingTypeDescription *string `locationName:"thingTypeDescription" type:"string"`
  29791. }
  29792. // String returns the string representation
  29793. func (s ThingTypeProperties) String() string {
  29794. return awsutil.Prettify(s)
  29795. }
  29796. // GoString returns the string representation
  29797. func (s ThingTypeProperties) GoString() string {
  29798. return s.String()
  29799. }
  29800. // SetSearchableAttributes sets the SearchableAttributes field's value.
  29801. func (s *ThingTypeProperties) SetSearchableAttributes(v []*string) *ThingTypeProperties {
  29802. s.SearchableAttributes = v
  29803. return s
  29804. }
  29805. // SetThingTypeDescription sets the ThingTypeDescription field's value.
  29806. func (s *ThingTypeProperties) SetThingTypeDescription(v string) *ThingTypeProperties {
  29807. s.ThingTypeDescription = &v
  29808. return s
  29809. }
  29810. // Specifies the amount of time each device has to finish its execution of the
  29811. // job. A timer is started when the job execution status is set to IN_PROGRESS.
  29812. // If the job execution status is not set to another terminal state before the
  29813. // timer expires, it will be automatically set to TIMED_OUT.
  29814. type TimeoutConfig struct {
  29815. _ struct{} `type:"structure"`
  29816. // Specifies the amount of time, in minutes, this device has to finish execution
  29817. // of this job. The timeout interval can be anywhere between 1 minute and 7
  29818. // days (1 to 10080 minutes). The in progress timer can't be updated and will
  29819. // apply to all job executions for the job. Whenever a job execution remains
  29820. // in the IN_PROGRESS status for longer than this interval, the job execution
  29821. // will fail and switch to the terminal TIMED_OUT status.
  29822. InProgressTimeoutInMinutes *int64 `locationName:"inProgressTimeoutInMinutes" type:"long"`
  29823. }
  29824. // String returns the string representation
  29825. func (s TimeoutConfig) String() string {
  29826. return awsutil.Prettify(s)
  29827. }
  29828. // GoString returns the string representation
  29829. func (s TimeoutConfig) GoString() string {
  29830. return s.String()
  29831. }
  29832. // SetInProgressTimeoutInMinutes sets the InProgressTimeoutInMinutes field's value.
  29833. func (s *TimeoutConfig) SetInProgressTimeoutInMinutes(v int64) *TimeoutConfig {
  29834. s.InProgressTimeoutInMinutes = &v
  29835. return s
  29836. }
  29837. // Describes a rule.
  29838. type TopicRule struct {
  29839. _ struct{} `type:"structure"`
  29840. // The actions associated with the rule.
  29841. Actions []*Action `locationName:"actions" type:"list"`
  29842. // The version of the SQL rules engine to use when evaluating the rule.
  29843. AwsIotSqlVersion *string `locationName:"awsIotSqlVersion" type:"string"`
  29844. // The date and time the rule was created.
  29845. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  29846. // The description of the rule.
  29847. Description *string `locationName:"description" type:"string"`
  29848. // The action to perform when an error occurs.
  29849. ErrorAction *Action `locationName:"errorAction" type:"structure"`
  29850. // Specifies whether the rule is disabled.
  29851. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"`
  29852. // The name of the rule.
  29853. RuleName *string `locationName:"ruleName" min:"1" type:"string"`
  29854. // The SQL statement used to query the topic. When using a SQL query with multiple
  29855. // lines, be sure to escape the newline characters.
  29856. Sql *string `locationName:"sql" type:"string"`
  29857. }
  29858. // String returns the string representation
  29859. func (s TopicRule) String() string {
  29860. return awsutil.Prettify(s)
  29861. }
  29862. // GoString returns the string representation
  29863. func (s TopicRule) GoString() string {
  29864. return s.String()
  29865. }
  29866. // SetActions sets the Actions field's value.
  29867. func (s *TopicRule) SetActions(v []*Action) *TopicRule {
  29868. s.Actions = v
  29869. return s
  29870. }
  29871. // SetAwsIotSqlVersion sets the AwsIotSqlVersion field's value.
  29872. func (s *TopicRule) SetAwsIotSqlVersion(v string) *TopicRule {
  29873. s.AwsIotSqlVersion = &v
  29874. return s
  29875. }
  29876. // SetCreatedAt sets the CreatedAt field's value.
  29877. func (s *TopicRule) SetCreatedAt(v time.Time) *TopicRule {
  29878. s.CreatedAt = &v
  29879. return s
  29880. }
  29881. // SetDescription sets the Description field's value.
  29882. func (s *TopicRule) SetDescription(v string) *TopicRule {
  29883. s.Description = &v
  29884. return s
  29885. }
  29886. // SetErrorAction sets the ErrorAction field's value.
  29887. func (s *TopicRule) SetErrorAction(v *Action) *TopicRule {
  29888. s.ErrorAction = v
  29889. return s
  29890. }
  29891. // SetRuleDisabled sets the RuleDisabled field's value.
  29892. func (s *TopicRule) SetRuleDisabled(v bool) *TopicRule {
  29893. s.RuleDisabled = &v
  29894. return s
  29895. }
  29896. // SetRuleName sets the RuleName field's value.
  29897. func (s *TopicRule) SetRuleName(v string) *TopicRule {
  29898. s.RuleName = &v
  29899. return s
  29900. }
  29901. // SetSql sets the Sql field's value.
  29902. func (s *TopicRule) SetSql(v string) *TopicRule {
  29903. s.Sql = &v
  29904. return s
  29905. }
  29906. // Describes a rule.
  29907. type TopicRuleListItem struct {
  29908. _ struct{} `type:"structure"`
  29909. // The date and time the rule was created.
  29910. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"`
  29911. // The rule ARN.
  29912. RuleArn *string `locationName:"ruleArn" type:"string"`
  29913. // Specifies whether the rule is disabled.
  29914. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"`
  29915. // The name of the rule.
  29916. RuleName *string `locationName:"ruleName" min:"1" type:"string"`
  29917. // The pattern for the topic names that apply.
  29918. TopicPattern *string `locationName:"topicPattern" type:"string"`
  29919. }
  29920. // String returns the string representation
  29921. func (s TopicRuleListItem) String() string {
  29922. return awsutil.Prettify(s)
  29923. }
  29924. // GoString returns the string representation
  29925. func (s TopicRuleListItem) GoString() string {
  29926. return s.String()
  29927. }
  29928. // SetCreatedAt sets the CreatedAt field's value.
  29929. func (s *TopicRuleListItem) SetCreatedAt(v time.Time) *TopicRuleListItem {
  29930. s.CreatedAt = &v
  29931. return s
  29932. }
  29933. // SetRuleArn sets the RuleArn field's value.
  29934. func (s *TopicRuleListItem) SetRuleArn(v string) *TopicRuleListItem {
  29935. s.RuleArn = &v
  29936. return s
  29937. }
  29938. // SetRuleDisabled sets the RuleDisabled field's value.
  29939. func (s *TopicRuleListItem) SetRuleDisabled(v bool) *TopicRuleListItem {
  29940. s.RuleDisabled = &v
  29941. return s
  29942. }
  29943. // SetRuleName sets the RuleName field's value.
  29944. func (s *TopicRuleListItem) SetRuleName(v string) *TopicRuleListItem {
  29945. s.RuleName = &v
  29946. return s
  29947. }
  29948. // SetTopicPattern sets the TopicPattern field's value.
  29949. func (s *TopicRuleListItem) SetTopicPattern(v string) *TopicRuleListItem {
  29950. s.TopicPattern = &v
  29951. return s
  29952. }
  29953. // Describes a rule.
  29954. type TopicRulePayload struct {
  29955. _ struct{} `type:"structure"`
  29956. // The actions associated with the rule.
  29957. //
  29958. // Actions is a required field
  29959. Actions []*Action `locationName:"actions" type:"list" required:"true"`
  29960. // The version of the SQL rules engine to use when evaluating the rule.
  29961. AwsIotSqlVersion *string `locationName:"awsIotSqlVersion" type:"string"`
  29962. // The description of the rule.
  29963. Description *string `locationName:"description" type:"string"`
  29964. // The action to take when an error occurs.
  29965. ErrorAction *Action `locationName:"errorAction" type:"structure"`
  29966. // Specifies whether the rule is disabled.
  29967. RuleDisabled *bool `locationName:"ruleDisabled" type:"boolean"`
  29968. // The SQL statement used to query the topic. For more information, see AWS
  29969. // IoT SQL Reference (http://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html#aws-iot-sql-reference)
  29970. // in the AWS IoT Developer Guide.
  29971. //
  29972. // Sql is a required field
  29973. Sql *string `locationName:"sql" type:"string" required:"true"`
  29974. }
  29975. // String returns the string representation
  29976. func (s TopicRulePayload) String() string {
  29977. return awsutil.Prettify(s)
  29978. }
  29979. // GoString returns the string representation
  29980. func (s TopicRulePayload) GoString() string {
  29981. return s.String()
  29982. }
  29983. // Validate inspects the fields of the type to determine if they are valid.
  29984. func (s *TopicRulePayload) Validate() error {
  29985. invalidParams := request.ErrInvalidParams{Context: "TopicRulePayload"}
  29986. if s.Actions == nil {
  29987. invalidParams.Add(request.NewErrParamRequired("Actions"))
  29988. }
  29989. if s.Sql == nil {
  29990. invalidParams.Add(request.NewErrParamRequired("Sql"))
  29991. }
  29992. if s.Actions != nil {
  29993. for i, v := range s.Actions {
  29994. if v == nil {
  29995. continue
  29996. }
  29997. if err := v.Validate(); err != nil {
  29998. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
  29999. }
  30000. }
  30001. }
  30002. if s.ErrorAction != nil {
  30003. if err := s.ErrorAction.Validate(); err != nil {
  30004. invalidParams.AddNested("ErrorAction", err.(request.ErrInvalidParams))
  30005. }
  30006. }
  30007. if invalidParams.Len() > 0 {
  30008. return invalidParams
  30009. }
  30010. return nil
  30011. }
  30012. // SetActions sets the Actions field's value.
  30013. func (s *TopicRulePayload) SetActions(v []*Action) *TopicRulePayload {
  30014. s.Actions = v
  30015. return s
  30016. }
  30017. // SetAwsIotSqlVersion sets the AwsIotSqlVersion field's value.
  30018. func (s *TopicRulePayload) SetAwsIotSqlVersion(v string) *TopicRulePayload {
  30019. s.AwsIotSqlVersion = &v
  30020. return s
  30021. }
  30022. // SetDescription sets the Description field's value.
  30023. func (s *TopicRulePayload) SetDescription(v string) *TopicRulePayload {
  30024. s.Description = &v
  30025. return s
  30026. }
  30027. // SetErrorAction sets the ErrorAction field's value.
  30028. func (s *TopicRulePayload) SetErrorAction(v *Action) *TopicRulePayload {
  30029. s.ErrorAction = v
  30030. return s
  30031. }
  30032. // SetRuleDisabled sets the RuleDisabled field's value.
  30033. func (s *TopicRulePayload) SetRuleDisabled(v bool) *TopicRulePayload {
  30034. s.RuleDisabled = &v
  30035. return s
  30036. }
  30037. // SetSql sets the Sql field's value.
  30038. func (s *TopicRulePayload) SetSql(v string) *TopicRulePayload {
  30039. s.Sql = &v
  30040. return s
  30041. }
  30042. // The input for the TransferCertificate operation.
  30043. type TransferCertificateInput struct {
  30044. _ struct{} `type:"structure"`
  30045. // The ID of the certificate. (The last part of the certificate ARN contains
  30046. // the certificate ID.)
  30047. //
  30048. // CertificateId is a required field
  30049. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  30050. // The AWS account.
  30051. //
  30052. // TargetAwsAccount is a required field
  30053. TargetAwsAccount *string `location:"querystring" locationName:"targetAwsAccount" min:"12" type:"string" required:"true"`
  30054. // The transfer message.
  30055. TransferMessage *string `locationName:"transferMessage" type:"string"`
  30056. }
  30057. // String returns the string representation
  30058. func (s TransferCertificateInput) String() string {
  30059. return awsutil.Prettify(s)
  30060. }
  30061. // GoString returns the string representation
  30062. func (s TransferCertificateInput) GoString() string {
  30063. return s.String()
  30064. }
  30065. // Validate inspects the fields of the type to determine if they are valid.
  30066. func (s *TransferCertificateInput) Validate() error {
  30067. invalidParams := request.ErrInvalidParams{Context: "TransferCertificateInput"}
  30068. if s.CertificateId == nil {
  30069. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  30070. }
  30071. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  30072. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  30073. }
  30074. if s.TargetAwsAccount == nil {
  30075. invalidParams.Add(request.NewErrParamRequired("TargetAwsAccount"))
  30076. }
  30077. if s.TargetAwsAccount != nil && len(*s.TargetAwsAccount) < 12 {
  30078. invalidParams.Add(request.NewErrParamMinLen("TargetAwsAccount", 12))
  30079. }
  30080. if invalidParams.Len() > 0 {
  30081. return invalidParams
  30082. }
  30083. return nil
  30084. }
  30085. // SetCertificateId sets the CertificateId field's value.
  30086. func (s *TransferCertificateInput) SetCertificateId(v string) *TransferCertificateInput {
  30087. s.CertificateId = &v
  30088. return s
  30089. }
  30090. // SetTargetAwsAccount sets the TargetAwsAccount field's value.
  30091. func (s *TransferCertificateInput) SetTargetAwsAccount(v string) *TransferCertificateInput {
  30092. s.TargetAwsAccount = &v
  30093. return s
  30094. }
  30095. // SetTransferMessage sets the TransferMessage field's value.
  30096. func (s *TransferCertificateInput) SetTransferMessage(v string) *TransferCertificateInput {
  30097. s.TransferMessage = &v
  30098. return s
  30099. }
  30100. // The output from the TransferCertificate operation.
  30101. type TransferCertificateOutput struct {
  30102. _ struct{} `type:"structure"`
  30103. // The ARN of the certificate.
  30104. TransferredCertificateArn *string `locationName:"transferredCertificateArn" type:"string"`
  30105. }
  30106. // String returns the string representation
  30107. func (s TransferCertificateOutput) String() string {
  30108. return awsutil.Prettify(s)
  30109. }
  30110. // GoString returns the string representation
  30111. func (s TransferCertificateOutput) GoString() string {
  30112. return s.String()
  30113. }
  30114. // SetTransferredCertificateArn sets the TransferredCertificateArn field's value.
  30115. func (s *TransferCertificateOutput) SetTransferredCertificateArn(v string) *TransferCertificateOutput {
  30116. s.TransferredCertificateArn = &v
  30117. return s
  30118. }
  30119. // Data used to transfer a certificate to an AWS account.
  30120. type TransferData struct {
  30121. _ struct{} `type:"structure"`
  30122. // The date the transfer was accepted.
  30123. AcceptDate *time.Time `locationName:"acceptDate" type:"timestamp"`
  30124. // The date the transfer was rejected.
  30125. RejectDate *time.Time `locationName:"rejectDate" type:"timestamp"`
  30126. // The reason why the transfer was rejected.
  30127. RejectReason *string `locationName:"rejectReason" type:"string"`
  30128. // The date the transfer took place.
  30129. TransferDate *time.Time `locationName:"transferDate" type:"timestamp"`
  30130. // The transfer message.
  30131. TransferMessage *string `locationName:"transferMessage" type:"string"`
  30132. }
  30133. // String returns the string representation
  30134. func (s TransferData) String() string {
  30135. return awsutil.Prettify(s)
  30136. }
  30137. // GoString returns the string representation
  30138. func (s TransferData) GoString() string {
  30139. return s.String()
  30140. }
  30141. // SetAcceptDate sets the AcceptDate field's value.
  30142. func (s *TransferData) SetAcceptDate(v time.Time) *TransferData {
  30143. s.AcceptDate = &v
  30144. return s
  30145. }
  30146. // SetRejectDate sets the RejectDate field's value.
  30147. func (s *TransferData) SetRejectDate(v time.Time) *TransferData {
  30148. s.RejectDate = &v
  30149. return s
  30150. }
  30151. // SetRejectReason sets the RejectReason field's value.
  30152. func (s *TransferData) SetRejectReason(v string) *TransferData {
  30153. s.RejectReason = &v
  30154. return s
  30155. }
  30156. // SetTransferDate sets the TransferDate field's value.
  30157. func (s *TransferData) SetTransferDate(v time.Time) *TransferData {
  30158. s.TransferDate = &v
  30159. return s
  30160. }
  30161. // SetTransferMessage sets the TransferMessage field's value.
  30162. func (s *TransferData) SetTransferMessage(v string) *TransferData {
  30163. s.TransferMessage = &v
  30164. return s
  30165. }
  30166. type UntagResourceInput struct {
  30167. _ struct{} `type:"structure"`
  30168. // The ARN of the resource.
  30169. //
  30170. // ResourceArn is a required field
  30171. ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
  30172. // A list of the keys of the tags to be removed from the resource.
  30173. //
  30174. // TagKeys is a required field
  30175. TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"`
  30176. }
  30177. // String returns the string representation
  30178. func (s UntagResourceInput) String() string {
  30179. return awsutil.Prettify(s)
  30180. }
  30181. // GoString returns the string representation
  30182. func (s UntagResourceInput) GoString() string {
  30183. return s.String()
  30184. }
  30185. // Validate inspects the fields of the type to determine if they are valid.
  30186. func (s *UntagResourceInput) Validate() error {
  30187. invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
  30188. if s.ResourceArn == nil {
  30189. invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
  30190. }
  30191. if s.TagKeys == nil {
  30192. invalidParams.Add(request.NewErrParamRequired("TagKeys"))
  30193. }
  30194. if invalidParams.Len() > 0 {
  30195. return invalidParams
  30196. }
  30197. return nil
  30198. }
  30199. // SetResourceArn sets the ResourceArn field's value.
  30200. func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
  30201. s.ResourceArn = &v
  30202. return s
  30203. }
  30204. // SetTagKeys sets the TagKeys field's value.
  30205. func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
  30206. s.TagKeys = v
  30207. return s
  30208. }
  30209. type UntagResourceOutput struct {
  30210. _ struct{} `type:"structure"`
  30211. }
  30212. // String returns the string representation
  30213. func (s UntagResourceOutput) String() string {
  30214. return awsutil.Prettify(s)
  30215. }
  30216. // GoString returns the string representation
  30217. func (s UntagResourceOutput) GoString() string {
  30218. return s.String()
  30219. }
  30220. type UpdateAccountAuditConfigurationInput struct {
  30221. _ struct{} `type:"structure"`
  30222. // Specifies which audit checks are enabled and disabled for this account. Use
  30223. // DescribeAccountAuditConfiguration to see the list of all checks including
  30224. // those that are currently enabled.
  30225. //
  30226. // Note that some data collection may begin immediately when certain checks
  30227. // are enabled. When a check is disabled, any data collected so far in relation
  30228. // to the check is deleted.
  30229. //
  30230. // You cannot disable a check if it is used by any scheduled audit. You must
  30231. // first delete the check from the scheduled audit or delete the scheduled audit
  30232. // itself.
  30233. //
  30234. // On the first call to UpdateAccountAuditConfiguration this parameter is required
  30235. // and must specify at least one enabled check.
  30236. AuditCheckConfigurations map[string]*AuditCheckConfiguration `locationName:"auditCheckConfigurations" type:"map"`
  30237. // Information about the targets to which audit notifications are sent.
  30238. AuditNotificationTargetConfigurations map[string]*AuditNotificationTarget `locationName:"auditNotificationTargetConfigurations" type:"map"`
  30239. // The ARN of the role that grants permission to AWS IoT to access information
  30240. // about your devices, policies, certificates and other items as necessary when
  30241. // performing an audit.
  30242. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  30243. }
  30244. // String returns the string representation
  30245. func (s UpdateAccountAuditConfigurationInput) String() string {
  30246. return awsutil.Prettify(s)
  30247. }
  30248. // GoString returns the string representation
  30249. func (s UpdateAccountAuditConfigurationInput) GoString() string {
  30250. return s.String()
  30251. }
  30252. // Validate inspects the fields of the type to determine if they are valid.
  30253. func (s *UpdateAccountAuditConfigurationInput) Validate() error {
  30254. invalidParams := request.ErrInvalidParams{Context: "UpdateAccountAuditConfigurationInput"}
  30255. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  30256. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  30257. }
  30258. if s.AuditNotificationTargetConfigurations != nil {
  30259. for i, v := range s.AuditNotificationTargetConfigurations {
  30260. if v == nil {
  30261. continue
  30262. }
  30263. if err := v.Validate(); err != nil {
  30264. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AuditNotificationTargetConfigurations", i), err.(request.ErrInvalidParams))
  30265. }
  30266. }
  30267. }
  30268. if invalidParams.Len() > 0 {
  30269. return invalidParams
  30270. }
  30271. return nil
  30272. }
  30273. // SetAuditCheckConfigurations sets the AuditCheckConfigurations field's value.
  30274. func (s *UpdateAccountAuditConfigurationInput) SetAuditCheckConfigurations(v map[string]*AuditCheckConfiguration) *UpdateAccountAuditConfigurationInput {
  30275. s.AuditCheckConfigurations = v
  30276. return s
  30277. }
  30278. // SetAuditNotificationTargetConfigurations sets the AuditNotificationTargetConfigurations field's value.
  30279. func (s *UpdateAccountAuditConfigurationInput) SetAuditNotificationTargetConfigurations(v map[string]*AuditNotificationTarget) *UpdateAccountAuditConfigurationInput {
  30280. s.AuditNotificationTargetConfigurations = v
  30281. return s
  30282. }
  30283. // SetRoleArn sets the RoleArn field's value.
  30284. func (s *UpdateAccountAuditConfigurationInput) SetRoleArn(v string) *UpdateAccountAuditConfigurationInput {
  30285. s.RoleArn = &v
  30286. return s
  30287. }
  30288. type UpdateAccountAuditConfigurationOutput struct {
  30289. _ struct{} `type:"structure"`
  30290. }
  30291. // String returns the string representation
  30292. func (s UpdateAccountAuditConfigurationOutput) String() string {
  30293. return awsutil.Prettify(s)
  30294. }
  30295. // GoString returns the string representation
  30296. func (s UpdateAccountAuditConfigurationOutput) GoString() string {
  30297. return s.String()
  30298. }
  30299. type UpdateAuthorizerInput struct {
  30300. _ struct{} `type:"structure"`
  30301. // The ARN of the authorizer's Lambda function.
  30302. AuthorizerFunctionArn *string `locationName:"authorizerFunctionArn" type:"string"`
  30303. // The authorizer name.
  30304. //
  30305. // AuthorizerName is a required field
  30306. AuthorizerName *string `location:"uri" locationName:"authorizerName" min:"1" type:"string" required:"true"`
  30307. // The status of the update authorizer request.
  30308. Status *string `locationName:"status" type:"string" enum:"AuthorizerStatus"`
  30309. // The key used to extract the token from the HTTP headers.
  30310. TokenKeyName *string `locationName:"tokenKeyName" min:"1" type:"string"`
  30311. // The public keys used to verify the token signature.
  30312. TokenSigningPublicKeys map[string]*string `locationName:"tokenSigningPublicKeys" type:"map"`
  30313. }
  30314. // String returns the string representation
  30315. func (s UpdateAuthorizerInput) String() string {
  30316. return awsutil.Prettify(s)
  30317. }
  30318. // GoString returns the string representation
  30319. func (s UpdateAuthorizerInput) GoString() string {
  30320. return s.String()
  30321. }
  30322. // Validate inspects the fields of the type to determine if they are valid.
  30323. func (s *UpdateAuthorizerInput) Validate() error {
  30324. invalidParams := request.ErrInvalidParams{Context: "UpdateAuthorizerInput"}
  30325. if s.AuthorizerName == nil {
  30326. invalidParams.Add(request.NewErrParamRequired("AuthorizerName"))
  30327. }
  30328. if s.AuthorizerName != nil && len(*s.AuthorizerName) < 1 {
  30329. invalidParams.Add(request.NewErrParamMinLen("AuthorizerName", 1))
  30330. }
  30331. if s.TokenKeyName != nil && len(*s.TokenKeyName) < 1 {
  30332. invalidParams.Add(request.NewErrParamMinLen("TokenKeyName", 1))
  30333. }
  30334. if invalidParams.Len() > 0 {
  30335. return invalidParams
  30336. }
  30337. return nil
  30338. }
  30339. // SetAuthorizerFunctionArn sets the AuthorizerFunctionArn field's value.
  30340. func (s *UpdateAuthorizerInput) SetAuthorizerFunctionArn(v string) *UpdateAuthorizerInput {
  30341. s.AuthorizerFunctionArn = &v
  30342. return s
  30343. }
  30344. // SetAuthorizerName sets the AuthorizerName field's value.
  30345. func (s *UpdateAuthorizerInput) SetAuthorizerName(v string) *UpdateAuthorizerInput {
  30346. s.AuthorizerName = &v
  30347. return s
  30348. }
  30349. // SetStatus sets the Status field's value.
  30350. func (s *UpdateAuthorizerInput) SetStatus(v string) *UpdateAuthorizerInput {
  30351. s.Status = &v
  30352. return s
  30353. }
  30354. // SetTokenKeyName sets the TokenKeyName field's value.
  30355. func (s *UpdateAuthorizerInput) SetTokenKeyName(v string) *UpdateAuthorizerInput {
  30356. s.TokenKeyName = &v
  30357. return s
  30358. }
  30359. // SetTokenSigningPublicKeys sets the TokenSigningPublicKeys field's value.
  30360. func (s *UpdateAuthorizerInput) SetTokenSigningPublicKeys(v map[string]*string) *UpdateAuthorizerInput {
  30361. s.TokenSigningPublicKeys = v
  30362. return s
  30363. }
  30364. type UpdateAuthorizerOutput struct {
  30365. _ struct{} `type:"structure"`
  30366. // The authorizer ARN.
  30367. AuthorizerArn *string `locationName:"authorizerArn" type:"string"`
  30368. // The authorizer name.
  30369. AuthorizerName *string `locationName:"authorizerName" min:"1" type:"string"`
  30370. }
  30371. // String returns the string representation
  30372. func (s UpdateAuthorizerOutput) String() string {
  30373. return awsutil.Prettify(s)
  30374. }
  30375. // GoString returns the string representation
  30376. func (s UpdateAuthorizerOutput) GoString() string {
  30377. return s.String()
  30378. }
  30379. // SetAuthorizerArn sets the AuthorizerArn field's value.
  30380. func (s *UpdateAuthorizerOutput) SetAuthorizerArn(v string) *UpdateAuthorizerOutput {
  30381. s.AuthorizerArn = &v
  30382. return s
  30383. }
  30384. // SetAuthorizerName sets the AuthorizerName field's value.
  30385. func (s *UpdateAuthorizerOutput) SetAuthorizerName(v string) *UpdateAuthorizerOutput {
  30386. s.AuthorizerName = &v
  30387. return s
  30388. }
  30389. type UpdateBillingGroupInput struct {
  30390. _ struct{} `type:"structure"`
  30391. // The name of the billing group.
  30392. //
  30393. // BillingGroupName is a required field
  30394. BillingGroupName *string `location:"uri" locationName:"billingGroupName" min:"1" type:"string" required:"true"`
  30395. // The properties of the billing group.
  30396. //
  30397. // BillingGroupProperties is a required field
  30398. BillingGroupProperties *BillingGroupProperties `locationName:"billingGroupProperties" type:"structure" required:"true"`
  30399. // The expected version of the billing group. If the version of the billing
  30400. // group does not match the expected version specified in the request, the UpdateBillingGroup
  30401. // request is rejected with a VersionConflictException.
  30402. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"`
  30403. }
  30404. // String returns the string representation
  30405. func (s UpdateBillingGroupInput) String() string {
  30406. return awsutil.Prettify(s)
  30407. }
  30408. // GoString returns the string representation
  30409. func (s UpdateBillingGroupInput) GoString() string {
  30410. return s.String()
  30411. }
  30412. // Validate inspects the fields of the type to determine if they are valid.
  30413. func (s *UpdateBillingGroupInput) Validate() error {
  30414. invalidParams := request.ErrInvalidParams{Context: "UpdateBillingGroupInput"}
  30415. if s.BillingGroupName == nil {
  30416. invalidParams.Add(request.NewErrParamRequired("BillingGroupName"))
  30417. }
  30418. if s.BillingGroupName != nil && len(*s.BillingGroupName) < 1 {
  30419. invalidParams.Add(request.NewErrParamMinLen("BillingGroupName", 1))
  30420. }
  30421. if s.BillingGroupProperties == nil {
  30422. invalidParams.Add(request.NewErrParamRequired("BillingGroupProperties"))
  30423. }
  30424. if invalidParams.Len() > 0 {
  30425. return invalidParams
  30426. }
  30427. return nil
  30428. }
  30429. // SetBillingGroupName sets the BillingGroupName field's value.
  30430. func (s *UpdateBillingGroupInput) SetBillingGroupName(v string) *UpdateBillingGroupInput {
  30431. s.BillingGroupName = &v
  30432. return s
  30433. }
  30434. // SetBillingGroupProperties sets the BillingGroupProperties field's value.
  30435. func (s *UpdateBillingGroupInput) SetBillingGroupProperties(v *BillingGroupProperties) *UpdateBillingGroupInput {
  30436. s.BillingGroupProperties = v
  30437. return s
  30438. }
  30439. // SetExpectedVersion sets the ExpectedVersion field's value.
  30440. func (s *UpdateBillingGroupInput) SetExpectedVersion(v int64) *UpdateBillingGroupInput {
  30441. s.ExpectedVersion = &v
  30442. return s
  30443. }
  30444. type UpdateBillingGroupOutput struct {
  30445. _ struct{} `type:"structure"`
  30446. // The latest version of the billing group.
  30447. Version *int64 `locationName:"version" type:"long"`
  30448. }
  30449. // String returns the string representation
  30450. func (s UpdateBillingGroupOutput) String() string {
  30451. return awsutil.Prettify(s)
  30452. }
  30453. // GoString returns the string representation
  30454. func (s UpdateBillingGroupOutput) GoString() string {
  30455. return s.String()
  30456. }
  30457. // SetVersion sets the Version field's value.
  30458. func (s *UpdateBillingGroupOutput) SetVersion(v int64) *UpdateBillingGroupOutput {
  30459. s.Version = &v
  30460. return s
  30461. }
  30462. // The input to the UpdateCACertificate operation.
  30463. type UpdateCACertificateInput struct {
  30464. _ struct{} `type:"structure"`
  30465. // The CA certificate identifier.
  30466. //
  30467. // CertificateId is a required field
  30468. CertificateId *string `location:"uri" locationName:"caCertificateId" min:"64" type:"string" required:"true"`
  30469. // The new value for the auto registration status. Valid values are: "ENABLE"
  30470. // or "DISABLE".
  30471. NewAutoRegistrationStatus *string `location:"querystring" locationName:"newAutoRegistrationStatus" type:"string" enum:"AutoRegistrationStatus"`
  30472. // The updated status of the CA certificate.
  30473. //
  30474. // Note: The status value REGISTER_INACTIVE is deprecated and should not be
  30475. // used.
  30476. NewStatus *string `location:"querystring" locationName:"newStatus" type:"string" enum:"CACertificateStatus"`
  30477. // Information about the registration configuration.
  30478. RegistrationConfig *RegistrationConfig `locationName:"registrationConfig" type:"structure"`
  30479. // If true, remove auto registration.
  30480. RemoveAutoRegistration *bool `locationName:"removeAutoRegistration" type:"boolean"`
  30481. }
  30482. // String returns the string representation
  30483. func (s UpdateCACertificateInput) String() string {
  30484. return awsutil.Prettify(s)
  30485. }
  30486. // GoString returns the string representation
  30487. func (s UpdateCACertificateInput) GoString() string {
  30488. return s.String()
  30489. }
  30490. // Validate inspects the fields of the type to determine if they are valid.
  30491. func (s *UpdateCACertificateInput) Validate() error {
  30492. invalidParams := request.ErrInvalidParams{Context: "UpdateCACertificateInput"}
  30493. if s.CertificateId == nil {
  30494. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  30495. }
  30496. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  30497. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  30498. }
  30499. if s.RegistrationConfig != nil {
  30500. if err := s.RegistrationConfig.Validate(); err != nil {
  30501. invalidParams.AddNested("RegistrationConfig", err.(request.ErrInvalidParams))
  30502. }
  30503. }
  30504. if invalidParams.Len() > 0 {
  30505. return invalidParams
  30506. }
  30507. return nil
  30508. }
  30509. // SetCertificateId sets the CertificateId field's value.
  30510. func (s *UpdateCACertificateInput) SetCertificateId(v string) *UpdateCACertificateInput {
  30511. s.CertificateId = &v
  30512. return s
  30513. }
  30514. // SetNewAutoRegistrationStatus sets the NewAutoRegistrationStatus field's value.
  30515. func (s *UpdateCACertificateInput) SetNewAutoRegistrationStatus(v string) *UpdateCACertificateInput {
  30516. s.NewAutoRegistrationStatus = &v
  30517. return s
  30518. }
  30519. // SetNewStatus sets the NewStatus field's value.
  30520. func (s *UpdateCACertificateInput) SetNewStatus(v string) *UpdateCACertificateInput {
  30521. s.NewStatus = &v
  30522. return s
  30523. }
  30524. // SetRegistrationConfig sets the RegistrationConfig field's value.
  30525. func (s *UpdateCACertificateInput) SetRegistrationConfig(v *RegistrationConfig) *UpdateCACertificateInput {
  30526. s.RegistrationConfig = v
  30527. return s
  30528. }
  30529. // SetRemoveAutoRegistration sets the RemoveAutoRegistration field's value.
  30530. func (s *UpdateCACertificateInput) SetRemoveAutoRegistration(v bool) *UpdateCACertificateInput {
  30531. s.RemoveAutoRegistration = &v
  30532. return s
  30533. }
  30534. type UpdateCACertificateOutput struct {
  30535. _ struct{} `type:"structure"`
  30536. }
  30537. // String returns the string representation
  30538. func (s UpdateCACertificateOutput) String() string {
  30539. return awsutil.Prettify(s)
  30540. }
  30541. // GoString returns the string representation
  30542. func (s UpdateCACertificateOutput) GoString() string {
  30543. return s.String()
  30544. }
  30545. // The input for the UpdateCertificate operation.
  30546. type UpdateCertificateInput struct {
  30547. _ struct{} `type:"structure"`
  30548. // The ID of the certificate. (The last part of the certificate ARN contains
  30549. // the certificate ID.)
  30550. //
  30551. // CertificateId is a required field
  30552. CertificateId *string `location:"uri" locationName:"certificateId" min:"64" type:"string" required:"true"`
  30553. // The new status.
  30554. //
  30555. // Note: Setting the status to PENDING_TRANSFER will result in an exception
  30556. // being thrown. PENDING_TRANSFER is a status used internally by AWS IoT. It
  30557. // is not intended for developer use.
  30558. //
  30559. // Note: The status value REGISTER_INACTIVE is deprecated and should not be
  30560. // used.
  30561. //
  30562. // NewStatus is a required field
  30563. NewStatus *string `location:"querystring" locationName:"newStatus" type:"string" required:"true" enum:"CertificateStatus"`
  30564. }
  30565. // String returns the string representation
  30566. func (s UpdateCertificateInput) String() string {
  30567. return awsutil.Prettify(s)
  30568. }
  30569. // GoString returns the string representation
  30570. func (s UpdateCertificateInput) GoString() string {
  30571. return s.String()
  30572. }
  30573. // Validate inspects the fields of the type to determine if they are valid.
  30574. func (s *UpdateCertificateInput) Validate() error {
  30575. invalidParams := request.ErrInvalidParams{Context: "UpdateCertificateInput"}
  30576. if s.CertificateId == nil {
  30577. invalidParams.Add(request.NewErrParamRequired("CertificateId"))
  30578. }
  30579. if s.CertificateId != nil && len(*s.CertificateId) < 64 {
  30580. invalidParams.Add(request.NewErrParamMinLen("CertificateId", 64))
  30581. }
  30582. if s.NewStatus == nil {
  30583. invalidParams.Add(request.NewErrParamRequired("NewStatus"))
  30584. }
  30585. if invalidParams.Len() > 0 {
  30586. return invalidParams
  30587. }
  30588. return nil
  30589. }
  30590. // SetCertificateId sets the CertificateId field's value.
  30591. func (s *UpdateCertificateInput) SetCertificateId(v string) *UpdateCertificateInput {
  30592. s.CertificateId = &v
  30593. return s
  30594. }
  30595. // SetNewStatus sets the NewStatus field's value.
  30596. func (s *UpdateCertificateInput) SetNewStatus(v string) *UpdateCertificateInput {
  30597. s.NewStatus = &v
  30598. return s
  30599. }
  30600. type UpdateCertificateOutput struct {
  30601. _ struct{} `type:"structure"`
  30602. }
  30603. // String returns the string representation
  30604. func (s UpdateCertificateOutput) String() string {
  30605. return awsutil.Prettify(s)
  30606. }
  30607. // GoString returns the string representation
  30608. func (s UpdateCertificateOutput) GoString() string {
  30609. return s.String()
  30610. }
  30611. type UpdateDynamicThingGroupInput struct {
  30612. _ struct{} `type:"structure"`
  30613. // The expected version of the dynamic thing group to update.
  30614. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"`
  30615. // The dynamic thing group index to update.
  30616. //
  30617. // Currently one index is supported: 'AWS_Things'.
  30618. IndexName *string `locationName:"indexName" min:"1" type:"string"`
  30619. // The dynamic thing group search query string to update.
  30620. QueryString *string `locationName:"queryString" min:"1" type:"string"`
  30621. // The dynamic thing group query version to update.
  30622. //
  30623. // Currently one query version is supported: "2017-09-30". If not specified,
  30624. // the query version defaults to this value.
  30625. QueryVersion *string `locationName:"queryVersion" type:"string"`
  30626. // The name of the dynamic thing group to update.
  30627. //
  30628. // ThingGroupName is a required field
  30629. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  30630. // The dynamic thing group properties to update.
  30631. //
  30632. // ThingGroupProperties is a required field
  30633. ThingGroupProperties *ThingGroupProperties `locationName:"thingGroupProperties" type:"structure" required:"true"`
  30634. }
  30635. // String returns the string representation
  30636. func (s UpdateDynamicThingGroupInput) String() string {
  30637. return awsutil.Prettify(s)
  30638. }
  30639. // GoString returns the string representation
  30640. func (s UpdateDynamicThingGroupInput) GoString() string {
  30641. return s.String()
  30642. }
  30643. // Validate inspects the fields of the type to determine if they are valid.
  30644. func (s *UpdateDynamicThingGroupInput) Validate() error {
  30645. invalidParams := request.ErrInvalidParams{Context: "UpdateDynamicThingGroupInput"}
  30646. if s.IndexName != nil && len(*s.IndexName) < 1 {
  30647. invalidParams.Add(request.NewErrParamMinLen("IndexName", 1))
  30648. }
  30649. if s.QueryString != nil && len(*s.QueryString) < 1 {
  30650. invalidParams.Add(request.NewErrParamMinLen("QueryString", 1))
  30651. }
  30652. if s.ThingGroupName == nil {
  30653. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  30654. }
  30655. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  30656. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  30657. }
  30658. if s.ThingGroupProperties == nil {
  30659. invalidParams.Add(request.NewErrParamRequired("ThingGroupProperties"))
  30660. }
  30661. if invalidParams.Len() > 0 {
  30662. return invalidParams
  30663. }
  30664. return nil
  30665. }
  30666. // SetExpectedVersion sets the ExpectedVersion field's value.
  30667. func (s *UpdateDynamicThingGroupInput) SetExpectedVersion(v int64) *UpdateDynamicThingGroupInput {
  30668. s.ExpectedVersion = &v
  30669. return s
  30670. }
  30671. // SetIndexName sets the IndexName field's value.
  30672. func (s *UpdateDynamicThingGroupInput) SetIndexName(v string) *UpdateDynamicThingGroupInput {
  30673. s.IndexName = &v
  30674. return s
  30675. }
  30676. // SetQueryString sets the QueryString field's value.
  30677. func (s *UpdateDynamicThingGroupInput) SetQueryString(v string) *UpdateDynamicThingGroupInput {
  30678. s.QueryString = &v
  30679. return s
  30680. }
  30681. // SetQueryVersion sets the QueryVersion field's value.
  30682. func (s *UpdateDynamicThingGroupInput) SetQueryVersion(v string) *UpdateDynamicThingGroupInput {
  30683. s.QueryVersion = &v
  30684. return s
  30685. }
  30686. // SetThingGroupName sets the ThingGroupName field's value.
  30687. func (s *UpdateDynamicThingGroupInput) SetThingGroupName(v string) *UpdateDynamicThingGroupInput {
  30688. s.ThingGroupName = &v
  30689. return s
  30690. }
  30691. // SetThingGroupProperties sets the ThingGroupProperties field's value.
  30692. func (s *UpdateDynamicThingGroupInput) SetThingGroupProperties(v *ThingGroupProperties) *UpdateDynamicThingGroupInput {
  30693. s.ThingGroupProperties = v
  30694. return s
  30695. }
  30696. type UpdateDynamicThingGroupOutput struct {
  30697. _ struct{} `type:"structure"`
  30698. // The dynamic thing group version.
  30699. Version *int64 `locationName:"version" type:"long"`
  30700. }
  30701. // String returns the string representation
  30702. func (s UpdateDynamicThingGroupOutput) String() string {
  30703. return awsutil.Prettify(s)
  30704. }
  30705. // GoString returns the string representation
  30706. func (s UpdateDynamicThingGroupOutput) GoString() string {
  30707. return s.String()
  30708. }
  30709. // SetVersion sets the Version field's value.
  30710. func (s *UpdateDynamicThingGroupOutput) SetVersion(v int64) *UpdateDynamicThingGroupOutput {
  30711. s.Version = &v
  30712. return s
  30713. }
  30714. type UpdateEventConfigurationsInput struct {
  30715. _ struct{} `type:"structure"`
  30716. // The new event configuration values.
  30717. EventConfigurations map[string]*Configuration `locationName:"eventConfigurations" type:"map"`
  30718. }
  30719. // String returns the string representation
  30720. func (s UpdateEventConfigurationsInput) String() string {
  30721. return awsutil.Prettify(s)
  30722. }
  30723. // GoString returns the string representation
  30724. func (s UpdateEventConfigurationsInput) GoString() string {
  30725. return s.String()
  30726. }
  30727. // SetEventConfigurations sets the EventConfigurations field's value.
  30728. func (s *UpdateEventConfigurationsInput) SetEventConfigurations(v map[string]*Configuration) *UpdateEventConfigurationsInput {
  30729. s.EventConfigurations = v
  30730. return s
  30731. }
  30732. type UpdateEventConfigurationsOutput struct {
  30733. _ struct{} `type:"structure"`
  30734. }
  30735. // String returns the string representation
  30736. func (s UpdateEventConfigurationsOutput) String() string {
  30737. return awsutil.Prettify(s)
  30738. }
  30739. // GoString returns the string representation
  30740. func (s UpdateEventConfigurationsOutput) GoString() string {
  30741. return s.String()
  30742. }
  30743. type UpdateIndexingConfigurationInput struct {
  30744. _ struct{} `type:"structure"`
  30745. // Thing group indexing configuration.
  30746. ThingGroupIndexingConfiguration *ThingGroupIndexingConfiguration `locationName:"thingGroupIndexingConfiguration" type:"structure"`
  30747. // Thing indexing configuration.
  30748. ThingIndexingConfiguration *ThingIndexingConfiguration `locationName:"thingIndexingConfiguration" type:"structure"`
  30749. }
  30750. // String returns the string representation
  30751. func (s UpdateIndexingConfigurationInput) String() string {
  30752. return awsutil.Prettify(s)
  30753. }
  30754. // GoString returns the string representation
  30755. func (s UpdateIndexingConfigurationInput) GoString() string {
  30756. return s.String()
  30757. }
  30758. // Validate inspects the fields of the type to determine if they are valid.
  30759. func (s *UpdateIndexingConfigurationInput) Validate() error {
  30760. invalidParams := request.ErrInvalidParams{Context: "UpdateIndexingConfigurationInput"}
  30761. if s.ThingGroupIndexingConfiguration != nil {
  30762. if err := s.ThingGroupIndexingConfiguration.Validate(); err != nil {
  30763. invalidParams.AddNested("ThingGroupIndexingConfiguration", err.(request.ErrInvalidParams))
  30764. }
  30765. }
  30766. if s.ThingIndexingConfiguration != nil {
  30767. if err := s.ThingIndexingConfiguration.Validate(); err != nil {
  30768. invalidParams.AddNested("ThingIndexingConfiguration", err.(request.ErrInvalidParams))
  30769. }
  30770. }
  30771. if invalidParams.Len() > 0 {
  30772. return invalidParams
  30773. }
  30774. return nil
  30775. }
  30776. // SetThingGroupIndexingConfiguration sets the ThingGroupIndexingConfiguration field's value.
  30777. func (s *UpdateIndexingConfigurationInput) SetThingGroupIndexingConfiguration(v *ThingGroupIndexingConfiguration) *UpdateIndexingConfigurationInput {
  30778. s.ThingGroupIndexingConfiguration = v
  30779. return s
  30780. }
  30781. // SetThingIndexingConfiguration sets the ThingIndexingConfiguration field's value.
  30782. func (s *UpdateIndexingConfigurationInput) SetThingIndexingConfiguration(v *ThingIndexingConfiguration) *UpdateIndexingConfigurationInput {
  30783. s.ThingIndexingConfiguration = v
  30784. return s
  30785. }
  30786. type UpdateIndexingConfigurationOutput struct {
  30787. _ struct{} `type:"structure"`
  30788. }
  30789. // String returns the string representation
  30790. func (s UpdateIndexingConfigurationOutput) String() string {
  30791. return awsutil.Prettify(s)
  30792. }
  30793. // GoString returns the string representation
  30794. func (s UpdateIndexingConfigurationOutput) GoString() string {
  30795. return s.String()
  30796. }
  30797. type UpdateJobInput struct {
  30798. _ struct{} `type:"structure"`
  30799. // Allows you to create criteria to abort a job.
  30800. AbortConfig *AbortConfig `locationName:"abortConfig" type:"structure"`
  30801. // A short text description of the job.
  30802. Description *string `locationName:"description" type:"string"`
  30803. // Allows you to create a staged rollout of the job.
  30804. JobExecutionsRolloutConfig *JobExecutionsRolloutConfig `locationName:"jobExecutionsRolloutConfig" type:"structure"`
  30805. // The ID of the job to be updated.
  30806. //
  30807. // JobId is a required field
  30808. JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
  30809. // Configuration information for pre-signed S3 URLs.
  30810. PresignedUrlConfig *PresignedUrlConfig `locationName:"presignedUrlConfig" type:"structure"`
  30811. // Specifies the amount of time each device has to finish its execution of the
  30812. // job. The timer is started when the job execution status is set to IN_PROGRESS.
  30813. // If the job execution status is not set to another terminal state before the
  30814. // time expires, it will be automatically set to TIMED_OUT.
  30815. TimeoutConfig *TimeoutConfig `locationName:"timeoutConfig" type:"structure"`
  30816. }
  30817. // String returns the string representation
  30818. func (s UpdateJobInput) String() string {
  30819. return awsutil.Prettify(s)
  30820. }
  30821. // GoString returns the string representation
  30822. func (s UpdateJobInput) GoString() string {
  30823. return s.String()
  30824. }
  30825. // Validate inspects the fields of the type to determine if they are valid.
  30826. func (s *UpdateJobInput) Validate() error {
  30827. invalidParams := request.ErrInvalidParams{Context: "UpdateJobInput"}
  30828. if s.JobId == nil {
  30829. invalidParams.Add(request.NewErrParamRequired("JobId"))
  30830. }
  30831. if s.JobId != nil && len(*s.JobId) < 1 {
  30832. invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
  30833. }
  30834. if s.AbortConfig != nil {
  30835. if err := s.AbortConfig.Validate(); err != nil {
  30836. invalidParams.AddNested("AbortConfig", err.(request.ErrInvalidParams))
  30837. }
  30838. }
  30839. if s.JobExecutionsRolloutConfig != nil {
  30840. if err := s.JobExecutionsRolloutConfig.Validate(); err != nil {
  30841. invalidParams.AddNested("JobExecutionsRolloutConfig", err.(request.ErrInvalidParams))
  30842. }
  30843. }
  30844. if s.PresignedUrlConfig != nil {
  30845. if err := s.PresignedUrlConfig.Validate(); err != nil {
  30846. invalidParams.AddNested("PresignedUrlConfig", err.(request.ErrInvalidParams))
  30847. }
  30848. }
  30849. if invalidParams.Len() > 0 {
  30850. return invalidParams
  30851. }
  30852. return nil
  30853. }
  30854. // SetAbortConfig sets the AbortConfig field's value.
  30855. func (s *UpdateJobInput) SetAbortConfig(v *AbortConfig) *UpdateJobInput {
  30856. s.AbortConfig = v
  30857. return s
  30858. }
  30859. // SetDescription sets the Description field's value.
  30860. func (s *UpdateJobInput) SetDescription(v string) *UpdateJobInput {
  30861. s.Description = &v
  30862. return s
  30863. }
  30864. // SetJobExecutionsRolloutConfig sets the JobExecutionsRolloutConfig field's value.
  30865. func (s *UpdateJobInput) SetJobExecutionsRolloutConfig(v *JobExecutionsRolloutConfig) *UpdateJobInput {
  30866. s.JobExecutionsRolloutConfig = v
  30867. return s
  30868. }
  30869. // SetJobId sets the JobId field's value.
  30870. func (s *UpdateJobInput) SetJobId(v string) *UpdateJobInput {
  30871. s.JobId = &v
  30872. return s
  30873. }
  30874. // SetPresignedUrlConfig sets the PresignedUrlConfig field's value.
  30875. func (s *UpdateJobInput) SetPresignedUrlConfig(v *PresignedUrlConfig) *UpdateJobInput {
  30876. s.PresignedUrlConfig = v
  30877. return s
  30878. }
  30879. // SetTimeoutConfig sets the TimeoutConfig field's value.
  30880. func (s *UpdateJobInput) SetTimeoutConfig(v *TimeoutConfig) *UpdateJobInput {
  30881. s.TimeoutConfig = v
  30882. return s
  30883. }
  30884. type UpdateJobOutput struct {
  30885. _ struct{} `type:"structure"`
  30886. }
  30887. // String returns the string representation
  30888. func (s UpdateJobOutput) String() string {
  30889. return awsutil.Prettify(s)
  30890. }
  30891. // GoString returns the string representation
  30892. func (s UpdateJobOutput) GoString() string {
  30893. return s.String()
  30894. }
  30895. type UpdateRoleAliasInput struct {
  30896. _ struct{} `type:"structure"`
  30897. // The number of seconds the credential will be valid.
  30898. CredentialDurationSeconds *int64 `locationName:"credentialDurationSeconds" min:"900" type:"integer"`
  30899. // The role alias to update.
  30900. //
  30901. // RoleAlias is a required field
  30902. RoleAlias *string `location:"uri" locationName:"roleAlias" min:"1" type:"string" required:"true"`
  30903. // The role ARN.
  30904. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  30905. }
  30906. // String returns the string representation
  30907. func (s UpdateRoleAliasInput) String() string {
  30908. return awsutil.Prettify(s)
  30909. }
  30910. // GoString returns the string representation
  30911. func (s UpdateRoleAliasInput) GoString() string {
  30912. return s.String()
  30913. }
  30914. // Validate inspects the fields of the type to determine if they are valid.
  30915. func (s *UpdateRoleAliasInput) Validate() error {
  30916. invalidParams := request.ErrInvalidParams{Context: "UpdateRoleAliasInput"}
  30917. if s.CredentialDurationSeconds != nil && *s.CredentialDurationSeconds < 900 {
  30918. invalidParams.Add(request.NewErrParamMinValue("CredentialDurationSeconds", 900))
  30919. }
  30920. if s.RoleAlias == nil {
  30921. invalidParams.Add(request.NewErrParamRequired("RoleAlias"))
  30922. }
  30923. if s.RoleAlias != nil && len(*s.RoleAlias) < 1 {
  30924. invalidParams.Add(request.NewErrParamMinLen("RoleAlias", 1))
  30925. }
  30926. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  30927. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  30928. }
  30929. if invalidParams.Len() > 0 {
  30930. return invalidParams
  30931. }
  30932. return nil
  30933. }
  30934. // SetCredentialDurationSeconds sets the CredentialDurationSeconds field's value.
  30935. func (s *UpdateRoleAliasInput) SetCredentialDurationSeconds(v int64) *UpdateRoleAliasInput {
  30936. s.CredentialDurationSeconds = &v
  30937. return s
  30938. }
  30939. // SetRoleAlias sets the RoleAlias field's value.
  30940. func (s *UpdateRoleAliasInput) SetRoleAlias(v string) *UpdateRoleAliasInput {
  30941. s.RoleAlias = &v
  30942. return s
  30943. }
  30944. // SetRoleArn sets the RoleArn field's value.
  30945. func (s *UpdateRoleAliasInput) SetRoleArn(v string) *UpdateRoleAliasInput {
  30946. s.RoleArn = &v
  30947. return s
  30948. }
  30949. type UpdateRoleAliasOutput struct {
  30950. _ struct{} `type:"structure"`
  30951. // The role alias.
  30952. RoleAlias *string `locationName:"roleAlias" min:"1" type:"string"`
  30953. // The role alias ARN.
  30954. RoleAliasArn *string `locationName:"roleAliasArn" type:"string"`
  30955. }
  30956. // String returns the string representation
  30957. func (s UpdateRoleAliasOutput) String() string {
  30958. return awsutil.Prettify(s)
  30959. }
  30960. // GoString returns the string representation
  30961. func (s UpdateRoleAliasOutput) GoString() string {
  30962. return s.String()
  30963. }
  30964. // SetRoleAlias sets the RoleAlias field's value.
  30965. func (s *UpdateRoleAliasOutput) SetRoleAlias(v string) *UpdateRoleAliasOutput {
  30966. s.RoleAlias = &v
  30967. return s
  30968. }
  30969. // SetRoleAliasArn sets the RoleAliasArn field's value.
  30970. func (s *UpdateRoleAliasOutput) SetRoleAliasArn(v string) *UpdateRoleAliasOutput {
  30971. s.RoleAliasArn = &v
  30972. return s
  30973. }
  30974. type UpdateScheduledAuditInput struct {
  30975. _ struct{} `type:"structure"`
  30976. // The day of the month on which the scheduled audit takes place. Can be "1"
  30977. // through "31" or "LAST". This field is required if the "frequency" parameter
  30978. // is set to "MONTHLY". If days 29-31 are specified, and the month does not
  30979. // have that many days, the audit takes place on the "LAST" day of the month.
  30980. DayOfMonth *string `locationName:"dayOfMonth" type:"string"`
  30981. // The day of the week on which the scheduled audit takes place. Can be one
  30982. // of "SUN", "MON", "TUE", "WED", "THU", "FRI" or "SAT". This field is required
  30983. // if the "frequency" parameter is set to "WEEKLY" or "BIWEEKLY".
  30984. DayOfWeek *string `locationName:"dayOfWeek" type:"string" enum:"DayOfWeek"`
  30985. // How often the scheduled audit takes place. Can be one of "DAILY", "WEEKLY",
  30986. // "BIWEEKLY" or "MONTHLY". The actual start time of each audit is determined
  30987. // by the system.
  30988. Frequency *string `locationName:"frequency" type:"string" enum:"AuditFrequency"`
  30989. // The name of the scheduled audit. (Max. 128 chars)
  30990. //
  30991. // ScheduledAuditName is a required field
  30992. ScheduledAuditName *string `location:"uri" locationName:"scheduledAuditName" min:"1" type:"string" required:"true"`
  30993. // Which checks are performed during the scheduled audit. Checks must be enabled
  30994. // for your account. (Use DescribeAccountAuditConfiguration to see the list
  30995. // of all checks including those that are enabled or UpdateAccountAuditConfiguration
  30996. // to select which checks are enabled.)
  30997. TargetCheckNames []*string `locationName:"targetCheckNames" type:"list"`
  30998. }
  30999. // String returns the string representation
  31000. func (s UpdateScheduledAuditInput) String() string {
  31001. return awsutil.Prettify(s)
  31002. }
  31003. // GoString returns the string representation
  31004. func (s UpdateScheduledAuditInput) GoString() string {
  31005. return s.String()
  31006. }
  31007. // Validate inspects the fields of the type to determine if they are valid.
  31008. func (s *UpdateScheduledAuditInput) Validate() error {
  31009. invalidParams := request.ErrInvalidParams{Context: "UpdateScheduledAuditInput"}
  31010. if s.ScheduledAuditName == nil {
  31011. invalidParams.Add(request.NewErrParamRequired("ScheduledAuditName"))
  31012. }
  31013. if s.ScheduledAuditName != nil && len(*s.ScheduledAuditName) < 1 {
  31014. invalidParams.Add(request.NewErrParamMinLen("ScheduledAuditName", 1))
  31015. }
  31016. if invalidParams.Len() > 0 {
  31017. return invalidParams
  31018. }
  31019. return nil
  31020. }
  31021. // SetDayOfMonth sets the DayOfMonth field's value.
  31022. func (s *UpdateScheduledAuditInput) SetDayOfMonth(v string) *UpdateScheduledAuditInput {
  31023. s.DayOfMonth = &v
  31024. return s
  31025. }
  31026. // SetDayOfWeek sets the DayOfWeek field's value.
  31027. func (s *UpdateScheduledAuditInput) SetDayOfWeek(v string) *UpdateScheduledAuditInput {
  31028. s.DayOfWeek = &v
  31029. return s
  31030. }
  31031. // SetFrequency sets the Frequency field's value.
  31032. func (s *UpdateScheduledAuditInput) SetFrequency(v string) *UpdateScheduledAuditInput {
  31033. s.Frequency = &v
  31034. return s
  31035. }
  31036. // SetScheduledAuditName sets the ScheduledAuditName field's value.
  31037. func (s *UpdateScheduledAuditInput) SetScheduledAuditName(v string) *UpdateScheduledAuditInput {
  31038. s.ScheduledAuditName = &v
  31039. return s
  31040. }
  31041. // SetTargetCheckNames sets the TargetCheckNames field's value.
  31042. func (s *UpdateScheduledAuditInput) SetTargetCheckNames(v []*string) *UpdateScheduledAuditInput {
  31043. s.TargetCheckNames = v
  31044. return s
  31045. }
  31046. type UpdateScheduledAuditOutput struct {
  31047. _ struct{} `type:"structure"`
  31048. // The ARN of the scheduled audit.
  31049. ScheduledAuditArn *string `locationName:"scheduledAuditArn" type:"string"`
  31050. }
  31051. // String returns the string representation
  31052. func (s UpdateScheduledAuditOutput) String() string {
  31053. return awsutil.Prettify(s)
  31054. }
  31055. // GoString returns the string representation
  31056. func (s UpdateScheduledAuditOutput) GoString() string {
  31057. return s.String()
  31058. }
  31059. // SetScheduledAuditArn sets the ScheduledAuditArn field's value.
  31060. func (s *UpdateScheduledAuditOutput) SetScheduledAuditArn(v string) *UpdateScheduledAuditOutput {
  31061. s.ScheduledAuditArn = &v
  31062. return s
  31063. }
  31064. type UpdateSecurityProfileInput struct {
  31065. _ struct{} `type:"structure"`
  31066. // Where the alerts are sent. (Alerts are always sent to the console.)
  31067. AlertTargets map[string]*AlertTarget `locationName:"alertTargets" type:"map"`
  31068. // Specifies the behaviors that, when violated by a device (thing), cause an
  31069. // alert.
  31070. Behaviors []*Behavior `locationName:"behaviors" type:"list"`
  31071. // The expected version of the security profile. A new version is generated
  31072. // whenever the security profile is updated. If you specify a value that is
  31073. // different than the actual version, a VersionConflictException is thrown.
  31074. ExpectedVersion *int64 `location:"querystring" locationName:"expectedVersion" type:"long"`
  31075. // A description of the security profile.
  31076. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"`
  31077. // The name of the security profile you want to update.
  31078. //
  31079. // SecurityProfileName is a required field
  31080. SecurityProfileName *string `location:"uri" locationName:"securityProfileName" min:"1" type:"string" required:"true"`
  31081. }
  31082. // String returns the string representation
  31083. func (s UpdateSecurityProfileInput) String() string {
  31084. return awsutil.Prettify(s)
  31085. }
  31086. // GoString returns the string representation
  31087. func (s UpdateSecurityProfileInput) GoString() string {
  31088. return s.String()
  31089. }
  31090. // Validate inspects the fields of the type to determine if they are valid.
  31091. func (s *UpdateSecurityProfileInput) Validate() error {
  31092. invalidParams := request.ErrInvalidParams{Context: "UpdateSecurityProfileInput"}
  31093. if s.SecurityProfileName == nil {
  31094. invalidParams.Add(request.NewErrParamRequired("SecurityProfileName"))
  31095. }
  31096. if s.SecurityProfileName != nil && len(*s.SecurityProfileName) < 1 {
  31097. invalidParams.Add(request.NewErrParamMinLen("SecurityProfileName", 1))
  31098. }
  31099. if s.AlertTargets != nil {
  31100. for i, v := range s.AlertTargets {
  31101. if v == nil {
  31102. continue
  31103. }
  31104. if err := v.Validate(); err != nil {
  31105. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AlertTargets", i), err.(request.ErrInvalidParams))
  31106. }
  31107. }
  31108. }
  31109. if s.Behaviors != nil {
  31110. for i, v := range s.Behaviors {
  31111. if v == nil {
  31112. continue
  31113. }
  31114. if err := v.Validate(); err != nil {
  31115. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Behaviors", i), err.(request.ErrInvalidParams))
  31116. }
  31117. }
  31118. }
  31119. if invalidParams.Len() > 0 {
  31120. return invalidParams
  31121. }
  31122. return nil
  31123. }
  31124. // SetAlertTargets sets the AlertTargets field's value.
  31125. func (s *UpdateSecurityProfileInput) SetAlertTargets(v map[string]*AlertTarget) *UpdateSecurityProfileInput {
  31126. s.AlertTargets = v
  31127. return s
  31128. }
  31129. // SetBehaviors sets the Behaviors field's value.
  31130. func (s *UpdateSecurityProfileInput) SetBehaviors(v []*Behavior) *UpdateSecurityProfileInput {
  31131. s.Behaviors = v
  31132. return s
  31133. }
  31134. // SetExpectedVersion sets the ExpectedVersion field's value.
  31135. func (s *UpdateSecurityProfileInput) SetExpectedVersion(v int64) *UpdateSecurityProfileInput {
  31136. s.ExpectedVersion = &v
  31137. return s
  31138. }
  31139. // SetSecurityProfileDescription sets the SecurityProfileDescription field's value.
  31140. func (s *UpdateSecurityProfileInput) SetSecurityProfileDescription(v string) *UpdateSecurityProfileInput {
  31141. s.SecurityProfileDescription = &v
  31142. return s
  31143. }
  31144. // SetSecurityProfileName sets the SecurityProfileName field's value.
  31145. func (s *UpdateSecurityProfileInput) SetSecurityProfileName(v string) *UpdateSecurityProfileInput {
  31146. s.SecurityProfileName = &v
  31147. return s
  31148. }
  31149. type UpdateSecurityProfileOutput struct {
  31150. _ struct{} `type:"structure"`
  31151. // Where the alerts are sent. (Alerts are always sent to the console.)
  31152. AlertTargets map[string]*AlertTarget `locationName:"alertTargets" type:"map"`
  31153. // Specifies the behaviors that, when violated by a device (thing), cause an
  31154. // alert.
  31155. Behaviors []*Behavior `locationName:"behaviors" type:"list"`
  31156. // The time the security profile was created.
  31157. CreationDate *time.Time `locationName:"creationDate" type:"timestamp"`
  31158. // The time the security profile was last modified.
  31159. LastModifiedDate *time.Time `locationName:"lastModifiedDate" type:"timestamp"`
  31160. // The ARN of the security profile that was updated.
  31161. SecurityProfileArn *string `locationName:"securityProfileArn" type:"string"`
  31162. // The description of the security profile.
  31163. SecurityProfileDescription *string `locationName:"securityProfileDescription" type:"string"`
  31164. // The name of the security profile that was updated.
  31165. SecurityProfileName *string `locationName:"securityProfileName" min:"1" type:"string"`
  31166. // The updated version of the security profile.
  31167. Version *int64 `locationName:"version" type:"long"`
  31168. }
  31169. // String returns the string representation
  31170. func (s UpdateSecurityProfileOutput) String() string {
  31171. return awsutil.Prettify(s)
  31172. }
  31173. // GoString returns the string representation
  31174. func (s UpdateSecurityProfileOutput) GoString() string {
  31175. return s.String()
  31176. }
  31177. // SetAlertTargets sets the AlertTargets field's value.
  31178. func (s *UpdateSecurityProfileOutput) SetAlertTargets(v map[string]*AlertTarget) *UpdateSecurityProfileOutput {
  31179. s.AlertTargets = v
  31180. return s
  31181. }
  31182. // SetBehaviors sets the Behaviors field's value.
  31183. func (s *UpdateSecurityProfileOutput) SetBehaviors(v []*Behavior) *UpdateSecurityProfileOutput {
  31184. s.Behaviors = v
  31185. return s
  31186. }
  31187. // SetCreationDate sets the CreationDate field's value.
  31188. func (s *UpdateSecurityProfileOutput) SetCreationDate(v time.Time) *UpdateSecurityProfileOutput {
  31189. s.CreationDate = &v
  31190. return s
  31191. }
  31192. // SetLastModifiedDate sets the LastModifiedDate field's value.
  31193. func (s *UpdateSecurityProfileOutput) SetLastModifiedDate(v time.Time) *UpdateSecurityProfileOutput {
  31194. s.LastModifiedDate = &v
  31195. return s
  31196. }
  31197. // SetSecurityProfileArn sets the SecurityProfileArn field's value.
  31198. func (s *UpdateSecurityProfileOutput) SetSecurityProfileArn(v string) *UpdateSecurityProfileOutput {
  31199. s.SecurityProfileArn = &v
  31200. return s
  31201. }
  31202. // SetSecurityProfileDescription sets the SecurityProfileDescription field's value.
  31203. func (s *UpdateSecurityProfileOutput) SetSecurityProfileDescription(v string) *UpdateSecurityProfileOutput {
  31204. s.SecurityProfileDescription = &v
  31205. return s
  31206. }
  31207. // SetSecurityProfileName sets the SecurityProfileName field's value.
  31208. func (s *UpdateSecurityProfileOutput) SetSecurityProfileName(v string) *UpdateSecurityProfileOutput {
  31209. s.SecurityProfileName = &v
  31210. return s
  31211. }
  31212. // SetVersion sets the Version field's value.
  31213. func (s *UpdateSecurityProfileOutput) SetVersion(v int64) *UpdateSecurityProfileOutput {
  31214. s.Version = &v
  31215. return s
  31216. }
  31217. type UpdateStreamInput struct {
  31218. _ struct{} `type:"structure"`
  31219. // The description of the stream.
  31220. Description *string `locationName:"description" type:"string"`
  31221. // The files associated with the stream.
  31222. Files []*StreamFile `locationName:"files" min:"1" type:"list"`
  31223. // An IAM role that allows the IoT service principal assumes to access your
  31224. // S3 files.
  31225. RoleArn *string `locationName:"roleArn" min:"20" type:"string"`
  31226. // The stream ID.
  31227. //
  31228. // StreamId is a required field
  31229. StreamId *string `location:"uri" locationName:"streamId" min:"1" type:"string" required:"true"`
  31230. }
  31231. // String returns the string representation
  31232. func (s UpdateStreamInput) String() string {
  31233. return awsutil.Prettify(s)
  31234. }
  31235. // GoString returns the string representation
  31236. func (s UpdateStreamInput) GoString() string {
  31237. return s.String()
  31238. }
  31239. // Validate inspects the fields of the type to determine if they are valid.
  31240. func (s *UpdateStreamInput) Validate() error {
  31241. invalidParams := request.ErrInvalidParams{Context: "UpdateStreamInput"}
  31242. if s.Files != nil && len(s.Files) < 1 {
  31243. invalidParams.Add(request.NewErrParamMinLen("Files", 1))
  31244. }
  31245. if s.RoleArn != nil && len(*s.RoleArn) < 20 {
  31246. invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20))
  31247. }
  31248. if s.StreamId == nil {
  31249. invalidParams.Add(request.NewErrParamRequired("StreamId"))
  31250. }
  31251. if s.StreamId != nil && len(*s.StreamId) < 1 {
  31252. invalidParams.Add(request.NewErrParamMinLen("StreamId", 1))
  31253. }
  31254. if s.Files != nil {
  31255. for i, v := range s.Files {
  31256. if v == nil {
  31257. continue
  31258. }
  31259. if err := v.Validate(); err != nil {
  31260. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Files", i), err.(request.ErrInvalidParams))
  31261. }
  31262. }
  31263. }
  31264. if invalidParams.Len() > 0 {
  31265. return invalidParams
  31266. }
  31267. return nil
  31268. }
  31269. // SetDescription sets the Description field's value.
  31270. func (s *UpdateStreamInput) SetDescription(v string) *UpdateStreamInput {
  31271. s.Description = &v
  31272. return s
  31273. }
  31274. // SetFiles sets the Files field's value.
  31275. func (s *UpdateStreamInput) SetFiles(v []*StreamFile) *UpdateStreamInput {
  31276. s.Files = v
  31277. return s
  31278. }
  31279. // SetRoleArn sets the RoleArn field's value.
  31280. func (s *UpdateStreamInput) SetRoleArn(v string) *UpdateStreamInput {
  31281. s.RoleArn = &v
  31282. return s
  31283. }
  31284. // SetStreamId sets the StreamId field's value.
  31285. func (s *UpdateStreamInput) SetStreamId(v string) *UpdateStreamInput {
  31286. s.StreamId = &v
  31287. return s
  31288. }
  31289. type UpdateStreamOutput struct {
  31290. _ struct{} `type:"structure"`
  31291. // A description of the stream.
  31292. Description *string `locationName:"description" type:"string"`
  31293. // The stream ARN.
  31294. StreamArn *string `locationName:"streamArn" type:"string"`
  31295. // The stream ID.
  31296. StreamId *string `locationName:"streamId" min:"1" type:"string"`
  31297. // The stream version.
  31298. StreamVersion *int64 `locationName:"streamVersion" type:"integer"`
  31299. }
  31300. // String returns the string representation
  31301. func (s UpdateStreamOutput) String() string {
  31302. return awsutil.Prettify(s)
  31303. }
  31304. // GoString returns the string representation
  31305. func (s UpdateStreamOutput) GoString() string {
  31306. return s.String()
  31307. }
  31308. // SetDescription sets the Description field's value.
  31309. func (s *UpdateStreamOutput) SetDescription(v string) *UpdateStreamOutput {
  31310. s.Description = &v
  31311. return s
  31312. }
  31313. // SetStreamArn sets the StreamArn field's value.
  31314. func (s *UpdateStreamOutput) SetStreamArn(v string) *UpdateStreamOutput {
  31315. s.StreamArn = &v
  31316. return s
  31317. }
  31318. // SetStreamId sets the StreamId field's value.
  31319. func (s *UpdateStreamOutput) SetStreamId(v string) *UpdateStreamOutput {
  31320. s.StreamId = &v
  31321. return s
  31322. }
  31323. // SetStreamVersion sets the StreamVersion field's value.
  31324. func (s *UpdateStreamOutput) SetStreamVersion(v int64) *UpdateStreamOutput {
  31325. s.StreamVersion = &v
  31326. return s
  31327. }
  31328. type UpdateThingGroupInput struct {
  31329. _ struct{} `type:"structure"`
  31330. // The expected version of the thing group. If this does not match the version
  31331. // of the thing group being updated, the update will fail.
  31332. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"`
  31333. // The thing group to update.
  31334. //
  31335. // ThingGroupName is a required field
  31336. ThingGroupName *string `location:"uri" locationName:"thingGroupName" min:"1" type:"string" required:"true"`
  31337. // The thing group properties.
  31338. //
  31339. // ThingGroupProperties is a required field
  31340. ThingGroupProperties *ThingGroupProperties `locationName:"thingGroupProperties" type:"structure" required:"true"`
  31341. }
  31342. // String returns the string representation
  31343. func (s UpdateThingGroupInput) String() string {
  31344. return awsutil.Prettify(s)
  31345. }
  31346. // GoString returns the string representation
  31347. func (s UpdateThingGroupInput) GoString() string {
  31348. return s.String()
  31349. }
  31350. // Validate inspects the fields of the type to determine if they are valid.
  31351. func (s *UpdateThingGroupInput) Validate() error {
  31352. invalidParams := request.ErrInvalidParams{Context: "UpdateThingGroupInput"}
  31353. if s.ThingGroupName == nil {
  31354. invalidParams.Add(request.NewErrParamRequired("ThingGroupName"))
  31355. }
  31356. if s.ThingGroupName != nil && len(*s.ThingGroupName) < 1 {
  31357. invalidParams.Add(request.NewErrParamMinLen("ThingGroupName", 1))
  31358. }
  31359. if s.ThingGroupProperties == nil {
  31360. invalidParams.Add(request.NewErrParamRequired("ThingGroupProperties"))
  31361. }
  31362. if invalidParams.Len() > 0 {
  31363. return invalidParams
  31364. }
  31365. return nil
  31366. }
  31367. // SetExpectedVersion sets the ExpectedVersion field's value.
  31368. func (s *UpdateThingGroupInput) SetExpectedVersion(v int64) *UpdateThingGroupInput {
  31369. s.ExpectedVersion = &v
  31370. return s
  31371. }
  31372. // SetThingGroupName sets the ThingGroupName field's value.
  31373. func (s *UpdateThingGroupInput) SetThingGroupName(v string) *UpdateThingGroupInput {
  31374. s.ThingGroupName = &v
  31375. return s
  31376. }
  31377. // SetThingGroupProperties sets the ThingGroupProperties field's value.
  31378. func (s *UpdateThingGroupInput) SetThingGroupProperties(v *ThingGroupProperties) *UpdateThingGroupInput {
  31379. s.ThingGroupProperties = v
  31380. return s
  31381. }
  31382. type UpdateThingGroupOutput struct {
  31383. _ struct{} `type:"structure"`
  31384. // The version of the updated thing group.
  31385. Version *int64 `locationName:"version" type:"long"`
  31386. }
  31387. // String returns the string representation
  31388. func (s UpdateThingGroupOutput) String() string {
  31389. return awsutil.Prettify(s)
  31390. }
  31391. // GoString returns the string representation
  31392. func (s UpdateThingGroupOutput) GoString() string {
  31393. return s.String()
  31394. }
  31395. // SetVersion sets the Version field's value.
  31396. func (s *UpdateThingGroupOutput) SetVersion(v int64) *UpdateThingGroupOutput {
  31397. s.Version = &v
  31398. return s
  31399. }
  31400. type UpdateThingGroupsForThingInput struct {
  31401. _ struct{} `type:"structure"`
  31402. // Override dynamic thing groups with static thing groups when 10-group limit
  31403. // is reached. If a thing belongs to 10 thing groups, and one or more of those
  31404. // groups are dynamic thing groups, adding a thing to a static group removes
  31405. // the thing from the last dynamic group.
  31406. OverrideDynamicGroups *bool `locationName:"overrideDynamicGroups" type:"boolean"`
  31407. // The groups to which the thing will be added.
  31408. ThingGroupsToAdd []*string `locationName:"thingGroupsToAdd" type:"list"`
  31409. // The groups from which the thing will be removed.
  31410. ThingGroupsToRemove []*string `locationName:"thingGroupsToRemove" type:"list"`
  31411. // The thing whose group memberships will be updated.
  31412. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  31413. }
  31414. // String returns the string representation
  31415. func (s UpdateThingGroupsForThingInput) String() string {
  31416. return awsutil.Prettify(s)
  31417. }
  31418. // GoString returns the string representation
  31419. func (s UpdateThingGroupsForThingInput) GoString() string {
  31420. return s.String()
  31421. }
  31422. // Validate inspects the fields of the type to determine if they are valid.
  31423. func (s *UpdateThingGroupsForThingInput) Validate() error {
  31424. invalidParams := request.ErrInvalidParams{Context: "UpdateThingGroupsForThingInput"}
  31425. if s.ThingName != nil && len(*s.ThingName) < 1 {
  31426. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  31427. }
  31428. if invalidParams.Len() > 0 {
  31429. return invalidParams
  31430. }
  31431. return nil
  31432. }
  31433. // SetOverrideDynamicGroups sets the OverrideDynamicGroups field's value.
  31434. func (s *UpdateThingGroupsForThingInput) SetOverrideDynamicGroups(v bool) *UpdateThingGroupsForThingInput {
  31435. s.OverrideDynamicGroups = &v
  31436. return s
  31437. }
  31438. // SetThingGroupsToAdd sets the ThingGroupsToAdd field's value.
  31439. func (s *UpdateThingGroupsForThingInput) SetThingGroupsToAdd(v []*string) *UpdateThingGroupsForThingInput {
  31440. s.ThingGroupsToAdd = v
  31441. return s
  31442. }
  31443. // SetThingGroupsToRemove sets the ThingGroupsToRemove field's value.
  31444. func (s *UpdateThingGroupsForThingInput) SetThingGroupsToRemove(v []*string) *UpdateThingGroupsForThingInput {
  31445. s.ThingGroupsToRemove = v
  31446. return s
  31447. }
  31448. // SetThingName sets the ThingName field's value.
  31449. func (s *UpdateThingGroupsForThingInput) SetThingName(v string) *UpdateThingGroupsForThingInput {
  31450. s.ThingName = &v
  31451. return s
  31452. }
  31453. type UpdateThingGroupsForThingOutput struct {
  31454. _ struct{} `type:"structure"`
  31455. }
  31456. // String returns the string representation
  31457. func (s UpdateThingGroupsForThingOutput) String() string {
  31458. return awsutil.Prettify(s)
  31459. }
  31460. // GoString returns the string representation
  31461. func (s UpdateThingGroupsForThingOutput) GoString() string {
  31462. return s.String()
  31463. }
  31464. // The input for the UpdateThing operation.
  31465. type UpdateThingInput struct {
  31466. _ struct{} `type:"structure"`
  31467. // A list of thing attributes, a JSON string containing name-value pairs. For
  31468. // example:
  31469. //
  31470. // {\"attributes\":{\"name1\":\"value2\"}}
  31471. //
  31472. // This data is used to add new attributes or update existing attributes.
  31473. AttributePayload *AttributePayload `locationName:"attributePayload" type:"structure"`
  31474. // The expected version of the thing record in the registry. If the version
  31475. // of the record in the registry does not match the expected version specified
  31476. // in the request, the UpdateThing request is rejected with a VersionConflictException.
  31477. ExpectedVersion *int64 `locationName:"expectedVersion" type:"long"`
  31478. // Remove a thing type association. If true, the association is removed.
  31479. RemoveThingType *bool `locationName:"removeThingType" type:"boolean"`
  31480. // The name of the thing to update.
  31481. //
  31482. // ThingName is a required field
  31483. ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
  31484. // The name of the thing type.
  31485. ThingTypeName *string `locationName:"thingTypeName" min:"1" type:"string"`
  31486. }
  31487. // String returns the string representation
  31488. func (s UpdateThingInput) String() string {
  31489. return awsutil.Prettify(s)
  31490. }
  31491. // GoString returns the string representation
  31492. func (s UpdateThingInput) GoString() string {
  31493. return s.String()
  31494. }
  31495. // Validate inspects the fields of the type to determine if they are valid.
  31496. func (s *UpdateThingInput) Validate() error {
  31497. invalidParams := request.ErrInvalidParams{Context: "UpdateThingInput"}
  31498. if s.ThingName == nil {
  31499. invalidParams.Add(request.NewErrParamRequired("ThingName"))
  31500. }
  31501. if s.ThingName != nil && len(*s.ThingName) < 1 {
  31502. invalidParams.Add(request.NewErrParamMinLen("ThingName", 1))
  31503. }
  31504. if s.ThingTypeName != nil && len(*s.ThingTypeName) < 1 {
  31505. invalidParams.Add(request.NewErrParamMinLen("ThingTypeName", 1))
  31506. }
  31507. if invalidParams.Len() > 0 {
  31508. return invalidParams
  31509. }
  31510. return nil
  31511. }
  31512. // SetAttributePayload sets the AttributePayload field's value.
  31513. func (s *UpdateThingInput) SetAttributePayload(v *AttributePayload) *UpdateThingInput {
  31514. s.AttributePayload = v
  31515. return s
  31516. }
  31517. // SetExpectedVersion sets the ExpectedVersion field's value.
  31518. func (s *UpdateThingInput) SetExpectedVersion(v int64) *UpdateThingInput {
  31519. s.ExpectedVersion = &v
  31520. return s
  31521. }
  31522. // SetRemoveThingType sets the RemoveThingType field's value.
  31523. func (s *UpdateThingInput) SetRemoveThingType(v bool) *UpdateThingInput {
  31524. s.RemoveThingType = &v
  31525. return s
  31526. }
  31527. // SetThingName sets the ThingName field's value.
  31528. func (s *UpdateThingInput) SetThingName(v string) *UpdateThingInput {
  31529. s.ThingName = &v
  31530. return s
  31531. }
  31532. // SetThingTypeName sets the ThingTypeName field's value.
  31533. func (s *UpdateThingInput) SetThingTypeName(v string) *UpdateThingInput {
  31534. s.ThingTypeName = &v
  31535. return s
  31536. }
  31537. // The output from the UpdateThing operation.
  31538. type UpdateThingOutput struct {
  31539. _ struct{} `type:"structure"`
  31540. }
  31541. // String returns the string representation
  31542. func (s UpdateThingOutput) String() string {
  31543. return awsutil.Prettify(s)
  31544. }
  31545. // GoString returns the string representation
  31546. func (s UpdateThingOutput) GoString() string {
  31547. return s.String()
  31548. }
  31549. type ValidateSecurityProfileBehaviorsInput struct {
  31550. _ struct{} `type:"structure"`
  31551. // Specifies the behaviors that, when violated by a device (thing), cause an
  31552. // alert.
  31553. //
  31554. // Behaviors is a required field
  31555. Behaviors []*Behavior `locationName:"behaviors" type:"list" required:"true"`
  31556. }
  31557. // String returns the string representation
  31558. func (s ValidateSecurityProfileBehaviorsInput) String() string {
  31559. return awsutil.Prettify(s)
  31560. }
  31561. // GoString returns the string representation
  31562. func (s ValidateSecurityProfileBehaviorsInput) GoString() string {
  31563. return s.String()
  31564. }
  31565. // Validate inspects the fields of the type to determine if they are valid.
  31566. func (s *ValidateSecurityProfileBehaviorsInput) Validate() error {
  31567. invalidParams := request.ErrInvalidParams{Context: "ValidateSecurityProfileBehaviorsInput"}
  31568. if s.Behaviors == nil {
  31569. invalidParams.Add(request.NewErrParamRequired("Behaviors"))
  31570. }
  31571. if s.Behaviors != nil {
  31572. for i, v := range s.Behaviors {
  31573. if v == nil {
  31574. continue
  31575. }
  31576. if err := v.Validate(); err != nil {
  31577. invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Behaviors", i), err.(request.ErrInvalidParams))
  31578. }
  31579. }
  31580. }
  31581. if invalidParams.Len() > 0 {
  31582. return invalidParams
  31583. }
  31584. return nil
  31585. }
  31586. // SetBehaviors sets the Behaviors field's value.
  31587. func (s *ValidateSecurityProfileBehaviorsInput) SetBehaviors(v []*Behavior) *ValidateSecurityProfileBehaviorsInput {
  31588. s.Behaviors = v
  31589. return s
  31590. }
  31591. type ValidateSecurityProfileBehaviorsOutput struct {
  31592. _ struct{} `type:"structure"`
  31593. // True if the behaviors were valid.
  31594. Valid *bool `locationName:"valid" type:"boolean"`
  31595. // The list of any errors found in the behaviors.
  31596. ValidationErrors []*ValidationError `locationName:"validationErrors" type:"list"`
  31597. }
  31598. // String returns the string representation
  31599. func (s ValidateSecurityProfileBehaviorsOutput) String() string {
  31600. return awsutil.Prettify(s)
  31601. }
  31602. // GoString returns the string representation
  31603. func (s ValidateSecurityProfileBehaviorsOutput) GoString() string {
  31604. return s.String()
  31605. }
  31606. // SetValid sets the Valid field's value.
  31607. func (s *ValidateSecurityProfileBehaviorsOutput) SetValid(v bool) *ValidateSecurityProfileBehaviorsOutput {
  31608. s.Valid = &v
  31609. return s
  31610. }
  31611. // SetValidationErrors sets the ValidationErrors field's value.
  31612. func (s *ValidateSecurityProfileBehaviorsOutput) SetValidationErrors(v []*ValidationError) *ValidateSecurityProfileBehaviorsOutput {
  31613. s.ValidationErrors = v
  31614. return s
  31615. }
  31616. // Information about an error found in a behavior specification.
  31617. type ValidationError struct {
  31618. _ struct{} `type:"structure"`
  31619. // The description of an error found in the behaviors.
  31620. ErrorMessage *string `locationName:"errorMessage" type:"string"`
  31621. }
  31622. // String returns the string representation
  31623. func (s ValidationError) String() string {
  31624. return awsutil.Prettify(s)
  31625. }
  31626. // GoString returns the string representation
  31627. func (s ValidationError) GoString() string {
  31628. return s.String()
  31629. }
  31630. // SetErrorMessage sets the ErrorMessage field's value.
  31631. func (s *ValidationError) SetErrorMessage(v string) *ValidationError {
  31632. s.ErrorMessage = &v
  31633. return s
  31634. }
  31635. // Information about a Device Defender security profile behavior violation.
  31636. type ViolationEvent struct {
  31637. _ struct{} `type:"structure"`
  31638. // The behavior which was violated.
  31639. Behavior *Behavior `locationName:"behavior" type:"structure"`
  31640. // The value of the metric (the measurement).
  31641. MetricValue *MetricValue `locationName:"metricValue" type:"structure"`
  31642. // The name of the security profile whose behavior was violated.
  31643. SecurityProfileName *string `locationName:"securityProfileName" min:"1" type:"string"`
  31644. // The name of the thing responsible for the violation event.
  31645. ThingName *string `locationName:"thingName" min:"1" type:"string"`
  31646. // The time the violation event occurred.
  31647. ViolationEventTime *time.Time `locationName:"violationEventTime" type:"timestamp"`
  31648. // The type of violation event.
  31649. ViolationEventType *string `locationName:"violationEventType" type:"string" enum:"ViolationEventType"`
  31650. // The ID of the violation event.
  31651. ViolationId *string `locationName:"violationId" min:"1" type:"string"`
  31652. }
  31653. // String returns the string representation
  31654. func (s ViolationEvent) String() string {
  31655. return awsutil.Prettify(s)
  31656. }
  31657. // GoString returns the string representation
  31658. func (s ViolationEvent) GoString() string {
  31659. return s.String()
  31660. }
  31661. // SetBehavior sets the Behavior field's value.
  31662. func (s *ViolationEvent) SetBehavior(v *Behavior) *ViolationEvent {
  31663. s.Behavior = v
  31664. return s
  31665. }
  31666. // SetMetricValue sets the MetricValue field's value.
  31667. func (s *ViolationEvent) SetMetricValue(v *MetricValue) *ViolationEvent {
  31668. s.MetricValue = v
  31669. return s
  31670. }
  31671. // SetSecurityProfileName sets the SecurityProfileName field's value.
  31672. func (s *ViolationEvent) SetSecurityProfileName(v string) *ViolationEvent {
  31673. s.SecurityProfileName = &v
  31674. return s
  31675. }
  31676. // SetThingName sets the ThingName field's value.
  31677. func (s *ViolationEvent) SetThingName(v string) *ViolationEvent {
  31678. s.ThingName = &v
  31679. return s
  31680. }
  31681. // SetViolationEventTime sets the ViolationEventTime field's value.
  31682. func (s *ViolationEvent) SetViolationEventTime(v time.Time) *ViolationEvent {
  31683. s.ViolationEventTime = &v
  31684. return s
  31685. }
  31686. // SetViolationEventType sets the ViolationEventType field's value.
  31687. func (s *ViolationEvent) SetViolationEventType(v string) *ViolationEvent {
  31688. s.ViolationEventType = &v
  31689. return s
  31690. }
  31691. // SetViolationId sets the ViolationId field's value.
  31692. func (s *ViolationEvent) SetViolationId(v string) *ViolationEvent {
  31693. s.ViolationId = &v
  31694. return s
  31695. }
  31696. const (
  31697. // AbortActionCancel is a AbortAction enum value
  31698. AbortActionCancel = "CANCEL"
  31699. )
  31700. const (
  31701. // ActionTypePublish is a ActionType enum value
  31702. ActionTypePublish = "PUBLISH"
  31703. // ActionTypeSubscribe is a ActionType enum value
  31704. ActionTypeSubscribe = "SUBSCRIBE"
  31705. // ActionTypeReceive is a ActionType enum value
  31706. ActionTypeReceive = "RECEIVE"
  31707. // ActionTypeConnect is a ActionType enum value
  31708. ActionTypeConnect = "CONNECT"
  31709. )
  31710. // The type of alert target: one of "SNS".
  31711. const (
  31712. // AlertTargetTypeSns is a AlertTargetType enum value
  31713. AlertTargetTypeSns = "SNS"
  31714. )
  31715. const (
  31716. // AuditCheckRunStatusInProgress is a AuditCheckRunStatus enum value
  31717. AuditCheckRunStatusInProgress = "IN_PROGRESS"
  31718. // AuditCheckRunStatusWaitingForDataCollection is a AuditCheckRunStatus enum value
  31719. AuditCheckRunStatusWaitingForDataCollection = "WAITING_FOR_DATA_COLLECTION"
  31720. // AuditCheckRunStatusCanceled is a AuditCheckRunStatus enum value
  31721. AuditCheckRunStatusCanceled = "CANCELED"
  31722. // AuditCheckRunStatusCompletedCompliant is a AuditCheckRunStatus enum value
  31723. AuditCheckRunStatusCompletedCompliant = "COMPLETED_COMPLIANT"
  31724. // AuditCheckRunStatusCompletedNonCompliant is a AuditCheckRunStatus enum value
  31725. AuditCheckRunStatusCompletedNonCompliant = "COMPLETED_NON_COMPLIANT"
  31726. // AuditCheckRunStatusFailed is a AuditCheckRunStatus enum value
  31727. AuditCheckRunStatusFailed = "FAILED"
  31728. )
  31729. const (
  31730. // AuditFindingSeverityCritical is a AuditFindingSeverity enum value
  31731. AuditFindingSeverityCritical = "CRITICAL"
  31732. // AuditFindingSeverityHigh is a AuditFindingSeverity enum value
  31733. AuditFindingSeverityHigh = "HIGH"
  31734. // AuditFindingSeverityMedium is a AuditFindingSeverity enum value
  31735. AuditFindingSeverityMedium = "MEDIUM"
  31736. // AuditFindingSeverityLow is a AuditFindingSeverity enum value
  31737. AuditFindingSeverityLow = "LOW"
  31738. )
  31739. const (
  31740. // AuditFrequencyDaily is a AuditFrequency enum value
  31741. AuditFrequencyDaily = "DAILY"
  31742. // AuditFrequencyWeekly is a AuditFrequency enum value
  31743. AuditFrequencyWeekly = "WEEKLY"
  31744. // AuditFrequencyBiweekly is a AuditFrequency enum value
  31745. AuditFrequencyBiweekly = "BIWEEKLY"
  31746. // AuditFrequencyMonthly is a AuditFrequency enum value
  31747. AuditFrequencyMonthly = "MONTHLY"
  31748. )
  31749. const (
  31750. // AuditNotificationTypeSns is a AuditNotificationType enum value
  31751. AuditNotificationTypeSns = "SNS"
  31752. )
  31753. const (
  31754. // AuditTaskStatusInProgress is a AuditTaskStatus enum value
  31755. AuditTaskStatusInProgress = "IN_PROGRESS"
  31756. // AuditTaskStatusCompleted is a AuditTaskStatus enum value
  31757. AuditTaskStatusCompleted = "COMPLETED"
  31758. // AuditTaskStatusFailed is a AuditTaskStatus enum value
  31759. AuditTaskStatusFailed = "FAILED"
  31760. // AuditTaskStatusCanceled is a AuditTaskStatus enum value
  31761. AuditTaskStatusCanceled = "CANCELED"
  31762. )
  31763. const (
  31764. // AuditTaskTypeOnDemandAuditTask is a AuditTaskType enum value
  31765. AuditTaskTypeOnDemandAuditTask = "ON_DEMAND_AUDIT_TASK"
  31766. // AuditTaskTypeScheduledAuditTask is a AuditTaskType enum value
  31767. AuditTaskTypeScheduledAuditTask = "SCHEDULED_AUDIT_TASK"
  31768. )
  31769. const (
  31770. // AuthDecisionAllowed is a AuthDecision enum value
  31771. AuthDecisionAllowed = "ALLOWED"
  31772. // AuthDecisionExplicitDeny is a AuthDecision enum value
  31773. AuthDecisionExplicitDeny = "EXPLICIT_DENY"
  31774. // AuthDecisionImplicitDeny is a AuthDecision enum value
  31775. AuthDecisionImplicitDeny = "IMPLICIT_DENY"
  31776. )
  31777. const (
  31778. // AuthorizerStatusActive is a AuthorizerStatus enum value
  31779. AuthorizerStatusActive = "ACTIVE"
  31780. // AuthorizerStatusInactive is a AuthorizerStatus enum value
  31781. AuthorizerStatusInactive = "INACTIVE"
  31782. )
  31783. const (
  31784. // AutoRegistrationStatusEnable is a AutoRegistrationStatus enum value
  31785. AutoRegistrationStatusEnable = "ENABLE"
  31786. // AutoRegistrationStatusDisable is a AutoRegistrationStatus enum value
  31787. AutoRegistrationStatusDisable = "DISABLE"
  31788. )
  31789. const (
  31790. // CACertificateStatusActive is a CACertificateStatus enum value
  31791. CACertificateStatusActive = "ACTIVE"
  31792. // CACertificateStatusInactive is a CACertificateStatus enum value
  31793. CACertificateStatusInactive = "INACTIVE"
  31794. )
  31795. const (
  31796. // CannedAccessControlListPrivate is a CannedAccessControlList enum value
  31797. CannedAccessControlListPrivate = "private"
  31798. // CannedAccessControlListPublicRead is a CannedAccessControlList enum value
  31799. CannedAccessControlListPublicRead = "public-read"
  31800. // CannedAccessControlListPublicReadWrite is a CannedAccessControlList enum value
  31801. CannedAccessControlListPublicReadWrite = "public-read-write"
  31802. // CannedAccessControlListAwsExecRead is a CannedAccessControlList enum value
  31803. CannedAccessControlListAwsExecRead = "aws-exec-read"
  31804. // CannedAccessControlListAuthenticatedRead is a CannedAccessControlList enum value
  31805. CannedAccessControlListAuthenticatedRead = "authenticated-read"
  31806. // CannedAccessControlListBucketOwnerRead is a CannedAccessControlList enum value
  31807. CannedAccessControlListBucketOwnerRead = "bucket-owner-read"
  31808. // CannedAccessControlListBucketOwnerFullControl is a CannedAccessControlList enum value
  31809. CannedAccessControlListBucketOwnerFullControl = "bucket-owner-full-control"
  31810. // CannedAccessControlListLogDeliveryWrite is a CannedAccessControlList enum value
  31811. CannedAccessControlListLogDeliveryWrite = "log-delivery-write"
  31812. )
  31813. const (
  31814. // CertificateStatusActive is a CertificateStatus enum value
  31815. CertificateStatusActive = "ACTIVE"
  31816. // CertificateStatusInactive is a CertificateStatus enum value
  31817. CertificateStatusInactive = "INACTIVE"
  31818. // CertificateStatusRevoked is a CertificateStatus enum value
  31819. CertificateStatusRevoked = "REVOKED"
  31820. // CertificateStatusPendingTransfer is a CertificateStatus enum value
  31821. CertificateStatusPendingTransfer = "PENDING_TRANSFER"
  31822. // CertificateStatusRegisterInactive is a CertificateStatus enum value
  31823. CertificateStatusRegisterInactive = "REGISTER_INACTIVE"
  31824. // CertificateStatusPendingActivation is a CertificateStatus enum value
  31825. CertificateStatusPendingActivation = "PENDING_ACTIVATION"
  31826. )
  31827. const (
  31828. // ComparisonOperatorLessThan is a ComparisonOperator enum value
  31829. ComparisonOperatorLessThan = "less-than"
  31830. // ComparisonOperatorLessThanEquals is a ComparisonOperator enum value
  31831. ComparisonOperatorLessThanEquals = "less-than-equals"
  31832. // ComparisonOperatorGreaterThan is a ComparisonOperator enum value
  31833. ComparisonOperatorGreaterThan = "greater-than"
  31834. // ComparisonOperatorGreaterThanEquals is a ComparisonOperator enum value
  31835. ComparisonOperatorGreaterThanEquals = "greater-than-equals"
  31836. // ComparisonOperatorInCidrSet is a ComparisonOperator enum value
  31837. ComparisonOperatorInCidrSet = "in-cidr-set"
  31838. // ComparisonOperatorNotInCidrSet is a ComparisonOperator enum value
  31839. ComparisonOperatorNotInCidrSet = "not-in-cidr-set"
  31840. // ComparisonOperatorInPortSet is a ComparisonOperator enum value
  31841. ComparisonOperatorInPortSet = "in-port-set"
  31842. // ComparisonOperatorNotInPortSet is a ComparisonOperator enum value
  31843. ComparisonOperatorNotInPortSet = "not-in-port-set"
  31844. )
  31845. const (
  31846. // DayOfWeekSun is a DayOfWeek enum value
  31847. DayOfWeekSun = "SUN"
  31848. // DayOfWeekMon is a DayOfWeek enum value
  31849. DayOfWeekMon = "MON"
  31850. // DayOfWeekTue is a DayOfWeek enum value
  31851. DayOfWeekTue = "TUE"
  31852. // DayOfWeekWed is a DayOfWeek enum value
  31853. DayOfWeekWed = "WED"
  31854. // DayOfWeekThu is a DayOfWeek enum value
  31855. DayOfWeekThu = "THU"
  31856. // DayOfWeekFri is a DayOfWeek enum value
  31857. DayOfWeekFri = "FRI"
  31858. // DayOfWeekSat is a DayOfWeek enum value
  31859. DayOfWeekSat = "SAT"
  31860. )
  31861. const (
  31862. // DynamicGroupStatusActive is a DynamicGroupStatus enum value
  31863. DynamicGroupStatusActive = "ACTIVE"
  31864. // DynamicGroupStatusBuilding is a DynamicGroupStatus enum value
  31865. DynamicGroupStatusBuilding = "BUILDING"
  31866. // DynamicGroupStatusRebuilding is a DynamicGroupStatus enum value
  31867. DynamicGroupStatusRebuilding = "REBUILDING"
  31868. )
  31869. const (
  31870. // DynamoKeyTypeString is a DynamoKeyType enum value
  31871. DynamoKeyTypeString = "STRING"
  31872. // DynamoKeyTypeNumber is a DynamoKeyType enum value
  31873. DynamoKeyTypeNumber = "NUMBER"
  31874. )
  31875. const (
  31876. // EventTypeThing is a EventType enum value
  31877. EventTypeThing = "THING"
  31878. // EventTypeThingGroup is a EventType enum value
  31879. EventTypeThingGroup = "THING_GROUP"
  31880. // EventTypeThingType is a EventType enum value
  31881. EventTypeThingType = "THING_TYPE"
  31882. // EventTypeThingGroupMembership is a EventType enum value
  31883. EventTypeThingGroupMembership = "THING_GROUP_MEMBERSHIP"
  31884. // EventTypeThingGroupHierarchy is a EventType enum value
  31885. EventTypeThingGroupHierarchy = "THING_GROUP_HIERARCHY"
  31886. // EventTypeThingTypeAssociation is a EventType enum value
  31887. EventTypeThingTypeAssociation = "THING_TYPE_ASSOCIATION"
  31888. // EventTypeJob is a EventType enum value
  31889. EventTypeJob = "JOB"
  31890. // EventTypeJobExecution is a EventType enum value
  31891. EventTypeJobExecution = "JOB_EXECUTION"
  31892. // EventTypePolicy is a EventType enum value
  31893. EventTypePolicy = "POLICY"
  31894. // EventTypeCertificate is a EventType enum value
  31895. EventTypeCertificate = "CERTIFICATE"
  31896. // EventTypeCaCertificate is a EventType enum value
  31897. EventTypeCaCertificate = "CA_CERTIFICATE"
  31898. )
  31899. const (
  31900. // IndexStatusActive is a IndexStatus enum value
  31901. IndexStatusActive = "ACTIVE"
  31902. // IndexStatusBuilding is a IndexStatus enum value
  31903. IndexStatusBuilding = "BUILDING"
  31904. // IndexStatusRebuilding is a IndexStatus enum value
  31905. IndexStatusRebuilding = "REBUILDING"
  31906. )
  31907. const (
  31908. // JobExecutionFailureTypeFailed is a JobExecutionFailureType enum value
  31909. JobExecutionFailureTypeFailed = "FAILED"
  31910. // JobExecutionFailureTypeRejected is a JobExecutionFailureType enum value
  31911. JobExecutionFailureTypeRejected = "REJECTED"
  31912. // JobExecutionFailureTypeTimedOut is a JobExecutionFailureType enum value
  31913. JobExecutionFailureTypeTimedOut = "TIMED_OUT"
  31914. // JobExecutionFailureTypeAll is a JobExecutionFailureType enum value
  31915. JobExecutionFailureTypeAll = "ALL"
  31916. )
  31917. const (
  31918. // JobExecutionStatusQueued is a JobExecutionStatus enum value
  31919. JobExecutionStatusQueued = "QUEUED"
  31920. // JobExecutionStatusInProgress is a JobExecutionStatus enum value
  31921. JobExecutionStatusInProgress = "IN_PROGRESS"
  31922. // JobExecutionStatusSucceeded is a JobExecutionStatus enum value
  31923. JobExecutionStatusSucceeded = "SUCCEEDED"
  31924. // JobExecutionStatusFailed is a JobExecutionStatus enum value
  31925. JobExecutionStatusFailed = "FAILED"
  31926. // JobExecutionStatusTimedOut is a JobExecutionStatus enum value
  31927. JobExecutionStatusTimedOut = "TIMED_OUT"
  31928. // JobExecutionStatusRejected is a JobExecutionStatus enum value
  31929. JobExecutionStatusRejected = "REJECTED"
  31930. // JobExecutionStatusRemoved is a JobExecutionStatus enum value
  31931. JobExecutionStatusRemoved = "REMOVED"
  31932. // JobExecutionStatusCanceled is a JobExecutionStatus enum value
  31933. JobExecutionStatusCanceled = "CANCELED"
  31934. )
  31935. const (
  31936. // JobStatusInProgress is a JobStatus enum value
  31937. JobStatusInProgress = "IN_PROGRESS"
  31938. // JobStatusCanceled is a JobStatus enum value
  31939. JobStatusCanceled = "CANCELED"
  31940. // JobStatusCompleted is a JobStatus enum value
  31941. JobStatusCompleted = "COMPLETED"
  31942. // JobStatusDeletionInProgress is a JobStatus enum value
  31943. JobStatusDeletionInProgress = "DELETION_IN_PROGRESS"
  31944. )
  31945. const (
  31946. // LogLevelDebug is a LogLevel enum value
  31947. LogLevelDebug = "DEBUG"
  31948. // LogLevelInfo is a LogLevel enum value
  31949. LogLevelInfo = "INFO"
  31950. // LogLevelError is a LogLevel enum value
  31951. LogLevelError = "ERROR"
  31952. // LogLevelWarn is a LogLevel enum value
  31953. LogLevelWarn = "WARN"
  31954. // LogLevelDisabled is a LogLevel enum value
  31955. LogLevelDisabled = "DISABLED"
  31956. )
  31957. const (
  31958. // LogTargetTypeDefault is a LogTargetType enum value
  31959. LogTargetTypeDefault = "DEFAULT"
  31960. // LogTargetTypeThingGroup is a LogTargetType enum value
  31961. LogTargetTypeThingGroup = "THING_GROUP"
  31962. )
  31963. const (
  31964. // MessageFormatRaw is a MessageFormat enum value
  31965. MessageFormatRaw = "RAW"
  31966. // MessageFormatJson is a MessageFormat enum value
  31967. MessageFormatJson = "JSON"
  31968. )
  31969. const (
  31970. // OTAUpdateStatusCreatePending is a OTAUpdateStatus enum value
  31971. OTAUpdateStatusCreatePending = "CREATE_PENDING"
  31972. // OTAUpdateStatusCreateInProgress is a OTAUpdateStatus enum value
  31973. OTAUpdateStatusCreateInProgress = "CREATE_IN_PROGRESS"
  31974. // OTAUpdateStatusCreateComplete is a OTAUpdateStatus enum value
  31975. OTAUpdateStatusCreateComplete = "CREATE_COMPLETE"
  31976. // OTAUpdateStatusCreateFailed is a OTAUpdateStatus enum value
  31977. OTAUpdateStatusCreateFailed = "CREATE_FAILED"
  31978. )
  31979. const (
  31980. // ReportTypeErrors is a ReportType enum value
  31981. ReportTypeErrors = "ERRORS"
  31982. // ReportTypeResults is a ReportType enum value
  31983. ReportTypeResults = "RESULTS"
  31984. )
  31985. const (
  31986. // ResourceTypeDeviceCertificate is a ResourceType enum value
  31987. ResourceTypeDeviceCertificate = "DEVICE_CERTIFICATE"
  31988. // ResourceTypeCaCertificate is a ResourceType enum value
  31989. ResourceTypeCaCertificate = "CA_CERTIFICATE"
  31990. // ResourceTypeIotPolicy is a ResourceType enum value
  31991. ResourceTypeIotPolicy = "IOT_POLICY"
  31992. // ResourceTypeCognitoIdentityPool is a ResourceType enum value
  31993. ResourceTypeCognitoIdentityPool = "COGNITO_IDENTITY_POOL"
  31994. // ResourceTypeClientId is a ResourceType enum value
  31995. ResourceTypeClientId = "CLIENT_ID"
  31996. // ResourceTypeAccountSettings is a ResourceType enum value
  31997. ResourceTypeAccountSettings = "ACCOUNT_SETTINGS"
  31998. )
  31999. const (
  32000. // StatusInProgress is a Status enum value
  32001. StatusInProgress = "InProgress"
  32002. // StatusCompleted is a Status enum value
  32003. StatusCompleted = "Completed"
  32004. // StatusFailed is a Status enum value
  32005. StatusFailed = "Failed"
  32006. // StatusCancelled is a Status enum value
  32007. StatusCancelled = "Cancelled"
  32008. // StatusCancelling is a Status enum value
  32009. StatusCancelling = "Cancelling"
  32010. )
  32011. const (
  32012. // TargetSelectionContinuous is a TargetSelection enum value
  32013. TargetSelectionContinuous = "CONTINUOUS"
  32014. // TargetSelectionSnapshot is a TargetSelection enum value
  32015. TargetSelectionSnapshot = "SNAPSHOT"
  32016. )
  32017. const (
  32018. // ThingConnectivityIndexingModeOff is a ThingConnectivityIndexingMode enum value
  32019. ThingConnectivityIndexingModeOff = "OFF"
  32020. // ThingConnectivityIndexingModeStatus is a ThingConnectivityIndexingMode enum value
  32021. ThingConnectivityIndexingModeStatus = "STATUS"
  32022. )
  32023. const (
  32024. // ThingGroupIndexingModeOff is a ThingGroupIndexingMode enum value
  32025. ThingGroupIndexingModeOff = "OFF"
  32026. // ThingGroupIndexingModeOn is a ThingGroupIndexingMode enum value
  32027. ThingGroupIndexingModeOn = "ON"
  32028. )
  32029. const (
  32030. // ThingIndexingModeOff is a ThingIndexingMode enum value
  32031. ThingIndexingModeOff = "OFF"
  32032. // ThingIndexingModeRegistry is a ThingIndexingMode enum value
  32033. ThingIndexingModeRegistry = "REGISTRY"
  32034. // ThingIndexingModeRegistryAndShadow is a ThingIndexingMode enum value
  32035. ThingIndexingModeRegistryAndShadow = "REGISTRY_AND_SHADOW"
  32036. )
  32037. const (
  32038. // ViolationEventTypeInAlarm is a ViolationEventType enum value
  32039. ViolationEventTypeInAlarm = "in-alarm"
  32040. // ViolationEventTypeAlarmCleared is a ViolationEventType enum value
  32041. ViolationEventTypeAlarmCleared = "alarm-cleared"
  32042. // ViolationEventTypeAlarmInvalidated is a ViolationEventType enum value
  32043. ViolationEventTypeAlarmInvalidated = "alarm-invalidated"
  32044. )