123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362(* generated by: awso-codegen generate-all --botocore-data vendor/botocore/botocore/data -o aws --runtime-dir lib/runtime/awso --cli-dir awso-cli *)openAwsoopen!Import[@@@warning"-32"]letservice=Service.chatbotletapiVersion="2017-10-11"letendpointPrefix="chatbot"letserviceFullName="AWS Chatbot"letsignatureVersion="v4"letprotocol="rest_json"letglobalEndpoint=endpointPrefix^".amazonaws.com"letsimple_to_jsonto_valuex=Botodata.Json.value_to_json_scalar(to_valuex)letcomposed_to_jsonto_valuex=Botodata.Json.value_to_json(to_valuex)letto_queryto_valuex=Client.Query.of_value(to_valuex)letstructure_to_value_auxst~f=letfilter=function|(k,Somev)->Some(k,v)|_->Noneinletpairkv=(k,v)inletdefer_value(k,dv)=pairkdvin((List.filter_mapst~f:filter)|>(List.map~f:defer_value))|>(funx->`Structure(fx))letstructure_to_value=structure_to_value_aux~f:Fn.idletstructure_to_wrapped_value~wrapper~response=structure_to_value_aux~f:(funx->[(wrapper,(`Structurex));(response,(`Structure[]))])moduleCustomActionAttachmentCriteriaOperator=structtypenonrect=|HAS_VALUE|EQUALS|Non_static_idofstringletmakei=iletto_string=function|HAS_VALUE->"HAS_VALUE"|EQUALS->"EQUALS"|Non_static_ids->sletof_string=function|"HAS_VALUE"->HAS_VALUE|"EQUALS"->EQUALS|x->Non_static_idxletto_valuex=`Enum(to_stringx)letto_queryv=to_queryto_valuevletto_headerx=to_stringxletof_xmlxml_arg0=of_string(string_of_xml~kind:"enumeration CustomActionAttachmentCriteriaOperator"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"CustomActionAttachmentCriteriaOperator"j)letto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentCriteriaValueString=structtypenonrect=stringletcontext_="CustomActionAttachmentCriteriaValueString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\S\\s]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAttachmentCriteriaValueString"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentCriteriaVariableNameString=structtypenonrect=stringletcontext_="CustomActionAttachmentCriteriaVariableNameString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[A-Za-z0-9-_]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAttachmentCriteriaVariableNameString"jletto_json=simple_to_jsonto_valueendmoduleTagKey=structtypenonrect=stringletcontext_="TagKey"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:128)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TagKey"jletto_json=simple_to_jsonto_valueendmoduleTagValue=structtypenonrect=stringletcontext_="TagValue"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:256)>>=(fun()->check_string_mini~min:0));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TagValue"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentCriteria=structtypenonrect={operator:CustomActionAttachmentCriteriaOperator.t[@ocaml.doc"The operation to perform on the named variable."];variableName:CustomActionAttachmentCriteriaVariableNameString.t[@ocaml.doc"The name of the variable to operate on."];value:CustomActionAttachmentCriteriaValueString.toption[@ocaml.doc"A value that is compared with the actual value of the variable based on the behavior of the operator."]}letcontext_="CustomActionAttachmentCriteria"letmake?value=fun~operator->fun~variableName->fun()->{value;operator;variableName}letto_valuex=structure_to_value[("Operator",(Some(CustomActionAttachmentCriteriaOperator.to_valuex.operator)));("VariableName",(Some(CustomActionAttachmentCriteriaVariableNameString.to_valuex.variableName)));("Value",(Option.mapx.value~f:CustomActionAttachmentCriteriaValueString.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letvalue=(Option.map~f:CustomActionAttachmentCriteriaValueString.of_xml)(Xml.childxml_arg0"Value")inletvariableName=CustomActionAttachmentCriteriaVariableNameString.of_xml(Xml.child_exn~context:context_xml_arg0"VariableName")inletoperator=CustomActionAttachmentCriteriaOperator.of_xml(Xml.child_exn~context:context_xml_arg0"Operator")inmake?value~variableName~operator()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letvalue=field_mapjson__"Value"CustomActionAttachmentCriteriaValueString.of_jsoninletvariableName=field_map_exnjson__"VariableName"CustomActionAttachmentCriteriaVariableNameString.of_jsoninletoperator=field_map_exnjson__"Operator"CustomActionAttachmentCriteriaOperator.of_jsoninmake?value~variableName~operator()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A criteria for when a button should be shown based on values in the notification"]moduleCustomActionAttachmentVariablesKeyString=structtypenonrect=stringletcontext_="CustomActionAttachmentVariablesKeyString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[A-Za-z0-9-_]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAttachmentVariablesKeyString"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentVariablesValueString=structtypenonrect=stringletcontext_="CustomActionAttachmentVariablesValueString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:0)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\x21-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAttachmentVariablesValueString"jletto_json=simple_to_jsonto_valueendmoduleGuardrailPolicyArn=structtypenonrect=stringletcontext_="GuardrailPolicyArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:11)>>=(fun()->(check_string_maxi~max:1163)>>=(fun()->check_patterni~pattern:"(^$|(?!.*\\/aws-service-role\\/.*)arn:aws:iam:[A-Za-z0-9_\\/.-]{0,63}:[A-Za-z0-9_\\/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_\\/+=,@.-]{0,1023})")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GuardrailPolicyArn"jletto_json=simple_to_jsonto_valueendmoduleArn=structtypenonrect=stringletcontext_="Arn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:12)>>=(fun()->(check_string_maxi~max:1224)>>=(fun()->check_patterni~pattern:"arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"Arn"jletto_json=simple_to_jsonto_valueendmoduleTag=structtypenonrect={tagKey:TagKey.t[@ocaml.doc"The key of the tag."];tagValue:TagValue.t[@ocaml.doc"The value of the tag."]}letcontext_="Tag"letmake~tagKey=fun~tagValue->fun()->{tagKey;tagValue}letto_valuex=structure_to_value[("TagKey",(Some(TagKey.to_valuex.tagKey)));("TagValue",(Some(TagValue.to_valuex.tagValue)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettagValue=TagValue.of_xml(Xml.child_exn~context:context_xml_arg0"TagValue")inlettagKey=TagKey.of_xml(Xml.child_exn~context:context_xml_arg0"TagKey")inmake~tagValue~tagKey()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettagValue=field_map_exnjson__"TagValue"TagValue.of_jsoninlettagKey=field_map_exnjson__"TagKey"TagKey.of_jsoninmake~tagValue~tagKey()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A key-value pair. A tag consists of a tag key and a tag value. Tag keys and tag values are both required, but tag values can be empty (null) strings. Do not include confidential or sensitive information in this field. For more information, see User-Defined Tag Restrictions in the AWS Billing and Cost Management User Guide."]moduleCustomActionAttachmentCriteriaList=structtypenonrect=CustomActionAttachmentCriteria.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:5)>>=(fun()->check_list_mini~min:1));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:CustomActionAttachmentCriteria.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:CustomActionAttachmentCriteria.of_xml)letof_jsonj=list_of_json~kind:"CustomActionAttachmentCriteriaList"~of_json:CustomActionAttachmentCriteria.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleCustomActionAttachmentNotificationType=structtypenonrect=stringletcontext_="CustomActionAttachmentNotificationType"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[a-zA-Z0-9-]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAttachmentNotificationType"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentVariables=structtypenonrect=(CustomActionAttachmentVariablesKeyString.t*CustomActionAttachmentVariablesValueString.t)listletmakei=letopenResultinok_or_failwith((check_list_maxi~max:5)>>=(fun()->check_list_mini~min:1));iletof_headerxs=make(List.filter_mapxs~f:(fun(k,v)->(Base.String.chop_prefixk~prefix:"x-amz-meta-")|>(Option.map~f:(funchopped->((CustomActionAttachmentVariablesKeyString.of_stringchopped),(CustomActionAttachmentVariablesValueString.of_stringv))))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(CustomActionAttachmentVariablesKeyString.to_valuex)|>(funx->(CustomActionAttachmentVariablesValueString.to_valuey)|>(funy->(x,y))))))|>(funx->`Mapx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for Map_shape objects"()letof_xml_=failwith"of_xml_converter_of_shape: Map_shape case not implemented"letof_jsonj=object_of_json~key_of_string:CustomActionAttachmentVariablesKeyString.of_string~of_json:CustomActionAttachmentVariablesValueString.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleCustomActionButtonText=structtypenonrect=stringletcontext_="CustomActionButtonText"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:50)>>=(fun()->check_patterni~pattern:"[\\S\\s]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionButtonText"jletto_json=simple_to_jsonto_valueendmoduleBooleanAccountPreference=structtypenonrect=boolletmakei=iletof_string=Bool.of_stringletto_valuex=`Booleanxletto_queryv=to_queryto_valuevletto_headerx=Bool.to_stringxletof_xmlxml_arg0=Bool.of_string(string_of_xml~kind:"a boolean"xml_arg0)letof_json=bool_of_jsonletto_json=simple_to_jsonto_valueendmoduleChatConfigurationArn=structtypenonrect=stringletcontext_="ChatConfigurationArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:19)>>=(fun()->(check_string_maxi~max:1169)>>=(fun()->check_patterni~pattern:"arn:aws:(wheatley|chatbot):[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ChatConfigurationArn"jletto_json=simple_to_jsonto_valueendmoduleConfigurationName=structtypenonrect=stringletcontext_="ConfigurationName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:128)>>=(fun()->check_patterni~pattern:"[A-Za-z0-9-_]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ConfigurationName"jletto_json=simple_to_jsonto_valueendmoduleCustomerCwLogLevel=structtypenonrect=stringletcontext_="CustomerCwLogLevel"letmakei=letopenResultinok_or_failwith((check_string_mini~min:4)>>=(fun()->(check_string_maxi~max:5)>>=(fun()->check_patterni~pattern:"(ERROR|INFO|NONE)")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomerCwLogLevel"jletto_json=simple_to_jsonto_valueendmoduleGuardrailPolicyArnList=structtypenonrect=GuardrailPolicyArn.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:GuardrailPolicyArn.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:GuardrailPolicyArn.of_xml)letof_jsonj=list_of_json~kind:"GuardrailPolicyArnList"~of_json:GuardrailPolicyArn.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleResourceState=structtypenonrect=stringletcontext_="ResourceState"letmakei=letopenResultinok_or_failwith(check_patterni~pattern:"(ENABLED|DISABLED)");iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ResourceState"jletto_json=simple_to_jsonto_valueendmoduleSnsTopicArnList=structtypenonrect=Arn.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Arn.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Arn.of_xml)letof_jsonj=list_of_json~kind:"SnsTopicArnList"~of_json:Arn.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleString_=structtypenonrect=stringletcontext_="String"letmakei=iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"String"jletto_json=simple_to_jsonto_valueendmoduleTags=structtypenonrect=Tag.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Tag.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Tag.of_xml)letof_jsonj=list_of_json~kind:"Tags"~of_json:Tag.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleTeamName=structtypenonrect=stringletcontext_="TeamName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(.*)")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TeamName"jletto_json=simple_to_jsonto_valueendmoduleTeamsChannelId=structtypenonrect=stringletcontext_="TeamsChannelId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"([a-zA-Z0-9-_=+\\/.,])*%3[aA]([a-zA-Z0-9-_=+\\/.,])*%40([a-zA-Z0-9-_=+\\/.,])*")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TeamsChannelId"jletto_json=simple_to_jsonto_valueendmoduleTeamsChannelName=structtypenonrect=stringletcontext_="TeamsChannelName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1000)>>=(fun()->check_patterni~pattern:"(.*)")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"TeamsChannelName"jletto_json=simple_to_jsonto_valueendmoduleUUID=structtypenonrect=stringletcontext_="UUID"letmakei=letopenResultinok_or_failwith((check_string_mini~min:36)>>=(fun()->(check_string_maxi~max:36)>>=(fun()->check_patterni~pattern:"[0-9A-Fa-f]{8}(?:-[0-9A-Fa-f]{4}){3}-[0-9A-Fa-f]{12}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"UUID"jletto_json=simple_to_jsonto_valueendmoduleAwsUserIdentity=structtypenonrect=stringletcontext_="AwsUserIdentity"letmakei=letopenResultinok_or_failwith((check_string_mini~min:15)>>=(fun()->(check_string_maxi~max:1101)>>=(fun()->check_patterni~pattern:"arn:aws:(iam|sts)::[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AwsUserIdentity"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachment=structtypenonrect={notificationType:CustomActionAttachmentNotificationType.toption[@ocaml.doc"The type of notification that the custom action should be attached to."];buttonText:CustomActionButtonText.toption[@ocaml.doc"The text of the button that appears on the notification."];criteria:CustomActionAttachmentCriteriaList.toption[@ocaml.doc"The criteria for when a button should be shown based on values in the notification."];variables:CustomActionAttachmentVariables.toption[@ocaml.doc"The variables to extract from the notification."]}letmake?notificationType=fun?buttonText->fun?criteria->fun?variables->fun()->{notificationType;buttonText;criteria;variables}letto_valuex=structure_to_value[("NotificationType",(Option.mapx.notificationType~f:CustomActionAttachmentNotificationType.to_value));("ButtonText",(Option.mapx.buttonText~f:CustomActionButtonText.to_value));("Criteria",(Option.mapx.criteria~f:CustomActionAttachmentCriteriaList.to_value));("Variables",(Option.mapx.variables~f:CustomActionAttachmentVariables.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letvariables=(Option.map~f:CustomActionAttachmentVariables.of_xml)(Xml.childxml_arg0"Variables")inletcriteria=(Option.map~f:CustomActionAttachmentCriteriaList.of_xml)(Xml.childxml_arg0"Criteria")inletbuttonText=(Option.map~f:CustomActionButtonText.of_xml)(Xml.childxml_arg0"ButtonText")inletnotificationType=(Option.map~f:CustomActionAttachmentNotificationType.of_xml)(Xml.childxml_arg0"NotificationType")inmake?variables?criteria?buttonText?notificationType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letvariables=field_mapjson__"Variables"CustomActionAttachmentVariables.of_jsoninletcriteria=field_mapjson__"Criteria"CustomActionAttachmentCriteriaList.of_jsoninletbuttonText=field_mapjson__"ButtonText"CustomActionButtonText.of_jsoninletnotificationType=field_mapjson__"NotificationType"CustomActionAttachmentNotificationType.of_jsoninmake?variables?criteria?buttonText?notificationType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Defines when a custom action button should be attached to a notification."]moduleCustomActionDefinitionCommandTextString=structtypenonrect=stringletcontext_="CustomActionDefinitionCommandTextString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:100)>>=(fun()->check_patterni~pattern:"[\\S\\s]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionDefinitionCommandTextString"jletto_json=simple_to_jsonto_valueendmoduleSlackTeamId=structtypenonrect=stringletcontext_="SlackTeamId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"[0-9A-Z]{1,255}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SlackTeamId"jletto_json=simple_to_jsonto_valueendmoduleSlackTeamName=structtypenonrect=stringletcontext_="SlackTeamName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SlackTeamName"jletto_json=simple_to_jsonto_valueendmoduleSlackUserId=structtypenonrect=stringletcontext_="SlackUserId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(.*)")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SlackUserId"jletto_json=simple_to_jsonto_valueendmoduleSlackChannelDisplayName=structtypenonrect=stringletcontext_="SlackChannelDisplayName"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SlackChannelDisplayName"jletto_json=simple_to_jsonto_valueendmoduleSlackChannelId=structtypenonrect=stringletcontext_="SlackChannelId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"[A-Za-z0-9]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SlackChannelId"jletto_json=simple_to_jsonto_valueendmoduleChimeWebhookDescription=structtypenonrect=stringletcontext_="ChimeWebhookDescription"letmakei=letopenResultinok_or_failwith((check_string_maxi~max:255)>>=(fun()->check_string_mini~min:1));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ChimeWebhookDescription"jletto_json=simple_to_jsonto_valueendmoduleErrorMessage=structtypenonrect=stringletcontext_="ErrorMessage"letmakei=iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ErrorMessage"jletto_json=simple_to_jsonto_valueendmoduleTeamsChannelConfiguration=structtypenonrect={channelId:TeamsChannelId.toption[@ocaml.doc"The ID of the Microsoft Teams channel."];channelName:TeamsChannelName.toption[@ocaml.doc"The name of the Microsoft Teams channel."];teamId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."];teamName:TeamName.toption[@ocaml.doc"The name of the Microsoft Teams Team."];tenantId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams tenant."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration associated with the user identity to delete."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];configurationName:ConfigurationName.toption[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."];state:ResourceState.toption[@ocaml.doc"Either ENABLED or DISABLED. The resource returns DISABLED if the organization's AWS Chatbot policy has explicitly denied that configuration. For example, if Amazon Chime is disabled."];stateReason:String_.toption[@ocaml.doc"Provided if State is DISABLED. Provides context as to why the resource is disabled."]}letmake?channelId=fun?channelName->fun?teamId->fun?teamName->fun?tenantId->fun?chatConfigurationArn->fun?iamRoleArn->fun?snsTopicArns->fun?configurationName->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun?tags->fun?state->fun?stateReason->fun()->{channelId;channelName;teamId;teamName;tenantId;chatConfigurationArn;iamRoleArn;snsTopicArns;configurationName;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;tags;state;stateReason}letto_valuex=structure_to_value[("ChannelId",(Option.mapx.channelId~f:TeamsChannelId.to_value));("ChannelName",(Option.mapx.channelName~f:TeamsChannelName.to_value));("TeamId",(Option.mapx.teamId~f:UUID.to_value));("TeamName",(Option.mapx.teamName~f:TeamName.to_value));("TenantId",(Option.mapx.tenantId~f:UUID.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("ConfigurationName",(Option.mapx.configurationName~f:ConfigurationName.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value));("State",(Option.mapx.state~f:ResourceState.to_value));("StateReason",(Option.mapx.stateReason~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstateReason=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StateReason")inletstate=(Option.map~f:ResourceState.of_xml)(Xml.childxml_arg0"State")inlettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=(Option.map~f:ConfigurationName.of_xml)(Xml.childxml_arg0"ConfigurationName")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inlettenantId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TenantId")inletteamName=(Option.map~f:TeamName.of_xml)(Xml.childxml_arg0"TeamName")inletteamId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamId")inletchannelName=(Option.map~f:TeamsChannelName.of_xml)(Xml.childxml_arg0"ChannelName")inletchannelId=(Option.map~f:TeamsChannelId.of_xml)(Xml.childxml_arg0"ChannelId")inmake?stateReason?state?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?tenantId?teamName?teamId?channelName?channelId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstateReason=field_mapjson__"StateReason"String_.of_jsoninletstate=field_mapjson__"State"ResourceState.of_jsoninlettags=field_mapjson__"Tags"Tags.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_mapjson__"ConfigurationName"ConfigurationName.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninlettenantId=field_mapjson__"TenantId"UUID.of_jsoninletteamName=field_mapjson__"TeamName"TeamName.of_jsoninletteamId=field_mapjson__"TeamId"UUID.of_jsoninletchannelName=field_mapjson__"ChannelName"TeamsChannelName.of_jsoninletchannelId=field_mapjson__"ChannelId"TeamsChannelId.of_jsoninmake?stateReason?state?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?tenantId?teamName?teamId?channelName?channelId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An AWS Chatbot configuration for Microsoft Teams."]moduleTeamsUserIdentity=structtypenonrect={iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration associated with the user identity to delete."];teamId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."];userId:UUID.toption[@ocaml.doc"The Microsoft Teams user ID."];awsUserIdentity:AwsUserIdentity.toption[@ocaml.doc"The AWS user identity ARN used to associate a Microsoft Teams user Identity with an IAM Role."];teamsChannelId:TeamsChannelId.toption[@ocaml.doc"The ID of the Microsoft Teams channel."];teamsTenantId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams tenant."]}letmake?iamRoleArn=fun?chatConfigurationArn->fun?teamId->fun?userId->fun?awsUserIdentity->fun?teamsChannelId->fun?teamsTenantId->fun()->{iamRoleArn;chatConfigurationArn;teamId;userId;awsUserIdentity;teamsChannelId;teamsTenantId}letto_valuex=structure_to_value[("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("TeamId",(Option.mapx.teamId~f:UUID.to_value));("UserId",(Option.mapx.userId~f:UUID.to_value));("AwsUserIdentity",(Option.mapx.awsUserIdentity~f:AwsUserIdentity.to_value));("TeamsChannelId",(Option.mapx.teamsChannelId~f:TeamsChannelId.to_value));("TeamsTenantId",(Option.mapx.teamsTenantId~f:UUID.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letteamsTenantId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamsTenantId")inletteamsChannelId=(Option.map~f:TeamsChannelId.of_xml)(Xml.childxml_arg0"TeamsChannelId")inletawsUserIdentity=(Option.map~f:AwsUserIdentity.of_xml)(Xml.childxml_arg0"AwsUserIdentity")inletuserId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"UserId")inletteamId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamId")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inmake?teamsTenantId?teamsChannelId?awsUserIdentity?userId?teamId?chatConfigurationArn?iamRoleArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letteamsTenantId=field_mapjson__"TeamsTenantId"UUID.of_jsoninletteamsChannelId=field_mapjson__"TeamsChannelId"TeamsChannelId.of_jsoninletawsUserIdentity=field_mapjson__"AwsUserIdentity"AwsUserIdentity.of_jsoninletuserId=field_mapjson__"UserId"UUID.of_jsoninletteamId=field_mapjson__"TeamId"UUID.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninmake?teamsTenantId?teamsChannelId?awsUserIdentity?userId?teamId?chatConfigurationArn?iamRoleArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Identifes a user level permission for a channel configuration."]moduleConfiguredTeam=structtypenonrect={tenantId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams tenant."];teamId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."];teamName:UUID.toption[@ocaml.doc"The name of the Microsoft Teams Team."];state:ResourceState.toption[@ocaml.doc"Either ENABLED or DISABLED. The resource returns DISABLED if the organization's AWS Chatbot policy has explicitly denied that configuration. For example, if Amazon Chime is disabled."];stateReason:String_.toption[@ocaml.doc"Provided if State is DISABLED. Provides context as to why the resource is disabled."]}letmake?tenantId=fun?teamId->fun?teamName->fun?state->fun?stateReason->fun()->{tenantId;teamId;teamName;state;stateReason}letto_valuex=structure_to_value[("TenantId",(Option.mapx.tenantId~f:UUID.to_value));("TeamId",(Option.mapx.teamId~f:UUID.to_value));("TeamName",(Option.mapx.teamName~f:UUID.to_value));("State",(Option.mapx.state~f:ResourceState.to_value));("StateReason",(Option.mapx.stateReason~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstateReason=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StateReason")inletstate=(Option.map~f:ResourceState.of_xml)(Xml.childxml_arg0"State")inletteamName=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamName")inletteamId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamId")inlettenantId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TenantId")inmake?stateReason?state?teamName?teamId?tenantId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstateReason=field_mapjson__"StateReason"String_.of_jsoninletstate=field_mapjson__"State"ResourceState.of_jsoninletteamName=field_mapjson__"TeamName"UUID.of_jsoninletteamId=field_mapjson__"TeamId"UUID.of_jsoninlettenantId=field_mapjson__"TenantId"UUID.of_jsoninmake?stateReason?state?teamName?teamId?tenantId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A Microsoft Teams team that is authorized with AWS Chatbot."]moduleCustomActionArn=structtypenonrect=stringletcontext_="CustomActionArn"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1011)>>=(fun()->check_patterni~pattern:"arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionArn"jletto_json=simple_to_jsonto_valueendmoduleAssociationListing=structtypenonrect={resource:Arn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the resource (for example, a custom action)."]}letmake?resource=fun()->{resource}letto_valuex=structure_to_value[("Resource",(Option.mapx.resource~f:Arn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresource=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"Resource")inmake?resource()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresource=field_mapjson__"Resource"Arn.of_jsoninmake?resource()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A listing of an association with a channel configuration."]moduleCustomActionAliasName=structtypenonrect=stringletcontext_="CustomActionAliasName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:30)>>=(fun()->check_patterni~pattern:"[A-Za-z0-9-_]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionAliasName"jletto_json=simple_to_jsonto_valueendmoduleCustomActionAttachmentList=structtypenonrect=CustomActionAttachment.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:CustomActionAttachment.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:CustomActionAttachment.of_xml)letof_jsonj=list_of_json~kind:"CustomActionAttachmentList"~of_json:CustomActionAttachment.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleCustomActionDefinition=structtypenonrect={commandText:CustomActionDefinitionCommandTextString.t[@ocaml.doc"The command string to run which may include variables by prefixing with a dollar sign ($)."]}letcontext_="CustomActionDefinition"letmake~commandText=fun()->{commandText}letto_valuex=structure_to_value[("CommandText",(Some(CustomActionDefinitionCommandTextString.to_valuex.commandText)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcommandText=CustomActionDefinitionCommandTextString.of_xml(Xml.child_exn~context:context_xml_arg0"CommandText")inmake~commandText()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcommandText=field_map_exnjson__"CommandText"CustomActionDefinitionCommandTextString.of_jsoninmake~commandText()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The definition of the command to run when invoked as an alias or as an action button."]moduleCustomActionName=structtypenonrect=stringletcontext_="CustomActionName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:64)>>=(fun()->check_patterni~pattern:"[a-zA-Z0-9_-]{1,64}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"CustomActionName"jletto_json=simple_to_jsonto_valueendmoduleSlackWorkspace=structtypenonrect={slackTeamId:SlackTeamId.toption[@ocaml.doc"The ID of the Slack workspace authorized with AWS Chatbot."];slackTeamName:SlackTeamName.toption[@ocaml.doc"The name of the Slack workspace."];state:ResourceState.toption[@ocaml.doc"Either ENABLED or DISABLED. The resource returns DISABLED if the organization's AWS Chatbot policy has explicitly denied that configuration. For example, if Amazon Chime is disabled."];stateReason:String_.toption[@ocaml.doc"Provided if State is DISABLED. Provides context as to why the resource is disabled."]}letmake?slackTeamId=fun?slackTeamName->fun?state->fun?stateReason->fun()->{slackTeamId;slackTeamName;state;stateReason}letto_valuex=structure_to_value[("SlackTeamId",(Option.mapx.slackTeamId~f:SlackTeamId.to_value));("SlackTeamName",(Option.mapx.slackTeamName~f:SlackTeamName.to_value));("State",(Option.mapx.state~f:ResourceState.to_value));("StateReason",(Option.mapx.stateReason~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstateReason=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StateReason")inletstate=(Option.map~f:ResourceState.of_xml)(Xml.childxml_arg0"State")inletslackTeamName=(Option.map~f:SlackTeamName.of_xml)(Xml.childxml_arg0"SlackTeamName")inletslackTeamId=(Option.map~f:SlackTeamId.of_xml)(Xml.childxml_arg0"SlackTeamId")inmake?stateReason?state?slackTeamName?slackTeamId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstateReason=field_mapjson__"StateReason"String_.of_jsoninletstate=field_mapjson__"State"ResourceState.of_jsoninletslackTeamName=field_mapjson__"SlackTeamName"SlackTeamName.of_jsoninletslackTeamId=field_mapjson__"SlackTeamId"SlackTeamId.of_jsoninmake?stateReason?state?slackTeamName?slackTeamId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A Slack workspace."]moduleSlackUserIdentity=structtypenonrect={iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the SlackChannelConfiguration associated with the user identity to delete."];slackTeamId:SlackTeamId.toption[@ocaml.doc"The ID of the Slack workspace authorized with AWS Chatbot."];slackUserId:SlackUserId.toption[@ocaml.doc"The ID of the user in Slack"];awsUserIdentity:AwsUserIdentity.toption[@ocaml.doc"The AWS user identity ARN used to associate a Slack user ID with an IAM Role."]}letmake?iamRoleArn=fun?chatConfigurationArn->fun?slackTeamId->fun?slackUserId->fun?awsUserIdentity->fun()->{iamRoleArn;chatConfigurationArn;slackTeamId;slackUserId;awsUserIdentity}letto_valuex=structure_to_value[("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("SlackTeamId",(Option.mapx.slackTeamId~f:SlackTeamId.to_value));("SlackUserId",(Option.mapx.slackUserId~f:SlackUserId.to_value));("AwsUserIdentity",(Option.mapx.awsUserIdentity~f:AwsUserIdentity.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letawsUserIdentity=(Option.map~f:AwsUserIdentity.of_xml)(Xml.childxml_arg0"AwsUserIdentity")inletslackUserId=(Option.map~f:SlackUserId.of_xml)(Xml.childxml_arg0"SlackUserId")inletslackTeamId=(Option.map~f:SlackTeamId.of_xml)(Xml.childxml_arg0"SlackTeamId")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inmake?awsUserIdentity?slackUserId?slackTeamId?chatConfigurationArn?iamRoleArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letawsUserIdentity=field_mapjson__"AwsUserIdentity"AwsUserIdentity.of_jsoninletslackUserId=field_mapjson__"SlackUserId"SlackUserId.of_jsoninletslackTeamId=field_mapjson__"SlackTeamId"SlackTeamId.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninmake?awsUserIdentity?slackUserId?slackTeamId?chatConfigurationArn?iamRoleArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Identifes a user level permission for a channel configuration."]moduleSlackChannelConfiguration=structtypenonrect={slackTeamName:SlackTeamName.toption[@ocaml.doc"Name of the Slack workspace."];slackTeamId:SlackTeamId.toption[@ocaml.doc"The ID of the Slack workspace authorized with Amazon Chime."];slackChannelId:SlackChannelId.toption[@ocaml.doc"The ID of the Slack channel. To get this ID, open Slack, right click on the channel name in the left pane, then choose Copy Link. The channel ID is the 9-character string at the end of the URL. For example, ABCBBLZZZ."];slackChannelName:SlackChannelDisplayName.toption[@ocaml.doc"The name of the Slack channel."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the SlackChannelConfiguration."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The ARNs of the SNS topics that deliver notifications to AWS Chatbot."];configurationName:ConfigurationName.toption[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."];state:ResourceState.toption[@ocaml.doc"Either ENABLED or DISABLED. The resource returns DISABLED if the organization's AWS Chatbot policy has explicitly denied that configuration. For example, if Amazon Chime is disabled."];stateReason:String_.toption[@ocaml.doc"Provided if State is DISABLED. Provides context as to why the resource is disabled."]}letmake?slackTeamName=fun?slackTeamId->fun?slackChannelId->fun?slackChannelName->fun?chatConfigurationArn->fun?iamRoleArn->fun?snsTopicArns->fun?configurationName->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun?tags->fun?state->fun?stateReason->fun()->{slackTeamName;slackTeamId;slackChannelId;slackChannelName;chatConfigurationArn;iamRoleArn;snsTopicArns;configurationName;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;tags;state;stateReason}letto_valuex=structure_to_value[("SlackTeamName",(Option.mapx.slackTeamName~f:SlackTeamName.to_value));("SlackTeamId",(Option.mapx.slackTeamId~f:SlackTeamId.to_value));("SlackChannelId",(Option.mapx.slackChannelId~f:SlackChannelId.to_value));("SlackChannelName",(Option.mapx.slackChannelName~f:SlackChannelDisplayName.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("ConfigurationName",(Option.mapx.configurationName~f:ConfigurationName.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value));("State",(Option.mapx.state~f:ResourceState.to_value));("StateReason",(Option.mapx.stateReason~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstateReason=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StateReason")inletstate=(Option.map~f:ResourceState.of_xml)(Xml.childxml_arg0"State")inlettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=(Option.map~f:ConfigurationName.of_xml)(Xml.childxml_arg0"ConfigurationName")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletslackChannelName=(Option.map~f:SlackChannelDisplayName.of_xml)(Xml.childxml_arg0"SlackChannelName")inletslackChannelId=(Option.map~f:SlackChannelId.of_xml)(Xml.childxml_arg0"SlackChannelId")inletslackTeamId=(Option.map~f:SlackTeamId.of_xml)(Xml.childxml_arg0"SlackTeamId")inletslackTeamName=(Option.map~f:SlackTeamName.of_xml)(Xml.childxml_arg0"SlackTeamName")inmake?stateReason?state?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?slackChannelName?slackChannelId?slackTeamId?slackTeamName()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstateReason=field_mapjson__"StateReason"String_.of_jsoninletstate=field_mapjson__"State"ResourceState.of_jsoninlettags=field_mapjson__"Tags"Tags.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_mapjson__"ConfigurationName"ConfigurationName.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletslackChannelName=field_mapjson__"SlackChannelName"SlackChannelDisplayName.of_jsoninletslackChannelId=field_mapjson__"SlackChannelId"SlackChannelId.of_jsoninletslackTeamId=field_mapjson__"SlackTeamId"SlackTeamId.of_jsoninletslackTeamName=field_mapjson__"SlackTeamName"SlackTeamName.of_jsoninmake?stateReason?state?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?slackChannelName?slackChannelId?slackTeamId?slackTeamName()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An AWS Chatbot configuration for Slack."]moduleChimeWebhookConfiguration=structtypenonrect={webhookDescription:ChimeWebhookDescription.toption[@ocaml.doc"A description of the webhook. We recommend using the convention RoomName/WebhookName. For more information, see Tutorial: Get started with Amazon Chime in the AWS Chatbot Administrator Guide."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the ChimeWebhookConfiguration."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];configurationName:ConfigurationName.toption[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."];state:ResourceState.toption[@ocaml.doc"Either ENABLED or DISABLED. The resource returns DISABLED if the organization's AWS Chatbot policy has explicitly denied that configuration. For example, if Amazon Chime is disabled."];stateReason:String_.toption[@ocaml.doc"Provided if State is DISABLED. Provides context as to why the resource is disabled."]}letmake?webhookDescription=fun?chatConfigurationArn->fun?iamRoleArn->fun?snsTopicArns->fun?configurationName->fun?loggingLevel->fun?tags->fun?state->fun?stateReason->fun()->{webhookDescription;chatConfigurationArn;iamRoleArn;snsTopicArns;configurationName;loggingLevel;tags;state;stateReason}letto_valuex=structure_to_value[("WebhookDescription",(Option.mapx.webhookDescription~f:ChimeWebhookDescription.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("ConfigurationName",(Option.mapx.configurationName~f:ConfigurationName.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value));("State",(Option.mapx.state~f:ResourceState.to_value));("StateReason",(Option.mapx.stateReason~f:String_.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letstateReason=(Option.map~f:String_.of_xml)(Xml.childxml_arg0"StateReason")inletstate=(Option.map~f:ResourceState.of_xml)(Xml.childxml_arg0"State")inlettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=(Option.map~f:ConfigurationName.of_xml)(Xml.childxml_arg0"ConfigurationName")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletwebhookDescription=(Option.map~f:ChimeWebhookDescription.of_xml)(Xml.childxml_arg0"WebhookDescription")inmake?stateReason?state?tags?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?webhookDescription()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letstateReason=field_mapjson__"StateReason"String_.of_jsoninletstate=field_mapjson__"State"ResourceState.of_jsoninlettags=field_mapjson__"Tags"Tags.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_mapjson__"ConfigurationName"ConfigurationName.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletwebhookDescription=field_mapjson__"WebhookDescription"ChimeWebhookDescription.of_jsoninmake?stateReason?state?tags?loggingLevel?configurationName?snsTopicArns?iamRoleArn?chatConfigurationArn?webhookDescription()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An AWS Chatbot configuration for Amazon Chime."]moduleInvalidParameterException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Your request input doesn't meet the constraints required by AWS Chatbot."]moduleInvalidRequestException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Your request input doesn't meet the constraints required by AWS Chatbot."]moduleResourceNotFoundException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We were unable to find the resource for your request"]moduleUpdateTeamsChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleUpdateSlackChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleInternalServiceError=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Unexpected error during processing of request."]moduleUnauthorizedException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request was rejected because it doesn't have valid credentials for the target resource."]moduleUpdateChimeWebhookConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleChimeWebhookUrl=structtypenonrect=stringletcontext_="ChimeWebhookUrl"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"https://hooks\\.chime\\.aws/incomingwebhooks/[A-Za-z0-9\\-]+?\\?token=[A-Za-z0-9\\-]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ChimeWebhookUrl"jletto_json=simple_to_jsonto_valueendmoduleAccountPreferences=structtypenonrect={userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];trainingDataCollectionEnabled:BooleanAccountPreference.toption[@ocaml.doc"Turns on training data collection. This helps improve the AWS Chatbot experience by allowing AWS Chatbot to store and use your customer information, such as AWS Chatbot configurations, notifications, user inputs, AWS Chatbot generated responses, and interaction data. This data helps us to continuously improve and develop Artificial Intelligence (AI) technologies. Your data is not shared with any third parties and is protected using sophisticated controls to prevent unauthorized access and misuse. AWS Chatbot does not store or use interactions in chat channels with Amazon Q for training AI technologies for AWS Chatbot."]}letmake?userAuthorizationRequired=fun?trainingDataCollectionEnabled->fun()->{userAuthorizationRequired;trainingDataCollectionEnabled}letto_valuex=structure_to_value[("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("TrainingDataCollectionEnabled",(Option.mapx.trainingDataCollectionEnabled~f:BooleanAccountPreference.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettrainingDataCollectionEnabled=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"TrainingDataCollectionEnabled")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inmake?trainingDataCollectionEnabled?userAuthorizationRequired()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettrainingDataCollectionEnabled=field_mapjson__"TrainingDataCollectionEnabled"BooleanAccountPreference.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninmake?trainingDataCollectionEnabled?userAuthorizationRequired()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Preferences related to AWS Chatbot usage in the calling AWS account."]moduleUpdateAccountPreferencesException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleServiceUnavailableException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleAmazonResourceName=structtypenonrect=stringletcontext_="AmazonResourceName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1011)>>=(fun()->check_patterni~pattern:"arn:aws:(wheatley|chatbot):[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AmazonResourceName"jletto_json=simple_to_jsonto_valueendmoduleTagKeyList=structtypenonrect=TagKey.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:200)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:TagKey.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:TagKey.of_xml)letof_jsonj=list_of_json~kind:"TagKeyList"~of_json:TagKey.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleTooManyTagsException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The supplied list of tags contains too many tags."]moduleTagList=structtypenonrect=Tag.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:200)>>=(fun()->check_list_mini~min:0));iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Tag.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:Tag.of_xml)letof_jsonj=list_of_json~kind:"TagList"~of_json:Tag.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListTeamsChannelConfigurationsException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]modulePaginationToken=structtypenonrect=stringletcontext_="PaginationToken"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1276)>>=(fun()->check_patterni~pattern:"[a-zA-Z0-9=\\/+_.\\-,#:\\\\\"{}]{4,1276}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"PaginationToken"jletto_json=simple_to_jsonto_valueendmoduleTeamChannelConfigurationsList=structtypenonrect=TeamsChannelConfiguration.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:TeamsChannelConfiguration.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:TeamsChannelConfiguration.of_xml)letof_jsonj=list_of_json~kind:"TeamChannelConfigurationsList"~of_json:TeamsChannelConfiguration.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleMaxResults=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:100)>>=(fun()->check_int_mini~min:1));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for MaxResults"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleListMicrosoftTeamsUserIdentitiesException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleTeamsUserIdentitiesList=structtypenonrect=TeamsUserIdentity.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:TeamsUserIdentity.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:TeamsUserIdentity.of_xml)letof_jsonj=list_of_json~kind:"TeamsUserIdentitiesList"~of_json:TeamsUserIdentity.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleConfiguredTeamsList=structtypenonrect=ConfiguredTeam.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ConfiguredTeam.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:ConfiguredTeam.of_xml)letof_jsonj=list_of_json~kind:"ConfiguredTeamsList"~of_json:ConfiguredTeam.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListMicrosoftTeamsConfiguredTeamsException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleCustomActionArnList=structtypenonrect=CustomActionArn.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:CustomActionArn.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:CustomActionArn.of_xml)letof_jsonj=list_of_json~kind:"CustomActionArnList"~of_json:CustomActionArn.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListCustomActionsResultNextTokenString=structtypenonrect=stringletcontext_="ListCustomActionsResultNextTokenString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\x20-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ListCustomActionsResultNextTokenString"jletto_json=simple_to_jsonto_valueendmoduleListCustomActionsRequestMaxResultsInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:100)>>=(fun()->check_int_mini~min:1));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for ListCustomActionsRequestMaxResultsInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleListCustomActionsRequestNextTokenString=structtypenonrect=stringletcontext_="ListCustomActionsRequestNextTokenString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\x20-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ListCustomActionsRequestNextTokenString"jletto_json=simple_to_jsonto_valueendmoduleAssociationList=structtypenonrect=AssociationListing.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:AssociationListing.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:AssociationListing.of_xml)letof_jsonj=list_of_json~kind:"AssociationList"~of_json:AssociationListing.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleListAssociationsResultNextTokenString=structtypenonrect=stringletcontext_="ListAssociationsResultNextTokenString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\x20-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ListAssociationsResultNextTokenString"jletto_json=simple_to_jsonto_valueendmoduleListAssociationsRequestMaxResultsInteger=structtypenonrect=intletmakei=letopenResultinok_or_failwith((check_int_maxi~max:100)>>=(fun()->check_int_mini~min:1));iletof_string=Int.of_stringletto_valuex=`Integerxletto_queryv=to_queryto_valuevletto_headerx=Int.to_stringxletof_xmlxml_arg0=Int.of_string(string_of_xml~kind:"an integer for ListAssociationsRequestMaxResultsInteger"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleListAssociationsRequestNextTokenString=structtypenonrect=stringletcontext_="ListAssociationsRequestNextTokenString"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\x20-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ListAssociationsRequestNextTokenString"jletto_json=simple_to_jsonto_valueendmoduleGetTeamsChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleCustomAction=structtypenonrect={customActionArn:CustomActionArn.toption[@ocaml.doc"The fully defined Amazon Resource Name (ARN) of the custom action."];definition:CustomActionDefinition.toption[@ocaml.doc"The definition of the command to run when invoked an alias or as an action button."];aliasName:CustomActionAliasName.toption[@ocaml.doc"The name used to invoke this action in the chat channel. For example, \\@aws run my-alias."];attachments:CustomActionAttachmentList.toption[@ocaml.doc"Defines when this custom action button should be attached to a notification."];actionName:CustomActionName.toption[@ocaml.doc"The name of the custom action that is included in the ARN."]}letmake?customActionArn=fun?definition->fun?aliasName->fun?attachments->fun?actionName->fun()->{customActionArn;definition;aliasName;attachments;actionName}letto_valuex=structure_to_value[("CustomActionArn",(Option.mapx.customActionArn~f:CustomActionArn.to_value));("Definition",(Option.mapx.definition~f:CustomActionDefinition.to_value));("AliasName",(Option.mapx.aliasName~f:CustomActionAliasName.to_value));("Attachments",(Option.mapx.attachments~f:CustomActionAttachmentList.to_value));("ActionName",(Option.mapx.actionName~f:CustomActionName.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letactionName=(Option.map~f:CustomActionName.of_xml)(Xml.childxml_arg0"ActionName")inletattachments=(Option.map~f:CustomActionAttachmentList.of_xml)(Xml.childxml_arg0"Attachments")inletaliasName=(Option.map~f:CustomActionAliasName.of_xml)(Xml.childxml_arg0"AliasName")inletdefinition=(Option.map~f:CustomActionDefinition.of_xml)(Xml.childxml_arg0"Definition")inletcustomActionArn=(Option.map~f:CustomActionArn.of_xml)(Xml.childxml_arg0"CustomActionArn")inmake?actionName?attachments?aliasName?definition?customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letactionName=field_mapjson__"ActionName"CustomActionName.of_jsoninletattachments=field_mapjson__"Attachments"CustomActionAttachmentList.of_jsoninletaliasName=field_mapjson__"AliasName"CustomActionAliasName.of_jsoninletdefinition=field_mapjson__"Definition"CustomActionDefinition.of_jsoninletcustomActionArn=field_mapjson__"CustomActionArn"CustomActionArn.of_jsoninmake?actionName?attachments?aliasName?definition?customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Represents a parameterized command that can be invoked as an alias or as a notification button in the chat client."]moduleGetAccountPreferencesException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleResourceIdentifier=structtypenonrect=stringletcontext_="ResourceIdentifier"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1011)>>=(fun()->check_patterni~pattern:"arn:aws:chatbot:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:custom-action/[a-zA-Z0-9_-]{1,64}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ResourceIdentifier"jletto_json=simple_to_jsonto_valueendmoduleDescribeSlackWorkspacesException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleSlackWorkspacesList=structtypenonrect=SlackWorkspace.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:SlackWorkspace.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:SlackWorkspace.of_xml)letof_jsonj=list_of_json~kind:"SlackWorkspacesList"~of_json:SlackWorkspace.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDescribeSlackUserIdentitiesException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleSlackUserIdentitiesList=structtypenonrect=SlackUserIdentity.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:SlackUserIdentity.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:SlackUserIdentity.of_xml)letof_jsonj=list_of_json~kind:"SlackUserIdentitiesList"~of_json:SlackUserIdentity.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDescribeSlackChannelConfigurationsException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleSlackChannelConfigurationList=structtypenonrect=SlackChannelConfiguration.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:SlackChannelConfiguration.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:SlackChannelConfiguration.of_xml)letof_jsonj=list_of_json~kind:"SlackChannelConfigurationList"~of_json:SlackChannelConfiguration.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleChimeWebhookConfigurationList=structtypenonrect=ChimeWebhookConfiguration.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:ChimeWebhookConfiguration.to_value))|>(funx->`Listx)letto_queryv=to_queryto_valuevletto_header_=failwithf"to_header is not implemented for List_shape objects"()letof_xmlx=make(List.map((Xml.all_childrenx)|>(List.filter~f:(function|`Datas->(matchStdlib.String.trimswith|""->false|_->true)|_->true)))~f:ChimeWebhookConfiguration.of_xml)letof_jsonj=list_of_json~kind:"ChimeWebhookConfigurationList"~of_json:ChimeWebhookConfiguration.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDescribeChimeWebhookConfigurationsException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteTeamsConfiguredTeamException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteTeamsChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteSlackWorkspaceAuthorizationFault=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"There was an issue deleting your Slack workspace."]moduleDeleteSlackUserIdentityException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteSlackChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteMicrosoftTeamsUserIdentityException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleDeleteChimeWebhookConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleConflictException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"There was an issue processing your request."]moduleCreateTeamsChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleLimitExceededException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"You have exceeded a service limit for AWS Chatbot."]moduleCreateSlackChannelConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleClientToken=structtypenonrect=stringletcontext_="ClientToken"letmakei=letopenResultinok_or_failwith((check_string_mini~min:33)>>=(fun()->(check_string_maxi~max:126)>>=(fun()->check_patterni~pattern:"[\\x21-\\x7F]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ClientToken"jletto_json=simple_to_jsonto_valueendmoduleCreateChimeWebhookConfigurationException=structtypenonrect={message:ErrorMessage.toption}letmake?message=fun()->{message}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ErrorMessage.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmessage=(Option.map~f:ErrorMessage.of_xml)(Xml.childxml_arg0"Message")inmake?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmessage=field_mapjson__"Message"ErrorMessage.of_jsoninmake?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"We can\226\128\153t process your request right now because of a server issue. Try again later."]moduleUpdateTeamsChannelConfigurationResult=structtypenonrect={channelConfiguration:TeamsChannelConfiguration.toption[@ocaml.doc"The configuration for a Microsoft Teams channel configured with AWS Chatbot."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UpdateTeamsChannelConfigurationExceptionofUpdateTeamsChannelConfigurationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?channelConfiguration=fun()->{channelConfiguration}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UpdateTeamsChannelConfigurationException"->`UpdateTeamsChannelConfigurationException(UpdateTeamsChannelConfigurationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UpdateTeamsChannelConfigurationException"->`UpdateTeamsChannelConfigurationException(UpdateTeamsChannelConfigurationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UpdateTeamsChannelConfigurationExceptione->`Assoc[("error",(`String"UpdateTeamsChannelConfigurationException"));("details",(UpdateTeamsChannelConfigurationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ChannelConfiguration",(Option.mapx.channelConfiguration~f:TeamsChannelConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchannelConfiguration=(Option.map~f:TeamsChannelConfiguration.of_xml)(Xml.childxml_arg0"ChannelConfiguration")inmake?channelConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchannelConfiguration=field_mapjson__"ChannelConfiguration"TeamsChannelConfiguration.of_jsoninmake?channelConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates an Microsoft Teams channel configuration."]moduleUpdateTeamsChannelConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the TeamsChannelConfiguration to update."];channelId:TeamsChannelId.t[@ocaml.doc"The ID of the Microsoft Teams channel."];channelName:TeamsChannelName.toption[@ocaml.doc"The name of the Microsoft Teams channel."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."]}letcontext_="UpdateTeamsChannelConfigurationRequest"letmake?channelName=fun?snsTopicArns->fun?iamRoleArn->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun~chatConfigurationArn->fun~channelId->fun()->{channelName;snsTopicArns;iamRoleArn;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;chatConfigurationArn;channelId}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)));("ChannelId",(Some(TeamsChannelId.to_valuex.channelId)));("ChannelName",(Option.mapx.channelName~f:TeamsChannelName.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletchannelName=(Option.map~f:TeamsChannelName.of_xml)(Xml.childxml_arg0"ChannelName")inletchannelId=TeamsChannelId.of_xml(Xml.child_exn~context:context_xml_arg0"ChannelId")inletchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?iamRoleArn?snsTopicArns?channelName~channelId~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletchannelName=field_mapjson__"ChannelName"TeamsChannelName.of_jsoninletchannelId=field_map_exnjson__"ChannelId"TeamsChannelId.of_jsoninletchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?iamRoleArn?snsTopicArns?channelName~channelId~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates an Microsoft Teams channel configuration."]moduleUpdateSlackChannelConfigurationResult=structtypenonrect={channelConfiguration:SlackChannelConfiguration.toption[@ocaml.doc"The configuration for a Slack channel configured with AWS Chatbot."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UpdateSlackChannelConfigurationExceptionofUpdateSlackChannelConfigurationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?channelConfiguration=fun()->{channelConfiguration}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UpdateSlackChannelConfigurationException"->`UpdateSlackChannelConfigurationException(UpdateSlackChannelConfigurationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UpdateSlackChannelConfigurationException"->`UpdateSlackChannelConfigurationException(UpdateSlackChannelConfigurationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UpdateSlackChannelConfigurationExceptione->`Assoc[("error",(`String"UpdateSlackChannelConfigurationException"));("details",(UpdateSlackChannelConfigurationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ChannelConfiguration",(Option.mapx.channelConfiguration~f:SlackChannelConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchannelConfiguration=(Option.map~f:SlackChannelConfiguration.of_xml)(Xml.childxml_arg0"ChannelConfiguration")inmake?channelConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchannelConfiguration=field_mapjson__"ChannelConfiguration"SlackChannelConfiguration.of_jsoninmake?channelConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a Slack channel configuration."]moduleUpdateSlackChannelConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the SlackChannelConfiguration to update."];slackChannelId:SlackChannelId.t[@ocaml.doc"The ID of the Slack channel. To get this ID, open Slack, right click on the channel name in the left pane, then choose Copy Link. The channel ID is the 9-character string at the end of the URL. For example, ABCBBLZZZ."];slackChannelName:SlackChannelDisplayName.toption[@ocaml.doc"The name of the Slack channel."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."]}letcontext_="UpdateSlackChannelConfigurationRequest"letmake?slackChannelName=fun?snsTopicArns->fun?iamRoleArn->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun~chatConfigurationArn->fun~slackChannelId->fun()->{slackChannelName;snsTopicArns;iamRoleArn;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;chatConfigurationArn;slackChannelId}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)));("SlackChannelId",(Some(SlackChannelId.to_valuex.slackChannelId)));("SlackChannelName",(Option.mapx.slackChannelName~f:SlackChannelDisplayName.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletslackChannelName=(Option.map~f:SlackChannelDisplayName.of_xml)(Xml.childxml_arg0"SlackChannelName")inletslackChannelId=SlackChannelId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackChannelId")inletchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?iamRoleArn?snsTopicArns?slackChannelName~slackChannelId~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletslackChannelName=field_mapjson__"SlackChannelName"SlackChannelDisplayName.of_jsoninletslackChannelId=field_map_exnjson__"SlackChannelId"SlackChannelId.of_jsoninletchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake?userAuthorizationRequired?guardrailPolicyArns?loggingLevel?iamRoleArn?snsTopicArns?slackChannelName~slackChannelId~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a Slack channel configuration."]moduleUpdateCustomActionResult=structtypenonrect={customActionArn:CustomActionArn.toption[@ocaml.doc"The fully defined ARN of the custom action."]}typenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?customActionArn=fun()->{customActionArn}leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CustomActionArn",(Option.mapx.customActionArn~f:CustomActionArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomActionArn=(Option.map~f:CustomActionArn.of_xml)(Xml.childxml_arg0"CustomActionArn")inmake?customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomActionArn=field_mapjson__"CustomActionArn"CustomActionArn.of_jsoninmake?customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a custom action."]moduleUpdateCustomActionRequest=structtypenonrect={customActionArn:CustomActionArn.t[@ocaml.doc"The fully defined Amazon Resource Name (ARN) of the custom action."];definition:CustomActionDefinition.t[@ocaml.doc"The definition of the command to run when invoked as an alias or as an action button."];aliasName:CustomActionAliasName.toption[@ocaml.doc"The name used to invoke this action in the chat channel. For example, \\@aws run my-alias."];attachments:CustomActionAttachmentList.toption[@ocaml.doc"Defines when this custom action button should be attached to a notification."]}letcontext_="UpdateCustomActionRequest"letmake?aliasName=fun?attachments->fun~customActionArn->fun~definition->fun()->{aliasName;attachments;customActionArn;definition}letto_valuex=structure_to_value[("CustomActionArn",(Some(CustomActionArn.to_valuex.customActionArn)));("Definition",(Some(CustomActionDefinition.to_valuex.definition)));("AliasName",(Option.mapx.aliasName~f:CustomActionAliasName.to_value));("Attachments",(Option.mapx.attachments~f:CustomActionAttachmentList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letattachments=(Option.map~f:CustomActionAttachmentList.of_xml)(Xml.childxml_arg0"Attachments")inletaliasName=(Option.map~f:CustomActionAliasName.of_xml)(Xml.childxml_arg0"AliasName")inletdefinition=CustomActionDefinition.of_xml(Xml.child_exn~context:context_xml_arg0"Definition")inletcustomActionArn=CustomActionArn.of_xml(Xml.child_exn~context:context_xml_arg0"CustomActionArn")inmake?attachments?aliasName~definition~customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letattachments=field_mapjson__"Attachments"CustomActionAttachmentList.of_jsoninletaliasName=field_mapjson__"AliasName"CustomActionAliasName.of_jsoninletdefinition=field_map_exnjson__"Definition"CustomActionDefinition.of_jsoninletcustomActionArn=field_map_exnjson__"CustomActionArn"CustomActionArn.of_jsoninmake?attachments?aliasName~definition~customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a custom action."]moduleUpdateChimeWebhookConfigurationResult=structtypenonrect={webhookConfiguration:ChimeWebhookConfiguration.toption[@ocaml.doc"A Amazon Chime webhook configuration."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UpdateChimeWebhookConfigurationExceptionofUpdateChimeWebhookConfigurationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhookConfiguration=fun()->{webhookConfiguration}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UpdateChimeWebhookConfigurationException"->`UpdateChimeWebhookConfigurationException(UpdateChimeWebhookConfigurationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UpdateChimeWebhookConfigurationException"->`UpdateChimeWebhookConfigurationException(UpdateChimeWebhookConfigurationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UpdateChimeWebhookConfigurationExceptione->`Assoc[("error",(`String"UpdateChimeWebhookConfigurationException"));("details",(UpdateChimeWebhookConfigurationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("WebhookConfiguration",(Option.mapx.webhookConfiguration~f:ChimeWebhookConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhookConfiguration=(Option.map~f:ChimeWebhookConfiguration.of_xml)(Xml.childxml_arg0"WebhookConfiguration")inmake?webhookConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhookConfiguration=field_mapjson__"WebhookConfiguration"ChimeWebhookConfiguration.of_jsoninmake?webhookConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a Amazon Chime webhook configuration."]moduleUpdateChimeWebhookConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the ChimeWebhookConfiguration to update."];webhookDescription:ChimeWebhookDescription.toption[@ocaml.doc"A description of the webhook. We recommend using the convention RoomName/WebhookName. For more information, see Tutorial: Get started with Amazon Chime in the AWS Chatbot Administrator Guide."];webhookUrl:ChimeWebhookUrl.toption[@ocaml.doc"The URL for the Amazon Chime webhook."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The ARNs of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.toption[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."]}letcontext_="UpdateChimeWebhookConfigurationRequest"letmake?webhookDescription=fun?webhookUrl->fun?snsTopicArns->fun?iamRoleArn->fun?loggingLevel->fun~chatConfigurationArn->fun()->{webhookDescription;webhookUrl;snsTopicArns;iamRoleArn;loggingLevel;chatConfigurationArn}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)));("WebhookDescription",(Option.mapx.webhookDescription~f:ChimeWebhookDescription.to_value));("WebhookUrl",(Option.mapx.webhookUrl~f:ChimeWebhookUrl.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("IamRoleArn",(Option.mapx.iamRoleArn~f:Arn.to_value));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletiamRoleArn=(Option.map~f:Arn.of_xml)(Xml.childxml_arg0"IamRoleArn")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletwebhookUrl=(Option.map~f:ChimeWebhookUrl.of_xml)(Xml.childxml_arg0"WebhookUrl")inletwebhookDescription=(Option.map~f:ChimeWebhookDescription.of_xml)(Xml.childxml_arg0"WebhookDescription")inletchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake?loggingLevel?iamRoleArn?snsTopicArns?webhookUrl?webhookDescription~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletiamRoleArn=field_mapjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletwebhookUrl=field_mapjson__"WebhookUrl"ChimeWebhookUrl.of_jsoninletwebhookDescription=field_mapjson__"WebhookDescription"ChimeWebhookDescription.of_jsoninletchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake?loggingLevel?iamRoleArn?snsTopicArns?webhookUrl?webhookDescription~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates a Amazon Chime webhook configuration."]moduleUpdateAccountPreferencesResult=structtypenonrect={accountPreferences:AccountPreferences.toption[@ocaml.doc"Preferences related to AWS Chatbot usage in the calling AWS account."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`UpdateAccountPreferencesExceptionofUpdateAccountPreferencesException.t|`Unknown_operation_errorof(string*stringoption)]letmake?accountPreferences=fun()->{accountPreferences}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"UpdateAccountPreferencesException"->`UpdateAccountPreferencesException(UpdateAccountPreferencesException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"UpdateAccountPreferencesException"->`UpdateAccountPreferencesException(UpdateAccountPreferencesException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`UpdateAccountPreferencesExceptione->`Assoc[("error",(`String"UpdateAccountPreferencesException"));("details",(UpdateAccountPreferencesException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("AccountPreferences",(Option.mapx.accountPreferences~f:AccountPreferences.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letaccountPreferences=(Option.map~f:AccountPreferences.of_xml)(Xml.childxml_arg0"AccountPreferences")inmake?accountPreferences()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letaccountPreferences=field_mapjson__"AccountPreferences"AccountPreferences.of_jsoninmake?accountPreferences()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates AWS Chatbot account preferences."]moduleUpdateAccountPreferencesRequest=structtypenonrect={userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];trainingDataCollectionEnabled:BooleanAccountPreference.toption[@ocaml.doc"Turns on training data collection. This helps improve the AWS Chatbot experience by allowing AWS Chatbot to store and use your customer information, such as AWS Chatbot configurations, notifications, user inputs, AWS Chatbot generated responses, and interaction data. This data helps us to continuously improve and develop Artificial Intelligence (AI) technologies. Your data is not shared with any third parties and is protected using sophisticated controls to prevent unauthorized access and misuse. AWS Chatbot does not store or use interactions in chat channels with Amazon Q for training AI technologies for AWS Chatbot."]}letmake?userAuthorizationRequired=fun?trainingDataCollectionEnabled->fun()->{userAuthorizationRequired;trainingDataCollectionEnabled}letto_valuex=structure_to_value[("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("TrainingDataCollectionEnabled",(Option.mapx.trainingDataCollectionEnabled~f:BooleanAccountPreference.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettrainingDataCollectionEnabled=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"TrainingDataCollectionEnabled")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inmake?trainingDataCollectionEnabled?userAuthorizationRequired()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettrainingDataCollectionEnabled=field_mapjson__"TrainingDataCollectionEnabled"BooleanAccountPreference.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninmake?trainingDataCollectionEnabled?userAuthorizationRequired()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates AWS Chatbot account preferences."]moduleUntagResourceResponse=structtypenonrect=unittypenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceUnavailableExceptionofServiceUnavailableException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceUnavailableExceptione->`Assoc[("error",(`String"ServiceUnavailableException"));("details",(ServiceUnavailableException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Detaches a key-value pair from a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities."]moduleUntagResourceRequest=structtypenonrect={resourceARN:AmazonResourceName.t[@ocaml.doc"The value of the resource that will have the tag removed. An Amazon Resource Name (ARN) is an identifier for a specific AWS resource, such as a server, user, or role."];tagKeys:TagKeyList.t[@ocaml.doc"TagKeys are key-value pairs assigned to ARNs that can be used to group and search for resources by type. This metadata can be attached to resources for any purpose."]}letcontext_="UntagResourceRequest"letmake~resourceARN=fun~tagKeys->fun()->{resourceARN;tagKeys}letto_valuex=structure_to_value[("ResourceARN",(Some(AmazonResourceName.to_valuex.resourceARN)));("TagKeys",(Some(TagKeyList.to_valuex.tagKeys)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettagKeys=TagKeyList.of_xml(Xml.child_exn~context:context_xml_arg0"TagKeys")inletresourceARN=AmazonResourceName.of_xml(Xml.child_exn~context:context_xml_arg0"ResourceARN")inmake~tagKeys~resourceARN()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettagKeys=field_map_exnjson__"TagKeys"TagKeyList.of_jsoninletresourceARN=field_map_exnjson__"ResourceARN"AmazonResourceName.of_jsoninmake~tagKeys~resourceARN()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Detaches a key-value pair from a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities."]moduleTagResourceResponse=structtypenonrect=unittypenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceUnavailableExceptionofServiceUnavailableException.t|`TooManyTagsExceptionofTooManyTagsException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_jsonjson)|"TooManyTagsException"->`TooManyTagsException(TooManyTagsException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_xmlxml)|"TooManyTagsException"->`TooManyTagsException(TooManyTagsException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceUnavailableExceptione->`Assoc[("error",(`String"ServiceUnavailableException"));("details",(ServiceUnavailableException.to_jsone))]|`TooManyTagsExceptione->`Assoc[("error",(`String"TooManyTagsException"));("details",(TooManyTagsException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Attaches a key-value pair to a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities."]moduleTagResourceRequest=structtypenonrect={resourceARN:AmazonResourceName.t[@ocaml.doc"The ARN of the configuration."];tags:TagList.t[@ocaml.doc"A list of tags to apply to the configuration."]}letcontext_="TagResourceRequest"letmake~resourceARN=fun~tags->fun()->{resourceARN;tags}letto_valuex=structure_to_value[("ResourceARN",(Some(AmazonResourceName.to_valuex.resourceARN)));("Tags",(Some(TagList.to_valuex.tags)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=TagList.of_xml(Xml.child_exn~context:context_xml_arg0"Tags")inletresourceARN=AmazonResourceName.of_xml(Xml.child_exn~context:context_xml_arg0"ResourceARN")inmake~tags~resourceARN()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_map_exnjson__"Tags"TagList.of_jsoninletresourceARN=field_map_exnjson__"ResourceARN"AmazonResourceName.of_jsoninmake~tags~resourceARN()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Attaches a key-value pair to a resource, as identified by its Amazon Resource Name (ARN). Resources are users, servers, roles, and other entities."]moduleListTeamsChannelConfigurationsResult=structtypenonrect={nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];teamChannelConfigurations:TeamChannelConfigurationsList.toption[@ocaml.doc"A list of AWS Chatbot channel configurations for Microsoft Teams."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ListTeamsChannelConfigurationsExceptionofListTeamsChannelConfigurationsException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?teamChannelConfigurations->fun()->{nextToken;teamChannelConfigurations}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ListTeamsChannelConfigurationsException"->`ListTeamsChannelConfigurationsException(ListTeamsChannelConfigurationsException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ListTeamsChannelConfigurationsException"->`ListTeamsChannelConfigurationsException(ListTeamsChannelConfigurationsException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ListTeamsChannelConfigurationsExceptione->`Assoc[("error",(`String"ListTeamsChannelConfigurationsException"));("details",(ListTeamsChannelConfigurationsException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("TeamChannelConfigurations",(Option.mapx.teamChannelConfigurations~f:TeamChannelConfigurationsList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letteamChannelConfigurations=(Option.map~f:TeamChannelConfigurationsList.of_xml)(Xml.childxml_arg0"TeamChannelConfigurations")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inmake?teamChannelConfigurations?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letteamChannelConfigurations=field_mapjson__"TeamChannelConfigurations"TeamChannelConfigurationsList.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninmake?teamChannelConfigurations?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all AWS Chatbot Microsoft Teams channel configurations in an AWS account."]moduleListTeamsChannelConfigurationsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];teamId:UUID.toption[@ocaml.doc"The ID of the Microsoft Teams authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."]}letmake?maxResults=fun?nextToken->fun?teamId->fun()->{maxResults;nextToken;teamId}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("TeamId",(Option.mapx.teamId~f:UUID.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letteamId=(Option.map~f:UUID.of_xml)(Xml.childxml_arg0"TeamId")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?teamId?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letteamId=field_mapjson__"TeamId"UUID.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?teamId?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all AWS Chatbot Microsoft Teams channel configurations in an AWS account."]moduleListTagsForResourceResponse=structtypenonrect={tags:TagList.toption[@ocaml.doc"Key-value pairs that are assigned to a resource, usually for the purpose of grouping and searching for items. Tags are metadata that you define."]}typenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceUnavailableExceptionofServiceUnavailableException.t|`Unknown_operation_errorof(string*stringoption)]letmake?tags=fun()->{tags}leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceUnavailableException"->`ServiceUnavailableException(ServiceUnavailableException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceUnavailableExceptione->`Assoc[("error",(`String"ServiceUnavailableException"));("details",(ServiceUnavailableException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("Tags",(Option.mapx.tags~f:TagList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:TagList.of_xml)(Xml.childxml_arg0"Tags")inmake?tags()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"TagList.of_jsoninmake?tags()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all of the tags associated with the Amazon Resource Name (ARN) that you specify. The resource can be a user, server, or role."]moduleListTagsForResourceRequest=structtypenonrect={resourceARN:AmazonResourceName.t[@ocaml.doc"The ARN of the resource to list tags for."]}letcontext_="ListTagsForResourceRequest"letmake~resourceARN=fun()->{resourceARN}letto_valuex=structure_to_value[("ResourceARN",(Some(AmazonResourceName.to_valuex.resourceARN)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresourceARN=AmazonResourceName.of_xml(Xml.child_exn~context:context_xml_arg0"ResourceARN")inmake~resourceARN()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresourceARN=field_map_exnjson__"ResourceARN"AmazonResourceName.of_jsoninmake~resourceARN()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all of the tags associated with the Amazon Resource Name (ARN) that you specify. The resource can be a user, server, or role."]moduleListMicrosoftTeamsUserIdentitiesResult=structtypenonrect={teamsUserIdentities:TeamsUserIdentitiesList.toption[@ocaml.doc"User level permissions associated to a channel configuration."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ListMicrosoftTeamsUserIdentitiesExceptionofListMicrosoftTeamsUserIdentitiesException.t|`Unknown_operation_errorof(string*stringoption)]letmake?teamsUserIdentities=fun?nextToken->fun()->{teamsUserIdentities;nextToken}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ListMicrosoftTeamsUserIdentitiesException"->`ListMicrosoftTeamsUserIdentitiesException(ListMicrosoftTeamsUserIdentitiesException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ListMicrosoftTeamsUserIdentitiesException"->`ListMicrosoftTeamsUserIdentitiesException(ListMicrosoftTeamsUserIdentitiesException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ListMicrosoftTeamsUserIdentitiesExceptione->`Assoc[("error",(`String"ListMicrosoftTeamsUserIdentitiesException"));("details",(ListMicrosoftTeamsUserIdentitiesException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("TeamsUserIdentities",(Option.mapx.teamsUserIdentities~f:TeamsUserIdentitiesList.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletteamsUserIdentities=(Option.map~f:TeamsUserIdentitiesList.of_xml)(Xml.childxml_arg0"TeamsUserIdentities")inmake?nextToken?teamsUserIdentities()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletteamsUserIdentities=field_mapjson__"TeamsUserIdentities"TeamsUserIdentitiesList.of_jsoninmake?nextToken?teamsUserIdentities()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A list all Microsoft Teams user identities with a mapped role."]moduleListMicrosoftTeamsUserIdentitiesRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration associated with the user identities to list."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."]}letmake?chatConfigurationArn=fun?nextToken->fun?maxResults->fun()->{chatConfigurationArn;nextToken;maxResults}letto_valuex=structure_to_value[("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inmake?maxResults?nextToken?chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake?maxResults?nextToken?chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A list all Microsoft Teams user identities with a mapped role."]moduleListMicrosoftTeamsConfiguredTeamsResult=structtypenonrect={configuredTeams:ConfiguredTeamsList.toption[@ocaml.doc"A list of teams in Microsoft Teams that are configured with AWS Chatbot."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ListMicrosoftTeamsConfiguredTeamsExceptionofListMicrosoftTeamsConfiguredTeamsException.t|`Unknown_operation_errorof(string*stringoption)]letmake?configuredTeams=fun?nextToken->fun()->{configuredTeams;nextToken}leterror_of_jsonnamejson=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ListMicrosoftTeamsConfiguredTeamsException"->`ListMicrosoftTeamsConfiguredTeamsException(ListMicrosoftTeamsConfiguredTeamsException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ListMicrosoftTeamsConfiguredTeamsException"->`ListMicrosoftTeamsConfiguredTeamsException(ListMicrosoftTeamsConfiguredTeamsException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ListMicrosoftTeamsConfiguredTeamsExceptione->`Assoc[("error",(`String"ListMicrosoftTeamsConfiguredTeamsException"));("details",(ListMicrosoftTeamsConfiguredTeamsException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ConfiguredTeams",(Option.mapx.configuredTeams~f:ConfiguredTeamsList.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletconfiguredTeams=(Option.map~f:ConfiguredTeamsList.of_xml)(Xml.childxml_arg0"ConfiguredTeams")inmake?nextToken?configuredTeams()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletconfiguredTeams=field_mapjson__"ConfiguredTeams"ConfiguredTeamsList.of_jsoninmake?nextToken?configuredTeams()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all authorized Microsoft Teams for an AWS Account"]moduleListMicrosoftTeamsConfiguredTeamsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all authorized Microsoft Teams for an AWS Account"]moduleListCustomActionsResult=structtypenonrect={customActions:CustomActionArnList.toption[@ocaml.doc"A list of custom actions."];nextToken:ListCustomActionsResultNextTokenString.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?customActions=fun?nextToken->fun()->{customActions;nextToken}leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CustomActions",(Option.mapx.customActions~f:CustomActionArnList.to_value));("NextToken",(Option.mapx.nextToken~f:ListCustomActionsResultNextTokenString.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:ListCustomActionsResultNextTokenString.of_xml)(Xml.childxml_arg0"NextToken")inletcustomActions=(Option.map~f:CustomActionArnList.of_xml)(Xml.childxml_arg0"CustomActions")inmake?nextToken?customActions()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"ListCustomActionsResultNextTokenString.of_jsoninletcustomActions=field_mapjson__"CustomActions"CustomActionArnList.of_jsoninmake?nextToken?customActions()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists custom actions defined in this account."]moduleListCustomActionsRequest=structtypenonrect={maxResults:ListCustomActionsRequestMaxResultsInteger.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:ListCustomActionsRequestNextTokenString.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:ListCustomActionsRequestMaxResultsInteger.to_value));("NextToken",(Option.mapx.nextToken~f:ListCustomActionsRequestNextTokenString.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:ListCustomActionsRequestNextTokenString.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:ListCustomActionsRequestMaxResultsInteger.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"ListCustomActionsRequestNextTokenString.of_jsoninletmaxResults=field_mapjson__"MaxResults"ListCustomActionsRequestMaxResultsInteger.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists custom actions defined in this account."]moduleListAssociationsResult=structtypenonrect={associations:AssociationList.toption[@ocaml.doc"The resources associated with this channel configuration."];nextToken:ListAssociationsResultNextTokenString.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`Unknown_operation_errorof(string*stringoption)]letmake?associations=fun?nextToken->fun()->{associations;nextToken}leterror_of_jsonnamejson=matchnamewith|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("Associations",(Option.mapx.associations~f:AssociationList.to_value));("NextToken",(Option.mapx.nextToken~f:ListAssociationsResultNextTokenString.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:ListAssociationsResultNextTokenString.of_xml)(Xml.childxml_arg0"NextToken")inletassociations=(Option.map~f:AssociationList.of_xml)(Xml.childxml_arg0"Associations")inmake?nextToken?associations()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"ListAssociationsResultNextTokenString.of_jsoninletassociations=field_mapjson__"Associations"AssociationList.of_jsoninmake?nextToken?associations()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists resources associated with a channel configuration."]moduleListAssociationsRequest=structtypenonrect={chatConfiguration:ChatConfigurationArn.t[@ocaml.doc"The channel configuration to list associations for."];maxResults:ListAssociationsRequestMaxResultsInteger.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:ListAssociationsRequestNextTokenString.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}letcontext_="ListAssociationsRequest"letmake?maxResults=fun?nextToken->fun~chatConfiguration->fun()->{maxResults;nextToken;chatConfiguration}letto_valuex=structure_to_value[("ChatConfiguration",(Some(ChatConfigurationArn.to_valuex.chatConfiguration)));("MaxResults",(Option.mapx.maxResults~f:ListAssociationsRequestMaxResultsInteger.to_value));("NextToken",(Option.mapx.nextToken~f:ListAssociationsRequestNextTokenString.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:ListAssociationsRequestNextTokenString.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:ListAssociationsRequestMaxResultsInteger.of_xml)(Xml.childxml_arg0"MaxResults")inletchatConfiguration=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfiguration")inmake?nextToken?maxResults~chatConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"ListAssociationsRequestNextTokenString.of_jsoninletmaxResults=field_mapjson__"MaxResults"ListAssociationsRequestMaxResultsInteger.of_jsoninletchatConfiguration=field_map_exnjson__"ChatConfiguration"ChatConfigurationArn.of_jsoninmake?nextToken?maxResults~chatConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists resources associated with a channel configuration."]moduleGetTeamsChannelConfigurationResult=structtypenonrect={channelConfiguration:TeamsChannelConfiguration.toption[@ocaml.doc"The configuration for a Microsoft Teams channel configured with AWS Chatbot."]}typenonrecerror=[`GetTeamsChannelConfigurationExceptionofGetTeamsChannelConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?channelConfiguration=fun()->{channelConfiguration}leterror_of_jsonnamejson=matchnamewith|"GetTeamsChannelConfigurationException"->`GetTeamsChannelConfigurationException(GetTeamsChannelConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"GetTeamsChannelConfigurationException"->`GetTeamsChannelConfigurationException(GetTeamsChannelConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`GetTeamsChannelConfigurationExceptione->`Assoc[("error",(`String"GetTeamsChannelConfigurationException"));("details",(GetTeamsChannelConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ChannelConfiguration",(Option.mapx.channelConfiguration~f:TeamsChannelConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchannelConfiguration=(Option.map~f:TeamsChannelConfiguration.of_xml)(Xml.childxml_arg0"ChannelConfiguration")inmake?channelConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchannelConfiguration=field_mapjson__"ChannelConfiguration"TeamsChannelConfiguration.of_jsoninmake?channelConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a Microsoft Teams channel configuration in an AWS account."]moduleGetTeamsChannelConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration to retrieve."]}letcontext_="GetTeamsChannelConfigurationRequest"letmake~chatConfigurationArn=fun()->{chatConfigurationArn}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a Microsoft Teams channel configuration in an AWS account."]moduleGetCustomActionResult=structtypenonrect={customAction:CustomAction.toption[@ocaml.doc"Returns the custom action."]}typenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?customAction=fun()->{customAction}leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CustomAction",(Option.mapx.customAction~f:CustomAction.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomAction=(Option.map~f:CustomAction.of_xml)(Xml.childxml_arg0"CustomAction")inmake?customAction()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomAction=field_mapjson__"CustomAction"CustomAction.of_jsoninmake?customAction()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a custom action."]moduleGetCustomActionRequest=structtypenonrect={customActionArn:CustomActionArn.t[@ocaml.doc"Returns the fully defined Amazon Resource Name (ARN) of the custom action."]}letcontext_="GetCustomActionRequest"letmake~customActionArn=fun()->{customActionArn}letto_valuex=structure_to_value[("CustomActionArn",(Some(CustomActionArn.to_valuex.customActionArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomActionArn=CustomActionArn.of_xml(Xml.child_exn~context:context_xml_arg0"CustomActionArn")inmake~customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomActionArn=field_map_exnjson__"CustomActionArn"CustomActionArn.of_jsoninmake~customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns a custom action."]moduleGetAccountPreferencesResult=structtypenonrect={accountPreferences:AccountPreferences.toption[@ocaml.doc"The preferences related to AWS Chatbot usage in the calling AWS account."]}typenonrecerror=[`GetAccountPreferencesExceptionofGetAccountPreferencesException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?accountPreferences=fun()->{accountPreferences}leterror_of_jsonnamejson=matchnamewith|"GetAccountPreferencesException"->`GetAccountPreferencesException(GetAccountPreferencesException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"GetAccountPreferencesException"->`GetAccountPreferencesException(GetAccountPreferencesException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`GetAccountPreferencesExceptione->`Assoc[("error",(`String"GetAccountPreferencesException"));("details",(GetAccountPreferencesException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("AccountPreferences",(Option.mapx.accountPreferences~f:AccountPreferences.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letaccountPreferences=(Option.map~f:AccountPreferences.of_xml)(Xml.childxml_arg0"AccountPreferences")inmake?accountPreferences()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letaccountPreferences=field_mapjson__"AccountPreferences"AccountPreferences.of_jsoninmake?accountPreferences()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns AWS Chatbot account preferences."]moduleGetAccountPreferencesRequest=structtypenonrect=unitletmake()=()letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Returns AWS Chatbot account preferences."]moduleDisassociateFromConfigurationResult=structtypenonrect=unittypenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Unlink a resource, for example a custom action, from a channel configuration."]moduleDisassociateFromConfigurationRequest=structtypenonrect={resource:ResourceIdentifier.t[@ocaml.doc"The resource (for example, a custom action) Amazon Resource Name (ARN) to unlink."];chatConfiguration:ChatConfigurationArn.t[@ocaml.doc"The channel configuration the resource is being disassociated from."]}letcontext_="DisassociateFromConfigurationRequest"letmake~resource=fun~chatConfiguration->fun()->{resource;chatConfiguration}letto_valuex=structure_to_value[("Resource",(Some(ResourceIdentifier.to_valuex.resource)));("ChatConfiguration",(Some(ChatConfigurationArn.to_valuex.chatConfiguration)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfiguration=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfiguration")inletresource=ResourceIdentifier.of_xml(Xml.child_exn~context:context_xml_arg0"Resource")inmake~chatConfiguration~resource()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfiguration=field_map_exnjson__"ChatConfiguration"ChatConfigurationArn.of_jsoninletresource=field_map_exnjson__"Resource"ResourceIdentifier.of_jsoninmake~chatConfiguration~resource()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Unlink a resource, for example a custom action, from a channel configuration."]moduleDescribeSlackWorkspacesResult=structtypenonrect={slackWorkspaces:SlackWorkspacesList.toption[@ocaml.doc"A list of Slack workspaces registered with AWS Chatbot."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`DescribeSlackWorkspacesExceptionofDescribeSlackWorkspacesException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?slackWorkspaces=fun?nextToken->fun()->{slackWorkspaces;nextToken}leterror_of_jsonnamejson=matchnamewith|"DescribeSlackWorkspacesException"->`DescribeSlackWorkspacesException(DescribeSlackWorkspacesException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DescribeSlackWorkspacesException"->`DescribeSlackWorkspacesException(DescribeSlackWorkspacesException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DescribeSlackWorkspacesExceptione->`Assoc[("error",(`String"DescribeSlackWorkspacesException"));("details",(DescribeSlackWorkspacesException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("SlackWorkspaces",(Option.mapx.slackWorkspaces~f:SlackWorkspacesList.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletslackWorkspaces=(Option.map~f:SlackWorkspacesList.of_xml)(Xml.childxml_arg0"SlackWorkspaces")inmake?nextToken?slackWorkspaces()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletslackWorkspaces=field_mapjson__"SlackWorkspaces"SlackWorkspacesList.of_jsoninmake?nextToken?slackWorkspaces()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"List all authorized Slack workspaces connected to the AWS Account onboarded with AWS Chatbot."]moduleDescribeSlackWorkspacesRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}letmake?maxResults=fun?nextToken->fun()->{maxResults;nextToken}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"List all authorized Slack workspaces connected to the AWS Account onboarded with AWS Chatbot."]moduleDescribeSlackUserIdentitiesResult=structtypenonrect={slackUserIdentities:SlackUserIdentitiesList.toption[@ocaml.doc"A list of Slack User Identities."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."]}typenonrecerror=[`DescribeSlackUserIdentitiesExceptionofDescribeSlackUserIdentitiesException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?slackUserIdentities=fun?nextToken->fun()->{slackUserIdentities;nextToken}leterror_of_jsonnamejson=matchnamewith|"DescribeSlackUserIdentitiesException"->`DescribeSlackUserIdentitiesException(DescribeSlackUserIdentitiesException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DescribeSlackUserIdentitiesException"->`DescribeSlackUserIdentitiesException(DescribeSlackUserIdentitiesException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DescribeSlackUserIdentitiesExceptione->`Assoc[("error",(`String"DescribeSlackUserIdentitiesException"));("details",(DescribeSlackUserIdentitiesException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("SlackUserIdentities",(Option.mapx.slackUserIdentities~f:SlackUserIdentitiesList.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletslackUserIdentities=(Option.map~f:SlackUserIdentitiesList.of_xml)(Xml.childxml_arg0"SlackUserIdentities")inmake?nextToken?slackUserIdentities()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletslackUserIdentities=field_mapjson__"SlackUserIdentities"SlackUserIdentitiesList.of_jsoninmake?nextToken?slackUserIdentities()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all Slack user identities with a mapped role."]moduleDescribeSlackUserIdentitiesRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"The Amazon Resource Name (ARN) of the SlackChannelConfiguration associated with the user identities to describe."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."]}letmake?chatConfigurationArn=fun?nextToken->fun?maxResults->fun()->{chatConfigurationArn;nextToken;maxResults}letto_valuex=structure_to_value[("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inmake?maxResults?nextToken?chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake?maxResults?nextToken?chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all Slack user identities with a mapped role."]moduleDescribeSlackChannelConfigurationsResult=structtypenonrect={nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];slackChannelConfigurations:SlackChannelConfigurationList.toption[@ocaml.doc"A list of Slack channel configurations."]}typenonrecerror=[`DescribeSlackChannelConfigurationsExceptionofDescribeSlackChannelConfigurationsException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?slackChannelConfigurations->fun()->{nextToken;slackChannelConfigurations}leterror_of_jsonnamejson=matchnamewith|"DescribeSlackChannelConfigurationsException"->`DescribeSlackChannelConfigurationsException(DescribeSlackChannelConfigurationsException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DescribeSlackChannelConfigurationsException"->`DescribeSlackChannelConfigurationsException(DescribeSlackChannelConfigurationsException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DescribeSlackChannelConfigurationsExceptione->`Assoc[("error",(`String"DescribeSlackChannelConfigurationsException"));("details",(DescribeSlackChannelConfigurationsException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("SlackChannelConfigurations",(Option.mapx.slackChannelConfigurations~f:SlackChannelConfigurationList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letslackChannelConfigurations=(Option.map~f:SlackChannelConfigurationList.of_xml)(Xml.childxml_arg0"SlackChannelConfigurations")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inmake?slackChannelConfigurations?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letslackChannelConfigurations=field_mapjson__"SlackChannelConfigurations"SlackChannelConfigurationList.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninmake?slackChannelConfigurations?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists Slack channel configurations optionally filtered by ChatConfigurationArn"]moduleDescribeSlackChannelConfigurationsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"An optional Amazon Resource Name (ARN) of a SlackChannelConfiguration to describe."]}letmake?maxResults=fun?nextToken->fun?chatConfigurationArn->fun()->{maxResults;nextToken;chatConfigurationArn}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?chatConfigurationArn?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?chatConfigurationArn?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists Slack channel configurations optionally filtered by ChatConfigurationArn"]moduleDescribeChimeWebhookConfigurationsResult=structtypenonrect={nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];webhookConfigurations:ChimeWebhookConfigurationList.toption[@ocaml.doc"A list of Amazon Chime webhooks associated with the account."]}typenonrecerror=[`DescribeChimeWebhookConfigurationsExceptionofDescribeChimeWebhookConfigurationsException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`Unknown_operation_errorof(string*stringoption)]letmake?nextToken=fun?webhookConfigurations->fun()->{nextToken;webhookConfigurations}leterror_of_jsonnamejson=matchnamewith|"DescribeChimeWebhookConfigurationsException"->`DescribeChimeWebhookConfigurationsException(DescribeChimeWebhookConfigurationsException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DescribeChimeWebhookConfigurationsException"->`DescribeChimeWebhookConfigurationsException(DescribeChimeWebhookConfigurationsException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DescribeChimeWebhookConfigurationsExceptione->`Assoc[("error",(`String"DescribeChimeWebhookConfigurationsException"));("details",(DescribeChimeWebhookConfigurationsException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("WebhookConfigurations",(Option.mapx.webhookConfigurations~f:ChimeWebhookConfigurationList.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhookConfigurations=(Option.map~f:ChimeWebhookConfigurationList.of_xml)(Xml.childxml_arg0"WebhookConfigurations")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inmake?webhookConfigurations?nextToken()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhookConfigurations=field_mapjson__"WebhookConfigurations"ChimeWebhookConfigurationList.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninmake?webhookConfigurations?nextToken()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists Amazon Chime webhook configurations optionally filtered by ChatConfigurationArn"]moduleDescribeChimeWebhookConfigurationsRequest=structtypenonrect={maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved."];nextToken:PaginationToken.toption[@ocaml.doc"An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults."];chatConfigurationArn:ChatConfigurationArn.toption[@ocaml.doc"An optional Amazon Resource Name (ARN) of a ChimeWebhookConfiguration to describe."]}letmake?maxResults=fun?nextToken->fun?chatConfigurationArn->fun()->{maxResults;nextToken;chatConfigurationArn}letto_valuex=structure_to_value[("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:PaginationToken.to_value));("ChatConfigurationArn",(Option.mapx.chatConfigurationArn~f:ChatConfigurationArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=(Option.map~f:ChatConfigurationArn.of_xml)(Xml.childxml_arg0"ChatConfigurationArn")inletnextToken=(Option.map~f:PaginationToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inmake?chatConfigurationArn?nextToken?maxResults()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_mapjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninletnextToken=field_mapjson__"NextToken"PaginationToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninmake?chatConfigurationArn?nextToken?maxResults()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists Amazon Chime webhook configurations optionally filtered by ChatConfigurationArn"]moduleDeleteTeamsConfiguredTeamResult=structtypenonrect=unittypenonrecerror=[`DeleteTeamsConfiguredTeamExceptionofDeleteTeamsConfiguredTeamException.t|`InvalidParameterExceptionofInvalidParameterException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteTeamsConfiguredTeamException"->`DeleteTeamsConfiguredTeamException(DeleteTeamsConfiguredTeamException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteTeamsConfiguredTeamException"->`DeleteTeamsConfiguredTeamException(DeleteTeamsConfiguredTeamException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteTeamsConfiguredTeamExceptione->`Assoc[("error",(`String"DeleteTeamsConfiguredTeamException"));("details",(DeleteTeamsConfiguredTeamException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes the Microsoft Teams team authorization allowing for channels to be configured in that Microsoft Teams team. Note that the Microsoft Teams team must have no channels configured to remove it."]moduleDeleteTeamsConfiguredTeamRequest=structtypenonrect={teamId:UUID.t[@ocaml.doc"The ID of the Microsoft Teams team authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."]}letcontext_="DeleteTeamsConfiguredTeamRequest"letmake~teamId=fun()->{teamId}letto_valuex=structure_to_value[("TeamId",(Some(UUID.to_valuex.teamId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letteamId=UUID.of_xml(Xml.child_exn~context:context_xml_arg0"TeamId")inmake~teamId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letteamId=field_map_exnjson__"TeamId"UUID.of_jsoninmake~teamId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes the Microsoft Teams team authorization allowing for channels to be configured in that Microsoft Teams team. Note that the Microsoft Teams team must have no channels configured to remove it."]moduleDeleteTeamsChannelConfigurationResult=structtypenonrect=unittypenonrecerror=[`DeleteTeamsChannelConfigurationExceptionofDeleteTeamsChannelConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteTeamsChannelConfigurationException"->`DeleteTeamsChannelConfigurationException(DeleteTeamsChannelConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteTeamsChannelConfigurationException"->`DeleteTeamsChannelConfigurationException(DeleteTeamsChannelConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteTeamsChannelConfigurationExceptione->`Assoc[("error",(`String"DeleteTeamsChannelConfigurationException"));("details",(DeleteTeamsChannelConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Microsoft Teams channel configuration for AWS Chatbot"]moduleDeleteTeamsChannelConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the MicrosoftTeamsChannelConfiguration associated with the user identity to delete."]}letcontext_="DeleteTeamsChannelConfigurationRequest"letmake~chatConfigurationArn=fun()->{chatConfigurationArn}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Microsoft Teams channel configuration for AWS Chatbot"]moduleDeleteSlackWorkspaceAuthorizationResult=structtypenonrect=unittypenonrecerror=[`DeleteSlackWorkspaceAuthorizationFaultofDeleteSlackWorkspaceAuthorizationFault.t|`InvalidParameterExceptionofInvalidParameterException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteSlackWorkspaceAuthorizationFault"->`DeleteSlackWorkspaceAuthorizationFault(DeleteSlackWorkspaceAuthorizationFault.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteSlackWorkspaceAuthorizationFault"->`DeleteSlackWorkspaceAuthorizationFault(DeleteSlackWorkspaceAuthorizationFault.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteSlackWorkspaceAuthorizationFaulte->`Assoc[("error",(`String"DeleteSlackWorkspaceAuthorizationFault"));("details",(DeleteSlackWorkspaceAuthorizationFault.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes the Slack workspace authorization that allows channels to be configured in that workspace. This requires all configured channels in the workspace to be deleted."]moduleDeleteSlackWorkspaceAuthorizationRequest=structtypenonrect={slackTeamId:SlackTeamId.t[@ocaml.doc"The ID of the Slack workspace authorized with AWS Chatbot."]}letcontext_="DeleteSlackWorkspaceAuthorizationRequest"letmake~slackTeamId=fun()->{slackTeamId}letto_valuex=structure_to_value[("SlackTeamId",(Some(SlackTeamId.to_valuex.slackTeamId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letslackTeamId=SlackTeamId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackTeamId")inmake~slackTeamId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letslackTeamId=field_map_exnjson__"SlackTeamId"SlackTeamId.of_jsoninmake~slackTeamId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes the Slack workspace authorization that allows channels to be configured in that workspace. This requires all configured channels in the workspace to be deleted."]moduleDeleteSlackUserIdentityResult=structtypenonrect=unittypenonrecerror=[`DeleteSlackUserIdentityExceptionofDeleteSlackUserIdentityException.t|`InvalidParameterExceptionofInvalidParameterException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteSlackUserIdentityException"->`DeleteSlackUserIdentityException(DeleteSlackUserIdentityException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteSlackUserIdentityException"->`DeleteSlackUserIdentityException(DeleteSlackUserIdentityException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteSlackUserIdentityExceptione->`Assoc[("error",(`String"DeleteSlackUserIdentityException"));("details",(DeleteSlackUserIdentityException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a user level permission for a Slack channel configuration."]moduleDeleteSlackUserIdentityRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The ARN of the SlackChannelConfiguration associated with the user identity to delete."];slackTeamId:SlackTeamId.t[@ocaml.doc"The ID of the Slack workspace authorized with AWS Chatbot."];slackUserId:SlackUserId.t[@ocaml.doc"The ID of the user in Slack"]}letcontext_="DeleteSlackUserIdentityRequest"letmake~chatConfigurationArn=fun~slackTeamId->fun~slackUserId->fun()->{chatConfigurationArn;slackTeamId;slackUserId}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)));("SlackTeamId",(Some(SlackTeamId.to_valuex.slackTeamId)));("SlackUserId",(Some(SlackUserId.to_valuex.slackUserId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letslackUserId=SlackUserId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackUserId")inletslackTeamId=SlackTeamId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackTeamId")inletchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~slackUserId~slackTeamId~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letslackUserId=field_map_exnjson__"SlackUserId"SlackUserId.of_jsoninletslackTeamId=field_map_exnjson__"SlackTeamId"SlackTeamId.of_jsoninletchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~slackUserId~slackTeamId~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a user level permission for a Slack channel configuration."]moduleDeleteSlackChannelConfigurationResult=structtypenonrect=unittypenonrecerror=[`DeleteSlackChannelConfigurationExceptionofDeleteSlackChannelConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteSlackChannelConfigurationException"->`DeleteSlackChannelConfigurationException(DeleteSlackChannelConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteSlackChannelConfigurationException"->`DeleteSlackChannelConfigurationException(DeleteSlackChannelConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteSlackChannelConfigurationExceptione->`Assoc[("error",(`String"DeleteSlackChannelConfigurationException"));("details",(DeleteSlackChannelConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Slack channel configuration for AWS Chatbot"]moduleDeleteSlackChannelConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the SlackChannelConfiguration to delete."]}letcontext_="DeleteSlackChannelConfigurationRequest"letmake~chatConfigurationArn=fun()->{chatConfigurationArn}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Slack channel configuration for AWS Chatbot"]moduleDeleteMicrosoftTeamsUserIdentityResult=structtypenonrect=unittypenonrecerror=[`DeleteMicrosoftTeamsUserIdentityExceptionofDeleteMicrosoftTeamsUserIdentityException.t|`InvalidParameterExceptionofInvalidParameterException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteMicrosoftTeamsUserIdentityException"->`DeleteMicrosoftTeamsUserIdentityException(DeleteMicrosoftTeamsUserIdentityException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteMicrosoftTeamsUserIdentityException"->`DeleteMicrosoftTeamsUserIdentityException(DeleteMicrosoftTeamsUserIdentityException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteMicrosoftTeamsUserIdentityExceptione->`Assoc[("error",(`String"DeleteMicrosoftTeamsUserIdentityException"));("details",(DeleteMicrosoftTeamsUserIdentityException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Identifes a user level permission for a channel configuration."]moduleDeleteMicrosoftTeamsUserIdentityRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The ARN of the MicrosoftTeamsChannelConfiguration associated with the user identity to delete."];userId:UUID.t[@ocaml.doc"The Microsoft Teams user ID."]}letcontext_="DeleteMicrosoftTeamsUserIdentityRequest"letmake~chatConfigurationArn=fun~userId->fun()->{chatConfigurationArn;userId}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)));("UserId",(Some(UUID.to_valuex.userId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserId=UUID.of_xml(Xml.child_exn~context:context_xml_arg0"UserId")inletchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~userId~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserId=field_map_exnjson__"UserId"UUID.of_jsoninletchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~userId~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Identifes a user level permission for a channel configuration."]moduleDeleteCustomActionResult=structtypenonrect=unittypenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a custom action."]moduleDeleteCustomActionRequest=structtypenonrect={customActionArn:CustomActionArn.t[@ocaml.doc"The fully defined ARN of the custom action."]}letcontext_="DeleteCustomActionRequest"letmake~customActionArn=fun()->{customActionArn}letto_valuex=structure_to_value[("CustomActionArn",(Some(CustomActionArn.to_valuex.customActionArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomActionArn=CustomActionArn.of_xml(Xml.child_exn~context:context_xml_arg0"CustomActionArn")inmake~customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomActionArn=field_map_exnjson__"CustomActionArn"CustomActionArn.of_jsoninmake~customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a custom action."]moduleDeleteChimeWebhookConfigurationResult=structtypenonrect=unittypenonrecerror=[`DeleteChimeWebhookConfigurationExceptionofDeleteChimeWebhookConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"DeleteChimeWebhookConfigurationException"->`DeleteChimeWebhookConfigurationException(DeleteChimeWebhookConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"DeleteChimeWebhookConfigurationException"->`DeleteChimeWebhookConfigurationException(DeleteChimeWebhookConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`DeleteChimeWebhookConfigurationExceptione->`Assoc[("error",(`String"DeleteChimeWebhookConfigurationException"));("details",(DeleteChimeWebhookConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Amazon Chime webhook configuration for AWS Chatbot."]moduleDeleteChimeWebhookConfigurationRequest=structtypenonrect={chatConfigurationArn:ChatConfigurationArn.t[@ocaml.doc"The Amazon Resource Name (ARN) of the ChimeWebhookConfiguration to delete."]}letcontext_="DeleteChimeWebhookConfigurationRequest"letmake~chatConfigurationArn=fun()->{chatConfigurationArn}letto_valuex=structure_to_value[("ChatConfigurationArn",(Some(ChatConfigurationArn.to_valuex.chatConfigurationArn)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfigurationArn=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfigurationArn")inmake~chatConfigurationArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfigurationArn=field_map_exnjson__"ChatConfigurationArn"ChatConfigurationArn.of_jsoninmake~chatConfigurationArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a Amazon Chime webhook configuration for AWS Chatbot."]moduleCreateTeamsChannelConfigurationResult=structtypenonrect={channelConfiguration:TeamsChannelConfiguration.toption[@ocaml.doc"The configuration for a Microsoft Teams channel configured with AWS Chatbot."]}typenonrecerror=[`ConflictExceptionofConflictException.t|`CreateTeamsChannelConfigurationExceptionofCreateTeamsChannelConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`LimitExceededExceptionofLimitExceededException.t|`Unknown_operation_errorof(string*stringoption)]letmake?channelConfiguration=fun()->{channelConfiguration}leterror_of_jsonnamejson=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"CreateTeamsChannelConfigurationException"->`CreateTeamsChannelConfigurationException(CreateTeamsChannelConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"CreateTeamsChannelConfigurationException"->`CreateTeamsChannelConfigurationException(CreateTeamsChannelConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`CreateTeamsChannelConfigurationExceptione->`Assoc[("error",(`String"CreateTeamsChannelConfigurationException"));("details",(CreateTeamsChannelConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ChannelConfiguration",(Option.mapx.channelConfiguration~f:TeamsChannelConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchannelConfiguration=(Option.map~f:TeamsChannelConfiguration.of_xml)(Xml.childxml_arg0"ChannelConfiguration")inmake?channelConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchannelConfiguration=field_mapjson__"ChannelConfiguration"TeamsChannelConfiguration.of_jsoninmake?channelConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot configuration for Microsoft Teams."]moduleCreateTeamsChannelConfigurationRequest=structtypenonrect={channelId:TeamsChannelId.t[@ocaml.doc"The ID of the Microsoft Teams channel."];channelName:TeamsChannelName.toption[@ocaml.doc"The name of the Microsoft Teams channel."];teamId:UUID.t[@ocaml.doc"The ID of the Microsoft Teams authorized with AWS Chatbot. To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more information, see Step 1: Configure a Microsoft Teams client in the AWS Chatbot Administrator Guide."];teamName:TeamName.toption[@ocaml.doc"The name of the Microsoft Teams Team."];tenantId:UUID.t[@ocaml.doc"The ID of the Microsoft Teams tenant."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.t[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];configurationName:ConfigurationName.t[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."]}letcontext_="CreateTeamsChannelConfigurationRequest"letmake?channelName=fun?teamName->fun?snsTopicArns->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun?tags->fun~channelId->fun~teamId->fun~tenantId->fun~iamRoleArn->fun~configurationName->fun()->{channelName;teamName;snsTopicArns;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;tags;channelId;teamId;tenantId;iamRoleArn;configurationName}letto_valuex=structure_to_value[("ChannelId",(Some(TeamsChannelId.to_valuex.channelId)));("ChannelName",(Option.mapx.channelName~f:TeamsChannelName.to_value));("TeamId",(Some(UUID.to_valuex.teamId)));("TeamName",(Option.mapx.teamName~f:TeamName.to_value));("TenantId",(Some(UUID.to_valuex.tenantId)));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("IamRoleArn",(Some(Arn.to_valuex.iamRoleArn)));("ConfigurationName",(Some(ConfigurationName.to_valuex.configurationName)));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=ConfigurationName.of_xml(Xml.child_exn~context:context_xml_arg0"ConfigurationName")inletiamRoleArn=Arn.of_xml(Xml.child_exn~context:context_xml_arg0"IamRoleArn")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inlettenantId=UUID.of_xml(Xml.child_exn~context:context_xml_arg0"TenantId")inletteamName=(Option.map~f:TeamName.of_xml)(Xml.childxml_arg0"TeamName")inletteamId=UUID.of_xml(Xml.child_exn~context:context_xml_arg0"TeamId")inletchannelName=(Option.map~f:TeamsChannelName.of_xml)(Xml.childxml_arg0"ChannelName")inletchannelId=TeamsChannelId.of_xml(Xml.child_exn~context:context_xml_arg0"ChannelId")inmake?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel~configurationName~iamRoleArn?snsTopicArns~tenantId?teamName~teamId?channelName~channelId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_map_exnjson__"ConfigurationName"ConfigurationName.of_jsoninletiamRoleArn=field_map_exnjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninlettenantId=field_map_exnjson__"TenantId"UUID.of_jsoninletteamName=field_mapjson__"TeamName"TeamName.of_jsoninletteamId=field_map_exnjson__"TeamId"UUID.of_jsoninletchannelName=field_mapjson__"ChannelName"TeamsChannelName.of_jsoninletchannelId=field_map_exnjson__"ChannelId"TeamsChannelId.of_jsoninmake?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel~configurationName~iamRoleArn?snsTopicArns~tenantId?teamName~teamId?channelName~channelId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot configuration for Microsoft Teams."]moduleCreateSlackChannelConfigurationResult=structtypenonrect={channelConfiguration:SlackChannelConfiguration.toption[@ocaml.doc"The configuration for a Slack channel configured with AWS Chatbot."]}typenonrecerror=[`ConflictExceptionofConflictException.t|`CreateSlackChannelConfigurationExceptionofCreateSlackChannelConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`LimitExceededExceptionofLimitExceededException.t|`Unknown_operation_errorof(string*stringoption)]letmake?channelConfiguration=fun()->{channelConfiguration}leterror_of_jsonnamejson=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"CreateSlackChannelConfigurationException"->`CreateSlackChannelConfigurationException(CreateSlackChannelConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"CreateSlackChannelConfigurationException"->`CreateSlackChannelConfigurationException(CreateSlackChannelConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`CreateSlackChannelConfigurationExceptione->`Assoc[("error",(`String"CreateSlackChannelConfigurationException"));("details",(CreateSlackChannelConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("ChannelConfiguration",(Option.mapx.channelConfiguration~f:SlackChannelConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchannelConfiguration=(Option.map~f:SlackChannelConfiguration.of_xml)(Xml.childxml_arg0"ChannelConfiguration")inmake?channelConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchannelConfiguration=field_mapjson__"ChannelConfiguration"SlackChannelConfiguration.of_jsoninmake?channelConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot confugration for Slack."]moduleCreateSlackChannelConfigurationRequest=structtypenonrect={slackTeamId:SlackTeamId.t[@ocaml.doc"The ID of the Slack workspace authorized with AWS Chatbot."];slackChannelId:SlackChannelId.t[@ocaml.doc"The ID of the Slack channel. To get this ID, open Slack, right click on the channel name in the left pane, then choose Copy Link. The channel ID is the 9-character string at the end of the URL. For example, ABCBBLZZZ."];slackChannelName:SlackChannelDisplayName.toption[@ocaml.doc"The name of the Slack channel."];snsTopicArns:SnsTopicArnList.toption[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.t[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];configurationName:ConfigurationName.t[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];guardrailPolicyArns:GuardrailPolicyArnList.toption[@ocaml.doc"The list of IAM policy ARNs that are applied as channel guardrails. The AWS managed AdministratorAccess policy is applied by default if this is not set."];userAuthorizationRequired:BooleanAccountPreference.toption[@ocaml.doc"Enables use of a user role requirement in your chat configuration."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."]}letcontext_="CreateSlackChannelConfigurationRequest"letmake?slackChannelName=fun?snsTopicArns->fun?loggingLevel->fun?guardrailPolicyArns->fun?userAuthorizationRequired->fun?tags->fun~slackTeamId->fun~slackChannelId->fun~iamRoleArn->fun~configurationName->fun()->{slackChannelName;snsTopicArns;loggingLevel;guardrailPolicyArns;userAuthorizationRequired;tags;slackTeamId;slackChannelId;iamRoleArn;configurationName}letto_valuex=structure_to_value[("SlackTeamId",(Some(SlackTeamId.to_valuex.slackTeamId)));("SlackChannelId",(Some(SlackChannelId.to_valuex.slackChannelId)));("SlackChannelName",(Option.mapx.slackChannelName~f:SlackChannelDisplayName.to_value));("SnsTopicArns",(Option.mapx.snsTopicArns~f:SnsTopicArnList.to_value));("IamRoleArn",(Some(Arn.to_valuex.iamRoleArn)));("ConfigurationName",(Some(ConfigurationName.to_valuex.configurationName)));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("GuardrailPolicyArns",(Option.mapx.guardrailPolicyArns~f:GuardrailPolicyArnList.to_value));("UserAuthorizationRequired",(Option.mapx.userAuthorizationRequired~f:BooleanAccountPreference.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletuserAuthorizationRequired=(Option.map~f:BooleanAccountPreference.of_xml)(Xml.childxml_arg0"UserAuthorizationRequired")inletguardrailPolicyArns=(Option.map~f:GuardrailPolicyArnList.of_xml)(Xml.childxml_arg0"GuardrailPolicyArns")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=ConfigurationName.of_xml(Xml.child_exn~context:context_xml_arg0"ConfigurationName")inletiamRoleArn=Arn.of_xml(Xml.child_exn~context:context_xml_arg0"IamRoleArn")inletsnsTopicArns=(Option.map~f:SnsTopicArnList.of_xml)(Xml.childxml_arg0"SnsTopicArns")inletslackChannelName=(Option.map~f:SlackChannelDisplayName.of_xml)(Xml.childxml_arg0"SlackChannelName")inletslackChannelId=SlackChannelId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackChannelId")inletslackTeamId=SlackTeamId.of_xml(Xml.child_exn~context:context_xml_arg0"SlackTeamId")inmake?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel~configurationName~iamRoleArn?snsTopicArns?slackChannelName~slackChannelId~slackTeamId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninletuserAuthorizationRequired=field_mapjson__"UserAuthorizationRequired"BooleanAccountPreference.of_jsoninletguardrailPolicyArns=field_mapjson__"GuardrailPolicyArns"GuardrailPolicyArnList.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_map_exnjson__"ConfigurationName"ConfigurationName.of_jsoninletiamRoleArn=field_map_exnjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_mapjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletslackChannelName=field_mapjson__"SlackChannelName"SlackChannelDisplayName.of_jsoninletslackChannelId=field_map_exnjson__"SlackChannelId"SlackChannelId.of_jsoninletslackTeamId=field_map_exnjson__"SlackTeamId"SlackTeamId.of_jsoninmake?tags?userAuthorizationRequired?guardrailPolicyArns?loggingLevel~configurationName~iamRoleArn?snsTopicArns?slackChannelName~slackChannelId~slackTeamId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot confugration for Slack."]moduleCreateCustomActionResult=structtypenonrect={customActionArn:CustomActionArn.toption[@ocaml.doc"The fully defined ARN of the custom action."]}typenonrecerror=[`ConflictExceptionofConflictException.t|`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`LimitExceededExceptionofLimitExceededException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake?customActionArn=fun()->{customActionArn}leterror_of_jsonnamejson=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("CustomActionArn",(Option.mapx.customActionArn~f:CustomActionArn.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letcustomActionArn=(Option.map~f:CustomActionArn.of_xml)(Xml.childxml_arg0"CustomActionArn")inmake?customActionArn()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letcustomActionArn=field_mapjson__"CustomActionArn"CustomActionArn.of_jsoninmake?customActionArn()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a custom action that can be invoked as an alias or as a button on a notification."]moduleCreateCustomActionRequest=structtypenonrect={definition:CustomActionDefinition.t[@ocaml.doc"The definition of the command to run when invoked as an alias or as an action button."];aliasName:CustomActionAliasName.toption[@ocaml.doc"The name used to invoke this action in a chat channel. For example, \\@aws run my-alias."];attachments:CustomActionAttachmentList.toption[@ocaml.doc"Defines when this custom action button should be attached to a notification."];tags:TagList.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."];clientToken:ClientToken.toption[@ocaml.doc"A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully, subsequent retries with the same client token returns the result from the original successful request. If you do not specify a client token, one is automatically generated by the SDK."];actionName:CustomActionName.t[@ocaml.doc"The name of the custom action. This name is included in the Amazon Resource Name (ARN)."]}letcontext_="CreateCustomActionRequest"letmake?aliasName=fun?attachments->fun?tags->fun?clientToken->fun~definition->fun~actionName->fun()->{aliasName;attachments;tags;clientToken;definition;actionName}letto_valuex=structure_to_value[("Definition",(Some(CustomActionDefinition.to_valuex.definition)));("AliasName",(Option.mapx.aliasName~f:CustomActionAliasName.to_value));("Attachments",(Option.mapx.attachments~f:CustomActionAttachmentList.to_value));("Tags",(Option.mapx.tags~f:TagList.to_value));("ClientToken",(Option.mapx.clientToken~f:ClientToken.to_value));("ActionName",(Some(CustomActionName.to_valuex.actionName)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letactionName=CustomActionName.of_xml(Xml.child_exn~context:context_xml_arg0"ActionName")inletclientToken=(Option.map~f:ClientToken.of_xml)(Xml.childxml_arg0"ClientToken")inlettags=(Option.map~f:TagList.of_xml)(Xml.childxml_arg0"Tags")inletattachments=(Option.map~f:CustomActionAttachmentList.of_xml)(Xml.childxml_arg0"Attachments")inletaliasName=(Option.map~f:CustomActionAliasName.of_xml)(Xml.childxml_arg0"AliasName")inletdefinition=CustomActionDefinition.of_xml(Xml.child_exn~context:context_xml_arg0"Definition")inmake~actionName?clientToken?tags?attachments?aliasName~definition()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letactionName=field_map_exnjson__"ActionName"CustomActionName.of_jsoninletclientToken=field_mapjson__"ClientToken"ClientToken.of_jsoninlettags=field_mapjson__"Tags"TagList.of_jsoninletattachments=field_mapjson__"Attachments"CustomActionAttachmentList.of_jsoninletaliasName=field_mapjson__"AliasName"CustomActionAliasName.of_jsoninletdefinition=field_map_exnjson__"Definition"CustomActionDefinition.of_jsoninmake~actionName?clientToken?tags?attachments?aliasName~definition()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a custom action that can be invoked as an alias or as a button on a notification."]moduleCreateChimeWebhookConfigurationResult=structtypenonrect={webhookConfiguration:ChimeWebhookConfiguration.toption[@ocaml.doc"An Amazon Chime webhook configuration."]}typenonrecerror=[`ConflictExceptionofConflictException.t|`CreateChimeWebhookConfigurationExceptionofCreateChimeWebhookConfigurationException.t|`InvalidParameterExceptionofInvalidParameterException.t|`InvalidRequestExceptionofInvalidRequestException.t|`LimitExceededExceptionofLimitExceededException.t|`Unknown_operation_errorof(string*stringoption)]letmake?webhookConfiguration=fun()->{webhookConfiguration}leterror_of_jsonnamejson=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"CreateChimeWebhookConfigurationException"->`CreateChimeWebhookConfigurationException(CreateChimeWebhookConfigurationException.of_jsonjson)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"CreateChimeWebhookConfigurationException"->`CreateChimeWebhookConfigurationException(CreateChimeWebhookConfigurationException.of_xmlxml)|"InvalidParameterException"->`InvalidParameterException(InvalidParameterException.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"LimitExceededException"->`LimitExceededException(LimitExceededException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`CreateChimeWebhookConfigurationExceptione->`Assoc[("error",(`String"CreateChimeWebhookConfigurationException"));("details",(CreateChimeWebhookConfigurationException.to_jsone))]|`InvalidParameterExceptione->`Assoc[("error",(`String"InvalidParameterException"));("details",(InvalidParameterException.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`LimitExceededExceptione->`Assoc[("error",(`String"LimitExceededException"));("details",(LimitExceededException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("WebhookConfiguration",(Option.mapx.webhookConfiguration~f:ChimeWebhookConfiguration.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letwebhookConfiguration=(Option.map~f:ChimeWebhookConfiguration.of_xml)(Xml.childxml_arg0"WebhookConfiguration")inmake?webhookConfiguration()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letwebhookConfiguration=field_mapjson__"WebhookConfiguration"ChimeWebhookConfiguration.of_jsoninmake?webhookConfiguration()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot configuration for Amazon Chime."]moduleCreateChimeWebhookConfigurationRequest=structtypenonrect={webhookDescription:ChimeWebhookDescription.t[@ocaml.doc"A description of the webhook. We recommend using the convention RoomName/WebhookName. For more information, see Tutorial: Get started with Amazon Chime in the AWS Chatbot Administrator Guide."];webhookUrl:ChimeWebhookUrl.t[@ocaml.doc"The URL for the Amazon Chime webhook."];snsTopicArns:SnsTopicArnList.t[@ocaml.doc"The Amazon Resource Names (ARNs) of the SNS topics that deliver notifications to AWS Chatbot."];iamRoleArn:Arn.t[@ocaml.doc"A user-defined role that AWS Chatbot assumes. This is not the service-linked role. For more information, see IAM policies for AWS Chatbot in the AWS Chatbot Administrator Guide."];configurationName:ConfigurationName.t[@ocaml.doc"The name of the configuration."];loggingLevel:CustomerCwLogLevel.toption[@ocaml.doc"Logging levels include ERROR, INFO, or NONE."];tags:Tags.toption[@ocaml.doc"A map of tags assigned to a resource. A tag is a string-to-string map of key-value pairs."]}letcontext_="CreateChimeWebhookConfigurationRequest"letmake?loggingLevel=fun?tags->fun~webhookDescription->fun~webhookUrl->fun~snsTopicArns->fun~iamRoleArn->fun~configurationName->fun()->{loggingLevel;tags;webhookDescription;webhookUrl;snsTopicArns;iamRoleArn;configurationName}letto_valuex=structure_to_value[("WebhookDescription",(Some(ChimeWebhookDescription.to_valuex.webhookDescription)));("WebhookUrl",(Some(ChimeWebhookUrl.to_valuex.webhookUrl)));("SnsTopicArns",(Some(SnsTopicArnList.to_valuex.snsTopicArns)));("IamRoleArn",(Some(Arn.to_valuex.iamRoleArn)));("ConfigurationName",(Some(ConfigurationName.to_valuex.configurationName)));("LoggingLevel",(Option.mapx.loggingLevel~f:CustomerCwLogLevel.to_value));("Tags",(Option.mapx.tags~f:Tags.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lettags=(Option.map~f:Tags.of_xml)(Xml.childxml_arg0"Tags")inletloggingLevel=(Option.map~f:CustomerCwLogLevel.of_xml)(Xml.childxml_arg0"LoggingLevel")inletconfigurationName=ConfigurationName.of_xml(Xml.child_exn~context:context_xml_arg0"ConfigurationName")inletiamRoleArn=Arn.of_xml(Xml.child_exn~context:context_xml_arg0"IamRoleArn")inletsnsTopicArns=SnsTopicArnList.of_xml(Xml.child_exn~context:context_xml_arg0"SnsTopicArns")inletwebhookUrl=ChimeWebhookUrl.of_xml(Xml.child_exn~context:context_xml_arg0"WebhookUrl")inletwebhookDescription=ChimeWebhookDescription.of_xml(Xml.child_exn~context:context_xml_arg0"WebhookDescription")inmake?tags?loggingLevel~configurationName~iamRoleArn~snsTopicArns~webhookUrl~webhookDescription()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lettags=field_mapjson__"Tags"Tags.of_jsoninletloggingLevel=field_mapjson__"LoggingLevel"CustomerCwLogLevel.of_jsoninletconfigurationName=field_map_exnjson__"ConfigurationName"ConfigurationName.of_jsoninletiamRoleArn=field_map_exnjson__"IamRoleArn"Arn.of_jsoninletsnsTopicArns=field_map_exnjson__"SnsTopicArns"SnsTopicArnList.of_jsoninletwebhookUrl=field_map_exnjson__"WebhookUrl"ChimeWebhookUrl.of_jsoninletwebhookDescription=field_map_exnjson__"WebhookDescription"ChimeWebhookDescription.of_jsoninmake?tags?loggingLevel~configurationName~iamRoleArn~snsTopicArns~webhookUrl~webhookDescription()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates an AWS Chatbot configuration for Amazon Chime."]moduleAssociateToConfigurationResult=structtypenonrect=unittypenonrecerror=[`InternalServiceErrorofInternalServiceError.t|`InvalidRequestExceptionofInvalidRequestException.t|`UnauthorizedExceptionofUnauthorizedException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_jsonjson)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_jsonjson)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"InternalServiceError"->`InternalServiceError(InternalServiceError.of_xmlxml)|"InvalidRequestException"->`InvalidRequestException(InvalidRequestException.of_xmlxml)|"UnauthorizedException"->`UnauthorizedException(UnauthorizedException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`InternalServiceErrore->`Assoc[("error",(`String"InternalServiceError"));("details",(InternalServiceError.to_jsone))]|`InvalidRequestExceptione->`Assoc[("error",(`String"InvalidRequestException"));("details",(InvalidRequestException.to_jsone))]|`UnauthorizedExceptione->`Assoc[("error",(`String"UnauthorizedException"));("details",(UnauthorizedException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letof_header_and_body=((fun(xs,pipe)->make())[@warning"-27"])letto_value_=`Structure[]letto_queryv=to_queryto_valuevletof_xml_=make()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_json_=make()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Links a resource (for example, a custom action) to a channel configuration."]moduleAssociateToConfigurationRequest=structtypenonrect={resource:ResourceIdentifier.t[@ocaml.doc"The resource Amazon Resource Name (ARN) to link."];chatConfiguration:ChatConfigurationArn.t[@ocaml.doc"The channel configuration to associate with the resource."]}letcontext_="AssociateToConfigurationRequest"letmake~resource=fun~chatConfiguration->fun()->{resource;chatConfiguration}letto_valuex=structure_to_value[("Resource",(Some(ResourceIdentifier.to_valuex.resource)));("ChatConfiguration",(Some(ChatConfigurationArn.to_valuex.chatConfiguration)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letchatConfiguration=ChatConfigurationArn.of_xml(Xml.child_exn~context:context_xml_arg0"ChatConfiguration")inletresource=ResourceIdentifier.of_xml(Xml.child_exn~context:context_xml_arg0"Resource")inmake~chatConfiguration~resource()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letchatConfiguration=field_map_exnjson__"ChatConfiguration"ChatConfigurationArn.of_jsoninletresource=field_map_exnjson__"Resource"ResourceIdentifier.of_jsoninmake~chatConfiguration~resource()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Links a resource (for example, a custom action) to a channel configuration."]