123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538(* 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.identitystoreletapiVersion="2020-06-15"letendpointPrefix="identitystore"letserviceFullName="AWS SSO Identity Store"letsignatureVersion="v4"letprotocol="json"letglobalEndpoint=endpointPrefix^".amazonaws.com"letserviceAbbreviation="IdentityStore"lettargetPrefix="AWSIdentityStore"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[]))])moduleBooleanType=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_valueendmoduleSensitiveStringType=structtypenonrect=stringletcontext_="SensitiveStringType"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\t\\n\\r \194\160\227\128\128]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"SensitiveStringType"jletto_json=simple_to_jsonto_valueendmoduleExternalIdIdentifier=structtypenonrect=stringletcontext_="ExternalIdIdentifier"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:256)>>=(fun()->check_patterni~pattern:"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ExternalIdIdentifier"jletto_json=simple_to_jsonto_valueendmoduleExternalIdIssuer=structtypenonrect=stringletcontext_="ExternalIdIssuer"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:256)>>=(fun()->check_patterni~pattern:"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ExternalIdIssuer"jletto_json=simple_to_jsonto_valueendmoduleAddress=structtypenonrect={streetAddress:SensitiveStringType.toption[@ocaml.doc"The street of the address."];locality:SensitiveStringType.toption[@ocaml.doc"A string of the address locality."];region:SensitiveStringType.toption[@ocaml.doc"The region of the address."];postalCode:SensitiveStringType.toption[@ocaml.doc"The postal code of the address."];country:SensitiveStringType.toption[@ocaml.doc"The country of the address."];formatted:SensitiveStringType.toption[@ocaml.doc"A string containing a formatted version of the address for display."];type_:SensitiveStringType.toption[@ocaml.doc"A string representing the type of address. For example, \"Home.\""];primary:BooleanType.toption[@ocaml.doc"A Boolean value representing whether this is the primary address for the associated resource."]}letmake?streetAddress=fun?locality->fun?region->fun?postalCode->fun?country->fun?formatted->fun?type_->fun?primary->fun()->{streetAddress;locality;region;postalCode;country;formatted;type_;primary}letto_valuex=structure_to_value[("StreetAddress",(Option.mapx.streetAddress~f:SensitiveStringType.to_value));("Locality",(Option.mapx.locality~f:SensitiveStringType.to_value));("Region",(Option.mapx.region~f:SensitiveStringType.to_value));("PostalCode",(Option.mapx.postalCode~f:SensitiveStringType.to_value));("Country",(Option.mapx.country~f:SensitiveStringType.to_value));("Formatted",(Option.mapx.formatted~f:SensitiveStringType.to_value));("Type",(Option.mapx.type_~f:SensitiveStringType.to_value));("Primary",(Option.mapx.primary~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimary=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"Primary")inlettype_=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Type")inletformatted=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Formatted")inletcountry=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Country")inletpostalCode=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"PostalCode")inletregion=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Region")inletlocality=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Locality")inletstreetAddress=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"StreetAddress")inmake?primary?type_?formatted?country?postalCode?region?locality?streetAddress()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimary=field_mapjson__"Primary"BooleanType.of_jsoninlettype_=field_mapjson__"Type"SensitiveStringType.of_jsoninletformatted=field_mapjson__"Formatted"SensitiveStringType.of_jsoninletcountry=field_mapjson__"Country"SensitiveStringType.of_jsoninletpostalCode=field_mapjson__"PostalCode"SensitiveStringType.of_jsoninletregion=field_mapjson__"Region"SensitiveStringType.of_jsoninletlocality=field_mapjson__"Locality"SensitiveStringType.of_jsoninletstreetAddress=field_mapjson__"StreetAddress"SensitiveStringType.of_jsoninmake?primary?type_?formatted?country?postalCode?region?locality?streetAddress()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The address associated with the specified user."]moduleEmail=structtypenonrect={value:SensitiveStringType.toption[@ocaml.doc"A string containing an email address. For example, \"johndoe\\@amazon.com.\""];type_:SensitiveStringType.toption[@ocaml.doc"A string representing the type of address. For example, \"Work.\""];primary:BooleanType.toption[@ocaml.doc"A Boolean value representing whether this is the primary email address for the associated resource."]}letmake?value=fun?type_->fun?primary->fun()->{value;type_;primary}letto_valuex=structure_to_value[("Value",(Option.mapx.value~f:SensitiveStringType.to_value));("Type",(Option.mapx.type_~f:SensitiveStringType.to_value));("Primary",(Option.mapx.primary~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimary=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"Primary")inlettype_=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Type")inletvalue=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Value")inmake?primary?type_?value()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimary=field_mapjson__"Primary"BooleanType.of_jsoninlettype_=field_mapjson__"Type"SensitiveStringType.of_jsoninletvalue=field_mapjson__"Value"SensitiveStringType.of_jsoninmake?primary?type_?value()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The email address associated with the user."]moduleAttributeValue=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"The value of the attribute. This is a Document type. This type is not supported by Java V1, Go V1, and older versions of the CLI."]moduleExtensionName=structtypenonrect=stringletcontext_="ExtensionName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:50)>>=(fun()->check_patterni~pattern:"aws:identitystore:[a-z]{1,20}")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"ExtensionName"jletto_json=simple_to_jsonto_valueendmoduleExternalId=structtypenonrect={issuer:ExternalIdIssuer.t[@ocaml.doc"The issuer for an external identifier."];id:ExternalIdIdentifier.t[@ocaml.doc"The identifier issued to this resource by an external identity provider."]}letcontext_="ExternalId"letmake~issuer=fun~id->fun()->{issuer;id}letto_valuex=structure_to_value[("Issuer",(Some(ExternalIdIssuer.to_valuex.issuer)));("Id",(Some(ExternalIdIdentifier.to_valuex.id)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letid=ExternalIdIdentifier.of_xml(Xml.child_exn~context:context_xml_arg0"Id")inletissuer=ExternalIdIssuer.of_xml(Xml.child_exn~context:context_xml_arg0"Issuer")inmake~id~issuer()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letid=field_map_exnjson__"Id"ExternalIdIdentifier.of_jsoninletissuer=field_map_exnjson__"Issuer"ExternalIdIssuer.of_jsoninmake~id~issuer()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The identifier issued to this resource by an external identity provider."]modulePhoneNumber=structtypenonrect={value:SensitiveStringType.toption[@ocaml.doc"A string containing a phone number. For example, \"8675309\" or \"+1 (800) 123-4567\"."];type_:SensitiveStringType.toption[@ocaml.doc"A string representing the type of a phone number. For example, \"Mobile.\""];primary:BooleanType.toption[@ocaml.doc"A Boolean value representing whether this is the primary phone number for the associated resource."]}letmake?value=fun?type_->fun?primary->fun()->{value;type_;primary}letto_valuex=structure_to_value[("Value",(Option.mapx.value~f:SensitiveStringType.to_value));("Type",(Option.mapx.type_~f:SensitiveStringType.to_value));("Primary",(Option.mapx.primary~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimary=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"Primary")inlettype_=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Type")inletvalue=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Value")inmake?primary?type_?value()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimary=field_mapjson__"Primary"BooleanType.of_jsoninlettype_=field_mapjson__"Type"SensitiveStringType.of_jsoninletvalue=field_mapjson__"Value"SensitiveStringType.of_jsoninmake?primary?type_?value()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The phone number associated with the user."]modulePhoto=structtypenonrect={value:SensitiveStringType.t[@ocaml.doc"The photo data or URL. Supported formats include jpg, jpeg, png, and gif. This field is required for all photo entries."];type_:SensitiveStringType.toption[@ocaml.doc"The type of photo. This field is optional and can be used to categorize different types of photos."];display:SensitiveStringType.toption[@ocaml.doc"A human-readable description of the photo for display purposes. This optional field provides context about the photo."];primary:BooleanType.toption[@ocaml.doc"Specifies whether this is the user's primary photo. Default value is false. Only one photo can be designated as primary per user."]}letcontext_="Photo"letmake?type_=fun?display->fun?primary->fun~value->fun()->{type_;display;primary;value}letto_valuex=structure_to_value[("Value",(Some(SensitiveStringType.to_valuex.value)));("Type",(Option.mapx.type_~f:SensitiveStringType.to_value));("Display",(Option.mapx.display~f:SensitiveStringType.to_value));("Primary",(Option.mapx.primary~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimary=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"Primary")inletdisplay=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Display")inlettype_=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Type")inletvalue=SensitiveStringType.of_xml(Xml.child_exn~context:context_xml_arg0"Value")inmake?primary?display?type_~value()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimary=field_mapjson__"Primary"BooleanType.of_jsoninletdisplay=field_mapjson__"Display"SensitiveStringType.of_jsoninlettype_=field_mapjson__"Type"SensitiveStringType.of_jsoninletvalue=field_map_exnjson__"Value"SensitiveStringType.of_jsoninmake?primary?display?type_~value()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains information about a user's photo. Users can have up to 3 photos, with one designated as primary. Supports common image formats, including jpg, jpeg, png, and gif."]moduleRole=structtypenonrect={value:SensitiveStringType.toption[@ocaml.doc"A string containing a role name. For example, \"Researcher.\""];type_:SensitiveStringType.toption[@ocaml.doc"A string representing the type of role. For example, \"Work.\""];primary:BooleanType.toption[@ocaml.doc"A Boolean value representing whether this is the primary role for the associated resource."]}letmake?value=fun?type_->fun?primary->fun()->{value;type_;primary}letto_valuex=structure_to_value[("Value",(Option.mapx.value~f:SensitiveStringType.to_value));("Type",(Option.mapx.type_~f:SensitiveStringType.to_value));("Primary",(Option.mapx.primary~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letprimary=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"Primary")inlettype_=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Type")inletvalue=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Value")inmake?primary?type_?value()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letprimary=field_mapjson__"Primary"BooleanType.of_jsoninlettype_=field_mapjson__"Type"SensitiveStringType.of_jsoninletvalue=field_mapjson__"Value"SensitiveStringType.of_jsoninmake?primary?type_?value()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The role associated with the user."]moduleResourceId=structtypenonrect=stringletcontext_="ResourceId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:47)>>=(fun()->check_patterni~pattern:"([0-9a-f]{10}-|)[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{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:"ResourceId"jletto_json=simple_to_jsonto_valueendmoduleAttributePath=structtypenonrect=stringletcontext_="AttributePath"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:255)>>=(fun()->check_patterni~pattern:"(?:\\p{L}+:\\p{L}+:\\p{L}+(?:\\.\\p{L}+){0,3}|\\p{L}+(?:\\.\\p{L}+){0,2})")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"AttributePath"jletto_json=simple_to_jsonto_valueendmoduleAddresses=structtypenonrect=Address.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:1)>>=(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:Address.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:Address.of_xml)letof_jsonj=list_of_json~kind:"Addresses"~of_json:Address.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleDateType=structtypenonrect=stringletmakei=iletof_stringx=xletto_valuex=`Timestampxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=string_of_xml~kind:"a timestamp"letof_json=timestamp_of_jsonletto_json=simple_to_jsonto_valueendmoduleEmails=structtypenonrect=Email.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:1)>>=(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:Email.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:Email.of_xml)letof_jsonj=list_of_json~kind:"Emails"~of_json:Email.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleExtensions=structtypenonrect=(ExtensionName.t*AttributeValue.t)listletmakei=letopenResultinok_or_failwith((check_list_maxi~max:10)>>=(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->let(_:string)=vinlet(_:string)=choppedinfailwith"no of_header for complex types ExtensionName AttributeValue"))))letto_valuexs=(xs|>(List.map~f:(fun(x,y)->(ExtensionName.to_valuex)|>(funx->(AttributeValue.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:ExtensionName.of_string~of_json:AttributeValue.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleExternalIds=structtypenonrect=ExternalId.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:10)>>=(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:ExternalId.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:ExternalId.of_xml)letof_jsonj=list_of_json~kind:"ExternalIds"~of_json:ExternalId.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleIdentityStoreId=structtypenonrect=stringletcontext_="IdentityStoreId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:36)>>=(fun()->check_patterni~pattern:"d-[0-9a-f]{10}$|^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-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:"IdentityStoreId"jletto_json=simple_to_jsonto_valueendmoduleName=structtypenonrect={formatted:SensitiveStringType.toption[@ocaml.doc"A string containing a formatted version of the name for display."];familyName:SensitiveStringType.toption[@ocaml.doc"The family name of the user."];givenName:SensitiveStringType.toption[@ocaml.doc"The given name of the user."];middleName:SensitiveStringType.toption[@ocaml.doc"The middle name of the user."];honorificPrefix:SensitiveStringType.toption[@ocaml.doc"The honorific prefix of the user. For example, \"Dr.\""];honorificSuffix:SensitiveStringType.toption[@ocaml.doc"The honorific suffix of the user. For example, \"M.D.\""]}letmake?formatted=fun?familyName->fun?givenName->fun?middleName->fun?honorificPrefix->fun?honorificSuffix->fun()->{formatted;familyName;givenName;middleName;honorificPrefix;honorificSuffix}letto_valuex=structure_to_value[("Formatted",(Option.mapx.formatted~f:SensitiveStringType.to_value));("FamilyName",(Option.mapx.familyName~f:SensitiveStringType.to_value));("GivenName",(Option.mapx.givenName~f:SensitiveStringType.to_value));("MiddleName",(Option.mapx.middleName~f:SensitiveStringType.to_value));("HonorificPrefix",(Option.mapx.honorificPrefix~f:SensitiveStringType.to_value));("HonorificSuffix",(Option.mapx.honorificSuffix~f:SensitiveStringType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=lethonorificSuffix=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"HonorificSuffix")inlethonorificPrefix=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"HonorificPrefix")inletmiddleName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"MiddleName")inletgivenName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"GivenName")inletfamilyName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"FamilyName")inletformatted=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Formatted")inmake?honorificSuffix?honorificPrefix?middleName?givenName?familyName?formatted()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=lethonorificSuffix=field_mapjson__"HonorificSuffix"SensitiveStringType.of_jsoninlethonorificPrefix=field_mapjson__"HonorificPrefix"SensitiveStringType.of_jsoninletmiddleName=field_mapjson__"MiddleName"SensitiveStringType.of_jsoninletgivenName=field_mapjson__"GivenName"SensitiveStringType.of_jsoninletfamilyName=field_mapjson__"FamilyName"SensitiveStringType.of_jsoninletformatted=field_mapjson__"Formatted"SensitiveStringType.of_jsoninmake?honorificSuffix?honorificPrefix?middleName?givenName?familyName?formatted()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The full name of the user."]modulePhoneNumbers=structtypenonrect=PhoneNumber.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:1)>>=(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:PhoneNumber.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:PhoneNumber.of_xml)letof_jsonj=list_of_json~kind:"PhoneNumbers"~of_json:PhoneNumber.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmodulePhotos=structtypenonrect=Photo.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:3)>>=(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:Photo.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:Photo.of_xml)letof_jsonj=list_of_json~kind:"Photos"~of_json:Photo.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleRoles=structtypenonrect=Role.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:1)>>=(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:Role.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:Role.of_xml)letof_jsonj=list_of_json~kind:"Roles"~of_json:Role.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleStringType=structtypenonrect=stringletcontext_="StringType"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:"StringType"jletto_json=simple_to_jsonto_valueendmoduleUserName=structtypenonrect=stringletcontext_="UserName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:128)>>=(fun()->check_patterni~pattern:"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"UserName"jletto_json=simple_to_jsonto_valueendmoduleUserStatus=structtypenonrect=|ENABLED|DISABLED|Non_static_idofstringletmakei=iletto_string=function|ENABLED->"ENABLED"|DISABLED->"DISABLED"|Non_static_ids->sletof_string=function|"ENABLED"->ENABLED|"DISABLED"->DISABLED|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 UserStatus"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"UserStatus"j)letto_json=simple_to_jsonto_valueendmoduleGroupDisplayName=structtypenonrect=stringletcontext_="GroupDisplayName"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:1024)>>=(fun()->check_patterni~pattern:"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\t\\n\\r \194\160]+")));iletof_stringx=xletto_valuex=`Stringxletto_queryv=to_queryto_valuevletto_headerx=xletof_xml=Xml.string_data_exn~context:context_letof_jsonj=string_of_json~kind:"GroupDisplayName"jletto_json=simple_to_jsonto_valueendmoduleMemberId=structtypenonrect={userId:ResourceId.toption[@ocaml.doc"An object containing the identifiers of resources that can be members."]}letmake?userId=fun()->{userId}letto_valuex=structure_to_value[("UserId",(Option.mapx.userId~f:ResourceId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"UserId")inmake?userId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserId=field_mapjson__"UserId"ResourceId.of_jsoninmake?userId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An object containing the identifier of a group member."]moduleAccessDeniedExceptionReason=structtypenonrect=|KMS_ACCESS_DENIED|Non_static_idofstringletmakei=iletto_string=function|KMS_ACCESS_DENIED->"KMS_ACCESS_DENIED"|Non_static_ids->sletof_string=function|"KMS_ACCESS_DENIED"->KMS_ACCESS_DENIED|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 AccessDeniedExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"AccessDeniedExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleExceptionMessage=structtypenonrect=stringletcontext_="ExceptionMessage"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:"ExceptionMessage"jletto_json=simple_to_jsonto_valueendmoduleRequestId=structtypenonrect=stringletcontext_="RequestId"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:36)>>=(fun()->check_patterni~pattern:"[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{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:"RequestId"jletto_json=simple_to_jsonto_valueendmoduleConflictExceptionReason=structtypenonrect=|UNIQUENESS_CONSTRAINT_VIOLATION|CONCURRENT_MODIFICATION|Non_static_idofstringletmakei=iletto_string=function|UNIQUENESS_CONSTRAINT_VIOLATION->"UNIQUENESS_CONSTRAINT_VIOLATION"|CONCURRENT_MODIFICATION->"CONCURRENT_MODIFICATION"|Non_static_ids->sletof_string=function|"UNIQUENESS_CONSTRAINT_VIOLATION"->UNIQUENESS_CONSTRAINT_VIOLATION|"CONCURRENT_MODIFICATION"->CONCURRENT_MODIFICATION|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 ConflictExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ConflictExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleRetryAfterSeconds=structtypenonrect=intletmakei=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 RetryAfterSeconds"xml_arg0)letof_jsonj=Int.of_float(float_of_json~kind:"an integer"j)letto_json=simple_to_jsonto_valueendmoduleResourceNotFoundExceptionReason=structtypenonrect=|KMS_KEY_NOT_FOUND|Non_static_idofstringletmakei=iletto_string=function|KMS_KEY_NOT_FOUND->"KMS_KEY_NOT_FOUND"|Non_static_ids->sletof_string=function|"KMS_KEY_NOT_FOUND"->KMS_KEY_NOT_FOUND|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 ResourceNotFoundExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ResourceNotFoundExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleResourceType=structtypenonrect=|GROUP|USER|IDENTITY_STORE|GROUP_MEMBERSHIP|RESOURCE_POLICY|Non_static_idofstringletmakei=iletto_string=function|GROUP->"GROUP"|USER->"USER"|IDENTITY_STORE->"IDENTITY_STORE"|GROUP_MEMBERSHIP->"GROUP_MEMBERSHIP"|RESOURCE_POLICY->"RESOURCE_POLICY"|Non_static_ids->sletof_string=function|"GROUP"->GROUP|"USER"->USER|"IDENTITY_STORE"->IDENTITY_STORE|"GROUP_MEMBERSHIP"->GROUP_MEMBERSHIP|"RESOURCE_POLICY"->RESOURCE_POLICY|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 ResourceType"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ResourceType"j)letto_json=simple_to_jsonto_valueendmoduleThrottlingExceptionReason=structtypenonrect=|KMS_THROTTLING|Non_static_idofstringletmakei=iletto_string=function|KMS_THROTTLING->"KMS_THROTTLING"|Non_static_ids->sletof_string=function|"KMS_THROTTLING"->KMS_THROTTLING|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 ThrottlingExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ThrottlingExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleValidationExceptionReason=structtypenonrect=|KMS_INVALID_ARN|KMS_INVALID_KEY_USAGE|KMS_INVALID_STATE|KMS_DISABLED|Non_static_idofstringletmakei=iletto_string=function|KMS_INVALID_ARN->"KMS_INVALID_ARN"|KMS_INVALID_KEY_USAGE->"KMS_INVALID_KEY_USAGE"|KMS_INVALID_STATE->"KMS_INVALID_STATE"|KMS_DISABLED->"KMS_DISABLED"|Non_static_ids->sletof_string=function|"KMS_INVALID_ARN"->KMS_INVALID_ARN|"KMS_INVALID_KEY_USAGE"->KMS_INVALID_KEY_USAGE|"KMS_INVALID_STATE"->KMS_INVALID_STATE|"KMS_DISABLED"->KMS_DISABLED|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 ValidationExceptionReason"xml_arg0)letof_jsonj=of_string(string_of_json~kind:"ValidationExceptionReason"j)letto_json=simple_to_jsonto_valueendmoduleAttributeOperation=structtypenonrect={attributePath:AttributePath.t[@ocaml.doc"A string representation of the path to a given attribute or sub-attribute. Supports JMESPath."];attributeValue:AttributeValue.toption[@ocaml.doc"The value of the attribute. This is a Document type. This type is not supported by Java V1, Go V1, and older versions of the CLI."]}letcontext_="AttributeOperation"letmake?attributeValue=fun~attributePath->fun()->{attributeValue;attributePath}letto_valuex=structure_to_value[("AttributePath",(Some(AttributePath.to_valuex.attributePath)));("AttributeValue",(Option.mapx.attributeValue~f:AttributeValue.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letattributeValue=(Option.map~f:AttributeValue.of_xml)(Xml.childxml_arg0"AttributeValue")inletattributePath=AttributePath.of_xml(Xml.child_exn~context:context_xml_arg0"AttributePath")inmake?attributeValue~attributePath()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letattributeValue=field_mapjson__"AttributeValue"AttributeValue.of_jsoninletattributePath=field_map_exnjson__"AttributePath"AttributePath.of_jsoninmake?attributeValue~attributePath()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An operation that applies to the requested group. This operation might add, replace, or remove an attribute."]moduleUser=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.toption[@ocaml.doc"The identifier for a user in the identity store."];userName:UserName.toption[@ocaml.doc"A unique string used to identify the user. The length limit is 128 characters. This value can consist of letters, accented characters, symbols, numbers, and punctuation. This value is specified at the time the user is created and stored as an attribute of the user object in the identity store."];externalIds:ExternalIds.toption[@ocaml.doc"A list of ExternalId objects that contains the identifiers issued to this resource by an external identity provider."];name:Name.toption[@ocaml.doc"An object containing the name of the user."];displayName:SensitiveStringType.toption[@ocaml.doc"A string containing the name of the user that is formatted for display when the user is referenced. For example, \"John Doe.\" Prefix search supports a maximum of 1,000 characters for the string."];nickName:SensitiveStringType.toption[@ocaml.doc"A string containing an alternate name for the user."];profileUrl:SensitiveStringType.toption[@ocaml.doc"A string containing a URL that might be associated with the user."];emails:Emails.toption[@ocaml.doc"A list of Email objects containing email addresses associated with the user."];addresses:Addresses.toption[@ocaml.doc"A list of Address objects containing addresses associated with the user."];phoneNumbers:PhoneNumbers.toption[@ocaml.doc"A list of PhoneNumber objects containing phone numbers associated with the user."];userType:SensitiveStringType.toption[@ocaml.doc"A string indicating the type of user. Possible values are left unspecified. The value can vary based on your specific use case."];title:SensitiveStringType.toption[@ocaml.doc"A string containing the title of the user. Possible values are left unspecified. The value can vary based on your specific use case."];preferredLanguage:SensitiveStringType.toption[@ocaml.doc"A string containing the preferred language of the user. For example, \"American English\" or \"en-us.\""];locale:SensitiveStringType.toption[@ocaml.doc"A string containing the geographical region or location of the user."];timezone:SensitiveStringType.toption[@ocaml.doc"A string containing the time zone of the user."];userStatus:UserStatus.toption[@ocaml.doc"The current status of the user account."];photos:Photos.toption[@ocaml.doc"A list of photos associated with the user. Users can have up to 3 photos with metadata including type, display name, and primary designation."];website:SensitiveStringType.toption[@ocaml.doc"The user's personal website or blog URL. This field stores website information for personal or professional use."];birthdate:SensitiveStringType.toption[@ocaml.doc"The user's birthdate in YYYY-MM-DD format. This field stores personal birthdate information for the user."];roles:Roles.toption[@ocaml.doc"A list of Role objects containing roles associated with the user."];createdAt:DateType.toption[@ocaml.doc"The date and time the user was created."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the user."];updatedAt:DateType.toption[@ocaml.doc"The date and time the user was last updated."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the user."];extensions:Extensions.toption[@ocaml.doc"A map of explicitly requested attribute extensions associated with the user. Not populated if the user has no requested extensions."]}letmake?identityStoreId=fun?userId->fun?userName->fun?externalIds->fun?name->fun?displayName->fun?nickName->fun?profileUrl->fun?emails->fun?addresses->fun?phoneNumbers->fun?userType->fun?title->fun?preferredLanguage->fun?locale->fun?timezone->fun?userStatus->fun?photos->fun?website->fun?birthdate->fun?roles->fun?createdAt->fun?createdBy->fun?updatedAt->fun?updatedBy->fun?extensions->fun()->{identityStoreId;userId;userName;externalIds;name;displayName;nickName;profileUrl;emails;addresses;phoneNumbers;userType;title;preferredLanguage;locale;timezone;userStatus;photos;website;birthdate;roles;createdAt;createdBy;updatedAt;updatedBy;extensions}letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("UserId",(Option.mapx.userId~f:ResourceId.to_value));("UserName",(Option.mapx.userName~f:UserName.to_value));("ExternalIds",(Option.mapx.externalIds~f:ExternalIds.to_value));("Name",(Option.mapx.name~f:Name.to_value));("DisplayName",(Option.mapx.displayName~f:SensitiveStringType.to_value));("NickName",(Option.mapx.nickName~f:SensitiveStringType.to_value));("ProfileUrl",(Option.mapx.profileUrl~f:SensitiveStringType.to_value));("Emails",(Option.mapx.emails~f:Emails.to_value));("Addresses",(Option.mapx.addresses~f:Addresses.to_value));("PhoneNumbers",(Option.mapx.phoneNumbers~f:PhoneNumbers.to_value));("UserType",(Option.mapx.userType~f:SensitiveStringType.to_value));("Title",(Option.mapx.title~f:SensitiveStringType.to_value));("PreferredLanguage",(Option.mapx.preferredLanguage~f:SensitiveStringType.to_value));("Locale",(Option.mapx.locale~f:SensitiveStringType.to_value));("Timezone",(Option.mapx.timezone~f:SensitiveStringType.to_value));("UserStatus",(Option.mapx.userStatus~f:UserStatus.to_value));("Photos",(Option.mapx.photos~f:Photos.to_value));("Website",(Option.mapx.website~f:SensitiveStringType.to_value));("Birthdate",(Option.mapx.birthdate~f:SensitiveStringType.to_value));("Roles",(Option.mapx.roles~f:Roles.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value));("Extensions",(Option.mapx.extensions~f:Extensions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letextensions=(Option.map~f:Extensions.of_xml)(Xml.childxml_arg0"Extensions")inletupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletroles=(Option.map~f:Roles.of_xml)(Xml.childxml_arg0"Roles")inletbirthdate=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Birthdate")inletwebsite=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Website")inletphotos=(Option.map~f:Photos.of_xml)(Xml.childxml_arg0"Photos")inletuserStatus=(Option.map~f:UserStatus.of_xml)(Xml.childxml_arg0"UserStatus")inlettimezone=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Timezone")inletlocale=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Locale")inletpreferredLanguage=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"PreferredLanguage")inlettitle=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Title")inletuserType=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"UserType")inletphoneNumbers=(Option.map~f:PhoneNumbers.of_xml)(Xml.childxml_arg0"PhoneNumbers")inletaddresses=(Option.map~f:Addresses.of_xml)(Xml.childxml_arg0"Addresses")inletemails=(Option.map~f:Emails.of_xml)(Xml.childxml_arg0"Emails")inletprofileUrl=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"ProfileUrl")inletnickName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"NickName")inletdisplayName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"DisplayName")inletname=(Option.map~f:Name.of_xml)(Xml.childxml_arg0"Name")inletexternalIds=(Option.map~f:ExternalIds.of_xml)(Xml.childxml_arg0"ExternalIds")inletuserName=(Option.map~f:UserName.of_xml)(Xml.childxml_arg0"UserName")inletuserId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"UserId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?extensions?updatedBy?updatedAt?createdBy?createdAt?roles?birthdate?website?photos?userStatus?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?externalIds?userName?userId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letextensions=field_mapjson__"Extensions"Extensions.of_jsoninletupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletroles=field_mapjson__"Roles"Roles.of_jsoninletbirthdate=field_mapjson__"Birthdate"SensitiveStringType.of_jsoninletwebsite=field_mapjson__"Website"SensitiveStringType.of_jsoninletphotos=field_mapjson__"Photos"Photos.of_jsoninletuserStatus=field_mapjson__"UserStatus"UserStatus.of_jsoninlettimezone=field_mapjson__"Timezone"SensitiveStringType.of_jsoninletlocale=field_mapjson__"Locale"SensitiveStringType.of_jsoninletpreferredLanguage=field_mapjson__"PreferredLanguage"SensitiveStringType.of_jsoninlettitle=field_mapjson__"Title"SensitiveStringType.of_jsoninletuserType=field_mapjson__"UserType"SensitiveStringType.of_jsoninletphoneNumbers=field_mapjson__"PhoneNumbers"PhoneNumbers.of_jsoninletaddresses=field_mapjson__"Addresses"Addresses.of_jsoninletemails=field_mapjson__"Emails"Emails.of_jsoninletprofileUrl=field_mapjson__"ProfileUrl"SensitiveStringType.of_jsoninletnickName=field_mapjson__"NickName"SensitiveStringType.of_jsoninletdisplayName=field_mapjson__"DisplayName"SensitiveStringType.of_jsoninletname=field_mapjson__"Name"Name.of_jsoninletexternalIds=field_mapjson__"ExternalIds"ExternalIds.of_jsoninletuserName=field_mapjson__"UserName"UserName.of_jsoninletuserId=field_mapjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?extensions?updatedBy?updatedAt?createdBy?createdAt?roles?birthdate?website?photos?userStatus?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?externalIds?userName?userId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A user object that contains the metadata and attributes for a specified user."]moduleFilter=structtypenonrect={attributePath:AttributePath.t[@ocaml.doc"The attribute path that is used to specify which attribute name to search. Length limit is 255 characters. For example, UserName is a valid attribute path for the ListUsers API, and DisplayName is a valid attribute path for the ListGroups API."];attributeValue:SensitiveStringType.t[@ocaml.doc"Represents the data for an attribute. Each attribute value is described as a name-value pair."]}letcontext_="Filter"letmake~attributePath=fun~attributeValue->fun()->{attributePath;attributeValue}letto_valuex=structure_to_value[("AttributePath",(Some(AttributePath.to_valuex.attributePath)));("AttributeValue",(Some(SensitiveStringType.to_valuex.attributeValue)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letattributeValue=SensitiveStringType.of_xml(Xml.child_exn~context:context_xml_arg0"AttributeValue")inletattributePath=AttributePath.of_xml(Xml.child_exn~context:context_xml_arg0"AttributePath")inmake~attributeValue~attributePath()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letattributeValue=field_map_exnjson__"AttributeValue"SensitiveStringType.of_jsoninletattributePath=field_map_exnjson__"AttributePath"AttributePath.of_jsoninmake~attributeValue~attributePath()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A query filter used by ListUsers and ListGroups. This filter object provides the attribute name and attribute value to search users or groups."]moduleGroup=structtypenonrect={groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];displayName:GroupDisplayName.toption[@ocaml.doc"The display name value for the group. The length limit is 1,024 characters. This value can consist of letters, accented characters, symbols, numbers, punctuation, tab, new line, carriage return, space, and nonbreaking space in this attribute. This value is specified at the time the group is created and stored as an attribute of the group object in the identity store. Prefix search supports a maximum of 1,000 characters for the string."];externalIds:ExternalIds.toption[@ocaml.doc"A list of ExternalId objects that contains the identifiers issued to this resource by an external identity provider."];description:SensitiveStringType.toption[@ocaml.doc"A string containing a description of the specified group."];createdAt:DateType.toption[@ocaml.doc"The date and time the group was created."];updatedAt:DateType.toption[@ocaml.doc"The date and time the group was last updated."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the group."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the group."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}letmake?groupId=fun?displayName->fun?externalIds->fun?description->fun?createdAt->fun?updatedAt->fun?createdBy->fun?updatedBy->fun?identityStoreId->fun()->{groupId;displayName;externalIds;description;createdAt;updatedAt;createdBy;updatedBy;identityStoreId}letto_valuex=structure_to_value[("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("DisplayName",(Option.mapx.displayName~f:GroupDisplayName.to_value));("ExternalIds",(Option.mapx.externalIds~f:ExternalIds.to_value));("Description",(Option.mapx.description~f:SensitiveStringType.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletdescription=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Description")inletexternalIds=(Option.map~f:ExternalIds.of_xml)(Xml.childxml_arg0"ExternalIds")inletdisplayName=(Option.map~f:GroupDisplayName.of_xml)(Xml.childxml_arg0"DisplayName")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inmake?identityStoreId?updatedBy?createdBy?updatedAt?createdAt?description?externalIds?displayName?groupId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletdescription=field_mapjson__"Description"SensitiveStringType.of_jsoninletexternalIds=field_mapjson__"ExternalIds"ExternalIds.of_jsoninletdisplayName=field_mapjson__"DisplayName"GroupDisplayName.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninmake?identityStoreId?updatedBy?createdBy?updatedAt?createdAt?description?externalIds?displayName?groupId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A group object that contains the metadata and attributes for a specified group."]moduleGroupMembership=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];membershipId:ResourceId.toption[@ocaml.doc"The identifier for a GroupMembership object in an identity store."];groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];memberId:MemberId.toption[@ocaml.doc"An object that contains the identifier of a group member. Setting the UserID field to the specific identifier for a user indicates that the user is a member of the group."];createdAt:DateType.toption[@ocaml.doc"The date and time the group membership was created."];updatedAt:DateType.toption[@ocaml.doc"The date and time the group membership was last updated."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the group membership."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the group membership."]}letmake?identityStoreId=fun?membershipId->fun?groupId->fun?memberId->fun?createdAt->fun?updatedAt->fun?createdBy->fun?updatedBy->fun()->{identityStoreId;membershipId;groupId;memberId;createdAt;updatedAt;createdBy;updatedBy}letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("MembershipId",(Option.mapx.membershipId~f:ResourceId.to_value));("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("MemberId",(Option.mapx.memberId~f:MemberId.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletmemberId=(Option.map~f:MemberId.of_xml)(Xml.childxml_arg0"MemberId")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inletmembershipId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"MembershipId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?updatedBy?createdBy?updatedAt?createdAt?memberId?groupId?membershipId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletmemberId=field_mapjson__"MemberId"MemberId.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninletmembershipId=field_mapjson__"MembershipId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?updatedBy?createdBy?updatedAt?createdAt?memberId?groupId?membershipId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Contains the identifiers for a group, a group member, and a GroupMembership object in the identity store."]moduleGroupMembershipExistenceResult=structtypenonrect={groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];memberId:MemberId.toption[@ocaml.doc"An object that contains the identifier of a group member. Setting the UserID field to the specific identifier for a user indicates that the user is a member of the group."];membershipExists:BooleanType.toption[@ocaml.doc"Indicates whether a membership relation exists or not."]}letmake?groupId=fun?memberId->fun?membershipExists->fun()->{groupId;memberId;membershipExists}letto_valuex=structure_to_value[("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("MemberId",(Option.mapx.memberId~f:MemberId.to_value));("MembershipExists",(Option.mapx.membershipExists~f:BooleanType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmembershipExists=(Option.map~f:BooleanType.of_xml)(Xml.childxml_arg0"MembershipExists")inletmemberId=(Option.map~f:MemberId.of_xml)(Xml.childxml_arg0"MemberId")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inmake?membershipExists?memberId?groupId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmembershipExists=field_mapjson__"MembershipExists"BooleanType.of_jsoninletmemberId=field_mapjson__"MemberId"MemberId.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninmake?membershipExists?memberId?groupId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Indicates whether a resource is a member of a group in the identity store."]moduleUniqueAttribute=structtypenonrect={attributePath:AttributePath.t[@ocaml.doc"A string representation of the path to a given attribute or sub-attribute. Supports JMESPath."];attributeValue:AttributeValue.t[@ocaml.doc"The value of the attribute. This is a Document type. This type is not supported by Java V1, Go V1, and older versions of the CLI."]}letcontext_="UniqueAttribute"letmake~attributePath=fun~attributeValue->fun()->{attributePath;attributeValue}letto_valuex=structure_to_value[("AttributePath",(Some(AttributePath.to_valuex.attributePath)));("AttributeValue",(Some(AttributeValue.to_valuex.attributeValue)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letattributeValue=AttributeValue.of_xml(Xml.child_exn~context:context_xml_arg0"AttributeValue")inletattributePath=AttributePath.of_xml(Xml.child_exn~context:context_xml_arg0"AttributePath")inmake~attributeValue~attributePath()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letattributeValue=field_map_exnjson__"AttributeValue"AttributeValue.of_jsoninletattributePath=field_map_exnjson__"AttributePath"AttributePath.of_jsoninmake~attributeValue~attributePath()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"An entity attribute that's unique to a specific entity."]moduleAccessDeniedException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."];reason:AccessDeniedExceptionReason.toption[@ocaml.doc"Indicates the reason for an access denial when returned by KMS while accessing a Customer Managed KMS key. For non-KMS access-denied errors, this field is not included."]}letmake?message=fun?requestId->fun?reason->fun()->{message;requestId;reason}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value));("Reason",(Option.mapx.reason~f:AccessDeniedExceptionReason.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letreason=(Option.map~f:AccessDeniedExceptionReason.of_xml)(Xml.childxml_arg0"Reason")inletrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?reason?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letreason=field_mapjson__"Reason"AccessDeniedExceptionReason.of_jsoninletrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?reason?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"You do not have sufficient access to perform this action."]moduleConflictException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."];reason:ConflictExceptionReason.toption[@ocaml.doc"Indicates the reason for a conflict error when the service is unable to access a Customer Managed KMS key. For non-KMS permission errors, this field is not included."]}letmake?message=fun?requestId->fun?reason->fun()->{message;requestId;reason}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value));("Reason",(Option.mapx.reason~f:ConflictExceptionReason.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letreason=(Option.map~f:ConflictExceptionReason.of_xml)(Xml.childxml_arg0"Reason")inletrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?reason?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letreason=field_mapjson__"Reason"ConflictExceptionReason.of_jsoninletrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?reason?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"This request cannot be completed for one of the following reasons: Performing the requested operation would violate an existing uniqueness claim in the identity store. Resolve the conflict before retrying this request. The requested resource was being concurrently modified by another request."]moduleInternalServerException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."];retryAfterSeconds:RetryAfterSeconds.toption[@ocaml.doc"The number of seconds to wait before retrying the next request."]}letmake?message=fun?requestId->fun?retryAfterSeconds->fun()->{message;requestId;retryAfterSeconds}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value));("RetryAfterSeconds",(Option.mapx.retryAfterSeconds~f:RetryAfterSeconds.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letretryAfterSeconds=(Option.map~f:RetryAfterSeconds.of_xml)(Xml.childxml_arg0"RetryAfterSeconds")inletrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?retryAfterSeconds?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letretryAfterSeconds=field_mapjson__"RetryAfterSeconds"RetryAfterSeconds.of_jsoninletrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?retryAfterSeconds?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request processing has failed because of an unknown error, exception or failure with an internal server."]moduleResourceNotFoundException=structtypenonrect={resourceType:ResourceType.toption[@ocaml.doc"An enum object indicating the type of resource in the identity store service. Valid values include USER, GROUP, and IDENTITY_STORE."];resourceId:ResourceId.toption[@ocaml.doc"The identifier for a resource in the identity store that can be used as UserId or GroupId. The format for ResourceId is either UUID or 1234567890-UUID, where UUID is a randomly generated value for each resource when it is created and 1234567890 represents the IdentityStoreId string value. In the case that the identity store is migrated from a legacy SSO identity store, the ResourceId for that identity store will be in the format of UUID. Otherwise, it will be in the 1234567890-UUID format."];reason:ResourceNotFoundExceptionReason.toption[@ocaml.doc"Indicates the reason for a resource not found error when the service is unable to access a Customer Managed KMS key. For non-KMS permission errors, this field is not included."];message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."]}letmake?resourceType=fun?resourceId->fun?reason->fun?message->fun?requestId->fun()->{resourceType;resourceId;reason;message;requestId}letto_valuex=structure_to_value[("ResourceType",(Option.mapx.resourceType~f:ResourceType.to_value));("ResourceId",(Option.mapx.resourceId~f:ResourceId.to_value));("Reason",(Option.mapx.reason~f:ResourceNotFoundExceptionReason.to_value));("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inletreason=(Option.map~f:ResourceNotFoundExceptionReason.of_xml)(Xml.childxml_arg0"Reason")inletresourceId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"ResourceId")inletresourceType=(Option.map~f:ResourceType.of_xml)(Xml.childxml_arg0"ResourceType")inmake?requestId?message?reason?resourceId?resourceType()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninletreason=field_mapjson__"Reason"ResourceNotFoundExceptionReason.of_jsoninletresourceId=field_mapjson__"ResourceId"ResourceId.of_jsoninletresourceType=field_mapjson__"ResourceType"ResourceType.of_jsoninmake?requestId?message?reason?resourceId?resourceType()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Indicates that a requested resource is not found."]moduleServiceQuotaExceededException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."]}letmake?message=fun?requestId->fun()->{message;requestId}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request would cause the number of users or groups in the identity store to exceed the maximum allowed."]moduleThrottlingException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."];retryAfterSeconds:RetryAfterSeconds.toption[@ocaml.doc"The number of seconds to wait before retrying the next request."];reason:ThrottlingExceptionReason.toption[@ocaml.doc"Indicates the reason for the throttling error when the service is unable to access a Customer Managed KMS key. For non-KMS permission errors, this field is not included."]}letmake?message=fun?requestId->fun?retryAfterSeconds->fun?reason->fun()->{message;requestId;retryAfterSeconds;reason}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value));("RetryAfterSeconds",(Option.mapx.retryAfterSeconds~f:RetryAfterSeconds.to_value));("Reason",(Option.mapx.reason~f:ThrottlingExceptionReason.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letreason=(Option.map~f:ThrottlingExceptionReason.of_xml)(Xml.childxml_arg0"Reason")inletretryAfterSeconds=(Option.map~f:RetryAfterSeconds.of_xml)(Xml.childxml_arg0"RetryAfterSeconds")inletrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?reason?retryAfterSeconds?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letreason=field_mapjson__"Reason"ThrottlingExceptionReason.of_jsoninletretryAfterSeconds=field_mapjson__"RetryAfterSeconds"RetryAfterSeconds.of_jsoninletrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?reason?retryAfterSeconds?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Indicates that the principal has crossed the throttling limits of the API operations."]moduleValidationException=structtypenonrect={message:ExceptionMessage.toption;requestId:RequestId.toption[@ocaml.doc"The identifier for each request. This value is a globally unique ID that is generated by the identity store service for each sent request, and is then returned inside the exception if the request fails."];reason:ValidationExceptionReason.toption[@ocaml.doc"Indicates the reason for the validation error when the service is unable to access a Customer Managed KMS key. For non-KMS permission errors, this field is not included."]}letmake?message=fun?requestId->fun?reason->fun()->{message;requestId;reason}letto_valuex=structure_to_value[("Message",(Option.mapx.message~f:ExceptionMessage.to_value));("RequestId",(Option.mapx.requestId~f:RequestId.to_value));("Reason",(Option.mapx.reason~f:ValidationExceptionReason.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letreason=(Option.map~f:ValidationExceptionReason.of_xml)(Xml.childxml_arg0"Reason")inletrequestId=(Option.map~f:RequestId.of_xml)(Xml.childxml_arg0"RequestId")inletmessage=(Option.map~f:ExceptionMessage.of_xml)(Xml.childxml_arg0"Message")inmake?reason?requestId?message()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letreason=field_mapjson__"Reason"ValidationExceptionReason.of_jsoninletrequestId=field_mapjson__"RequestId"RequestId.of_jsoninletmessage=field_mapjson__"Message"ExceptionMessage.of_jsoninmake?reason?requestId?message()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"The request failed because it contains a syntax error."]moduleAttributeOperations=structtypenonrect=AttributeOperation.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:100)>>=(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:AttributeOperation.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:AttributeOperation.of_xml)letof_jsonj=list_of_json~kind:"AttributeOperations"~of_json:AttributeOperation.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleNextToken=structtypenonrect=stringletcontext_="NextToken"letmakei=letopenResultinok_or_failwith((check_string_mini~min:1)>>=(fun()->(check_string_maxi~max:65535)>>=(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:"NextToken"jletto_json=simple_to_jsonto_valueendmoduleUsers=structtypenonrect=User.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:User.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:User.of_xml)letof_jsonj=list_of_json~kind:"Users"~of_json:User.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleExtensionNames=structtypenonrect=ExtensionName.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:10)>>=(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:ExtensionName.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:ExtensionName.of_xml)letof_jsonj=list_of_json~kind:"ExtensionNames"~of_json:ExtensionName.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleFilters=structtypenonrect=Filter.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:1)>>=(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:Filter.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:Filter.of_xml)letof_jsonj=list_of_json~kind:"Filters"~of_json:Filter.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_valueendmoduleGroups=structtypenonrect=Group.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:Group.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:Group.of_xml)letof_jsonj=list_of_json~kind:"Groups"~of_json:Group.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleGroupMemberships=structtypenonrect=GroupMembership.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:GroupMembership.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:GroupMembership.of_xml)letof_jsonj=list_of_json~kind:"GroupMemberships"~of_json:GroupMembership.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleGroupMembershipExistenceResults=structtypenonrect=GroupMembershipExistenceResult.tlistletmakei=iletof_string_=failwithf"of_string is not implemented for List_shape objects"()[@@warning"-32"]letto_valuexs=(xs|>(List.map~f:GroupMembershipExistenceResult.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:GroupMembershipExistenceResult.of_xml)letof_jsonj=list_of_json~kind:"GroupMembershipExistenceResults"~of_json:GroupMembershipExistenceResult.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleGroupIds=structtypenonrect=ResourceId.tlistletmakei=letopenResultinok_or_failwith((check_list_maxi~max:100)>>=(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:ResourceId.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:ResourceId.of_xml)letof_jsonj=list_of_json~kind:"GroupIds"~of_json:ResourceId.of_jsonjletto_jsonv=composed_to_jsonto_valuevendmoduleAlternateIdentifier=structtypenonrect={externalId:ExternalId.toption[@ocaml.doc"The identifier issued to this resource by an external identity provider."];uniqueAttribute:UniqueAttribute.toption[@ocaml.doc"An entity attribute that's unique to a specific entity."]}letmake?externalId=fun?uniqueAttribute->fun()->{externalId;uniqueAttribute}letto_valuex=structure_to_value[("ExternalId",(Option.mapx.externalId~f:ExternalId.to_value));("UniqueAttribute",(Option.mapx.uniqueAttribute~f:UniqueAttribute.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuniqueAttribute=(Option.map~f:UniqueAttribute.of_xml)(Xml.childxml_arg0"UniqueAttribute")inletexternalId=(Option.map~f:ExternalId.of_xml)(Xml.childxml_arg0"ExternalId")inmake?uniqueAttribute?externalId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuniqueAttribute=field_mapjson__"UniqueAttribute"UniqueAttribute.of_jsoninletexternalId=field_mapjson__"ExternalId"ExternalId.of_jsoninmake?uniqueAttribute?externalId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"A unique identifier for a user or group that is not the primary identifier. This value can be an identifier from an external identity provider (IdP) that is associated with the user, the group, or a unique attribute."]moduleUpdateUserResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Updates the specified user metadata and attributes in the specified identity store."]moduleUpdateUserRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.t[@ocaml.doc"The identifier for a user in the identity store."];operations:AttributeOperations.t[@ocaml.doc"A list of AttributeOperation objects to apply to the requested user. These operations might add, replace, or remove an attribute. For more information on the attributes that can be added, replaced, or removed, see User."]}letcontext_="UpdateUserRequest"letmake~identityStoreId=fun~userId->fun~operations->fun()->{identityStoreId;userId;operations}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("UserId",(Some(ResourceId.to_valuex.userId)));("Operations",(Some(AttributeOperations.to_valuex.operations)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letoperations=AttributeOperations.of_xml(Xml.child_exn~context:context_xml_arg0"Operations")inletuserId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"UserId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~operations~userId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letoperations=field_map_exnjson__"Operations"AttributeOperations.of_jsoninletuserId=field_map_exnjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~operations~userId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates the specified user metadata and attributes in the specified identity store."]moduleUpdateGroupResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Updates the specified group metadata and attributes in the specified identity store."]moduleUpdateGroupRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."];operations:AttributeOperations.t[@ocaml.doc"A list of AttributeOperation objects to apply to the requested group. These operations might add, replace, or remove an attribute. For more information on the attributes that can be added, replaced, or removed, see Group."]}letcontext_="UpdateGroupRequest"letmake~identityStoreId=fun~groupId->fun~operations->fun()->{identityStoreId;groupId;operations}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)));("Operations",(Some(AttributeOperations.to_valuex.operations)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letoperations=AttributeOperations.of_xml(Xml.child_exn~context:context_xml_arg0"Operations")inletgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~operations~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letoperations=field_map_exnjson__"Operations"AttributeOperations.of_jsoninletgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~operations~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Updates the specified group metadata and attributes in the specified identity store."]moduleListUsersResponse=structtypenonrect={users:Users.toption[@ocaml.doc"A list of User objects in the identity store."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers and ListGroups API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?users=fun?nextToken->fun()->{users;nextToken}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("Users",(Option.mapx.users~f:Users.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletusers=(Option.map~f:Users.of_xml)(Xml.childxml_arg0"Users")inmake?nextToken?users()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletusers=field_mapjson__"Users"Users.of_jsoninmake?nextToken?users()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all users in the identity store. Returns a paginated list of complete User objects. Filtering for a User by the UserName attribute is deprecated. Instead, use the GetUserId API action. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListUsersRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store, such as d-1234567890. In this example, d- is a fixed prefix, and 1234567890 is a randomly generated string that contains numbers and lower case letters. This value is generated at the time that a new identity store is created."];extensions:ExtensionNames.toption[@ocaml.doc"A collection of extension names indicating what extensions the service should retrieve alongside other user attributes. aws:identitystore:enterprise is the only supported extension name."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to be returned per request. This parameter is used in the ListUsers and ListGroups requests to specify how many results to return in one page. The length limit is 50 characters."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers and ListGroups API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."];filters:Filters.toption[@ocaml.doc"A list of Filter objects, which is used in the ListUsers and ListGroups requests."]}letcontext_="ListUsersRequest"letmake?extensions=fun?maxResults->fun?nextToken->fun?filters->fun~identityStoreId->fun()->{extensions;maxResults;nextToken;filters;identityStoreId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("Extensions",(Option.mapx.extensions~f:ExtensionNames.to_value));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value));("Filters",(Option.mapx.filters~f:Filters.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfilters=(Option.map~f:Filters.of_xml)(Xml.childxml_arg0"Filters")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletextensions=(Option.map~f:ExtensionNames.of_xml)(Xml.childxml_arg0"Extensions")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?filters?nextToken?maxResults?extensions~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfilters=field_mapjson__"Filters"Filters.of_jsoninletnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletextensions=field_mapjson__"Extensions"ExtensionNames.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?filters?nextToken?maxResults?extensions~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all users in the identity store. Returns a paginated list of complete User objects. Filtering for a User by the UserName attribute is deprecated. Instead, use the GetUserId API action. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupsResponse=structtypenonrect={groups:Groups.toption[@ocaml.doc"A list of Group objects in the identity store."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers and ListGroups API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groups=fun?nextToken->fun()->{groups;nextToken}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("Groups",(Option.mapx.groups~f:Groups.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletgroups=(Option.map~f:Groups.of_xml)(Xml.childxml_arg0"Groups")inmake?nextToken?groups()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletgroups=field_mapjson__"Groups"Groups.of_jsoninmake?nextToken?groups()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all groups in the identity store. Returns a paginated list of complete Group objects. Filtering for a Group by the DisplayName attribute is deprecated. Instead, use the GetGroupId API action. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupsRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store, such as d-1234567890. In this example, d- is a fixed prefix, and 1234567890 is a randomly generated string that contains numbers and lower case letters. This value is generated at the time that a new identity store is created."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to be returned per request. This parameter is used in the ListUsers and ListGroups requests to specify how many results to return in one page. The length limit is 50 characters."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers and ListGroups API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."];filters:Filters.toption[@ocaml.doc"A list of Filter objects, which is used in the ListUsers and ListGroups requests."]}letcontext_="ListGroupsRequest"letmake?maxResults=fun?nextToken->fun?filters->fun~identityStoreId->fun()->{maxResults;nextToken;filters;identityStoreId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value));("Filters",(Option.mapx.filters~f:Filters.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letfilters=(Option.map~f:Filters.of_xml)(Xml.childxml_arg0"Filters")inletnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?filters?nextToken?maxResults~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letfilters=field_mapjson__"Filters"Filters.of_jsoninletnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?filters?nextToken?maxResults~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Lists all groups in the identity store. Returns a paginated list of complete Group objects. Filtering for a Group by the DisplayName attribute is deprecated. Instead, use the GetGroupId API action. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupMembershipsResponse=structtypenonrect={groupMemberships:GroupMemberships.toption[@ocaml.doc"A list of GroupMembership objects in the group."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers, ListGroups, and ListGroupMemberships API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groupMemberships=fun?nextToken->fun()->{groupMemberships;nextToken}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("GroupMemberships",(Option.mapx.groupMemberships~f:GroupMemberships.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletgroupMemberships=(Option.map~f:GroupMemberships.of_xml)(Xml.childxml_arg0"GroupMemberships")inmake?nextToken?groupMemberships()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletgroupMemberships=field_mapjson__"GroupMemberships"GroupMemberships.of_jsoninmake?nextToken?groupMemberships()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"For the specified group in the specified identity store, returns the list of all GroupMembership objects and returns results in paginated form. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupMembershipsRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to be returned per request. This parameter is used in all List requests to specify how many results to return in one page."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers, ListGroups and ListGroupMemberships API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}letcontext_="ListGroupMembershipsRequest"letmake?maxResults=fun?nextToken->fun~identityStoreId->fun~groupId->fun()->{maxResults;nextToken;identityStoreId;groupId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?nextToken?maxResults~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?nextToken?maxResults~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"For the specified group in the specified identity store, returns the list of all GroupMembership objects and returns results in paginated form. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupMembershipsForMemberResponse=structtypenonrect={groupMemberships:GroupMemberships.toption[@ocaml.doc"A list of GroupMembership objects in the group for a specified member."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers, ListGroups, and ListGroupMemberships API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groupMemberships=fun?nextToken->fun()->{groupMemberships;nextToken}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("GroupMemberships",(Option.mapx.groupMemberships~f:GroupMemberships.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletgroupMemberships=(Option.map~f:GroupMemberships.of_xml)(Xml.childxml_arg0"GroupMemberships")inmake?nextToken?groupMemberships()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletgroupMemberships=field_mapjson__"GroupMemberships"GroupMemberships.of_jsoninmake?nextToken?groupMemberships()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"For the specified member in the specified identity store, returns the list of all GroupMembership objects and returns results in paginated form. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleListGroupMembershipsForMemberRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];memberId:MemberId.t[@ocaml.doc"An object that contains the identifier of a group member. Setting the UserID field to the specific identifier for a user indicates that the user is a member of the group."];maxResults:MaxResults.toption[@ocaml.doc"The maximum number of results to be returned per request. This parameter is used in the ListUsers and ListGroups requests to specify how many results to return in one page. The length limit is 50 characters."];nextToken:NextToken.toption[@ocaml.doc"The pagination token used for the ListUsers, ListGroups, and ListGroupMemberships API operations. This value is generated by the identity store service. It is returned in the API response if the total results are more than the size of one page. This token is also returned when it is used in the API request to search for the next page."]}letcontext_="ListGroupMembershipsForMemberRequest"letmake?maxResults=fun?nextToken->fun~identityStoreId->fun~memberId->fun()->{maxResults;nextToken;identityStoreId;memberId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("MemberId",(Some(MemberId.to_valuex.memberId)));("MaxResults",(Option.mapx.maxResults~f:MaxResults.to_value));("NextToken",(Option.mapx.nextToken~f:NextToken.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letnextToken=(Option.map~f:NextToken.of_xml)(Xml.childxml_arg0"NextToken")inletmaxResults=(Option.map~f:MaxResults.of_xml)(Xml.childxml_arg0"MaxResults")inletmemberId=MemberId.of_xml(Xml.child_exn~context:context_xml_arg0"MemberId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?nextToken?maxResults~memberId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letnextToken=field_mapjson__"NextToken"NextToken.of_jsoninletmaxResults=field_mapjson__"MaxResults"MaxResults.of_jsoninletmemberId=field_map_exnjson__"MemberId"MemberId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?nextToken?maxResults~memberId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"For the specified member in the specified identity store, returns the list of all GroupMembership objects and returns results in paginated form. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleIsMemberInGroupsResponse=structtypenonrect={results:GroupMembershipExistenceResults.toption[@ocaml.doc"A list containing the results of membership existence checks."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?results=fun()->{results}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("Results",(Option.mapx.results~f:GroupMembershipExistenceResults.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letresults=(Option.map~f:GroupMembershipExistenceResults.of_xml)(Xml.childxml_arg0"Results")inmake?results()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letresults=field_mapjson__"Results"GroupMembershipExistenceResults.of_jsoninmake?results()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Checks the user's membership in all requested groups and returns if the member exists in all queried groups. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleIsMemberInGroupsRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];memberId:MemberId.t[@ocaml.doc"An object containing the identifier of a group member."];groupIds:GroupIds.t[@ocaml.doc"A list of identifiers for groups in the identity store."]}letcontext_="IsMemberInGroupsRequest"letmake~identityStoreId=fun~memberId->fun~groupIds->fun()->{identityStoreId;memberId;groupIds}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("MemberId",(Some(MemberId.to_valuex.memberId)));("GroupIds",(Some(GroupIds.to_valuex.groupIds)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letgroupIds=GroupIds.of_xml(Xml.child_exn~context:context_xml_arg0"GroupIds")inletmemberId=MemberId.of_xml(Xml.child_exn~context:context_xml_arg0"MemberId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~groupIds~memberId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letgroupIds=field_map_exnjson__"GroupIds"GroupIds.of_jsoninletmemberId=field_map_exnjson__"MemberId"MemberId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~groupIds~memberId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Checks the user's membership in all requested groups and returns if the member exists in all queried groups. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetUserIdResponse=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.toption[@ocaml.doc"The identifier for a user in the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identityStoreId=fun?userId->fun()->{identityStoreId;userId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("UserId",(Option.mapx.userId~f:ResourceId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"UserId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?userId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserId=field_mapjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?userId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the UserId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetUserIdRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];alternateIdentifier:AlternateIdentifier.t[@ocaml.doc"A unique identifier for a user or group that is not the primary identifier. This value can be an identifier from an external identity provider (IdP) that is associated with the user, the group, or a unique attribute. For the unique attribute, the only valid paths are userName and emails.value."]}letcontext_="GetUserIdRequest"letmake~identityStoreId=fun~alternateIdentifier->fun()->{identityStoreId;alternateIdentifier}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("AlternateIdentifier",(Some(AlternateIdentifier.to_valuex.alternateIdentifier)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letalternateIdentifier=AlternateIdentifier.of_xml(Xml.child_exn~context:context_xml_arg0"AlternateIdentifier")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~alternateIdentifier~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letalternateIdentifier=field_map_exnjson__"AlternateIdentifier"AlternateIdentifier.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~alternateIdentifier~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the UserId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetGroupMembershipIdResponse=structtypenonrect={membershipId:ResourceId.toption[@ocaml.doc"The identifier for a GroupMembership in an identity store."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?membershipId=fun?identityStoreId->fun()->{membershipId;identityStoreId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("MembershipId",(Option.mapx.membershipId~f:ResourceId.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletmembershipId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"MembershipId")inmake?identityStoreId?membershipId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletmembershipId=field_mapjson__"MembershipId"ResourceId.of_jsoninmake?identityStoreId?membershipId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the MembershipId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetGroupMembershipIdRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."];memberId:MemberId.t[@ocaml.doc"An object that contains the identifier of a group member. Setting the UserID field to the specific identifier for a user indicates that the user is a member of the group."]}letcontext_="GetGroupMembershipIdRequest"letmake~identityStoreId=fun~groupId->fun~memberId->fun()->{identityStoreId;groupId;memberId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)));("MemberId",(Some(MemberId.to_valuex.memberId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmemberId=MemberId.of_xml(Xml.child_exn~context:context_xml_arg0"MemberId")inletgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~memberId~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmemberId=field_map_exnjson__"MemberId"MemberId.of_jsoninletgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~memberId~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the MembershipId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetGroupIdResponse=structtypenonrect={groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groupId=fun?identityStoreId->fun()->{groupId;identityStoreId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inmake?identityStoreId?groupId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninmake?identityStoreId?groupId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves GroupId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleGetGroupIdRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];alternateIdentifier:AlternateIdentifier.t[@ocaml.doc"A unique identifier for a user or group that is not the primary identifier. This value can be an identifier from an external identity provider (IdP) that is associated with the user, the group, or a unique attribute. For the unique attribute, the only valid path is displayName."]}letcontext_="GetGroupIdRequest"letmake~identityStoreId=fun~alternateIdentifier->fun()->{identityStoreId;alternateIdentifier}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("AlternateIdentifier",(Some(AlternateIdentifier.to_valuex.alternateIdentifier)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letalternateIdentifier=AlternateIdentifier.of_xml(Xml.child_exn~context:context_xml_arg0"AlternateIdentifier")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~alternateIdentifier~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letalternateIdentifier=field_map_exnjson__"AlternateIdentifier"AlternateIdentifier.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~alternateIdentifier~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves GroupId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeUserResponse=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.toption[@ocaml.doc"The identifier for a user in the identity store."];userName:UserName.toption[@ocaml.doc"A unique string used to identify the user. The length limit is 128 characters. This value can consist of letters, accented characters, symbols, numbers, and punctuation. This value is specified at the time the user is created and stored as an attribute of the user object in the identity store."];externalIds:ExternalIds.toption[@ocaml.doc"A list of ExternalId objects that contains the identifiers issued to this resource by an external identity provider."];name:Name.toption[@ocaml.doc"The name of the user."];displayName:SensitiveStringType.toption[@ocaml.doc"The display name of the user."];nickName:SensitiveStringType.toption[@ocaml.doc"An alternative descriptive name for the user."];profileUrl:SensitiveStringType.toption[@ocaml.doc"A URL link for the user's profile."];emails:Emails.toption[@ocaml.doc"The email address of the user."];addresses:Addresses.toption[@ocaml.doc"The physical address of the user."];phoneNumbers:PhoneNumbers.toption[@ocaml.doc"A list of PhoneNumber objects associated with a user."];userType:SensitiveStringType.toption[@ocaml.doc"A string indicating the type of user."];title:SensitiveStringType.toption[@ocaml.doc"A string containing the title of the user."];preferredLanguage:SensitiveStringType.toption[@ocaml.doc"The preferred language of the user."];locale:SensitiveStringType.toption[@ocaml.doc"A string containing the geographical region or location of the user."];timezone:SensitiveStringType.toption[@ocaml.doc"The time zone for a user."];userStatus:UserStatus.toption[@ocaml.doc"The current status of the user account."];photos:Photos.toption[@ocaml.doc"A list of photos associated with the user. Returns up to 3 photos with their associated metadata including type, display name, and primary designation."];website:SensitiveStringType.toption[@ocaml.doc"The user's personal website or blog URL. Returns the stored website information for the user."];birthdate:SensitiveStringType.toption[@ocaml.doc"The user's birthdate in YYYY-MM-DD format. This field returns the stored birthdate information for the user."];roles:Roles.toption[@ocaml.doc"The roles of the user."];createdAt:DateType.toption[@ocaml.doc"The date and time the user was created."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the user."];updatedAt:DateType.toption[@ocaml.doc"The date and time the user was last updated."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the user."];extensions:Extensions.toption[@ocaml.doc"A map of explicitly requested attribute extensions associated with the user. Not populated if the user has no requested extensions."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identityStoreId=fun?userId->fun?userName->fun?externalIds->fun?name->fun?displayName->fun?nickName->fun?profileUrl->fun?emails->fun?addresses->fun?phoneNumbers->fun?userType->fun?title->fun?preferredLanguage->fun?locale->fun?timezone->fun?userStatus->fun?photos->fun?website->fun?birthdate->fun?roles->fun?createdAt->fun?createdBy->fun?updatedAt->fun?updatedBy->fun?extensions->fun()->{identityStoreId;userId;userName;externalIds;name;displayName;nickName;profileUrl;emails;addresses;phoneNumbers;userType;title;preferredLanguage;locale;timezone;userStatus;photos;website;birthdate;roles;createdAt;createdBy;updatedAt;updatedBy;extensions}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("UserId",(Option.mapx.userId~f:ResourceId.to_value));("UserName",(Option.mapx.userName~f:UserName.to_value));("ExternalIds",(Option.mapx.externalIds~f:ExternalIds.to_value));("Name",(Option.mapx.name~f:Name.to_value));("DisplayName",(Option.mapx.displayName~f:SensitiveStringType.to_value));("NickName",(Option.mapx.nickName~f:SensitiveStringType.to_value));("ProfileUrl",(Option.mapx.profileUrl~f:SensitiveStringType.to_value));("Emails",(Option.mapx.emails~f:Emails.to_value));("Addresses",(Option.mapx.addresses~f:Addresses.to_value));("PhoneNumbers",(Option.mapx.phoneNumbers~f:PhoneNumbers.to_value));("UserType",(Option.mapx.userType~f:SensitiveStringType.to_value));("Title",(Option.mapx.title~f:SensitiveStringType.to_value));("PreferredLanguage",(Option.mapx.preferredLanguage~f:SensitiveStringType.to_value));("Locale",(Option.mapx.locale~f:SensitiveStringType.to_value));("Timezone",(Option.mapx.timezone~f:SensitiveStringType.to_value));("UserStatus",(Option.mapx.userStatus~f:UserStatus.to_value));("Photos",(Option.mapx.photos~f:Photos.to_value));("Website",(Option.mapx.website~f:SensitiveStringType.to_value));("Birthdate",(Option.mapx.birthdate~f:SensitiveStringType.to_value));("Roles",(Option.mapx.roles~f:Roles.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value));("Extensions",(Option.mapx.extensions~f:Extensions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letextensions=(Option.map~f:Extensions.of_xml)(Xml.childxml_arg0"Extensions")inletupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletroles=(Option.map~f:Roles.of_xml)(Xml.childxml_arg0"Roles")inletbirthdate=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Birthdate")inletwebsite=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Website")inletphotos=(Option.map~f:Photos.of_xml)(Xml.childxml_arg0"Photos")inletuserStatus=(Option.map~f:UserStatus.of_xml)(Xml.childxml_arg0"UserStatus")inlettimezone=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Timezone")inletlocale=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Locale")inletpreferredLanguage=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"PreferredLanguage")inlettitle=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Title")inletuserType=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"UserType")inletphoneNumbers=(Option.map~f:PhoneNumbers.of_xml)(Xml.childxml_arg0"PhoneNumbers")inletaddresses=(Option.map~f:Addresses.of_xml)(Xml.childxml_arg0"Addresses")inletemails=(Option.map~f:Emails.of_xml)(Xml.childxml_arg0"Emails")inletprofileUrl=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"ProfileUrl")inletnickName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"NickName")inletdisplayName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"DisplayName")inletname=(Option.map~f:Name.of_xml)(Xml.childxml_arg0"Name")inletexternalIds=(Option.map~f:ExternalIds.of_xml)(Xml.childxml_arg0"ExternalIds")inletuserName=(Option.map~f:UserName.of_xml)(Xml.childxml_arg0"UserName")inletuserId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"UserId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?extensions?updatedBy?updatedAt?createdBy?createdAt?roles?birthdate?website?photos?userStatus?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?externalIds?userName?userId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letextensions=field_mapjson__"Extensions"Extensions.of_jsoninletupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletroles=field_mapjson__"Roles"Roles.of_jsoninletbirthdate=field_mapjson__"Birthdate"SensitiveStringType.of_jsoninletwebsite=field_mapjson__"Website"SensitiveStringType.of_jsoninletphotos=field_mapjson__"Photos"Photos.of_jsoninletuserStatus=field_mapjson__"UserStatus"UserStatus.of_jsoninlettimezone=field_mapjson__"Timezone"SensitiveStringType.of_jsoninletlocale=field_mapjson__"Locale"SensitiveStringType.of_jsoninletpreferredLanguage=field_mapjson__"PreferredLanguage"SensitiveStringType.of_jsoninlettitle=field_mapjson__"Title"SensitiveStringType.of_jsoninletuserType=field_mapjson__"UserType"SensitiveStringType.of_jsoninletphoneNumbers=field_mapjson__"PhoneNumbers"PhoneNumbers.of_jsoninletaddresses=field_mapjson__"Addresses"Addresses.of_jsoninletemails=field_mapjson__"Emails"Emails.of_jsoninletprofileUrl=field_mapjson__"ProfileUrl"SensitiveStringType.of_jsoninletnickName=field_mapjson__"NickName"SensitiveStringType.of_jsoninletdisplayName=field_mapjson__"DisplayName"SensitiveStringType.of_jsoninletname=field_mapjson__"Name"Name.of_jsoninletexternalIds=field_mapjson__"ExternalIds"ExternalIds.of_jsoninletuserName=field_mapjson__"UserName"UserName.of_jsoninletuserId=field_mapjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?extensions?updatedBy?updatedAt?createdBy?createdAt?roles?birthdate?website?photos?userStatus?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?externalIds?userName?userId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the user metadata and attributes from the UserId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeUserRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store, such as d-1234567890. In this example, d- is a fixed prefix, and 1234567890 is a randomly generated string that contains numbers and lower case letters. This value is generated at the time that a new identity store is created."];userId:ResourceId.t[@ocaml.doc"The identifier for a user in the identity store."];extensions:ExtensionNames.toption[@ocaml.doc"A collection of extension names indicating what extensions the service should retrieve alongside other user attributes. aws:identitystore:enterprise is the only supported extension name."]}letcontext_="DescribeUserRequest"letmake?extensions=fun~identityStoreId->fun~userId->fun()->{extensions;identityStoreId;userId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("UserId",(Some(ResourceId.to_valuex.userId)));("Extensions",(Option.mapx.extensions~f:ExtensionNames.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letextensions=(Option.map~f:ExtensionNames.of_xml)(Xml.childxml_arg0"Extensions")inletuserId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"UserId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?extensions~userId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letextensions=field_mapjson__"Extensions"ExtensionNames.of_jsoninletuserId=field_map_exnjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?extensions~userId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the user metadata and attributes from the UserId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeGroupResponse=structtypenonrect={groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];displayName:GroupDisplayName.toption[@ocaml.doc"The group\226\128\153s display name value. The length limit is 1,024 characters. This value can consist of letters, accented characters, symbols, numbers, punctuation, tab, new line, carriage return, space, and nonbreaking space in this attribute. This value is specified at the time that the group is created and stored as an attribute of the group object in the identity store."];externalIds:ExternalIds.toption[@ocaml.doc"A list of ExternalId objects that contains the identifiers issued to this resource by an external identity provider."];description:SensitiveStringType.toption[@ocaml.doc"A string containing a description of the group."];createdAt:DateType.toption[@ocaml.doc"The date and time the group was created."];updatedAt:DateType.toption[@ocaml.doc"The date and time the group was last updated."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the group."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the group."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groupId=fun?displayName->fun?externalIds->fun?description->fun?createdAt->fun?updatedAt->fun?createdBy->fun?updatedBy->fun?identityStoreId->fun()->{groupId;displayName;externalIds;description;createdAt;updatedAt;createdBy;updatedBy;identityStoreId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("DisplayName",(Option.mapx.displayName~f:GroupDisplayName.to_value));("ExternalIds",(Option.mapx.externalIds~f:ExternalIds.to_value));("Description",(Option.mapx.description~f:SensitiveStringType.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletdescription=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Description")inletexternalIds=(Option.map~f:ExternalIds.of_xml)(Xml.childxml_arg0"ExternalIds")inletdisplayName=(Option.map~f:GroupDisplayName.of_xml)(Xml.childxml_arg0"DisplayName")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inmake?identityStoreId?updatedBy?createdBy?updatedAt?createdAt?description?externalIds?displayName?groupId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletdescription=field_mapjson__"Description"SensitiveStringType.of_jsoninletexternalIds=field_mapjson__"ExternalIds"ExternalIds.of_jsoninletdisplayName=field_mapjson__"DisplayName"GroupDisplayName.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninmake?identityStoreId?updatedBy?createdBy?updatedAt?createdAt?description?externalIds?displayName?groupId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the group metadata and attributes from GroupId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeGroupRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store, such as d-1234567890. In this example, d- is a fixed prefix, and 1234567890 is a randomly generated string that contains numbers and lower case letters. This value is generated at the time that a new identity store is created."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."]}letcontext_="DescribeGroupRequest"letmake~identityStoreId=fun~groupId->fun()->{identityStoreId;groupId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves the group metadata and attributes from GroupId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeGroupMembershipResponse=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];membershipId:ResourceId.toption[@ocaml.doc"The identifier for a GroupMembership in an identity store."];groupId:ResourceId.toption[@ocaml.doc"The identifier for a group in the identity store."];memberId:MemberId.toption;createdAt:DateType.toption[@ocaml.doc"The date and time the group membership was created."];updatedAt:DateType.toption[@ocaml.doc"The date and time the group membership was last updated."];createdBy:StringType.toption[@ocaml.doc"The identifier of the user or system that created the group membership."];updatedBy:StringType.toption[@ocaml.doc"The identifier of the user or system that last updated the group membership."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identityStoreId=fun?membershipId->fun?groupId->fun?memberId->fun?createdAt->fun?updatedAt->fun?createdBy->fun?updatedBy->fun()->{identityStoreId;membershipId;groupId;memberId;createdAt;updatedAt;createdBy;updatedBy}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("MembershipId",(Option.mapx.membershipId~f:ResourceId.to_value));("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("MemberId",(Option.mapx.memberId~f:MemberId.to_value));("CreatedAt",(Option.mapx.createdAt~f:DateType.to_value));("UpdatedAt",(Option.mapx.updatedAt~f:DateType.to_value));("CreatedBy",(Option.mapx.createdBy~f:StringType.to_value));("UpdatedBy",(Option.mapx.updatedBy~f:StringType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letupdatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"UpdatedBy")inletcreatedBy=(Option.map~f:StringType.of_xml)(Xml.childxml_arg0"CreatedBy")inletupdatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"UpdatedAt")inletcreatedAt=(Option.map~f:DateType.of_xml)(Xml.childxml_arg0"CreatedAt")inletmemberId=(Option.map~f:MemberId.of_xml)(Xml.childxml_arg0"MemberId")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inletmembershipId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"MembershipId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?updatedBy?createdBy?updatedAt?createdAt?memberId?groupId?membershipId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letupdatedBy=field_mapjson__"UpdatedBy"StringType.of_jsoninletcreatedBy=field_mapjson__"CreatedBy"StringType.of_jsoninletupdatedAt=field_mapjson__"UpdatedAt"DateType.of_jsoninletcreatedAt=field_mapjson__"CreatedAt"DateType.of_jsoninletmemberId=field_mapjson__"MemberId"MemberId.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninletmembershipId=field_mapjson__"MembershipId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?updatedBy?createdBy?updatedAt?createdAt?memberId?groupId?membershipId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves membership metadata and attributes from MembershipId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDescribeGroupMembershipRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];membershipId:ResourceId.t[@ocaml.doc"The identifier for a GroupMembership in an identity store."]}letcontext_="DescribeGroupMembershipRequest"letmake~identityStoreId=fun~membershipId->fun()->{identityStoreId;membershipId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("MembershipId",(Some(ResourceId.to_valuex.membershipId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmembershipId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"MembershipId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~membershipId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmembershipId=field_map_exnjson__"MembershipId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~membershipId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Retrieves membership metadata and attributes from MembershipId in an identity store. If you have access to a member account, you can use this API operation from the member account. For more information, see Limiting access to the identity store from member accounts in the IAM Identity Center User Guide."]moduleDeleteUserResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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 within an identity store given UserId."]moduleDeleteUserRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.t[@ocaml.doc"The identifier for a user in the identity store."]}letcontext_="DeleteUserRequest"letmake~identityStoreId=fun~userId->fun()->{identityStoreId;userId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("UserId",(Some(ResourceId.to_valuex.userId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"UserId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~userId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserId=field_map_exnjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~userId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Deletes a user within an identity store given UserId."]moduleDeleteGroupResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Delete a group within an identity store given GroupId."]moduleDeleteGroupRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."]}letcontext_="DeleteGroupRequest"letmake~identityStoreId=fun~groupId->fun()->{identityStoreId;groupId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Delete a group within an identity store given GroupId."]moduleDeleteGroupMembershipResponse=structtypenonrect=unittypenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake()=()leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.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"Delete a membership within a group given MembershipId."]moduleDeleteGroupMembershipRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];membershipId:ResourceId.t[@ocaml.doc"The identifier for a GroupMembership in an identity store."]}letcontext_="DeleteGroupMembershipRequest"letmake~identityStoreId=fun~membershipId->fun()->{identityStoreId;membershipId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("MembershipId",(Some(ResourceId.to_valuex.membershipId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmembershipId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"MembershipId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~membershipId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmembershipId=field_map_exnjson__"MembershipId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~membershipId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Delete a membership within a group given MembershipId."]moduleCreateUserResponse=structtypenonrect={identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."];userId:ResourceId.toption[@ocaml.doc"The identifier of the newly created user in the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?identityStoreId=fun?userId->fun()->{identityStoreId;userId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value));("UserId",(Option.mapx.userId~f:ResourceId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letuserId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"UserId")inletidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inmake?userId?identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letuserId=field_mapjson__"UserId"ResourceId.of_jsoninletidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?userId?identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a user within the specified identity store."]moduleCreateUserRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];userName:UserName.toption[@ocaml.doc"A unique string used to identify the user. The length limit is 128 characters. This value can consist of letters, accented characters, symbols, numbers, and punctuation. This value is specified at the time the user is created and stored as an attribute of the user object in the identity store. Administrator and AWSAdministrators are reserved names and can't be used for users or groups."];name:Name.toption[@ocaml.doc"An object containing the name of the user. When used in IAM Identity Center, this parameter is required."];displayName:SensitiveStringType.toption[@ocaml.doc"A string containing the name of the user. This value is typically formatted for display when the user is referenced. For example, \"John Doe.\" When used in IAM Identity Center, this parameter is required."];nickName:SensitiveStringType.toption[@ocaml.doc"A string containing an alternate name for the user."];profileUrl:SensitiveStringType.toption[@ocaml.doc"A string containing a URL that might be associated with the user."];emails:Emails.toption[@ocaml.doc"A list of Email objects containing email addresses associated with the user."];addresses:Addresses.toption[@ocaml.doc"A list of Address objects containing addresses associated with the user."];phoneNumbers:PhoneNumbers.toption[@ocaml.doc"A list of PhoneNumber objects containing phone numbers associated with the user."];userType:SensitiveStringType.toption[@ocaml.doc"A string indicating the type of user. Possible values are left unspecified. The value can vary based on your specific use case."];title:SensitiveStringType.toption[@ocaml.doc"A string containing the title of the user. Possible values are left unspecified. The value can vary based on your specific use case."];preferredLanguage:SensitiveStringType.toption[@ocaml.doc"A string containing the preferred language of the user. For example, \"American English\" or \"en-us.\""];locale:SensitiveStringType.toption[@ocaml.doc"A string containing the geographical region or location of the user."];timezone:SensitiveStringType.toption[@ocaml.doc"A string containing the time zone of the user."];photos:Photos.toption[@ocaml.doc"A list of photos associated with the user. You can add up to 3 photos per user. Each photo can include a value, type, display name, and primary designation."];website:SensitiveStringType.toption[@ocaml.doc"The user's personal website or blog URL. This field allows users to provide a link to their personal or professional website."];birthdate:SensitiveStringType.toption[@ocaml.doc"The user's birthdate in YYYY-MM-DD format. This field supports standard date format for storing personal information."];roles:Roles.toption[@ocaml.doc"A list of Role objects containing roles associated with the user."];extensions:Extensions.toption[@ocaml.doc"A map with additional attribute extensions for the user. Each map key corresponds to an extension name, while map values represent extension data in Document type (not supported by Java V1, Go V1 and older versions of the CLI). aws:identitystore:enterprise is the only supported extension name."]}letcontext_="CreateUserRequest"letmake?userName=fun?name->fun?displayName->fun?nickName->fun?profileUrl->fun?emails->fun?addresses->fun?phoneNumbers->fun?userType->fun?title->fun?preferredLanguage->fun?locale->fun?timezone->fun?photos->fun?website->fun?birthdate->fun?roles->fun?extensions->fun~identityStoreId->fun()->{userName;name;displayName;nickName;profileUrl;emails;addresses;phoneNumbers;userType;title;preferredLanguage;locale;timezone;photos;website;birthdate;roles;extensions;identityStoreId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("UserName",(Option.mapx.userName~f:UserName.to_value));("Name",(Option.mapx.name~f:Name.to_value));("DisplayName",(Option.mapx.displayName~f:SensitiveStringType.to_value));("NickName",(Option.mapx.nickName~f:SensitiveStringType.to_value));("ProfileUrl",(Option.mapx.profileUrl~f:SensitiveStringType.to_value));("Emails",(Option.mapx.emails~f:Emails.to_value));("Addresses",(Option.mapx.addresses~f:Addresses.to_value));("PhoneNumbers",(Option.mapx.phoneNumbers~f:PhoneNumbers.to_value));("UserType",(Option.mapx.userType~f:SensitiveStringType.to_value));("Title",(Option.mapx.title~f:SensitiveStringType.to_value));("PreferredLanguage",(Option.mapx.preferredLanguage~f:SensitiveStringType.to_value));("Locale",(Option.mapx.locale~f:SensitiveStringType.to_value));("Timezone",(Option.mapx.timezone~f:SensitiveStringType.to_value));("Photos",(Option.mapx.photos~f:Photos.to_value));("Website",(Option.mapx.website~f:SensitiveStringType.to_value));("Birthdate",(Option.mapx.birthdate~f:SensitiveStringType.to_value));("Roles",(Option.mapx.roles~f:Roles.to_value));("Extensions",(Option.mapx.extensions~f:Extensions.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letextensions=(Option.map~f:Extensions.of_xml)(Xml.childxml_arg0"Extensions")inletroles=(Option.map~f:Roles.of_xml)(Xml.childxml_arg0"Roles")inletbirthdate=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Birthdate")inletwebsite=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Website")inletphotos=(Option.map~f:Photos.of_xml)(Xml.childxml_arg0"Photos")inlettimezone=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Timezone")inletlocale=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Locale")inletpreferredLanguage=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"PreferredLanguage")inlettitle=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Title")inletuserType=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"UserType")inletphoneNumbers=(Option.map~f:PhoneNumbers.of_xml)(Xml.childxml_arg0"PhoneNumbers")inletaddresses=(Option.map~f:Addresses.of_xml)(Xml.childxml_arg0"Addresses")inletemails=(Option.map~f:Emails.of_xml)(Xml.childxml_arg0"Emails")inletprofileUrl=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"ProfileUrl")inletnickName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"NickName")inletdisplayName=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"DisplayName")inletname=(Option.map~f:Name.of_xml)(Xml.childxml_arg0"Name")inletuserName=(Option.map~f:UserName.of_xml)(Xml.childxml_arg0"UserName")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?extensions?roles?birthdate?website?photos?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?userName~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letextensions=field_mapjson__"Extensions"Extensions.of_jsoninletroles=field_mapjson__"Roles"Roles.of_jsoninletbirthdate=field_mapjson__"Birthdate"SensitiveStringType.of_jsoninletwebsite=field_mapjson__"Website"SensitiveStringType.of_jsoninletphotos=field_mapjson__"Photos"Photos.of_jsoninlettimezone=field_mapjson__"Timezone"SensitiveStringType.of_jsoninletlocale=field_mapjson__"Locale"SensitiveStringType.of_jsoninletpreferredLanguage=field_mapjson__"PreferredLanguage"SensitiveStringType.of_jsoninlettitle=field_mapjson__"Title"SensitiveStringType.of_jsoninletuserType=field_mapjson__"UserType"SensitiveStringType.of_jsoninletphoneNumbers=field_mapjson__"PhoneNumbers"PhoneNumbers.of_jsoninletaddresses=field_mapjson__"Addresses"Addresses.of_jsoninletemails=field_mapjson__"Emails"Emails.of_jsoninletprofileUrl=field_mapjson__"ProfileUrl"SensitiveStringType.of_jsoninletnickName=field_mapjson__"NickName"SensitiveStringType.of_jsoninletdisplayName=field_mapjson__"DisplayName"SensitiveStringType.of_jsoninletname=field_mapjson__"Name"Name.of_jsoninletuserName=field_mapjson__"UserName"UserName.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?extensions?roles?birthdate?website?photos?timezone?locale?preferredLanguage?title?userType?phoneNumbers?addresses?emails?profileUrl?nickName?displayName?name?userName~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a user within the specified identity store."]moduleCreateGroupResponse=structtypenonrect={groupId:ResourceId.toption[@ocaml.doc"The identifier of the newly created group in the identity store."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?groupId=fun?identityStoreId->fun()->{groupId;identityStoreId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("GroupId",(Option.mapx.groupId~f:ResourceId.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletgroupId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"GroupId")inmake?identityStoreId?groupId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletgroupId=field_mapjson__"GroupId"ResourceId.of_jsoninmake?identityStoreId?groupId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a group within the specified identity store."]moduleCreateGroupRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];displayName:GroupDisplayName.toption[@ocaml.doc"A string containing the name of the group. This value is commonly displayed when the group is referenced. Administrator and AWSAdministrators are reserved names and can't be used for users or groups."];description:SensitiveStringType.toption[@ocaml.doc"A string containing the description of the group."]}letcontext_="CreateGroupRequest"letmake?displayName=fun?description->fun~identityStoreId->fun()->{displayName;description;identityStoreId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("DisplayName",(Option.mapx.displayName~f:GroupDisplayName.to_value));("Description",(Option.mapx.description~f:SensitiveStringType.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letdescription=(Option.map~f:SensitiveStringType.of_xml)(Xml.childxml_arg0"Description")inletdisplayName=(Option.map~f:GroupDisplayName.of_xml)(Xml.childxml_arg0"DisplayName")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake?description?displayName~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letdescription=field_mapjson__"Description"SensitiveStringType.of_jsoninletdisplayName=field_mapjson__"DisplayName"GroupDisplayName.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake?description?displayName~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a group within the specified identity store."]moduleCreateGroupMembershipResponse=structtypenonrect={membershipId:ResourceId.toption[@ocaml.doc"The identifier for a newly created GroupMembership in an identity store."];identityStoreId:IdentityStoreId.toption[@ocaml.doc"The globally unique identifier for the identity store."]}typenonrecerror=[`AccessDeniedExceptionofAccessDeniedException.t|`ConflictExceptionofConflictException.t|`InternalServerExceptionofInternalServerException.t|`ResourceNotFoundExceptionofResourceNotFoundException.t|`ServiceQuotaExceededExceptionofServiceQuotaExceededException.t|`ThrottlingExceptionofThrottlingException.t|`ValidationExceptionofValidationException.t|`Unknown_operation_errorof(string*stringoption)]letmake?membershipId=fun?identityStoreId->fun()->{membershipId;identityStoreId}leterror_of_jsonnamejson=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_jsonjson)|"ConflictException"->`ConflictException(ConflictException.of_jsonjson)|"InternalServerException"->`InternalServerException(InternalServerException.of_jsonjson)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_jsonjson)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_jsonjson)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_jsonjson)|"ValidationException"->`ValidationException(ValidationException.of_jsonjson)|name->`Unknown_operation_error(name,(Some(Yojson.Safe.to_stringjson)))leterror_of_xmlnamexml=matchnamewith|"AccessDeniedException"->`AccessDeniedException(AccessDeniedException.of_xmlxml)|"ConflictException"->`ConflictException(ConflictException.of_xmlxml)|"InternalServerException"->`InternalServerException(InternalServerException.of_xmlxml)|"ResourceNotFoundException"->`ResourceNotFoundException(ResourceNotFoundException.of_xmlxml)|"ServiceQuotaExceededException"->`ServiceQuotaExceededException(ServiceQuotaExceededException.of_xmlxml)|"ThrottlingException"->`ThrottlingException(ThrottlingException.of_xmlxml)|"ValidationException"->`ValidationException(ValidationException.of_xmlxml)|name->`Unknown_operation_error(name,(Some(Awso.Xml.to_stringxml)))leterror_to_json:error->Yojson.Safe.t=function|`AccessDeniedExceptione->`Assoc[("error",(`String"AccessDeniedException"));("details",(AccessDeniedException.to_jsone))]|`ConflictExceptione->`Assoc[("error",(`String"ConflictException"));("details",(ConflictException.to_jsone))]|`InternalServerExceptione->`Assoc[("error",(`String"InternalServerException"));("details",(InternalServerException.to_jsone))]|`ResourceNotFoundExceptione->`Assoc[("error",(`String"ResourceNotFoundException"));("details",(ResourceNotFoundException.to_jsone))]|`ServiceQuotaExceededExceptione->`Assoc[("error",(`String"ServiceQuotaExceededException"));("details",(ServiceQuotaExceededException.to_jsone))]|`ThrottlingExceptione->`Assoc[("error",(`String"ThrottlingException"));("details",(ThrottlingException.to_jsone))]|`ValidationExceptione->`Assoc[("error",(`String"ValidationException"));("details",(ValidationException.to_jsone))]|`Unknown_operation_error(code,msg)->`Assoc(("error",(`Stringcode))::((matchmsgwith|None->[]|Somem->[("message",(`Stringm))])))letto_valuex=structure_to_value[("MembershipId",(Option.mapx.membershipId~f:ResourceId.to_value));("IdentityStoreId",(Option.mapx.identityStoreId~f:IdentityStoreId.to_value))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letidentityStoreId=(Option.map~f:IdentityStoreId.of_xml)(Xml.childxml_arg0"IdentityStoreId")inletmembershipId=(Option.map~f:ResourceId.of_xml)(Xml.childxml_arg0"MembershipId")inmake?identityStoreId?membershipId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letidentityStoreId=field_mapjson__"IdentityStoreId"IdentityStoreId.of_jsoninletmembershipId=field_mapjson__"MembershipId"ResourceId.of_jsoninmake?identityStoreId?membershipId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a relationship between a member and a group. The following identifiers must be specified: GroupId, IdentityStoreId, and MemberId."]moduleCreateGroupMembershipRequest=structtypenonrect={identityStoreId:IdentityStoreId.t[@ocaml.doc"The globally unique identifier for the identity store."];groupId:ResourceId.t[@ocaml.doc"The identifier for a group in the identity store."];memberId:MemberId.t[@ocaml.doc"An object that contains the identifier of a group member. Setting the UserID field to the specific identifier for a user indicates that the user is a member of the group."]}letcontext_="CreateGroupMembershipRequest"letmake~identityStoreId=fun~groupId->fun~memberId->fun()->{identityStoreId;groupId;memberId}letto_valuex=structure_to_value[("IdentityStoreId",(Some(IdentityStoreId.to_valuex.identityStoreId)));("GroupId",(Some(ResourceId.to_valuex.groupId)));("MemberId",(Some(MemberId.to_valuex.memberId)))]letto_queryv=to_queryto_valuevletof_xmlxml_arg0=letmemberId=MemberId.of_xml(Xml.child_exn~context:context_xml_arg0"MemberId")inletgroupId=ResourceId.of_xml(Xml.child_exn~context:context_xml_arg0"GroupId")inletidentityStoreId=IdentityStoreId.of_xml(Xml.child_exn~context:context_xml_arg0"IdentityStoreId")inmake~memberId~groupId~identityStoreId()letof_strings=of_xml(Awso.Xml.parse_responses)[@@warning"-32"]letof_jsonjson__=letmemberId=field_map_exnjson__"MemberId"MemberId.of_jsoninletgroupId=field_map_exnjson__"GroupId"ResourceId.of_jsoninletidentityStoreId=field_map_exnjson__"IdentityStoreId"IdentityStoreId.of_jsoninmake~memberId~groupId~identityStoreId()letto_jsonv=composed_to_jsonto_valuevend[@@ocaml.doc"Creates a relationship between a member and a group. The following identifiers must be specified: GroupId, IdentityStoreId, and MemberId."]