diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 70269f77..cf7144e2 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: 3e3290ca-0ee8-4981-b1bc-14536048fa63 management: - docChecksum: 9fe83edeb529f3840639a66c541af212 + docChecksum: 0808969bd5823dd8f27c2bb9766df59d docVersion: 0.9.0 - speakeasyVersion: 1.803.1 - generationVersion: 2.950.2 - releaseVersion: 0.17.18 - configChecksum: b5397ba149885a73aef5ec0432c44e48 + speakeasyVersion: 1.805.0 + generationVersion: 2.954.8 + releaseVersion: 0.17.19 + configChecksum: 79be677d2027348980d7ad6f6f6d9fc3 repoURL: https://github.com/gleanwork/api-client-python.git installationURL: https://github.com/gleanwork/api-client-python.git published: true persistentEdits: - generation_id: 5a3c7417-dba3-4489-afa3-96f1e78b1770 - pristine_commit_hash: 148211e790ffb8017d493ceffaa17585883ae630 - pristine_tree_hash: f6b3f65224ba576e2d3c47a01fd1f98af6501196 + generation_id: a01f96c8-e041-430a-856c-5502be437eaa + pristine_commit_hash: a2db34be324b88c6921f5262fccefc0fc9adafc9 + pristine_tree_hash: 398160d9cfde487e7b8e7b95ae2bc2ac5249f79d features: python: acceptHeaders: 3.0.0 @@ -22,17 +22,17 @@ features: callbacks: 2.0.0 configurableModuleName: 0.2.0 constsAndDefaults: 1.0.8 - core: 6.1.4 + core: 6.1.12 defaultEnabledRetries: 0.2.0 deprecations: 3.0.2 devContainers: 3.0.0 downloadStreams: 1.0.1 enumUnions: 0.1.1 - envVarSecurityUsage: 0.3.3 + envVarSecurityUsage: 0.3.4 examples: 3.0.4 flatRequests: 1.0.1 flattening: 3.1.1 - globalSecurity: 3.0.7 + globalSecurity: 3.0.8 globalSecurityCallbacks: 1.0.0 globalSecurityFlattening: 1.0.0 globalServerURLs: 3.2.1 @@ -50,7 +50,7 @@ features: serverEvents: 1.1.1 tests: 1.19.10 unions: 3.1.12 - uploadStreams: 1.0.3 + uploadStreams: 1.0.4 trackedFiles: .devcontainer/README.md: id: b170c0f184ac @@ -74,8 +74,8 @@ trackedFiles: pristine_git_object: 8d79f0abb72526f1fb34a4c03e5bba612c6ba2ae USAGE.md: id: 3aed33ce6e6f - last_write_checksum: sha1:8e83346b5645b6bef8a2423f0dbc9a6365b5bd46 - pristine_git_object: 13f153fada6e805e20d596947edc7b0bc9351317 + last_write_checksum: sha1:886926ddd8dc41407e29841150f86c993cecb76d + pristine_git_object: 5f789a5a796943f9c0549330db883f9c0103baf4 docs/errors/accessrequestpermissiondeniedresponseerror.md: id: ef4760b1057f last_write_checksum: sha1:bc4a2392e4e46ce5b32fdbd3f70121cb0598e803 @@ -1486,8 +1486,8 @@ trackedFiles: pristine_git_object: a851a7f13eb25d515fa9b9244c5dfdc98fa14e2c docs/models/feedrequestcategory.md: id: 31a02f3064c7 - last_write_checksum: sha1:0cb589a8410daf2873cd50f5f511a0293f903743 - pristine_git_object: ddae356509b3ba6239513b2dcfdab45a932970b7 + last_write_checksum: sha1:ef3d4c11171363ddbd077d930b326b34f1f0dc87 + pristine_git_object: d4b9bfb5ffb043fd3a564bad2c026762c9a74238 docs/models/feedrequestoptions.md: id: 58eb26b19e77 last_write_checksum: sha1:fd2ab08736cef8156169b0cfee8c52e7aed1accf @@ -1506,8 +1506,8 @@ trackedFiles: pristine_git_object: f6f92abf16b61f88b527e1c906f605e98306878e docs/models/feedresultcategory.md: id: a5f77f38d0a7 - last_write_checksum: sha1:ce61739b5f9a254716d615b4ddb16e6fbc9a422f - pristine_git_object: f072be9ad75de3496f43fa49a1ec2609c2928f8b + last_write_checksum: sha1:c403d0bd8010eca19045aaee3651085bba2c844b + pristine_git_object: 3080c795ba3918ad5749cd7494d42e3e6cd30341 docs/models/fieldscope.md: id: e6b52bcb22a6 last_write_checksum: sha1:13a1492ce39d2f89a01d626996a345a1339a1873 @@ -1950,8 +1950,8 @@ trackedFiles: pristine_git_object: 647f9bb67a6af30d7fd71c8ddb3c5e1bf40bb938 docs/models/justificationtype.md: id: 8286affacee4 - last_write_checksum: sha1:643e53675fe523f3d473e08f140fb401eaac281a - pristine_git_object: a7a0915b1e08f898667abc5be77b8d5bb1288ad0 + last_write_checksum: sha1:f7b188c3342e6d000f4ff3644ece74d46952ac67 + pristine_git_object: 0e94d6b0ca7a09f658b3c4559ca7080458e2abb5 docs/models/knowledgetype.md: id: 1e0c90679228 last_write_checksum: sha1:0030a7539b9362bbb59e0bbd36580676058b3540 @@ -2138,8 +2138,8 @@ trackedFiles: pristine_git_object: 977c94c1f354f712855d58eecf856e5055d23342 docs/models/message.md: id: a9614076792b - last_write_checksum: sha1:683c85b12ba65929d2c250f60767f043cc8edc9e - pristine_git_object: 2bc3e9910f3919cf9b9a63f2b6f25b3c45ae9f54 + last_write_checksum: sha1:8a4caba38ad755cafcb375e700c6c336a10d9178 + pristine_git_object: 19993421a988a885979e78d6818531d53d9c185c docs/models/messageinput.md: id: 9d9844edc7d7 last_write_checksum: sha1:c626da01ee5c1fcc633daf9ff2037a8aab08719c @@ -2296,38 +2296,34 @@ trackedFiles: id: 66630faec49a last_write_checksum: sha1:918357358bb6dd6840b6ef69e9bbfc05620f3eda pristine_git_object: 4a911ee3b51a89c0a847cc6984af2b01448edc73 - docs/models/platformadminagent.md: - id: f4fd13a20937 - last_write_checksum: sha1:2081d809ad53a039e627d6a40020bdf1690de6d2 - pristine_git_object: dd3ff628b635ce836273bb38f9f3f5e511f21f30 docs/models/platformadminagentfilter.md: id: 0aa1dfda3b88 - last_write_checksum: sha1:133ce13e57da937fcbd3f247eba8d3ff86f71e23 - pristine_git_object: 8c063b2a846ab64b6c87bf1e4c0ccede64b7a454 + last_write_checksum: sha1:54be8af14e1b4b3b254435344134a9e614c9f3d5 + pristine_git_object: 9190b32272c268c3e7862568ef0abd49f72c96ef docs/models/platformadminagentfilteroperator.md: id: 45314faaf71e last_write_checksum: sha1:f9b7255b1f2b7849ba405c8c925660ce44a63708 pristine_git_object: 9ef2f8ada10bd385de017d62d61b5db6e4bcd020 docs/models/platformadminagentslistrequest.md: id: 84f54ae1dec1 - last_write_checksum: sha1:63c200fe9258d9f0d3831e4e561fd9616fab5810 - pristine_git_object: 67e78ada59f06c84d3923fc41d52cb498dc550a3 + last_write_checksum: sha1:4a9099f7760658ead7476aef477c2d619ce61399 + pristine_git_object: 53c5c53bbf5f24b101db8def018bb0c5ea1b2d89 docs/models/platformadminidpgroupsgetrequest.md: id: 5ac3ddcf8499 last_write_checksum: sha1:ab08329b54a480697987288d5796ebc525745131 pristine_git_object: f2a8f8b734f064908c61bb1116f341874ac8fd4b docs/models/platformadminidpgroupslistrequest.md: id: e3d01487e191 - last_write_checksum: sha1:49d5ffb09d0ec32e7a48be75466fe6273a9c8925 - pristine_git_object: 50a0fc627af6c5ac29c1d7be0d3202a646b6b31a + last_write_checksum: sha1:a0f3817131bb92aee1c9d701c38c0c67db1ec158 + pristine_git_object: a2e7a8a7094680aca343a8c7833300a1b6ebc20b docs/models/platformadminoauthclientsgetrequest.md: id: e4faedde211a last_write_checksum: sha1:961a8fabf97d75387fb050af2be476331ea34beb pristine_git_object: 29bcf0a78f8966e274bf21d0073e425c12119c4f docs/models/platformadminoauthclientslistrequest.md: id: 004040e5058a - last_write_checksum: sha1:3c979b3ed60684af881ec976647d0a1c4e01528d - pristine_git_object: c47d4534f1242c909e9f51f3115483bb9c9b15db + last_write_checksum: sha1:0f7b964116837aa99ed32799f863cd8d88cae95b + pristine_git_object: 1ff91d25d4ae8bf84a9cb7f956dcef2eca7c8e9a docs/models/platformagent.md: id: 6d684a308415 last_write_checksum: sha1:0f0c8b393957aebe795e3a7a142dffa1c65354a0 @@ -2700,6 +2696,14 @@ trackedFiles: id: 61ae1a6d6454 last_write_checksum: sha1:41734266d612f710490590c79d1104b15e165291 pristine_git_object: 8119fc5d60b5afc43b6fa6c91205061bbd9a9b3b + docs/models/platformdepartmentfilter.md: + id: 6d2f15f0dc95 + last_write_checksum: sha1:fe5aa11e491db6c8967c14fb325ddff76e04d03b + pristine_git_object: 58c6dd152e644f42f98881f1bdf6e8b3e754a38d + docs/models/platformdepartmentfilteroperator.md: + id: 2922df90a482 + last_write_checksum: sha1:5fe952fa39af6b77fe29985724b948ba911224ba + pristine_git_object: 03b97fb000b7daf4dff269126d44e14dacf80556 docs/models/platformdepartmentreference.md: id: ba3c1670ad16 last_write_checksum: sha1:e6e2a5ffeddd0ace831605d67355cec58e8b813a @@ -2710,12 +2714,12 @@ trackedFiles: pristine_git_object: 89106db5746f761c1660233e1ab90e041a1b0177 docs/models/platformdepartmentslistrequest.md: id: 57712057e509 - last_write_checksum: sha1:240d1351644472a5e99b2e91aa77267b2ea83ad8 - pristine_git_object: da1561a2a349d972e909ad91a1ccc0c863be5038 + last_write_checksum: sha1:841ed4f0ae46bbbc4a84659b4e211e27f357b669 + pristine_git_object: 08eab4db80e21030b1295c39d2621296c8dbc934 docs/models/platformdocumentchangewebhookevent.md: id: 6a7d5eaea3c5 - last_write_checksum: sha1:980bca6d1b189a0a14969236485ffdd8a6673f6b - pristine_git_object: 926494c10c4e191a01e7fc879c0888742c8b593d + last_write_checksum: sha1:75b339b623bccfa64052783d89075613c6fb7b4d + pristine_git_object: 989f70faad044a33bac743b91087d1686fd58ec9 docs/models/platformdurableagentrun.md: id: 9afb4bdaa146 last_write_checksum: sha1:bc97ffd5e89973049ab0cc2c9073ade21221a2dd @@ -2754,16 +2758,16 @@ trackedFiles: pristine_git_object: 1fdf4fde62a7ef65cc51514ccf7abd3b0616ebc0 docs/models/platformidpgroupfilter.md: id: 7c8232ced5de - last_write_checksum: sha1:da94f9be197b056a5229dd0e0e02c7b018b2f1b4 - pristine_git_object: f42af6eca03853d73d471b54ce46861e416eaae3 + last_write_checksum: sha1:7eb8af566d82cab9eb0f214ebe012680c4a5817d + pristine_git_object: 7082c97f15c6ab664403ad461856a12c825fc7c5 docs/models/platformidpgroupfilteroperator.md: id: aa7893d92666 last_write_checksum: sha1:5a0580077e90b01dc9dbe1d6be8037d63ad81815 pristine_git_object: d5818940117912f19e95f2f903c5702d5da2a9f1 docs/models/platformlistadminagentsresponse.md: id: 4894159e13b7 - last_write_checksum: sha1:9206fab7ec4e7caf51bf727feb3735f58e1c3ebb - pristine_git_object: 493b8956f8b8f8a767880a42e17a7680e5a0b26f + last_write_checksum: sha1:4ac82b224c67bdaf885672241e68b664c617acb6 + pristine_git_object: 74158e87938988b56e8d5d1fb450535c0bca5526 docs/models/platformlistdepartmentsresponse.md: id: 69a15ba2a142 last_write_checksum: sha1:f55379fa1379d6572077b6b1f751f5b9cfb8c6e7 @@ -2802,16 +2806,16 @@ trackedFiles: pristine_git_object: 6e3694484701e30ba1114213a8f0a287b5f4030e docs/models/platformoauthclient.md: id: 4a5bd97c4db8 - last_write_checksum: sha1:100c4ba998e408fbccb7f3da08ea85ad9f306cda - pristine_git_object: 62d7532d0e32d5903de36a2a788b991685ea5854 + last_write_checksum: sha1:c2d48a35914939ecc607e23dcfb2c89dff22ec9a + pristine_git_object: 8b72efacbd1f1bd4b08a1a40786f4b853f759c0c docs/models/platformoauthclientaigateway.md: id: 9d1dda1785ee - last_write_checksum: sha1:c8762342845111b46a678051db317ad0f5302dc7 - pristine_git_object: 88dcbcbf48bd33315fc76d724c39870a84db5f65 + last_write_checksum: sha1:66eced96e60fa889a333b8d1cf07424d3c73d44f + pristine_git_object: d0cef82fed350f76477431df6fbb00b18e8ad13a docs/models/platformoauthclientfilter.md: id: 815ab73f15f6 - last_write_checksum: sha1:2b9d2e9fa41338b110d968317f0bca2def903973 - pristine_git_object: 90753cb7f3bfb52a450044ca3905711cd202f592 + last_write_checksum: sha1:ec11823418e9b115e9eaa9cb170e038edaecea7b + pristine_git_object: ca5651f2045319b2856367e6ee0e92121d700e25 docs/models/platformoauthclientfilteroperator.md: id: 05d019dc5a49 last_write_checksum: sha1:59745e0b0903fb7e64b99a980e8191c0ba775093 @@ -2820,6 +2824,10 @@ trackedFiles: id: b0e7d4c5bbce last_write_checksum: sha1:24ab447866867a834f20ad315f8efe379f2c7ac6 pristine_git_object: 827a386c5fdae7274f008cb3bfc9796e294c47a9 + docs/models/platformoauthclientsupportedapp.md: + id: 5d7db33d5066 + last_write_checksum: sha1:77a11b623b7a4caee076fdd3323181a28de68b36 + pristine_git_object: 32b4ba071e07adcc4d4834517387f37f43ea04e8 docs/models/platformoauthclienttype.md: id: 36d82fb57d0a last_write_checksum: sha1:19ec8c36ccb6c2a4d545886f61617e4e19f6f02f @@ -4114,160 +4122,160 @@ trackedFiles: pristine_git_object: 61dd41f0319201cc105e29174ab1cc0018cecbce docs/sdks/adminagents/README.md: id: 665e1b8d841f - last_write_checksum: sha1:3b4379b4b3509c9bafc8223e9e9e88d1dabe4ba9 - pristine_git_object: 1a1f821697629966f8c8f70989dde59e0bb31572 + last_write_checksum: sha1:d50cf9d9e2bb56f020bc12660a21b4f4e524257e + pristine_git_object: f4b51cc52c9bad4caf2be6176112e6d55937a07a docs/sdks/adminidpgroups/README.md: id: b6a9054823ec - last_write_checksum: sha1:3e361f9e517caf0a8c82caec5bbdf2f234fa8828 - pristine_git_object: 40a6696e976321ad9dc507fcca55d4032325fd68 + last_write_checksum: sha1:491474aa4e883a8915452f676fb15b5b45db390a + pristine_git_object: 0574fa5679645560b594228a2061b0c3c9326335 docs/sdks/agents/README.md: id: 5965d8232fd8 - last_write_checksum: sha1:2f43583c532976156213dab99a4fcdf3b3a16853 - pristine_git_object: c7d0fedcfc7891ca094cfc16fe1361c4df450131 + last_write_checksum: sha1:6d160692ae56a85a69f2418f8b58b2feb6934818 + pristine_git_object: a2e5d7184206ca80311a7fbfbc8387592804251d docs/sdks/announcements/README.md: id: 3d2e130a217c - last_write_checksum: sha1:ecfa655bb27dee6890656542cfafda0aa6ed1ab9 - pristine_git_object: 6ce0ff139c5632014bea9e058cd99976050e4b14 + last_write_checksum: sha1:e6750d27c83a17ac456bc84cf48a2c8d36a0d5ee + pristine_git_object: 09c63507deac03ca0ec0286f129581983220a851 docs/sdks/answers/README.md: id: d1b7559999eb - last_write_checksum: sha1:7262134a488f040115987caff387afe46a6d2aaa - pristine_git_object: 1ba6c974c761b772b303723b658d4e8d3168f981 + last_write_checksum: sha1:3a59beb280771a1eff9215b063654f6dd7ac836c + pristine_git_object: 7a32df2aaa86d449b50aa15dc7bd474076ca50c7 docs/sdks/chatsdk/README.md: id: 83b4ee321663 - last_write_checksum: sha1:4862ffeb5423c2f47932ee26d55001fb90f21026 - pristine_git_object: 022f1c28c3489c115075e4a2e7e7bad9cd40ba1c + last_write_checksum: sha1:15bcb7c627ccfcf0e9f2dd91a31162c7eec3e24b + pristine_git_object: 17bb210c07581298cf12b4ecde5c6f35cd2887e2 docs/sdks/clientactivity/README.md: id: a309613986a5 - last_write_checksum: sha1:d9737458d891593ba2fb3372ab6e60ea728fe9a5 - pristine_git_object: 456e90e3a787c1e62f09a17d297f1cf756c94d49 + last_write_checksum: sha1:d5807da8dd2a67bc3b4fe60ed32c057e0e3969d1 + pristine_git_object: 34d00a051650781f7f9fda4acb1cc2bf1cb2faaf docs/sdks/clientagents/README.md: id: 8e00e6d6b64e - last_write_checksum: sha1:30b0797795425a07167506a1fee0bfeaefeab473 - pristine_git_object: 4df20f8a5db2773fa76d4ab0a82414da505de16c + last_write_checksum: sha1:1afa954d47c77957c200643bfacada17e4871b0c + pristine_git_object: ec14863057bbf3d5539a44782bac484668383d92 docs/sdks/clientauthentication/README.md: id: 463bffe80b61 - last_write_checksum: sha1:406e18430be9d365f6427c804b3992c880c39498 - pristine_git_object: 7d4827b24625995a7f7a98ae5e4c8342f3b91737 + last_write_checksum: sha1:e48d9ddcfe865ea75c3c1ef03da6b830af65af67 + pristine_git_object: c50cb20e9b2bcba77cfd67322430ad775c8df0b5 docs/sdks/clientchat/README.md: id: baf998e3d238 - last_write_checksum: sha1:c0231ad351e101ad0f74e70c3b19e474eb510183 - pristine_git_object: dae29ba811afe3aa3d17759779e0542e88048754 + last_write_checksum: sha1:bf857f842331b2e69ba5cb91a6d56fc61602d1ac + pristine_git_object: 457fecd1141ff16c3e66e30690f1a06155b164c6 docs/sdks/clientdatasources/README.md: id: 0d629dc3ac5b - last_write_checksum: sha1:05eb42287569bb139f48e0908139d6cde0c04dad - pristine_git_object: 83d845c004a80375e53ad2e2db956728ed261611 + last_write_checksum: sha1:546f3aa46d203d85bf3808a17e1556d0f4949f51 + pristine_git_object: 59f4a92b50c18ea1b842ef98fcc1cec474543b94 docs/sdks/clientdocuments/README.md: id: e0c074acef4e - last_write_checksum: sha1:b0b1431d3c6e9d4f3bbd7af162a0676db38179c3 - pristine_git_object: f2fd9a073a663ef8741c07c7f84fdd3da8ed372c + last_write_checksum: sha1:b68757451528d3db776d89f8429cbfd3e6c2654d + pristine_git_object: fd4c69477d809e0eb57fb7583a0dac7202cb8db5 docs/sdks/clients/README.md: id: ba883fd0c1cf - last_write_checksum: sha1:a74de30b8d89345e187c0095fc276cae6a5427e7 - pristine_git_object: b0ebf46dc07412f5f7bf2cbe18186aff456627af + last_write_checksum: sha1:0a6a714b890937142d07c6036d56907b4cd430e3 + pristine_git_object: 3c679b0187d753c19660e37d43f6978052219afa docs/sdks/clientsearch/README.md: id: 0a2a3cf68489 - last_write_checksum: sha1:792ad600ca1e647e3ad809fa9457765525082a2a - pristine_git_object: 2ca2ff684717b3d458fc9313661acaac6adfb31e + last_write_checksum: sha1:99ccebe91c1ecfbd78fc84eb3a3b804e105ba86c + pristine_git_object: a8a4bf7e9df7fd3bfdfc3805ce6e8ba47f14fbd5 docs/sdks/clientshortcuts/README.md: id: d5a9d841b61c - last_write_checksum: sha1:7f0f509d6b4242e72b854162d5f052467f2aee8d - pristine_git_object: 67222f0a0b9b62f5e2941e70ee0b156c9dd2c095 + last_write_checksum: sha1:182d6423cc532cbe2fdcc5281643e9e60bd7808b + pristine_git_object: f9cfc1b4ded07c3b2cff7d81dff1ff873f7791e2 docs/sdks/clientverification/README.md: id: e8d533f9d15b - last_write_checksum: sha1:7daee0f15f8ef38b45bf6209d24edf237a7ef281 - pristine_git_object: 63fa8d6cdd4a228402f5e6670422f8adf4613081 + last_write_checksum: sha1:104b8c50aaf526d94d4c3ecaf1df31bb69435326 + pristine_git_object: d321b39471d66e7278d437382fc9b71acd9a6687 docs/sdks/collections/README.md: id: 7985e64efccf - last_write_checksum: sha1:dc796e60f8fa9fcc76ffc85dbb4d68ab4b2a3663 - pristine_git_object: 08b788c02643b3b8efe0c78267c5ffd06b22ae3e + last_write_checksum: sha1:ab9ac7c5611ceeca78697e09480bbb463617996b + pristine_git_object: 803ce33aba811939df8b9fc9b88cc4b5372a286d docs/sdks/custommetadata/README.md: id: b95d224c9f1d - last_write_checksum: sha1:44527b6677330e2c517e290497b8dbe037826c83 - pristine_git_object: adac51700d9683a41dffb2f5c20ee18008a9e135 + last_write_checksum: sha1:5937fd21b61dd7c4d6f80cd9ea79822a3bd2ebbf + pristine_git_object: 591db4d22a99e6ab341f39b8573f9a46e0777c37 docs/sdks/departments/README.md: id: 12342c54f2cb - last_write_checksum: sha1:e3abbb08c60be2f69e06c57fd4145e8d0b01402f - pristine_git_object: 245fe6eed59b71fd6115e51c670c5155af652ce5 + last_write_checksum: sha1:f31385f326d09b3ec9f198840ac5c116f3445a75 + pristine_git_object: daa008d7229a9ca396a45ac7c6edc18698ff46f0 docs/sdks/entities/README.md: id: a140ac5181b9 - last_write_checksum: sha1:bc03774c1d8541c868fe35963f549a1151a4648f - pristine_git_object: a5c95e0ed9dc9054df9e3c28baf3ae23c8e1cde7 + last_write_checksum: sha1:d607b8bdb3c7c07a73be252e0e1dc7d9307ea2db + pristine_git_object: 123e022aa63ad8e4f1214f33fdec1bacbfa01f70 docs/sdks/findings/README.md: id: 7f7356eb9e9c - last_write_checksum: sha1:a618fec79b28b3add3b1a5620333ada8bc24f8fe - pristine_git_object: a6076d270adfb8f6e3e10ffa0b0ac8857911499a + last_write_checksum: sha1:7daee06776a399c197fdb13779d6327a01462daf + pristine_git_object: 36032b3374d61a37112e75c1a29f83a40b0360b5 docs/sdks/indexingauthentication/README.md: id: 3d8b5fccff24 - last_write_checksum: sha1:db7a93bc9a6bad6ef56063825b85e78a032df1f5 - pristine_git_object: 4dd9ebe7439af304d7e2b49caec3166c853591f2 + last_write_checksum: sha1:1709b4ca8c1f04c774b5f9f71fea45ea70a74309 + pristine_git_object: 5dc2821b4092bb7db7eb1b46eda18128d26e17a7 docs/sdks/indexingdatasource/README.md: id: 12c7fa0c818a - last_write_checksum: sha1:6ef7ed841d5ee04864791ef63a43f728d931b713 - pristine_git_object: 9e293dca8d87e21416cedc1dcc033cf091f9baac + last_write_checksum: sha1:10a15180541e2407bf39e5a790ac6bd438832dbb + pristine_git_object: eb0623b5dcc1fa58340648118ac330cee93807af docs/sdks/indexingdatasources/README.md: id: aa113bda8cbc - last_write_checksum: sha1:ed055d911a085011480ec1186385b6623d10d7e3 - pristine_git_object: 2cd1df569670197b98cf7953d6d72ade92909e14 + last_write_checksum: sha1:7022cdb7b39af39a7d52408e6c382679f624b9fe + pristine_git_object: 3c21aac19076c397a31e2a4cd7abb3520073eff4 docs/sdks/indexingdocuments/README.md: id: 7ca38da53414 - last_write_checksum: sha1:43f26e39da399be27a91f5a3364a29cc7d0ae769 - pristine_git_object: b477bb6d74a827604e232dd54f155f309fc54e59 + last_write_checksum: sha1:b0b2bdd9d8b0191b2750878cbc4d3263ef2de87f + pristine_git_object: b67bdfe91f37d0a3d051f30fa43098ee548f060b docs/sdks/indexingpermissions/README.md: id: f13d7f2a062c - last_write_checksum: sha1:06ef4e2ff054e62867b2c6add2e90abcc7d0ea5e - pristine_git_object: a2231eb1cba2a1753012ea00667e6a51601b888a + last_write_checksum: sha1:765e624efbe13d04cfb545db85214db0954c0e49 + pristine_git_object: 4090ced24b9deebd5197393222d3475789553d85 docs/sdks/indexingshortcuts/README.md: id: 5cf29bd168af - last_write_checksum: sha1:a5e8c40acb0c02d2f37e2595aab1170492a126bf - pristine_git_object: 6d8cda7ab4483ef459462bbd02a38ff90befddd9 + last_write_checksum: sha1:55a85a6ab5c792af15006b8754f666b623ab3d09 + pristine_git_object: eab15bfecfdf97d4e4bd75dfddaea33dacd615a6 docs/sdks/insights/README.md: id: cc2be3db9032 - last_write_checksum: sha1:b728f8f8b440f3d0f096af71b3e0c1b8066e0336 - pristine_git_object: 9dbe20451c96b5bd47aaf8740af5850fa0368286 + last_write_checksum: sha1:3c92e50bc1bb4395ab1c33e923fe3787df87f4ae + pristine_git_object: 95b9ecab942c61399cd0367446aac1fd16a463ba docs/sdks/messages/README.md: id: 3f1f6d38fc33 - last_write_checksum: sha1:6d327bcc514b9cc83209ec389e0f034ba9b9ebe8 - pristine_git_object: 0aa193b38d7d95cd3301469f9a6ad1260a1b1b51 + last_write_checksum: sha1:f70725881be7b69999dde7c46273d096cd7c0793 + pristine_git_object: 754dd6635e2b25d55f530806b0ec5cd664ec9b95 docs/sdks/people/README.md: id: ff7b3ee21c2b - last_write_checksum: sha1:f07b2b957057f2f0e4c4b2382746c4199dbba794 - pristine_git_object: 6544cda9c20ea7fd7f36bf629f5756400c9e4a06 + last_write_checksum: sha1:88fb7cd1016e7371e27d6c71b602d788b534dd74 + pristine_git_object: 49e64a05024b30f664e206b383b3fdd933da30b6 docs/sdks/pins/README.md: id: e887aca9ba0f - last_write_checksum: sha1:c11aea840d911395a606a528575fe224c8a6b86a - pristine_git_object: 3a4952c34995f080649e326e0deca557b6b9fa9f + last_write_checksum: sha1:6cf2f8e32faf8da5c268aa0f0d1ed2526fdb8baf + pristine_git_object: 992d9ac4414e8e583e0a270fe0cdbd1a20d9de5a docs/sdks/policies/README.md: id: 636269b04e57 - last_write_checksum: sha1:aba178ecf4b69bad99532d1b7493d64161109cfc - pristine_git_object: ade2483c76b4e6c0066719a29467e2ce84457299 + last_write_checksum: sha1:1cefdff6d9a78c412dc37de8304a2e11f0544bdc + pristine_git_object: e06a874e295a4858f61a37b2f5e51747aac2d0cc docs/sdks/reports/README.md: id: 66bfd66f1efc - last_write_checksum: sha1:36b7f3df686ebb55fea4c9b07fdece5d99cefc57 - pristine_git_object: 5dd26e03b79389a3e71e90f9a3ce29b7fa384dd9 + last_write_checksum: sha1:81724f0b353f58a01dde402da85ab2602b86fa62 + pristine_git_object: 6dae1cb2e68a7b2f8bcf338543f8a5a222830a13 docs/sdks/search/README.md: id: 5c534716244c - last_write_checksum: sha1:8822120d8629c5e901e7980fc73fcfdb18b71234 - pristine_git_object: 43e735ef788378a15ac4a6e52aa4843ea4c5d4c8 + last_write_checksum: sha1:022e913d9c00b87af808f366156b31a6f3a23b0b + pristine_git_object: 816c6349ca6c0222e83d4bc0399a8479c9c726dc docs/sdks/skills/README.md: id: 3a14a5c90791 - last_write_checksum: sha1:86d96a041a5ab57b6a81ff70301fe3d4f142b334 - pristine_git_object: 6c9d5b42da5a3cff3e329e3960215a0ec0c9cb3f + last_write_checksum: sha1:9e6769748ecd96d412e3fea2367d2749d24753f5 + pristine_git_object: b7dcfee43bffb09eedb56518a692e80170ebe056 docs/sdks/tools/README.md: id: 044286549bac - last_write_checksum: sha1:9b9a8e80c1d16018bd66150ba482b83825d6cf67 - pristine_git_object: 8a3368140d93e032981bd19a4cff0ad9c35e8f1e + last_write_checksum: sha1:da2b249043a5e24cd7203bc60c990a3d4777c740 + pristine_git_object: e8694d9a9344e53c7ae2a622f4eeb5ba07815e7e docs/sdks/triggers/README.md: id: 6706220e8a9c - last_write_checksum: sha1:2bf6136aaee1c615729b74a54110abaa364988f8 - pristine_git_object: 6b9d92d27e03823947907a1ed59fa53cf3fb9190 + last_write_checksum: sha1:210a9f54abfcf774bd6c695356bb07fb393030ed + pristine_git_object: 247855caababfe9bd69dfdec41b48c0ef37ccde8 docs/sdks/users/README.md: id: 5d80027045fe - last_write_checksum: sha1:1c7a70e0dd97ed4efe58da8669196e14ae985457 - pristine_git_object: 98da7f5261c26fb4dc7c84a94cb29a81e555b6e7 + last_write_checksum: sha1:3d2413654479e392ba2ea3f910e78c2c3bddc825 + pristine_git_object: 5fd6a2c999be94752411349e0a8be17f582fc7d3 docs/sdks/visibilityoverrides/README.md: id: c7d003d6a68f - last_write_checksum: sha1:738c52c3b0964cfb441542710e10c51ca226f177 - pristine_git_object: 049688db4fc3ea7f96261f459b61d5620bb16bbe + last_write_checksum: sha1:fc3e187db9d3cc0e525fa1c3f0a6c309f94ed64f + pristine_git_object: f2e8bcfb149c79f1c82eb02ea359289d871257e7 poetry.toml: id: a81ade82122a last_write_checksum: sha1:2242305e29dc6921bdf5b200aea5d4bf67830230 @@ -4282,8 +4290,8 @@ trackedFiles: pristine_git_object: 79e388be87446ab6a4064b372bad0e8376d0cb5e pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:ddf703bb6974836c859ff3f3e3089b3bdc1a6cce - pristine_git_object: c74b72968e01e12562d879ff19da347b40dc299a + last_write_checksum: sha1:003cddea4fc0057d9c058e10ce0a9e6ae58eac9d + pristine_git_object: 6aa023a986a341135adb39861cf3790f28138602 scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:c2c83f71dea61eb50c9e05da83b16d18b4da8794 @@ -4310,20 +4318,20 @@ trackedFiles: pristine_git_object: 55f23c1feabfedeb7e8cd5bea8b910f0ae0b77d9 src/glean/api_client/_version.py: id: 0ce22b26136b - last_write_checksum: sha1:aebdb9d80416954719b36214f2d6462f3d6d8913 - pristine_git_object: fa384545d790a2d894cc356132a5fcbe66d006c2 + last_write_checksum: sha1:bbe89e14cbd358890bf5e893c047f70dbf5502b7 + pristine_git_object: 759f31ba714605d61ed12c98efa9b0cc8ca6534d src/glean/api_client/admin.py: id: 583cfae82adf last_write_checksum: sha1:3c462f418d2b32a90c92f88121867a73295b0c6c pristine_git_object: 62e930d23735d95ec2a736110b91b1221475ef4f src/glean/api_client/admin_agents.py: id: d9becdfd4be8 - last_write_checksum: sha1:5a336e49a2de91526949d0ca80ba6460965ea896 - pristine_git_object: 612c52bf93d929396cfb697488797617e075340b + last_write_checksum: sha1:0d7b31ddd59925c2d6d2e9c44d19660d797b3a17 + pristine_git_object: 2b51dabd195c18293d12c7e1d09e54aed4a08e43 src/glean/api_client/admin_idpgroups.py: id: 8f0ad8c9671c - last_write_checksum: sha1:22b1e99baf17be31233655fce9ed2e9f52413a77 - pristine_git_object: 619c63bf64aad2f830e83c6886306de842ecc550 + last_write_checksum: sha1:d4143160b8490eef6943ff2dc22a5cdb24f8f3af + pristine_git_object: 79752d0b5176ee2a0aab8912a2713251cf6b2b72 src/glean/api_client/agents.py: id: b925701a9217 last_write_checksum: sha1:0e3dd95c81e2d38e1a13c1a0821a37c991ebade9 @@ -4386,8 +4394,8 @@ trackedFiles: pristine_git_object: 706d849954ab96c0c5e733d935165dd97299c77b src/glean/api_client/clients.py: id: 42c841daa28c - last_write_checksum: sha1:2bcfff95d9396bc03f67cb10cc36ea5d989ec673 - pristine_git_object: 2261caa207b73f0ec88b7bfa5fd78994b488b998 + last_write_checksum: sha1:f86a32d6719d6fb5f5ea393a1ca31212e660554a + pristine_git_object: 0a77ba5c2db5d7529b6ed4b7b46f6550b9ae62fd src/glean/api_client/collections.py: id: df34f0fd10dd last_write_checksum: sha1:5d77fb8de24b988fc5f1e17ee81a87da1f512e50 @@ -4402,8 +4410,8 @@ trackedFiles: pristine_git_object: 1187e013fddc68f46bf0601237a4d8d6ba878e41 src/glean/api_client/departments.py: id: 04b4ac5904bb - last_write_checksum: sha1:45e98b114fa2ba71fdbf90805044f4f561530c83 - pristine_git_object: ec84bc780af75a8464331839f85d7c7dfc8792c2 + last_write_checksum: sha1:6cf52b8fb0154eee44000a3b1c35936b33097628 + pristine_git_object: f228808c411fb4cc31efaffbc40e79df6fb54fa9 src/glean/api_client/entities.py: id: 38ebbab2f8a0 last_write_checksum: sha1:206168b489dbcfccd78cfab6e655c1228af50b7f @@ -4490,8 +4498,8 @@ trackedFiles: pristine_git_object: a0e769b23bdc4eab40a84fc690922d9cc4e933a2 src/glean/api_client/indexing_datasources.py: id: 9520e2db8686 - last_write_checksum: sha1:0f3af675c4a30dcfc314d299af9381ed8120c7ac - pristine_git_object: cdf0f4dbd0b9b08d84f409bb788cf3bc4b614406 + last_write_checksum: sha1:2ce5f14098fe6c949c618b53cb3f08268ec2b782 + pristine_git_object: 81ca4683b5818edd5387a65cf28a946bbfbc4868 src/glean/api_client/indexing_documents.py: id: b5c2b64ee1fa last_write_checksum: sha1:85b2a4dfcd8ba48f329c26398803d03775cb28e0 @@ -4514,8 +4522,8 @@ trackedFiles: pristine_git_object: b140b656b788bb0deb8a974420783b338f0521e2 src/glean/api_client/models/__init__.py: id: d5f6ea5efcbe - last_write_checksum: sha1:dffc8da8788561da062b8ac63a819f5156e1bbcc - pristine_git_object: 3f9f860baef90858f60d016cc3f82b7629552a53 + last_write_checksum: sha1:4ae03d9ecb4d97ed7e9ddf40640e938fce54f9a7 + pristine_git_object: b8a094afdd17e64d70b2e885d51bee4d46c13662 src/glean/api_client/models/accessrequestpermissiondeniedresponse_error.py: id: 22a2fa0d5899 last_write_checksum: sha1:f7dd6f906a4dd7433992f77395f9fb491fa5ac5c @@ -4534,156 +4542,156 @@ trackedFiles: pristine_git_object: 512b9f6f3489b6a7a6fd936e145beb7fead6a840 src/glean/api_client/models/actionpreview.py: id: 035b3a169f75 - last_write_checksum: sha1:c09e5f7d3e1edd09572070088c1071712a752bb2 - pristine_git_object: 8aada5450c888c40a6e4dd70cdc41f774e551c9a + last_write_checksum: sha1:bdfd7f731dd12622accadc8ef804794f4852a7df + pristine_git_object: 64f207250f8e0a150217fec1a577ae1c20c5811f src/glean/api_client/models/actionsummary.py: id: 34ccdf9f1526 - last_write_checksum: sha1:cfefc6678a5612dc8d50f2b0074dc54bb88e00e0 - pristine_git_object: 399db3e4ca60dc5a26085e908c780329b872d7b4 + last_write_checksum: sha1:607537a0bd7bd03f72b0fd407db4394a4d25d03f + pristine_git_object: 32287ced63ecf9206abdc2ba0bddc0a28c36e162 src/glean/api_client/models/activity.py: id: 6ea27628a0fd last_write_checksum: sha1:27f676cc8276973c98176252bf06e2b4b965935e pristine_git_object: d5bc29a46f4e35c5115aaaf0fd1ba770bbd637f2 src/glean/api_client/models/activityevent.py: id: e335c36684c8 - last_write_checksum: sha1:8ca663ccf2ef6fa2b20b1983ac1bd71799d6c594 - pristine_git_object: 4f6bc8f3f3dcc86be5395566c7363e7951ef273e + last_write_checksum: sha1:38613e9859b787da0c3d6df2580286c9f9a1e608 + pristine_git_object: 9be3f395378d732a8f612b12c3a386e6910bb56c src/glean/api_client/models/activityeventparams.py: id: f6c9399e1ae1 - last_write_checksum: sha1:46cc6bcdfe08d88c42c885dec74b11fb9b0c0ab7 - pristine_git_object: b084d4af9c37f9360038acba8620f6a928c8b3e0 + last_write_checksum: sha1:93aeefc35c30faf5cc967f31e904dd2fdab46fb7 + pristine_git_object: c7542f3bad36ae6a02a6b714d34b8fd9dfdc5c73 src/glean/api_client/models/addcollectionitemserror.py: id: 331e64597a08 - last_write_checksum: sha1:d0b29d465ddf93d455e701a30f72ff9ae4d5b46e - pristine_git_object: 8f738ea36bf445ab6ccd08d111e6d64804c63bfe + last_write_checksum: sha1:df29277f95a739672ca6bc44a21e2873dd94b1b8 + pristine_git_object: 7081f9484013845516b35bfcbf7b76fa782676aa src/glean/api_client/models/addcollectionitemsop.py: id: b74e2acd56ce - last_write_checksum: sha1:9fcffec0959386f010452d2f7b086a130b6ca0fd - pristine_git_object: 2cd893c637bb8b92fe77b5a2f20c0e9a08cd4f0f + last_write_checksum: sha1:7a32e83bef0e2ac03e53930722ecde657d987458 + pristine_git_object: fdbd6d2bef2f7cfe558515025a7db622019552af src/glean/api_client/models/addcollectionitemsrequest.py: id: c17a58ee4169 - last_write_checksum: sha1:39bdc6f03c053fb55adcbcb2209d8e2ecc9a4988 - pristine_git_object: b440c09be3cde09466a4d70231a5552a056aec44 + last_write_checksum: sha1:5a69e7c23ca41c7d528fa5efd3cda607b6641021 + pristine_git_object: e40617b28b3abb6a0206f16b80dc2568dbff94ee src/glean/api_client/models/addcollectionitemsresponse.py: id: 692242e4f85c - last_write_checksum: sha1:ffaa821257699b0ba311f1bbf832eaeb8d2a77a9 - pristine_git_object: 80294bce5a22bd4bde89abc607fdd453e1c23541 + last_write_checksum: sha1:0d4d1a0745bf35135f8c20ecc7ea93cea69d5fd0 + pristine_git_object: 9ac4e3cd4d3192d8da54c2a9a2bdb4560c8e39f2 src/glean/api_client/models/additionalfielddefinition.py: id: bbb5186e656e - last_write_checksum: sha1:62f14ca1273b7c784c38c46f853862d81a298e3d - pristine_git_object: 75e99935bb393ea10f44d384ff629e6445dae2f9 + last_write_checksum: sha1:4fd31f0f8852ceca72a4c7f81c112a8f195b8980 + pristine_git_object: 3db57b2ea3fef13e793b32975c4bc41dda7cff6c src/glean/api_client/models/addverificationreminderop.py: id: 333d8f0e3e72 - last_write_checksum: sha1:3385d15b62664b2816a9c1671158de067dff21df - pristine_git_object: b6b9c1a245a6092084d14c4842cfde2696b8c477 + last_write_checksum: sha1:bf1a154de16358e1f51570d0b5c762fbabe142cd + pristine_git_object: 02ff7b591bce68dfd3bb13a74fe051cff3ac204e src/glean/api_client/models/adminsearchop.py: id: 3008f93ed424 - last_write_checksum: sha1:1320bfee596c5f9ba009617da324a6b32c51883c - pristine_git_object: 6578e5e3116dec2bf0f6d7a138668e614fbfa4e9 + last_write_checksum: sha1:867e6fae5a2b310b9a2cf04eec214a1aacdb4e03 + pristine_git_object: 4ba04dc695849529b6b109f5d534dc7fc4490fb4 src/glean/api_client/models/agent.py: id: f8192dae32b0 - last_write_checksum: sha1:3ed08dc2b92d12b407c7e9f7d4ecb5308a6ed3f9 - pristine_git_object: ce46c0888ed7f928eacc8c3f6ea4d8bc03521a54 + last_write_checksum: sha1:e1cb55f51d6899e3c6104a0489d7b39b52ab1319 + pristine_git_object: 9c9e972520f96acd703b8816c27092f2ea8c9f5f src/glean/api_client/models/agentconfig.py: id: 6bc960f78847 - last_write_checksum: sha1:58b2ce5dbc8527ddd55997535408fd1100780b2b - pristine_git_object: 2a7bb3d113f4379cc94a8299f64b98ac3b52c90c + last_write_checksum: sha1:2ff2e06da23f109cf7c6d688f9e236c80805f4af + pristine_git_object: 7a720183b747f17e478b80480cba42519eca07cc src/glean/api_client/models/agentexecutionstatus.py: id: ab4f2c2f8eed last_write_checksum: sha1:d3bb768f118d7474a4fae0a7685922c6405d0f90 pristine_git_object: b93cae26675bab7b692af5f97f005040faff7958 src/glean/api_client/models/agentrun.py: id: b808ffdaa4d9 - last_write_checksum: sha1:152bc21e131ae652cb409cb64934d30c82d538dc - pristine_git_object: 0439dfdf5688b4cadb00dbbf24a97436e55530c1 + last_write_checksum: sha1:64d765a95ea0f0b60d79c4f3bc8f6d679245993c + pristine_git_object: 87c7a50a1ba5b7ed9dd822c0cf7e7968aa9a3760 src/glean/api_client/models/agentruncreate.py: id: e987c7a76285 - last_write_checksum: sha1:f2e7c3cc5ddc4d81024a1f211d6ceb44d99aff03 - pristine_git_object: c85f04f08dd5c38cf2ff61fe97395591c834a921 + last_write_checksum: sha1:95ad32ffc5b5a1ba350e46e2b1ad24e2dbf140ba + pristine_git_object: ff05f975fb6e9bee65804e6712112ff42d220713 src/glean/api_client/models/agentrunwaitresponse.py: id: 063b87daf535 - last_write_checksum: sha1:6a4a302684707e649a91c32c45192b6d2e06650e - pristine_git_object: e09e51eb6c09dbb2493276a6e99dbfd43503f18d + last_write_checksum: sha1:78e868e070bc2d89ce3a09f6813f7f286ce8757c + pristine_git_object: a7ee3cf859dd8b858f6ee149baaac807ee017108 src/glean/api_client/models/agentschemas.py: id: db15c1840e94 - last_write_checksum: sha1:d401bc6e8c268f7181850a0eeacce99c32dfa07f - pristine_git_object: f69f31564d278cd6d06e5ed963930d0ff6889988 + last_write_checksum: sha1:915d87459bd7b0477790195364560a1d4f81eef5 + pristine_git_object: 7649af142e6adf2461b1e87f8bd3afa51af46fcf src/glean/api_client/models/agentsinsightsv2request.py: id: 754887d301a3 - last_write_checksum: sha1:e147acd1ee591ad2cf0f465ca1ea9d7a51f95ec4 - pristine_git_object: 13a2eea4ef93e17d15c5544eb72bf137563dd817 + last_write_checksum: sha1:c7ab2f8e26b49f0ebdb6c2d2ecec808cc31ec4eb + pristine_git_object: cae6f7c47a0d97960f5c3c4331aed8c65de18098 src/glean/api_client/models/agentsinsightsv2response.py: id: 2bb9ea2bc70e - last_write_checksum: sha1:611e126409f9670e1c5598a9c4e7b33b02a37ec3 - pristine_git_object: ae50b9b4074f162313733eb3893d4d1f2b7adfe2 + last_write_checksum: sha1:aeac0fbcd6aee783f58ea385264368685211db52 + pristine_git_object: f996de1fed9ac1493e8e74466fc67e7d7a8cc5af src/glean/api_client/models/agentstimesavedinsight.py: id: a0f77b3b907e - last_write_checksum: sha1:ade060149f91b527306789ab799f7aa5174416f5 - pristine_git_object: 25a613c6e515b61c98f37ae345c340b725593aed + last_write_checksum: sha1:aa3a6fd092b5a249740bf4d2627c69889e72868c + pristine_git_object: c247fbbb19aae3c1313bd8cb7a4b898e2e9536e6 src/glean/api_client/models/agentsusagebydepartmentinsight.py: id: 50317bf09cb6 - last_write_checksum: sha1:6ee545d0cdd6246b7b743870984e71276ab7dfd6 - pristine_git_object: bcfd9c3071b5b45fcc0e64f404eb8e8f83e51cbe + last_write_checksum: sha1:bc12c210b8a9077b63663f2e1593f254738e4d5d + pristine_git_object: 4e7deaac4f6e612c64bd9b89a36f9e031654d705 src/glean/api_client/models/agentusecaseinsight.py: id: 80df217107c6 - last_write_checksum: sha1:3885677fc8a2c8ca926e9186337a3265d0d99afc - pristine_git_object: 4841a4ed05f1d52a81306cec477439e716591ca8 + last_write_checksum: sha1:faa7ceb26ac3dd51ea5a50ee0d008ed7686eec7c + pristine_git_object: c100e943b050886fc87c1d497bb382bdb6393870 src/glean/api_client/models/agentusersinsight.py: id: f40366a65563 - last_write_checksum: sha1:8190b560df9c90f0728f4d752c68eea4c1834399 - pristine_git_object: 13ed679e9400d9033694cfe6c511fb29cbb6932c + last_write_checksum: sha1:1b9291f1349261b5a68893711be177e7ab4fe986 + pristine_git_object: ca7513120334a88b5f301191086cc7838e264686 src/glean/api_client/models/allowlistoptions.py: id: 956eeade455c - last_write_checksum: sha1:60e440360bb3afc80ac0c66ffb03640979ce6426 - pristine_git_object: 0059b3cd1a9aab08d223c9c720fe273155308c08 + last_write_checksum: sha1:3be521090bb603cd4cee5f811764ea6d3f2123fa + pristine_git_object: f10c2618eecc0bcc2b9f26e39dab0510bf0a9dd8 src/glean/api_client/models/announcement.py: id: acb78a04f33a - last_write_checksum: sha1:bb0db0f198ce4f96dbae9310c2e9c9e239017659 - pristine_git_object: 2e111b784cffc91aaab63987dbfe4ab285238386 + last_write_checksum: sha1:57ea5c12974245f68150a921ce95a599029e5b58 + pristine_git_object: 7c2b1d294f20adae7c71ef4e6bc5cc7209784c11 src/glean/api_client/models/anonymousevent.py: id: 6b288f5ca26b - last_write_checksum: sha1:d7e0c848973745ff65222d74f7c2f278bdada0cb - pristine_git_object: 96c2e34b459baaef343e118b8f4177ceb5532b99 + last_write_checksum: sha1:eb6216945aa11f30081900d52f655008dea5b83b + pristine_git_object: befdf1f42150a9e80940517d9275b90d09b82add src/glean/api_client/models/answer.py: id: f7b69d1846ba - last_write_checksum: sha1:a6f31b48d2b194e64a8532ffdc39e983273edbc8 - pristine_git_object: e14d6240198752531c3b869c7b13fe4a43b77ca4 + last_write_checksum: sha1:28ceca0bfa58b61f6c29c8e555adb3c03753cecf + pristine_git_object: 08b98e6204d2529bc65a21aecd0fe5788041984a src/glean/api_client/models/answercreationdata.py: id: 85c82aca1720 - last_write_checksum: sha1:fbf094a68f5165d6d9c4811b979b84997c24bf55 - pristine_git_object: 447a1bc777e66db3472eda619fd4cf811fa09036 + last_write_checksum: sha1:e83628bc262904ca8411d49093c6081f3c809d16 + pristine_git_object: 19d1acab6325aa4e95763cf75cb14421fe0adf71 src/glean/api_client/models/answerlike.py: id: 9425fe88486f - last_write_checksum: sha1:08b729b9374fda266ee3c889985d6a092b5dd6d1 - pristine_git_object: abee3d1ad9a75461cd60429454ce56948ba71a0c + last_write_checksum: sha1:5244605c1460108b81dca46372307ff74e4b3b38 + pristine_git_object: 4c53f12fef3b3bfea5035a5507c3dbc78e6b1c91 src/glean/api_client/models/answerlikes.py: id: ea4601f607fe last_write_checksum: sha1:f921c97ea220ffd86a43907f35323a17618c95a6 pristine_git_object: cd1539f06f5fc78656fd0bcb090b0841cdcca997 src/glean/api_client/models/answerresult.py: id: 4b17918508eb - last_write_checksum: sha1:ecaf4f3a444fecccff6a4d89a4b19b2cf7f15657 - pristine_git_object: f0b6ce8ac6251aa8d88774c623b920c99ad8c47b + last_write_checksum: sha1:e3dc43d5ab69ca53e54a51bbe15747d405a72ac6 + pristine_git_object: 7b22bdefddbd7dbcb36bb6ae9adb7a3e61ccfacd src/glean/api_client/models/appresult.py: id: 90f48896fb46 - last_write_checksum: sha1:3c4b307b7a965ff51f2f8b9c0d8d558563b397b7 - pristine_git_object: 2105b7fe8cacbb74eab2c4d13bee7fe20af2c855 + last_write_checksum: sha1:a2ac70443e17b24ddf6b75bd9fa92a88d890fe96 + pristine_git_object: d05b67d1b51c654fdec2ea0be01f7328a155f8ea src/glean/api_client/models/artifacttype.py: id: 918d9cfbd123 last_write_checksum: sha1:4d857fe3cbf08b4f921fd5af79f4550216beffc3 pristine_git_object: 1d5c4d3d3662e6faad1f3ef36a1f93e8447525ed src/glean/api_client/models/assistantinsightsresponse.py: id: ce7387f28d84 - last_write_checksum: sha1:9b1c7809e56d14ec0441969ed7a7f2d39aa8d1bb - pristine_git_object: 47e9bf2fa2edbe605d30359bca3dbfebda8ed27b + last_write_checksum: sha1:fe110dffe38a430fd8de9ab550facffce7182fa4 + pristine_git_object: 2c60675de3e5e9d6ae5e82c49b7ac01156336c96 src/glean/api_client/models/authconfig.py: id: 9e88a246ee36 - last_write_checksum: sha1:6092109d1ecce4dfb01dc3fa1168642d18c96da2 - pristine_git_object: f085390a589f3bd4d3c799fb65dfea1f478cd3c7 + last_write_checksum: sha1:f54c2e4b824c061c7eaee368017ef56818afa806 + pristine_git_object: 732ae6b12aa98c38b109864c217528e6bd6364cf src/glean/api_client/models/authcontext.py: id: e5ed1f25d2ff - last_write_checksum: sha1:666912fbc5907c277024f56996d0b1e7511299f1 - pristine_git_object: a184a4fc5b4cfae17b741ec13e9d6d84d6b2965d + last_write_checksum: sha1:fce57a93106f6eeb8db89f866fbd00488548c6f8 + pristine_git_object: 635fd0726ac2c9d8a38a8427de02d3d44a5837d6 src/glean/api_client/models/authorizeactionpackop.py: id: 8cdd6426922e last_write_checksum: sha1:318527d68494b4fc6c65d9235486feb54e8bec52 @@ -4714,192 +4722,192 @@ trackedFiles: pristine_git_object: ea66e4544c221d502b224d8c6479cc5e3adb9872 src/glean/api_client/models/authtoken.py: id: 32cff6c3af95 - last_write_checksum: sha1:0ecd2db30ec7f1e00e4809b57d3300e82c90438a - pristine_git_object: 7551c7f655fadd39b5469074d0bc14b1a5bf7a01 + last_write_checksum: sha1:fa1dda17bb52be6741139b6dd07de30bb082d11e + pristine_git_object: bd0ff7c660f09170f44d64da242c44b3ce753ced src/glean/api_client/models/autocompleteop.py: id: 64525dda05ca - last_write_checksum: sha1:712542e009a8dfae0df4658487b58eac2c799238 - pristine_git_object: 97d2bf4e337f24d11d53d15916bd5c59b9942b66 + last_write_checksum: sha1:0bad3a6e2dd2bfce8f07dd8e09a312d89a3dd126 + pristine_git_object: 53b5f54db87fe6b6785980ca3198b3aa61202d36 src/glean/api_client/models/autocompleterequest.py: id: 23b29c9e7dcf - last_write_checksum: sha1:267be41c9d987da2f2dfc8a0d8ad3cb26e234566 - pristine_git_object: adfebaa0aa87fee2b86ff14fdae1fd527a7008bb + last_write_checksum: sha1:d2497660ea17719097498608d0f4386673bf0a26 + pristine_git_object: 8033870408d53b5c223c0ccd4163d152949d5102 src/glean/api_client/models/autocompleteresponse.py: id: 860297c9ef84 - last_write_checksum: sha1:7972aeb2f5bd1c56df96bbd708088add6d5f04fd - pristine_git_object: cca14924a08bed4d2ca091fcbd03ce88d602fae7 + last_write_checksum: sha1:59ef75cb745fe3bef315ce11df51201f2a0797a1 + pristine_git_object: 5bfa1e2250b76a3fb4fc685123f0694df05b451e src/glean/api_client/models/autocompleteresult.py: id: e88abde43844 - last_write_checksum: sha1:cef2cec709b67247b97ec78441b8191f85867602 - pristine_git_object: 68854db61d5187722f201f2f9d3e5b4552ac6d7d + last_write_checksum: sha1:0658d701c6d8174e0e5c4d4266a65bd88d3eb9ac + pristine_git_object: f61a06d00e13b6f790b8a97f856e77be8c60bac9 src/glean/api_client/models/autocompleteresultgroup.py: id: 10a91a57b6a0 - last_write_checksum: sha1:018ee99331256ffcb4b17c746bc880f0d289bdf5 - pristine_git_object: 09788d2bc5092a529eac8404546d46baf43189ec + last_write_checksum: sha1:740cf54fc699a6f9235db2e1f61454e2549f7fae + pristine_git_object: 964bed3b896a8714038874724c1e8b34e5292b18 src/glean/api_client/models/badge.py: id: 81bb71933ec7 - last_write_checksum: sha1:102e5350c47971627eab93b6839c66b959a1dc7c - pristine_git_object: d5675152919e152bd5aaec27e96f623722de3da0 + last_write_checksum: sha1:eea8e4c27da9f8057949ed18fc1b26b49df699ef + pristine_git_object: b63a6cdb6dea01ddb9fd6934aa7006fa41e88a7f src/glean/api_client/models/bulkindexdocumentsrequest.py: id: 5c7c3ed649f7 - last_write_checksum: sha1:1bafb9a88332bf0f11978fa7e65b4c32e1769e45 - pristine_git_object: db14fe54b9d48ef247e86f79a05b483924f89007 + last_write_checksum: sha1:dc53081d8deae30f4c5fb787ca369db92128113d + pristine_git_object: 43ab2f9ce4f0969842c940fd5ab97263586dcfe6 src/glean/api_client/models/bulkindexemployeesrequest.py: id: 8c5302b89bc9 - last_write_checksum: sha1:83a188739492734fc0df01b9e00238825cb452e7 - pristine_git_object: 43014e311dab71ae1067e8de7ba83d161670d02b + last_write_checksum: sha1:38453af3d949c2e7af3950ee170560b8f106cd94 + pristine_git_object: 1b16f3edcbd06c1ce84b15ce2f42a3673788cb59 src/glean/api_client/models/bulkindexgroupsrequest.py: id: 5a112a41efa1 - last_write_checksum: sha1:679a7ee4740eea591466c0a6e1a407614988afa8 - pristine_git_object: 99f12d8b8314866e18dc08f7332baa43ac88c2ce + last_write_checksum: sha1:c6fe4ea158e55f10931f4b2efc248105c1545755 + pristine_git_object: 787ee53ed6b8605e3f1b01e38c756f7a5b130eb1 src/glean/api_client/models/bulkindexmembershipsrequest.py: id: dd713fbaef52 - last_write_checksum: sha1:53f4bfe3b8aebdf2c4bd03b13c4c9e24ef2507ae - pristine_git_object: 81740610a725a531e9b2f956a02457299b7cb7fe + last_write_checksum: sha1:8a6299a9d6e6a40578ac02061a5cb6c2dee6c0b4 + pristine_git_object: 7db3f4c513f87e95ea9fdb3197ec7d1e78715d90 src/glean/api_client/models/bulkindexshortcutsrequest.py: id: 1bb21d370a7c - last_write_checksum: sha1:65d752cc0af955d44cd26281c6bf09ab5abdbd84 - pristine_git_object: 3aae4c0386d42c07cfe1c538e6eb3867456b33f9 + last_write_checksum: sha1:bac810c6bf04d393ad316c04ed853555c060d53e + pristine_git_object: 3958f0f0f3e23413e34ac594be24bfbfa5533749 src/glean/api_client/models/bulkindexteamsrequest.py: id: 663f4c5a52ca - last_write_checksum: sha1:d98f49c6a7e9f6ebe150a5d31ce71b498e871925 - pristine_git_object: 0fd38bfa3271f6c478078e2d44192b1442dc2766 + last_write_checksum: sha1:12291cd199a2abd0c752e5d0cc42444cf32fa5e2 + pristine_git_object: 53c0f835bdbc0cf94aa022c8bdb7ccc0bd15ae1b src/glean/api_client/models/bulkindexusersrequest.py: id: 25684d0e6ae6 - last_write_checksum: sha1:f3cf6fbaab6f08e3b63f7442001bd56e3293f6e1 - pristine_git_object: bfbff92f09bf17a68f920d2c17ed2891ce33536b + last_write_checksum: sha1:37a4b696f5885cd6009c79d8aa1e6429c7863303 + pristine_git_object: 6b4cb4f27eb6a2ecaee0f22e022826a3d11a11e4 src/glean/api_client/models/bulkuploadhistoryevent.py: id: e0fc56b32d01 - last_write_checksum: sha1:ede0ec6c53bb1b18e920fa8de1fffdcb19476bf4 - pristine_git_object: b1daac94dcc8d49e2d6f0782f7e9963e3c2e0ad1 + last_write_checksum: sha1:1751fe7fb0f4891f1914676c9e6a30de2c110899 + pristine_git_object: 89cc4688df969d23731024e779d6da6b4b53a2a6 src/glean/api_client/models/calendarattendee.py: id: f061e829600d - last_write_checksum: sha1:6fb65213e2d42e6e76c67862f3ca52d3af73e6c7 - pristine_git_object: bc67f962fe6fd6e4bf605922ddac1b85a14d775a + last_write_checksum: sha1:bbc2445f6e3b4f527748d22d2e315e69b745f0b6 + pristine_git_object: 113664628eaab6299a4656b91ecf0b517ef3e68a src/glean/api_client/models/calendarattendees.py: id: dd3d8d18619f - last_write_checksum: sha1:164b0511757d1c19d472b65e3d1d513091d09781 - pristine_git_object: 40d5ce80074cfd76645b910df1f5fdc0c0014405 + last_write_checksum: sha1:4acc82dd3f79a1f4216186be37dc2eca99e81c7d + pristine_git_object: 21cb267129a22ff738d8a5136cea5d5392dfeb45 src/glean/api_client/models/calendarevent.py: id: 1b4d4993373e - last_write_checksum: sha1:26f2455c66791dccc013541a8875ca3256bd4fe4 - pristine_git_object: 212954dc43329ec417443a0af410595f10f71bbc + last_write_checksum: sha1:c8b2741feb291bca9540c80dcf9912f981e81789 + pristine_git_object: 62f9b3f46cbe24e6ed03c2d4046ecab5c4782f31 src/glean/api_client/models/calendarroombookingstatus.py: id: 4bfc6652b632 last_write_checksum: sha1:0715c8756d82af9ea8c4433597ea2dbd17f6b0d6 pristine_git_object: 908bd7849f4b3c657e244d68b5982fe85669f1e5 src/glean/api_client/models/canonicalizingregextype.py: id: b2cd5b9de633 - last_write_checksum: sha1:63eb44ad7f15925c9d47460f997a2ec8271d7a88 - pristine_git_object: 33218a642269f788bc33a1c1347b2f094f02e61c + last_write_checksum: sha1:f8d1c663e72f824bfc6b73eaf37527f49c5264b9 + pristine_git_object: 7f2753ff6cde7df844b576a42b0a9e05bd655061 src/glean/api_client/models/channelinviteinfo.py: id: 71173b2b0492 - last_write_checksum: sha1:b3d6d14d7f1ff53a4fa61bbba741d30b7dabfa4f - pristine_git_object: a97c2ccda77238b4eb4198887e879a4505e94171 + last_write_checksum: sha1:c69da8a0ab218247cc92119cad4e98fcf42a3894 + pristine_git_object: 37128afdb2c724e2b4882b791cad87becdfe6b88 src/glean/api_client/models/chat.py: id: 5566eef6a9a3 - last_write_checksum: sha1:c3c1a2655b64e0203c0ef2d11204be23a2f5ee81 - pristine_git_object: 2c89193d682e1258a9d5e072c05546b30d21c66e + last_write_checksum: sha1:fa21ae5e9571f96b3d31a0d6a55b0a1d1d79e8e7 + pristine_git_object: cb080996a2dac8c4b88488dd37c44fb25f1000a7 src/glean/api_client/models/chatcitationannotation.py: id: 9d985247eddf - last_write_checksum: sha1:f347d88e7b546419da15d3d7a7bdd80b4615865a - pristine_git_object: 176c5d7566646fc9d002ede1048fd7ca946a7c2b + last_write_checksum: sha1:7d8aa989099d02f0d0c6076b4cd230bf4cf8e0e3 + pristine_git_object: 11364eb2e677d3a911c7c147a06b563dc4ce1bae src/glean/api_client/models/chatcitationsnippet.py: id: 3a7f86a0be3d - last_write_checksum: sha1:bea2d8405d0592720cbd9cf18b926af01f1c502e - pristine_git_object: 16364ab5f1decdf47831040236233c331c9e49be + last_write_checksum: sha1:13354e66424d01277293f5881d1a4a2c96340de7 + pristine_git_object: 343cc245283296690977be4da86b36036e7f125a src/glean/api_client/models/chatcitationsource.py: id: f74b5021fef2 last_write_checksum: sha1:11acf007fa309ac2a001cd8ac389b7b6f1931ca4 pristine_git_object: 5fbd01edd2cbbffba53eb89fc71625133316376a src/glean/api_client/models/chatcustomentitysource.py: id: 2d7c50a1b5bc - last_write_checksum: sha1:0d6f08b9b3e11ae8c70ae07e6f218b763ba27ea6 - pristine_git_object: bfb2f9159bcfb7eb1b5b5a4074fba1a3d0be9bb3 + last_write_checksum: sha1:ba1bc5607ba707216c47bb926f65c3f760fd243f + pristine_git_object: 9b651f1f1ddc7a384744755d1862033e8f3fa4e2 src/glean/api_client/models/chatdocumentsource.py: id: 29a0c0fdfff1 - last_write_checksum: sha1:e7cfd02328fbf14ed564e682356b6eb363fc6570 - pristine_git_object: 513c3ec86c430cd1f22f65adf25983f2802b0f64 + last_write_checksum: sha1:c0e9409646098372fc3156eb26e9b2b991c7c0bf + pristine_git_object: ced5a603f327894c0d9f4afc77fd014fb550420d src/glean/api_client/models/chatfile.py: id: 58a4c45c2027 - last_write_checksum: sha1:3c40dc0bc96e493132f0b40ca73a10e7bd1a53e4 - pristine_git_object: cf7a5a7ab3f014d3a292949f84dee01b17f0e36e + last_write_checksum: sha1:063bc190bb516319795d31de954b31a5bda78ea1 + pristine_git_object: 133e95287104e60c7f527ffc1be6433f0a113492 src/glean/api_client/models/chatfilefailurereason.py: id: c60997a33e36 last_write_checksum: sha1:5f85f87d571be1ed3f67e3563720fa1e02e2ef1e pristine_git_object: cb81e15e55a5889f6503eefe8103c320df460e0a src/glean/api_client/models/chatfilemetadata.py: id: b8648f87910e - last_write_checksum: sha1:ba4dff8262465c5c878c12a84f82829c64cd0618 - pristine_git_object: b4cb6dc4f77e767d75cc0c4ce8402236536907c6 + last_write_checksum: sha1:38df07258e597d07f54017b920aebb6454d13d97 + pristine_git_object: 7ede8dd9f910b425daaa6c435c86aa50715a31d3 src/glean/api_client/models/chatfilesource.py: id: 76b874fd9494 - last_write_checksum: sha1:def9ccb95b39e34cdc2a25da1d99d360984d6415 - pristine_git_object: 7cfc1f8f338ba37b5dc01592926923398b138d97 + last_write_checksum: sha1:885510e082e82ab8db9583a54b6669664208e5f6 + pristine_git_object: 5c34d84e0d6499781443ec6ffa211d473dac9717 src/glean/api_client/models/chatfilestatus.py: id: 0e6c1c7a372c last_write_checksum: sha1:2e48fd50170faf7835ed7ab1a1609cd8cf69f0d6 pristine_git_object: 8ae7bacc6529f41eb3aa272c575ca1553f481040 src/glean/api_client/models/chatmessage.py: id: d1d93cc94501 - last_write_checksum: sha1:f7f8671c082599968104ca899856409d93277df3 - pristine_git_object: 811cb2432f26879525e856c9d8b79791ca6331e4 + last_write_checksum: sha1:0cc59bc37a97efcff3059559c142b1ffc4fa1d8d + pristine_git_object: e4a6a065dcf84dd9e02990c8cafa7269c9d1b6ae src/glean/api_client/models/chatmessagecitation.py: id: dae0d568e81c - last_write_checksum: sha1:fbca4b264f0e01fd29cb2a82436f55cea17538fb - pristine_git_object: 15fd378692330c508ca2b7c0c8df8070e7c688a3 + last_write_checksum: sha1:d4ad2556dd28faf702ce1bbdab1aabc71e642e28 + pristine_git_object: b7ee21933ce83bc4612bc5791a60d02a18ac6a42 src/glean/api_client/models/chatmessagefragment.py: id: 86344b2c1c3d - last_write_checksum: sha1:8e6b779a03a7d1ecfd047e21a46af5b95ff61892 - pristine_git_object: 844224bbf606b06d3ba5b1d59c98334d3f796209 + last_write_checksum: sha1:4010f1eb4c78eb7b59574d20c77064832e757057 + pristine_git_object: 34f9e4f8a770864c4575ae35d47673c86f70e88a src/glean/api_client/models/chatmetadata.py: id: 0469e4eebd69 - last_write_checksum: sha1:6665183f9ae42b7258ed3b47d8bedbad19c5c7f7 - pristine_git_object: 81530650eaea827b2f252692a69160808e3b2143 + last_write_checksum: sha1:739481ab20bb87c80c75b1264fb157ab181caf5a + pristine_git_object: d684c1d807785c21aa864caae92f77160881ee68 src/glean/api_client/models/chatmetadataresult.py: id: 560168f894a8 - last_write_checksum: sha1:199c99f194397c58aa9f615198e6289a11326cc6 - pristine_git_object: 53e0ef9787b0ea167b78aceb773fef1b9d28882b + last_write_checksum: sha1:183402075daf1d3523be03a6187eb9166a44a744 + pristine_git_object: b76965e8d62cb6f0a95aa1f800913114645c02a6 src/glean/api_client/models/chatop.py: id: 324d679cb5db - last_write_checksum: sha1:1c73e74f9797932c4474c5459aa28694a997c0c0 - pristine_git_object: d14b8817de80260f39a0c79a07e5cd806c02e179 + last_write_checksum: sha1:1ebc560ce3a0af89cfa6bb2ce735eddafce09fd5 + pristine_git_object: 065f54c01fd69429b201bbb677323c2d7fcb6760 src/glean/api_client/models/chatpersonsource.py: id: edec67365a9f - last_write_checksum: sha1:605008bd53aa3789c391122510b7f4bd4adfc057 - pristine_git_object: f6f643e8e27d9a858805be3250ab6b12c6916372 + last_write_checksum: sha1:cb9555f5c5852d3bcee51020bbf5b5a9a0580c91 + pristine_git_object: 037391bc23585ae256791c5317c2de996d2c1e7c src/glean/api_client/models/chatrequest.py: id: df889fc72055 - last_write_checksum: sha1:1789889c241b2613c24b26d7966e1182210652ae - pristine_git_object: ca0d3695d12775e30120b5f1b6a69167c4ee7bb9 + last_write_checksum: sha1:0cc163c6acc56e0b1532de4bd492758d7e47f229 + pristine_git_object: 5ff812dd470a67d4f2c74373fe2efddca916ec1b src/glean/api_client/models/chatresponse.py: id: 9ae42b3bd99f - last_write_checksum: sha1:b45cb5611c3f2ae0d38933b9bfb1be1902a65b99 - pristine_git_object: aa3afabf04c8187ea2bd5b5e98b03acb2f1278aa + last_write_checksum: sha1:70bbf7a63034fabc0d06f7ce3339cbb6950e5107 + pristine_git_object: 088bbf2a67972aba38a3a8e7012ab33bba83cbb2 src/glean/api_client/models/chatrestrictionfilters.py: id: 634c14f688c1 - last_write_checksum: sha1:5a289b25d5437cee31503eb48db72b6bcf4c5d37 - pristine_git_object: 51db943bb852f5bbd6dad0212aa87ee03e44e830 + last_write_checksum: sha1:58548e987f444bd69ad3986afeceac8ba1b63f26 + pristine_git_object: a9e361bd1023a797c4f82306c900e79e1ea71e42 src/glean/api_client/models/chatresult.py: id: f449bc617fb6 - last_write_checksum: sha1:b0cd2f69fd271a5993007c401324af975310ac9f - pristine_git_object: 8058b2bbcadc2eec393752b623d65d41487f40b9 + last_write_checksum: sha1:b2ee050c67c4e76003d16ef309590dac32c94a74 + pristine_git_object: 9b21a76e788d474cf6119a4a42e8e44566ac282c src/glean/api_client/models/chatskill.py: id: 8782f2a7d419 - last_write_checksum: sha1:ed271302b4cfe27bb87cfaf6806b726ffcffff09 - pristine_git_object: b6327b42549d7c3f9fee1ef961057dd0c1c59384 + last_write_checksum: sha1:6eb1d49c4e83c442c1b5c2194d995e184710ad31 + pristine_git_object: afc7891b2fa25f29e927e09dec4167628b407cf5 src/glean/api_client/models/chatstreamop.py: id: efb7f50ff6d0 - last_write_checksum: sha1:b81b04aa413db5f339f318e85bb57ff7b6883bb1 - pristine_git_object: 6ce3ce9bca35b6fee469e40b1b99a1e8a54fa733 + last_write_checksum: sha1:812239da1e74ef1386757bd315f4cc732c041994 + pristine_git_object: a58c08ec3611619a1321aa20d582569f82ee45e7 src/glean/api_client/models/chatsuggestion.py: id: d1672ba5a41f - last_write_checksum: sha1:25280fb880062a3038cfbae9d4f730bd301a5118 - pristine_git_object: 95b2928c2a520e742bce07896f7ab4aace936e4d + last_write_checksum: sha1:0d9d87b26c8eb8d4425dd67020ad65543096ad07 + pristine_git_object: 88282009104d757a333ec357ed14c7554c8e8112 src/glean/api_client/models/chatzerostatesuggestionoptions.py: id: c2b8ed9c9949 - last_write_checksum: sha1:2d1b44dcd4d7b15343829548833a2e257b3106e2 - pristine_git_object: 75527af1ac3173d43991fbfba5265a832d9bf41c + last_write_checksum: sha1:37bab743bcfc17fb4836bd2878f0922d804e2573 + pristine_git_object: 315b2ce250eaf07d8fa9890f73cad04f410f0ac3 src/glean/api_client/models/checkdatasourceauthresponse.py: id: 4b92648bff66 last_write_checksum: sha1:383e77b55a1ef1d8a4014954daacecefabb594e1 @@ -4910,40 +4918,40 @@ trackedFiles: pristine_git_object: e5985de81b6d3d8de11cc0d9a0e33db4b25bbb14 src/glean/api_client/models/checkdocumentaccessresponse.py: id: 493311f0935d - last_write_checksum: sha1:5c989b057b2e656267e785ecff45e6b9535d2b50 - pristine_git_object: 373b93887dc03fee309a02ca7efd3a674081def0 + last_write_checksum: sha1:10927b1abee67a542d88f73fcd5d59d30539bd4b + pristine_git_object: e4964c2a0f2551a29bd55cb923e3615df40ca65c src/glean/api_client/models/clustergroup.py: id: f84bec5b82fe - last_write_checksum: sha1:be8057f49d12a16cc4effc809f1aab20f520304a - pristine_git_object: 9805a2fa98454cc3c517a168b47e1d630fafe178 + last_write_checksum: sha1:7a5e94655e8c89e459b043aaf850f276f08fa747 + pristine_git_object: e712f5b9f3f3cdc02ed22afcc3ee123e4d02725a src/glean/api_client/models/clustertypeenum.py: id: 0ddd45a5d0d9 last_write_checksum: sha1:1f63c4b39dde561b3339908f8a9a35a6bf0f7257 pristine_git_object: d599d8ac677a258ec0041ffc08142138b410fc2b src/glean/api_client/models/code.py: id: 11b08e43c314 - last_write_checksum: sha1:64058aa3ea083da1c1a9da5f7d6cdfa937e06ee4 - pristine_git_object: 140e792f4f3fbb381c998a268ddb63b214c3cd64 + last_write_checksum: sha1:6d36cb1e3b73a2a6684365ebd298f1bdb67d73d5 + pristine_git_object: 9e609b447f1f7b0f433d2b6547c7c309bdabd7c5 src/glean/api_client/models/codeline.py: id: 564bd44a480c - last_write_checksum: sha1:f5090a720f6119223b2a62a2d9d7acff35e77c75 - pristine_git_object: 70e471cce63e5391e096b6039c539a0cabd45592 + last_write_checksum: sha1:bd63d9369d0ba5354db8f79285d1b4cce38d82b7 + pristine_git_object: 1e5ebb30c34054343730283bdfe2848fc239d3a6 src/glean/api_client/models/collection.py: id: 1c8d82c8f456 - last_write_checksum: sha1:49e18d8fb5a4231775ea06ee9aca86c9a15fe87c - pristine_git_object: 6bb4995ea8d9675ab983f6abcd6b201918819ed2 + last_write_checksum: sha1:09ca5789d07dab0a0de56a18f4f5d1847f192ffe + pristine_git_object: c5adc9dd33998fcea9f2f7083c1eeddfd73f446c src/glean/api_client/models/collectionerror.py: id: 12c5118f6fba last_write_checksum: sha1:cf7a03f5a1bd25339fdc3b1e8c5f32c8220b7f68 pristine_git_object: 408d04c7efb648abee3688da44dd3488d75c6a9a src/glean/api_client/models/collectionitem.py: id: 42e837b333ec - last_write_checksum: sha1:0ed5cb53712a6475a259437a0f8e6c3684d87303 - pristine_git_object: 0cbe6492422c383011f3f964c79271e6bfd5b90f + last_write_checksum: sha1:d4286ca9b30334770218c142509bbb32096cd236 + pristine_git_object: 7de678f2071fa110a6635a50b5f8bd7501871793 src/glean/api_client/models/collectionitemdescriptor.py: id: 8211e595e120 - last_write_checksum: sha1:c9d390805c830d49e727d3556d1d20ef80c13961 - pristine_git_object: 6642f487e16e9edd2360cbe8ecd1f615d648e5bf + last_write_checksum: sha1:ac664617f110fc79fb6cc1c16018076568557b3b + pristine_git_object: c35a23b48a712772c0221e8f4e8b0dc92d510210 src/glean/api_client/models/collectionpinmetadata.py: id: ff51c8a765b6 last_write_checksum: sha1:7fb4960f3ab9bfdfd3d1ae54f2b8be79ce48a4d0 @@ -4958,64 +4966,64 @@ trackedFiles: pristine_git_object: c440d47330824d6e174617b25ee22c54055f6a7e src/glean/api_client/models/collectionpinnedmetadata.py: id: 20fcaec70c41 - last_write_checksum: sha1:be7edb98638bc572edbbe0874467e0640d50534d - pristine_git_object: 2e54e6a4236658c73900fd253a11f87476212933 + last_write_checksum: sha1:b9b20107de1bba87aba567863891852eff7040cf + pristine_git_object: 639dac146479aa9dcb0b8b570d807868cac6d093 src/glean/api_client/models/collectionpintarget.py: id: 74c6f50fcb8b - last_write_checksum: sha1:e5004349241e75689545b525384e5fa74a32b01d - pristine_git_object: cd3f16f2cb0e21b872739e71eb928011a2db7174 + last_write_checksum: sha1:1509d7452d7241df9af8e92e8cd87ace4fea6932 + pristine_git_object: db0299be7060d761a3068d2583dd0b0ea7cc1cbb src/glean/api_client/models/commentdefinition.py: id: 7a510d4ae16a - last_write_checksum: sha1:f271a75d2302080cfc3bb13f75d8b96d5aee3eab - pristine_git_object: 121b9722f9045ff05a67cffb43505721dc0d36ed + last_write_checksum: sha1:6826e033d7f4ef66b8a2637a1b3a072ee44be147 + pristine_git_object: 4f756eb85ab5759009f3ecf1ecfddc331affb3bc src/glean/api_client/models/communicationchannel.py: id: 097ef2bc37d8 last_write_checksum: sha1:9240b0a6b43557df8f3d2c0db453b484162271c8 pristine_git_object: 36d9d830a9c46f6addc6a92f828ccdab8d18885f src/glean/api_client/models/company.py: id: 3fac904660c4 - last_write_checksum: sha1:def2aa60670960e10e8aa5c7565337c020134113 - pristine_git_object: acd9da9d2661cef93af2800856d5e4303b511fe9 + last_write_checksum: sha1:2b290c60d135b73e619d686c11b4c04155b23fae + pristine_git_object: 88577d5d3ea63162b77cc1b28a96ac9856b97b1f src/glean/api_client/models/conferencedata.py: id: ca82aa4c03bd - last_write_checksum: sha1:26c738d7e9a9b1274272c129797492ce2e753acd - pristine_git_object: a9f6b4b4f0770875017b146f8ad1972598d387bf + last_write_checksum: sha1:4a0af63ec9c1b661dd10829c0df49f71942785f8 + pristine_git_object: 4fa816c26452119e12a60fc6529d23ef94324135 src/glean/api_client/models/configurationvalue.py: id: 78d9bb1ab4a6 - last_write_checksum: sha1:b6cfb7404ae94095d01f3b9e570e72a3ff765451 - pristine_git_object: c7458c5dff426902019aaa8953f43e746bec5bc9 + last_write_checksum: sha1:896d26e1a0d2fe75b66e096f91c032ee149070fb + pristine_git_object: dfc97bcc85edf47892d47ca5dcc97b2936c51433 src/glean/api_client/models/connectortype.py: id: 12d50eaaf8ba last_write_checksum: sha1:adbdd18a3d0dcab7c1a8fe9abdf49ce8a60eb8d6 pristine_git_object: 8e99dab8e7283ea64e5dc2e7f770999ddcceaef8 src/glean/api_client/models/contentdefinition.py: id: be5d817e66bb - last_write_checksum: sha1:2b3be2d484b398dce5a73f782b205cb2080abae4 - pristine_git_object: 03e7f7a29e5b2a95e134ffd8e77b2543e332cc77 + last_write_checksum: sha1:f389bb2ac6e1c2dd95849f346614deeccac16936 + pristine_git_object: 5dfe7247a4030a10a541a4895400be2a457311aa src/glean/api_client/models/contenttype.py: id: 7a299752fd19 last_write_checksum: sha1:d9e2eaed594a998478317ec74724140c7df3c184 pristine_git_object: d2bd38375fba44565353db89de9b9740754438d7 src/glean/api_client/models/countinfo.py: id: 2ff7e2d8021d - last_write_checksum: sha1:5203cc6e6506bd574e163b2b18d879c4b19c8a99 - pristine_git_object: 83d1aa3b243827c0f27678d94a209aac0a4417b3 + last_write_checksum: sha1:67dd60e46124b06332d4c43a581a60a286b52adc + pristine_git_object: 3b06b4e5441896172671c4d9d904c52c99a7e25a src/glean/api_client/models/createagentop.py: id: bca1b44cf62a - last_write_checksum: sha1:bc9b540e390ca872fe40d0188311660a039a3881 - pristine_git_object: 4ed4192dbb6da328182b40d002360698706b872e + last_write_checksum: sha1:2b58fe4d327c510f07d271b4dec9e6cb8b40ad37 + pristine_git_object: 104072fe6f2a70921d8227580ef451d88884deda src/glean/api_client/models/createannouncementop.py: id: bf2cd073d77d - last_write_checksum: sha1:a636cc5aa94d72878446b69b6ca0e3e91482de2c - pristine_git_object: f07a4fec86ab542f0ffbbb15bbff78c713d8642e + last_write_checksum: sha1:c7bcde5b143cbfd0a306b4b0dcaace64c61f5b3f + pristine_git_object: ee68d4728779425182517ed01d62cf4fa7ac0572 src/glean/api_client/models/createannouncementrequest.py: id: 00c8eebb1b76 - last_write_checksum: sha1:115327b63baea457b53722ceed3ced22ec3faa10 - pristine_git_object: b7cbb6c5f423e129af176c18fb43bc9ccf26645f + last_write_checksum: sha1:ea3e6c84cd35d9094881975d76f35fed07a6ba04 + pristine_git_object: 98b1032bb4857bf57d3f81994e152570bb559a7f src/glean/api_client/models/createanswerop.py: id: b638c379e2fc - last_write_checksum: sha1:58f9ce98eaced362195574b76b2e07d15a94399e - pristine_git_object: 6e7cc76309ae26967744adc2cf0f2a872e541e3c + last_write_checksum: sha1:af94509e9cf35295bba10e9e5856ee3344a8b1b2 + pristine_git_object: 37b1161e2d4d86050ce43c1eff4023dd543b3025 src/glean/api_client/models/createanswerrequest.py: id: 80adf1814683 last_write_checksum: sha1:b59b546cbb77e7d99b7bc76f1785105ccba73cbd @@ -5026,88 +5034,88 @@ trackedFiles: pristine_git_object: df588893beddadf98a24dce5a51a3d411650a937 src/glean/api_client/models/createcollectionop.py: id: 3610855a3415 - last_write_checksum: sha1:d9956fdca945a40dd4c1bed5c63135a40667dfd3 - pristine_git_object: 3b504b1b99dfc8ce348317d6a57e69105625095c + last_write_checksum: sha1:acfb03ca1b128115ec190e13f80f74ede76ea1fb + pristine_git_object: c4398c6da6a1bee8be3930eeed7e882440755327 src/glean/api_client/models/createcollectionrequest.py: id: e39b15f0ef35 - last_write_checksum: sha1:560db966fd538b24ebf2b840232227a5fd3f8eff - pristine_git_object: 8ed97b034d81f04d3bbbedfd3fc16220ae260e6b + last_write_checksum: sha1:64100b2f96684518b2b8a645cee7f7d84e4ad70d + pristine_git_object: 6e35a6ed4e2e998494ecd97383c774f5ff55300e src/glean/api_client/models/createdlpreportrequest.py: id: ead547f06612 - last_write_checksum: sha1:210a43e865c34e1d7924981e78f839759c1b403e - pristine_git_object: 9de15343384fb845d5fb9899558aacc78ae87285 + last_write_checksum: sha1:07ce4107a360f3b63cba40394cbedba560ace27c + pristine_git_object: d3c1d8532a890341956a94934600bde320bab411 src/glean/api_client/models/createdlpreportresponse.py: id: 12ae9b936795 - last_write_checksum: sha1:05354e5f55b3b4f1ca7b4d02c193923c92229316 - pristine_git_object: 2fecf5afae99509ff096862662ce44755ca93042 + last_write_checksum: sha1:0adb9d152964975115a3be0fa90ff46e8ced6910 + pristine_git_object: 4e9b28dc36cda6329ceabb90f3a58fae0b89cfcd src/glean/api_client/models/createshortcutop.py: id: 3f448216dcfa - last_write_checksum: sha1:b7a09a333e2d0631b5fe661446a3bce66ef37a5e - pristine_git_object: cd9cab879f6da0da1750e3923346e2e8c1a4c216 + last_write_checksum: sha1:65ea32e1348757a352d17c120b4a4ca7bc94705d + pristine_git_object: ac455c572b62fd59110ee3fc7e3e4af11146f2b7 src/glean/api_client/models/createshortcutrequest.py: id: 8f0d2ac9fc83 last_write_checksum: sha1:84dca7fa3be62505699da379896c138737e35774 pristine_git_object: 828bb6b941a861a6ea3a0d3b8aa671d00566a4d0 src/glean/api_client/models/createshortcutresponse.py: id: 65fdd9436d15 - last_write_checksum: sha1:285ec74a6e451aa0a6698d663cf501dbd0a24bd6 - pristine_git_object: 7fd2e6eb90ed6027e2647312ca3550abc0292b74 + last_write_checksum: sha1:62983208b56c1891dff7108cbb8bc2c111d69577 + pristine_git_object: cb0092950a458a3f21cfd2df1e859909490256b8 src/glean/api_client/models/createworkflowrequest.py: id: d084964549e1 - last_write_checksum: sha1:8575c9df02747f481fa8723f4a985c0bded046a3 - pristine_git_object: 206d00f37547917505f9c5a54aaffe7dc6aaf224 + last_write_checksum: sha1:82c63ea78bca9037fb60a24a261aed0f347fdb83 + pristine_git_object: 919884c7285bac1ccf839dd3bf57fa5faadf96ff src/glean/api_client/models/currentactiveusers.py: id: 0a092cf79074 - last_write_checksum: sha1:989717f16473a1c661194af34f9940eb00a26e01 - pristine_git_object: 1236b65335edafb09cc59136ce8049c614a1a289 + last_write_checksum: sha1:8b744e78f79ff949f0e328be6878e51402125248 + pristine_git_object: 44bc423c9c00f933a5a4fbb2e7ce57d4b70dfb9d src/glean/api_client/models/customdatasourceconfig.py: id: fb9b6a1441c1 - last_write_checksum: sha1:61cefdb4a183e04e426c1166056354a466c6380d - pristine_git_object: 0b728d6fc411a1f8d83643b518af6e5502ee51d0 + last_write_checksum: sha1:b1a5cf461ec2183213166063caf15cabf521cfaf + pristine_git_object: 587acb9dc44f81d15f18c70be91e7ebef56e1379 src/glean/api_client/models/customdatavalue.py: id: 956eba94ae1a - last_write_checksum: sha1:76c80857d8b125cc75d3da0da1d2f489dc9847e4 - pristine_git_object: a07d2e8123855a0e7ee36cde832f24a5b3ce0b52 + last_write_checksum: sha1:594586866475be788f97be6a379a57a1d08bd6c1 + pristine_git_object: 542dee3069053e952c62ea8cc0259f19d8f61a8a src/glean/api_client/models/customentity.py: id: 3c7bd33b38bd - last_write_checksum: sha1:9f9097039509e6ee5cfc81dbe56e4c6353eadd72 - pristine_git_object: 6cb844ccdf3c17c7ded504794f429fa55d0a2c2c + last_write_checksum: sha1:754e0de6cebfd401f5f562b8397f1bc42869d546 + pristine_git_object: dee0aefa8f71ab1ca02e5527caf390bb0625aadc src/glean/api_client/models/customentitymetadata.py: id: dcf591f96aae - last_write_checksum: sha1:8bbcd0ea720d666c10f9ef03c786e367cc8814f0 - pristine_git_object: 45958c271f08ae88e33e9c29f99d8a686609ff61 + last_write_checksum: sha1:507853946c6fa746c09339eb27eac2daead3b04e + pristine_git_object: 76f0acf5540c88ee80a8677ebc93b0f4405ead23 src/glean/api_client/models/customer.py: id: 1fef6bc6efb8 - last_write_checksum: sha1:e89622df4b4eebfcf6d695ecd8e4bb1323df2caf - pristine_git_object: 7154cf22a51ade828a632372eef3943187a2def8 + last_write_checksum: sha1:e15889159cab6066a49b258fbdb43ecbec77ddbc + pristine_git_object: 1a4ec62d14dde45e05356484bee8492059e8f352 src/glean/api_client/models/customermetadata.py: id: c2d608b51a0e - last_write_checksum: sha1:59b2c20c2f543014a1f621828edb52fed77ea5f1 - pristine_git_object: 35adf587037b0c451cb4f860d6b47641738df086 + last_write_checksum: sha1:40dd94b0d88582127f892ff145a271b109db29c6 + pristine_git_object: 437287a7c5f41a68735c7f4f0936d40619d5c719 src/glean/api_client/models/customfielddata.py: id: 0fad2537d170 - last_write_checksum: sha1:dd89903e9fb786b24fe2ab83ff58b332eca9d48f - pristine_git_object: 5e85ebbf44a73b4712ff906c4f1dfd51478d0d7f + last_write_checksum: sha1:d7df453bc5957d71083287ac800f3dfbcb845c04 + pristine_git_object: 2991011392dc788a0bed955c87626c31d5ada84a src/glean/api_client/models/customfieldvalue.py: id: 1dd25f7f2a34 last_write_checksum: sha1:679f5b4ca7795d50d45ff39f44787382a42aab6c pristine_git_object: e799e19282d5658f1d473ac884ec49295659085b src/glean/api_client/models/customfieldvaluehyperlink.py: id: 7e45aa49655b - last_write_checksum: sha1:d8b517f05e2f6b20273606618057177d7baf276a - pristine_git_object: 44931d1280ca6b9a49d158a78efdd0b5f1c2b3df + last_write_checksum: sha1:6afa22933e0b89d0b6590f9ffb4bb8e27039fc7b + pristine_git_object: 95bab0db5f32a058c352fbc8b59d159219e8d54d src/glean/api_client/models/customfieldvalueperson.py: id: 3a124f20f649 - last_write_checksum: sha1:2c9d0778dbb0f85662e8a390171128f28908718b - pristine_git_object: cb264f2b46ead516ead3d08277dfbccb85fc0790 + last_write_checksum: sha1:df705243f9e79e92a35f3149732e348b973b1194 + pristine_git_object: 62652461f681ed6225655f587d0b20e84a5726af src/glean/api_client/models/customfieldvaluestr.py: id: a3569fe0d790 - last_write_checksum: sha1:7b22ca993cde9d540e85b97f71afcbb1b3dcb0e1 - pristine_git_object: 68f0fa1e9afe47831a8611971f0c59435631f08e + last_write_checksum: sha1:16549cfe66eae5dcac66d5e09d24e8d459764bfe + pristine_git_object: 8f2a8ff50c80f08f98a28b3e10f89584502d2cde src/glean/api_client/models/custommetadatapropertydefinition.py: id: d18ced34a833 - last_write_checksum: sha1:8d7e752f324e5dfc065eb0cf721bf797044a6d84 - pristine_git_object: 26d09515c3d1f43a197c4b499d24bb5b4a085a66 + last_write_checksum: sha1:88d22222f0e5cb8e0e71e63ef81a57ec9759fa2a + pristine_git_object: 497f493cd727c7a6b39fc2f253cdc083f5e24e1b src/glean/api_client/models/custommetadataputrequest.py: id: 72509bb43d50 last_write_checksum: sha1:57c69961ff4b06e1b4bfc2fb2a87e20ece451415 @@ -5118,24 +5126,24 @@ trackedFiles: pristine_git_object: 13576c2be6dbdb1bd7e93acd7f34b31dd4c0a99e src/glean/api_client/models/customproperty.py: id: 86c08b8668b7 - last_write_checksum: sha1:291c2842c21527001b15d0178110e67609b638c2 - pristine_git_object: 74cc710e0b93d3579db37ebb3e787d5a03a6210a + last_write_checksum: sha1:35387c22f2e226eadade9d723a0e6991d467fb06 + pristine_git_object: 4b3276bd47ee93a7760eaed9c47e79e6e028cbbc src/glean/api_client/models/customsensitiveexpression.py: id: 2268022ee406 - last_write_checksum: sha1:14109c3cfd41d0683caccb867ef4ff7c562931b1 - pristine_git_object: 4d5258721ff717ef3e4aa8fb2f78869a1edba5c4 + last_write_checksum: sha1:310f42d32e637724b94b2908ed652b4483fe4db5 + pristine_git_object: 952a8e548367516c90320ddcda95e73906a49731 src/glean/api_client/models/customsensitiverule.py: id: 80d2ba78e110 - last_write_checksum: sha1:ff15cdd2af8454e5232b1b86b0313a85cc3e5c1f - pristine_git_object: c767e33d6eeb7ae8b29d69789002319a9a3d8931 + last_write_checksum: sha1:5b8e246e93c3c48f348f27fcff362ab6b29ab855 + pristine_git_object: 11da82b159df9415f1948c74f22c16639f1a2d17 src/glean/api_client/models/customsensitiveruletype.py: id: fbea8b8f6a75 last_write_checksum: sha1:ddbdf0eb4821466cfe7d82ae3116a42da0b8f8af pristine_git_object: b273ac9824d6a273765462dfd73483c75c4c46c8 src/glean/api_client/models/datasourcebulkmembershipdefinition.py: id: 8e48908cf200 - last_write_checksum: sha1:43a938decc4fa2a720552f9938bccce9eb34ff5c - pristine_git_object: 31e0065c79f1e101f367ad006a220ecd77feb8c5 + last_write_checksum: sha1:c082284494a2ca7b00822de810509b52cbc288f5 + pristine_git_object: c55a3eb9da4c2de303a25c9455d7a38b3536ea5a src/glean/api_client/models/datasourceconfigurationresponse.py: id: e9a385b637e9 last_write_checksum: sha1:69a5dd2f67380cfe0fa0bc5c37eddb5796560ffc @@ -5146,8 +5154,8 @@ trackedFiles: pristine_git_object: aa0eff706ec10f1be7de240201bf023fbb9ef20a src/glean/api_client/models/datasourcecredentialstatusresponse.py: id: 074326c64a8e - last_write_checksum: sha1:a1ad12bdaf0facaabae021755bb9890ecd06c2a4 - pristine_git_object: 150f1a4855d49f84282f7227f6e5c5b4c59a0ce1 + last_write_checksum: sha1:0ed27592fc5aeae93d37a47b483e38dd89135b57 + pristine_git_object: fa34ee3396c0cf80ac2ad53d1f3d344d35d34483 src/glean/api_client/models/datasourcegroupdefinition.py: id: f7c84882fbcf last_write_checksum: sha1:324acffd92e4e0753b7c3238f17d41f6ea66d5d3 @@ -5158,64 +5166,64 @@ trackedFiles: pristine_git_object: de6cd8aaa59ff7ae08ba5535508b72229ddaba56 src/glean/api_client/models/datasourcemembershipdefinition.py: id: f881717d8c97 - last_write_checksum: sha1:55c4d00beb916ccf371479414929d8dee2a77259 - pristine_git_object: 4243bb1bdfbb0129f30faa1db9a9cfb39ad707b8 + last_write_checksum: sha1:e84c07c52e98a30dc1cf93d526be48130211a0e9 + pristine_git_object: d2625540dc3953ad2d3a4f56de9444cb852f4279 src/glean/api_client/models/datasourceobjecttypedocumentcountentry.py: id: 783986f380cb - last_write_checksum: sha1:87b6cdf3e69948aab8760e557f97f3a7f89db641 - pristine_git_object: 306d5d5b95306ee95732096d976082188de779fd + last_write_checksum: sha1:8b8566c528640a68140745d2faa29527febde680 + pristine_git_object: 9ccd1b8081afff0848dc8188f8373d7409e7140f src/glean/api_client/models/datasourceprofile.py: id: 456012f17305 - last_write_checksum: sha1:69eb65b9262dd4540d6d17454ec8ae20c5a1c5ec - pristine_git_object: 4a54a6d305e50cd12350ed991fcba1b7e7d17197 + last_write_checksum: sha1:b4a5b37892e40b95abbf787b2543363343f1fd9f + pristine_git_object: f49c16fd62f33ddece745da1d46902f40e2495e9 src/glean/api_client/models/datasourceuserdefinition.py: id: 38b5026bf17b - last_write_checksum: sha1:e47a04958803e2eaea2bc54aa060dbf29911e969 - pristine_git_object: af754d51335f0f6779d01dd8b9da81f01cd0d32d + last_write_checksum: sha1:670e8dd77fe6ab23073b6590acc0818fa518589d + pristine_git_object: 0512610c13e96f059adea12df8bb22efb8907afe src/glean/api_client/models/debugdatasourcestatusidentityresponsecomponent.py: id: 8d269f54a53b - last_write_checksum: sha1:70298c03c6c7b789198a722a022cdb99c7ed91e1 - pristine_git_object: a027cc7e75d3e2813ea488dd3d22fb06e10ff922 + last_write_checksum: sha1:58784964c62d6261e1785b568a4c00e448da463a + pristine_git_object: 2a677cbdc63db922c01bd488042cae25f344e917 src/glean/api_client/models/debugdatasourcestatusresponse.py: id: 706c4bfc6802 - last_write_checksum: sha1:8f8a32dc749ea17fc47279bb015a94bdc7d844df - pristine_git_object: b77b38550bef6b1680c89edfc693fb20a17c362a + last_write_checksum: sha1:b6ae88bf85ab9da00d995ef533090dc1d09ee928 + pristine_git_object: 6fd3f5c1856c73c1b2086b3e69f7f398651cbcb1 src/glean/api_client/models/debugdocumentlifecyclerequest.py: id: 1d3a8e2b78cc - last_write_checksum: sha1:389a78814a604290be72f3706fc04d2453cbe9d0 - pristine_git_object: 97b74290423c23c0708d6f16e0b22cf97e866fb3 + last_write_checksum: sha1:268dcc85d35220cfe145c22b1165bf67a2379869 + pristine_git_object: fed4b76331916b26eec8675b7f7a449dddeae508 src/glean/api_client/models/debugdocumentlifecycleresponse.py: id: 4f994adda409 - last_write_checksum: sha1:c0d188e5c8c6f084fe4e1bf3095904ae8c70fbad - pristine_git_object: 5e6ded73b7c3b1cf03aba21d479d2e5c35f0a914 + last_write_checksum: sha1:8e825b13e5c8fa9d796d5fd953641ef99241d022 + pristine_git_object: e834855724ee502bd58923864399a0d25fae26b3 src/glean/api_client/models/debugdocumentrequest.py: id: c27a3d5acb34 last_write_checksum: sha1:994d4388bf08f2a89c7891aeb7d98c7bf67c7215 pristine_git_object: dc89fa28dbc67a12a81647f926e4f07bccf94a01 src/glean/api_client/models/debugdocumentresponse.py: id: 402ae6981b99 - last_write_checksum: sha1:98e1148fdf2c7e85c766977fcf1df2a6bce8d316 - pristine_git_object: 3efc18aa3f44b3b9af44d33f4c1ffe5b9a21d971 + last_write_checksum: sha1:5ee735168828adf8a10d01838d3d1e7bbae8c52c + pristine_git_object: 8ed45a9cc3d0abd9eb0e1853859651d9bb8a9a06 src/glean/api_client/models/debugdocumentsrequest.py: id: c10b882fec7e last_write_checksum: sha1:7905ad4bdc31857de0dcd02466e8741efd5ac14f pristine_git_object: dbef6d989965bd13c1bf888bdc73871fb6a822e0 src/glean/api_client/models/debugdocumentsresponse.py: id: 07f2f669954d - last_write_checksum: sha1:dbbb300623addbc206e7e0f9c85b56e1fe0753bf - pristine_git_object: 54513fca6b64242dddb8c3e49cfd2bbadba05d93 + last_write_checksum: sha1:1e648ff9ece490fe755153f139da53c8a3029c7b + pristine_git_object: b5c31289c0aaa45fc10ba3492a12c802bc3069c3 src/glean/api_client/models/debugdocumentsresponseitem.py: id: f81e17f56601 - last_write_checksum: sha1:a6baf222ca5b27b9a5b07ccc8aad4abb50ff18d6 - pristine_git_object: 63165771269c45faaa9c26dea3845e3f0697a10a + last_write_checksum: sha1:2286b47109ca22e4a27b942906310810b7a3bf94 + pristine_git_object: 5e76f5a41b194d0b5d15a9a3ea7b1c9338999340 src/glean/api_client/models/debuguserrequest.py: id: 59058d67caa7 last_write_checksum: sha1:9eecafdc03b80d7cea180b4612ee80170559718c pristine_git_object: be474f543698ca7f9af69caa5f85edd475c688f1 src/glean/api_client/models/debuguserresponse.py: id: cb3193f272e8 - last_write_checksum: sha1:39d67bf5c67156a043f75be97f2f9596d07e5f1d - pristine_git_object: 43e28fa95ff536027859954f4d65b33962eeca23 + last_write_checksum: sha1:e134de4c6a79253dfda077f06853672105c336b2 + pristine_git_object: 9828f32c6460ffefa512897afe4514dcc07b0599 src/glean/api_client/models/delete_rest_api_index_custom_metadata_schema_groupname_op.py: id: 9f7d08808230 last_write_checksum: sha1:a8d7e01378c2343beedb515b67bb21487b24c543 @@ -5226,84 +5234,84 @@ trackedFiles: pristine_git_object: 74b5dd9e6a820b6230218d335277e1f270e3bf4a src/glean/api_client/models/deleteallchatsop.py: id: 70e1ea929ffb - last_write_checksum: sha1:369fc0d61a4954709a19de273ca7af3b5609ed79 - pristine_git_object: cac2a62d4d9eb0a34282cec2352d0aeb9ada2114 + last_write_checksum: sha1:f4eeb0330518798f586b13af4bccc83587aaacab + pristine_git_object: 4354c5b7783598b93a3a744fb33dfe8eba2b05eb src/glean/api_client/models/deleteannouncementop.py: id: 85d058f754cf - last_write_checksum: sha1:751635bf690f307b3ecffed6c060ebb4241f2594 - pristine_git_object: c7b39677713491caa626b72d5ed36e690db4c46c + last_write_checksum: sha1:9491e8364b8f98a8febc0d587b37cb09e0c6e4cb + pristine_git_object: 3c4220fce4448677fa779c0e50c373e719d1f11a src/glean/api_client/models/deleteannouncementrequest.py: id: 6a5ffa31b42c last_write_checksum: sha1:b4aafccf05ae6cf9e5bc4d7687cff0de113c8fb5 pristine_git_object: 7531e633f00e150f21ffef89a0fa0edf72efe34c src/glean/api_client/models/deleteanswerop.py: id: 02d7a4c6a024 - last_write_checksum: sha1:4598916a9173b30bbc23e3d6c046f14778eb0539 - pristine_git_object: af7a16d7d1101d14496145832afa36bc989dbc4b + last_write_checksum: sha1:bade6d6032b7424716ed61f30f1d50f6db1032db + pristine_git_object: ecfb54f607f07234a3d3a915abece5a9f8712f89 src/glean/api_client/models/deleteanswerrequest.py: id: 2cacee52b8bf - last_write_checksum: sha1:f320c2a6b1551d50b75345ee71387bc8017a1668 - pristine_git_object: 5c83ec3e53e6de8d808f7ac6d380233fab5e1f5c + last_write_checksum: sha1:7ba0036aa169a18f78d65a1f536cb37a1e7c6ff9 + pristine_git_object: 908411388d7dda4dbaf2aa6e2ab7aeb0a5c05817 src/glean/api_client/models/deletechatfilesop.py: id: 2e2bebfda978 - last_write_checksum: sha1:587e5fc8521761966725c6ec75c53b1b1d67a13c - pristine_git_object: 01f8e688236c44261b9811a03e8ba2ada07ac61d + last_write_checksum: sha1:42b5fe0bef1d56f7878d184028e56c431bbaa92b + pristine_git_object: 07f79033567b5e8e9365feb1086787cc5b21587c src/glean/api_client/models/deletechatfilesrequest.py: id: 88da4a9374bb last_write_checksum: sha1:b810a9543d244e127ae67a849c594a6383b935ca pristine_git_object: a6c201fa600c95a7c412dada776c98a69b3649ce src/glean/api_client/models/deletechatsop.py: id: 2e921316a955 - last_write_checksum: sha1:f05a6eccda7fa3c44e7eb0d27cc48553433cc103 - pristine_git_object: fc7d30831ad7679ce3d5b2de1fc517a3e03ef194 + last_write_checksum: sha1:ac3583ffde40d1fc8beae01359bec42b6eed2209 + pristine_git_object: 362885ccedd852dc2c5fca92b5461c84c1e7157c src/glean/api_client/models/deletechatsrequest.py: id: 2d0590f39c7e last_write_checksum: sha1:ea5fff9198321524287177fc1169a5a4e02d486c pristine_git_object: 7a5dcced0cbfdaa71c354942f76c8b56e06973ff src/glean/api_client/models/deletecollectionitemop.py: id: 503debf60d9d - last_write_checksum: sha1:122d02a8d5ad93e3702a824bfd0a6ec31de8e13f - pristine_git_object: 10966910072d0ff5d174f2fc0dc21e58ef7cbb49 + last_write_checksum: sha1:aa943b4121292b32b632027f113bdeb916f4771f + pristine_git_object: c0eb91b6502aa88d60e07d22df85fc31afebce48 src/glean/api_client/models/deletecollectionitemrequest.py: id: 396cb5c63bc1 - last_write_checksum: sha1:297e26618b55c0f5602109411590c82e45532643 - pristine_git_object: ac801e8c995b381b772c42bde8b569ed2eef17d7 + last_write_checksum: sha1:011a9e648c18c39046ffa213dc59a99c2482f53a + pristine_git_object: 0bdbb0a1287ca72b922b310f114f18deeeddf4f2 src/glean/api_client/models/deletecollectionitemresponse.py: id: 719afcdd05e1 - last_write_checksum: sha1:b7b33418baac21d35ac06e818972e16dddb70736 - pristine_git_object: eb2315c4a6bb510cdd4fbd6ee3ca9d652f201cd8 + last_write_checksum: sha1:3e8e1461e945c4aa4546c4009652760a7ca63e17 + pristine_git_object: 07990e31aacf34603fd3a009837dea60b832a2cc src/glean/api_client/models/deletecollectionop.py: id: 1fbb23e9ab7f - last_write_checksum: sha1:fc1f5117883bd14396e4ff16f4f7f1a7ce5db3b1 - pristine_git_object: 8721ecb5719d57c1c5290dd4351eb3155c2c8db9 + last_write_checksum: sha1:97a5b7613742c3d56eae0c896f7ca074ac80c75f + pristine_git_object: 025ee3597995a4fe2d7264e0efeedde8e348282d src/glean/api_client/models/deletecollectionrequest.py: id: 92b4c2c55a81 - last_write_checksum: sha1:18b903cd96816d11ae375241231d9f0853039104 - pristine_git_object: cf68ff3b3686a0e659dd9d527b967ad79cf96297 + last_write_checksum: sha1:dc4558dc468ee593961aa2ce2c3f624f6f97decb + pristine_git_object: 638726fb6df98b64187f4c71ecd1db77343a8b91 src/glean/api_client/models/deletedocumentrequest.py: id: 30a742ac49fd - last_write_checksum: sha1:a052b03bfb19b35a12dc707c11d21cfadc26573b - pristine_git_object: 3fb67bc981932021022fba62d26bc33e884f66f4 + last_write_checksum: sha1:fe07b68081866c0fdfd19ecf88841c73f6e2a3f4 + pristine_git_object: bf7f79f064d898659e054a80948cceb3fda6c8ed src/glean/api_client/models/deleteemployeerequest.py: id: c26f5e141c8e - last_write_checksum: sha1:4dd432594034522a7391b632415666b8c149843d - pristine_git_object: b413b5163e6209c0e806ba56a92ae156a76594e8 + last_write_checksum: sha1:ecb9a91d119e32c21c052b7fa18ccb9e388fbe88 + pristine_git_object: 8e5879bc43f7a444a11b71b375dec508ead2a7a1 src/glean/api_client/models/deletefindingsexportop.py: id: cb139c7f368e last_write_checksum: sha1:1236b4c0a062a8cb3a931b82a1aef3dd5cb8590b pristine_git_object: f71666c1c1f089fdeb1bf101c97ace1d6c547539 src/glean/api_client/models/deletegrouprequest.py: id: 6f2a57e8b635 - last_write_checksum: sha1:3839469d5974ae53924f5a60a5d523009670a44d - pristine_git_object: 651551f3c1131a18e4599e822f75acc5042f8630 + last_write_checksum: sha1:dbc6cc2526be291082a34bd8a28fd97ee607bd92 + pristine_git_object: f27a32a777c4bf66921263dbde280bb49e1c65f4 src/glean/api_client/models/deletemembershiprequest.py: id: 506e49c72483 - last_write_checksum: sha1:8d41a4313c653936ce3dd23d10ac4129d5515def - pristine_git_object: 60f59a29f726fb7c70fb5494553b6c183c9d089a + last_write_checksum: sha1:bd4ef5cb79c1b1ffc7dca6e14ad6677c3be52ffa + pristine_git_object: 020f2d18ee864aee68d9d6684b3dbc92ee7a50ed src/glean/api_client/models/deleteshortcutop.py: id: 48c5f989a2b4 - last_write_checksum: sha1:d40c8bec32037531625e20f6b377424f7c05da8d - pristine_git_object: 5862db4795db83a0e2ac2a163c63b16dbbfa6baf + last_write_checksum: sha1:d6c8185fc0d321709715a5647329d674cdeccfd7 + pristine_git_object: 4e7325c8c09f5830fd0c2e8e540549634ee4d2b9 src/glean/api_client/models/deleteshortcutrequest.py: id: aa4724c9617e last_write_checksum: sha1:8187e9166aab564f906ca74323a65e89956244d5 @@ -5314,64 +5322,64 @@ trackedFiles: pristine_git_object: d8150a4165d730c9a1ef335adc9459a0eb625a90 src/glean/api_client/models/deleteuserrequest.py: id: f32055902e5d - last_write_checksum: sha1:db790fffc0ba0e89bf3885f0cd62670233b8da34 - pristine_git_object: a8dd578b52a5f43839472aa334e1a4078c068b80 + last_write_checksum: sha1:082bb4ee09ef799a24268ffc15e2f3ab3b7befab + pristine_git_object: 0f3379f08f0d11b924cf030b143c017ab0577122 src/glean/api_client/models/digest.py: id: 4fac29d7abb0 - last_write_checksum: sha1:db26bf2c5feec4127083fc67bfbd2a00fd7058a5 - pristine_git_object: 432716a8c77136901868139929fe3bed31c7891f + last_write_checksum: sha1:f904d0a031537e7d8528d02dc9c9fb70625ecb62 + pristine_git_object: c021928824e4817175d94bc51204cbb6e280da58 src/glean/api_client/models/digestsection.py: id: 35356f6b6146 - last_write_checksum: sha1:02e35c9aac817d24447212c13a7af801da601775 - pristine_git_object: 17ac661e03911171207909c19f543d07bf8317f0 + last_write_checksum: sha1:f3329511d36aed2ca1ae218b18ff1099bc42b4df + pristine_git_object: 9ea2598f829c21dfcaa6a12fafc6beff7f2288b3 src/glean/api_client/models/digestupdate.py: id: 604c4e51476b - last_write_checksum: sha1:62e0cba5f2cd591fa2cb864650785c4b5dc9e528 - pristine_git_object: be8228945bccff16c400c65e856b3e7d57fe3be5 + last_write_checksum: sha1:6bcb2d99b12264168cc6b6df29fba36b56f48833 + pristine_git_object: 47698e8f70155a5b005ee1fbf159c1594139b6fb src/glean/api_client/models/disambiguation.py: id: 7223d97bb07c - last_write_checksum: sha1:e0aa82a2c527386c86012464bb62533065c4b9fa - pristine_git_object: 68a5514fdfd10149d39bd7255cf9550fde9159ef + last_write_checksum: sha1:d37c11bc487b04f9a0919e81a957d37fa502e6fb + pristine_git_object: 9394aa929de144ef9c35de6ab0abafc5592a6c14 src/glean/api_client/models/displayablelistitemuiconfig.py: id: 93c058182294 - last_write_checksum: sha1:dbd7adee8f83eb2473c9142738129106f599c627 - pristine_git_object: 3e0031b797c3153b0f85b2d219b553fb6f259cf1 + last_write_checksum: sha1:c8c30ae7946c32f0c9af1301c293808fd9fb60a8 + pristine_git_object: 7a4d9259a0892536b3215b30bc2e95b310c9077d src/glean/api_client/models/dlpconfig.py: id: 5012b123f4c3 - last_write_checksum: sha1:4789ad373f5ae9af5b4fa555ba81fddbe19a109e - pristine_git_object: 7ebd464326086faec287c17dd0489079fbe5ed39 + last_write_checksum: sha1:431cc0f364d79ba77423bc87dc53ec93312a3fd6 + pristine_git_object: a0d4773061e38d753a71c8c34f16a698796717ed src/glean/api_client/models/dlpexportfindingsrequest.py: id: 8776242985ea - last_write_checksum: sha1:f1475d5cfb1750aba840c1ddb59267e0af14a693 - pristine_git_object: 094eec8965e6bad206cfd4c8a8d1b2cafb5abfcc + last_write_checksum: sha1:12b4eb0d9dcb72c33f017d490aed0a1425c7143d + pristine_git_object: c9e517122693f23e42f88c332a72263a306d9557 src/glean/api_client/models/dlpfindingfilter.py: id: 6ef2e5304df7 - last_write_checksum: sha1:5eaf62d5d1643f5e19dee2f12a161a1077ff18df - pristine_git_object: 960d3753214824587274ab585bbf1d0b1ab860d4 + last_write_checksum: sha1:99b807ce92367fb498b25136f2bca33939b93679 + pristine_git_object: b083f3669930b48f83d1ce454621b4b1eb2dc24e src/glean/api_client/models/dlpfrequency.py: id: f6f484c2d7a4 last_write_checksum: sha1:487ce5e7651214ea7906d0d4e74371544cc436f8 pristine_git_object: 334f894fe2a36391f40ff6831cfdc5aeecddbf21 src/glean/api_client/models/dlpissuefilter.py: id: a52d7e96ee6d - last_write_checksum: sha1:2ce2a3ec2fbcb99ab24c1aa18f738e77e778187b - pristine_git_object: b3f50e5fe3d2bd66a2a74d23e17b859ca88993ae + last_write_checksum: sha1:d469994039c6cf57385d36ea9ab1cae84381bc7f + pristine_git_object: f667ae79253afa91a50b8cf03654c6baeb33a7fa src/glean/api_client/models/dlpissuestatus.py: id: ef4c7e63fafc last_write_checksum: sha1:f09d760baab7e130d011d8e27adeffdf8f4ac6bf pristine_git_object: ee6c7d53a606382c02245c5f5e7359759e18ce80 src/glean/api_client/models/dlpperson.py: id: 15e2ffa25e1a - last_write_checksum: sha1:27cbf3c12e4030b22aa288dee8fe7e64c5bd3a5f - pristine_git_object: ee020352948bddad54865a2ec2a07319e050c97e + last_write_checksum: sha1:071262d3661e1e4016075a5104d9d73b00be29ef + pristine_git_object: ded766cb63e2ae3bd45758e60d8952a252df9dc4 src/glean/api_client/models/dlppersonmetadata.py: id: 3ead76577617 - last_write_checksum: sha1:cd0b82e98251470d360c1f48b82709eaabd26b2a - pristine_git_object: b3d764a642d07433b4682663b864d93d0436be6b + last_write_checksum: sha1:f6d39e652ad03403687df18d01d516d8f58cba2e + pristine_git_object: 0c2b4374c6a1932cd57677e6e24665bc2dd99ee8 src/glean/api_client/models/dlpreport.py: id: 6a534cac7e31 - last_write_checksum: sha1:38adf9732c5e7b0893042e971b2d6527a539c62f - pristine_git_object: ff433f126aea8fc5ad18c336f9e9370175059827 + last_write_checksum: sha1:9b06b1bfdff9ccecb1d3bb30c4be3769102e2f0c + pristine_git_object: 637828c2f65309ee5c1d94721f08e49869eb43f1 src/glean/api_client/models/dlpreportstatus.py: id: 4b288f23576f last_write_checksum: sha1:9e9bbab7ec6b06d3034ea61f19208cf15be3a98b @@ -5386,60 +5394,60 @@ trackedFiles: pristine_git_object: 212efae1a21283c3d96458029e9b64886d2100ae src/glean/api_client/models/document.py: id: f62889df4380 - last_write_checksum: sha1:a73296a815249b9e3fde674ed033d8dd56a2873e - pristine_git_object: cb56b4f3f3663839963a70c0f70b427e5fbc9933 + last_write_checksum: sha1:7641fed7936417be201deab16a4a1909c666614b + pristine_git_object: cf4c86eecf9804ee6afa4513f3b69160db638f0d src/glean/api_client/models/documentcontent.py: id: 5002c1dea323 - last_write_checksum: sha1:7e6e56c2b204cf60eaa660ed7097aecfe3e11f76 - pristine_git_object: 7a6ea0bf0feb7bb6f13045ca67007c9b73da4dd5 + last_write_checksum: sha1:9fd7a560a4f6d3f5b35f617de152e2b2af518f58 + pristine_git_object: e87d574d9aaf1ebefa7a59fc585161762bfb547a src/glean/api_client/models/documentdefinition.py: id: a1d959d6d441 - last_write_checksum: sha1:5a0df41c3a76aca7fc7683e9ad65ea7ccb1f73d6 - pristine_git_object: 1fa367c9949a6866dfdc4af3e9bbfbb88e308338 + last_write_checksum: sha1:d2604d78dd2562481b61661ead22baaf5f051809 + pristine_git_object: 28cb613dc14f84dd8133d9a6250391c867b5ddbe src/glean/api_client/models/documentinteractions.py: id: 1cbd7f0ca8c2 - last_write_checksum: sha1:d92834e811719017769e2d32dd6efdd79b0ea8b1 - pristine_git_object: 47ada2f991aa209a16297f5ccdac05ad4406d09b + last_write_checksum: sha1:d0944177a0bf0665f3254a6d42428c7d59873c91 + pristine_git_object: f80db9fe063c72cd0679a0d3e2823da18f5370f1 src/glean/api_client/models/documentinteractionsdefinition.py: id: 08e2b97a68ab - last_write_checksum: sha1:6ab5f0352e6cfcd6a1a6cb5f6a77998c7ba387e6 - pristine_git_object: 2dd25c44d762268701ebc58dff904235d05ee7a0 + last_write_checksum: sha1:765e3b0623f03becc497c10a69bade1adbd36a5b + pristine_git_object: 1798029ae1d130703bc22a84ad90ca5d88abdd19 src/glean/api_client/models/documentmetadata.py: id: 203606bfdd41 - last_write_checksum: sha1:111cf76a7d9efad936ebcf85471929b2fa30c915 - pristine_git_object: 4f50069b606ace363a0d81c6a5342fb902efdf71 + last_write_checksum: sha1:e59a8ee510ffaa786776df02b2993049fc7cd38d + pristine_git_object: 7c18608eca7e18cce70db0a929aa43dde483df04 src/glean/api_client/models/documentorerror_union.py: id: 1851ad2d77e1 last_write_checksum: sha1:edd4bee869906b3874fd1640bd3657e9aef66292 pristine_git_object: 36b3f551c2ebc4b6cbf5347a424519798ced4cfb src/glean/api_client/models/documentpermissionsdefinition.py: id: 7a87c280a424 - last_write_checksum: sha1:b2793a322c6b31579a2f02366338392515238a2c - pristine_git_object: fd87de54c048ebef28c2b9679aa08b8b0b131937 + last_write_checksum: sha1:5347bc2fba037d8cc5d9cc2ece1b727175111700 + pristine_git_object: f9eb4f21b6e6dbd50687988af9a100e921bcb3c4 src/glean/api_client/models/documentsection.py: id: 860858e3da34 - last_write_checksum: sha1:d66f0bb43d34d05166ac4e1cf24c5999951dfb96 - pristine_git_object: 6825bbb05b8da91f0aca07bf2520d9862afff2c9 + last_write_checksum: sha1:a63315e73340e4247a91f1c57d108f9503d0344e + pristine_git_object: dfd2dce3c9cab19f3a4926a1bbd868dbdaf92225 src/glean/api_client/models/documentspec_union.py: id: 9b7e01401389 - last_write_checksum: sha1:f5c1033883dda0be3207cf6d09cd72f5ed02b2a1 - pristine_git_object: 82e3e53590ac4cb4047a89dc85e04656bc5280ed + last_write_checksum: sha1:21c63e786ff0391510f2d3aac4bf63744a23cf5e + pristine_git_object: b44d7b47527977592a90d915b9a916b417064774 src/glean/api_client/models/documentstatusresponse.py: id: 03c5597a3ee0 - last_write_checksum: sha1:6fa0c35f03862802e908f0ff16c1b93d09b42286 - pristine_git_object: 41cc9ad2da11dd704f76ae2539a7215adb6f54c5 + last_write_checksum: sha1:ea63c7bad5d0fdd24d877ff6c10e4bccc2df713c + pristine_git_object: 5a6cc3d5562341a7a3edf96264a1f1f06058e3ac src/glean/api_client/models/documentvisibility.py: id: de44fa8f48da last_write_checksum: sha1:985c869e95a61595826842cb225d63dc3d8c4d29 pristine_git_object: 59bfc0522f5c880450dca0184b601a0c4c6617f2 src/glean/api_client/models/documentvisibilityoverride.py: id: d5c36989b68a - last_write_checksum: sha1:807f300f1b55dcaa2792e36be0769b81ec3b8e4d - pristine_git_object: e5d6ad033ea29dd1347c5d944ceef5c3ac35e8a8 + last_write_checksum: sha1:0f9194c5aae90d5a8d21abdf7d3e2b1200a4219d + pristine_git_object: 4cda398f954715d9f1467adb3b42bdfa6edff378 src/glean/api_client/models/documentvisibilityupdateresult.py: id: 499e53f55b75 - last_write_checksum: sha1:201bec37f9d6deb5c2184787c189f9b69caa306d - pristine_git_object: c48a36b1b1287dbea4c6311e849a38528c5c419a + last_write_checksum: sha1:f92352e9fb2c8afc84c1fe8b4a96e876a478bdfa + pristine_git_object: c34a66f6fa20837d6432ded6a6e7bc7574199d30 src/glean/api_client/models/downloadfindingsexportop.py: id: 2694d3597292 last_write_checksum: sha1:272810d856c01cc1fe68b55286be0092fd5ddc06 @@ -5454,60 +5462,60 @@ trackedFiles: pristine_git_object: d6059a8fa23d3cc41298d1cfb331d266d793b53c src/glean/api_client/models/editagentop.py: id: d7e933668f76 - last_write_checksum: sha1:b578b8b9652f10f3f6f042436b512a7b2f255f24 - pristine_git_object: 5d66503e891f7a708186245ca0d5b901890ca013 + last_write_checksum: sha1:5628666be62d548c1460ab92fd6c50dbf2a2a290 + pristine_git_object: beb50024dfe81a3e26d0b7863c6a6a95ed0b042b src/glean/api_client/models/editanswerop.py: id: 7236676e3bd0 - last_write_checksum: sha1:a8358d6fdf546ffc6e39b043feb9d5cb37af5106 - pristine_git_object: 8aef450a39d487fb49ec3cb7ae7d75d6b995e584 + last_write_checksum: sha1:4d28a8db17d2ce82c2ce0c45afaf4245ea24ec74 + pristine_git_object: f9f01bf6819be721a59e89947bc0ea7488779086 src/glean/api_client/models/editanswerrequest.py: id: fe09a7824140 - last_write_checksum: sha1:c7198025ff635506a3b80e62f8117bfcc4ccb68e - pristine_git_object: 0e17a606c98bf53779668b0f329fc5fbd5b5bc5d + last_write_checksum: sha1:5cfcdf74e717f839b104c54c920377c1aa151518 + pristine_git_object: e002c74d1ac98acc4082c869bf62ea2e0f954e2c src/glean/api_client/models/editcollectionitemop.py: id: 1384524a3498 - last_write_checksum: sha1:865dfe05a5b6c8ed22163f74d6eee818174b3a1a - pristine_git_object: ec47c58541a4e621037751f5dacce3bbaad8f13d + last_write_checksum: sha1:a68347fe5096f91f869dce4ecc22798108bd190f + pristine_git_object: 9a31b58485b377ce2585a6c4ffa6528a89cec280 src/glean/api_client/models/editcollectionitemrequest.py: id: bc22cf6084f5 - last_write_checksum: sha1:ef0c68dff9f30c0267ad153f86280b89df7b5e23 - pristine_git_object: d263fa2ebee6e474dcf4a69f004c075ece4d491f + last_write_checksum: sha1:a0c14892b5e8c22fbf58a31b8b5a1341edbfe106 + pristine_git_object: b295f80dfd0f28d045d4ddb0a8bdd34a9a539380 src/glean/api_client/models/editcollectionitemresponse.py: id: 1932a6ee55dc - last_write_checksum: sha1:35202968456ac47ec2d53903bcf930dad879aa6f - pristine_git_object: 0803aa97a25fb8fef4fee326f9e774bd8700389e + last_write_checksum: sha1:ea90469ee05fc545f76186e399b5b2ccf9c99edc + pristine_git_object: 596a0f4d6a13cfb4dd7377a42a8c6829ed552978 src/glean/api_client/models/editcollectionop.py: id: 6bbb39f451cb - last_write_checksum: sha1:4e26166deda0974b97350d77d0cf0f0a6f11ef45 - pristine_git_object: 89876fc83292098da540fe0a4593ebcd22bc0776 + last_write_checksum: sha1:506ac569e5cbed1a5a2d7730ec0b80528270af5a + pristine_git_object: 967cf7ec5ae6c42b9a5f87f91ab5c0739c9cbe6f src/glean/api_client/models/editcollectionrequest.py: id: fb314a816369 - last_write_checksum: sha1:e0873a34e4ea4e5b86c942f40b7a6416caaddb9e - pristine_git_object: 7a4edd70390dec12ae19ebdd044da70cc945f836 + last_write_checksum: sha1:f1718a19ee4a31c30d5017e4e5dcf481c1d86527 + pristine_git_object: 205fbcf0c9ca717d90c3f8d7d8f8e93c3027087b src/glean/api_client/models/editcollectionresponse.py: id: d5021e1e02ea - last_write_checksum: sha1:c23281223b1e8f44aabe2c8933b16de348a9acc5 - pristine_git_object: cf72a321fd7243e64730402a2773eecc1d8a3554 + last_write_checksum: sha1:60cd9cca519927300916b206c24483ddd7fb99c0 + pristine_git_object: de16ff7462c3225cea73b9a68d355d5df88d0c95 src/glean/api_client/models/editpinop.py: id: ccf2c7c31a0e - last_write_checksum: sha1:4283c5ec511a7e85a96bfab308fc38974421eade - pristine_git_object: 608f79b9fafda26b5330d562955b6e971d8f2aff + last_write_checksum: sha1:6a1bc0924fbf0be85785e2c1ce3a24ae0ac40808 + pristine_git_object: 151df079e1acbff65809fdb3a2e88e3666073705 src/glean/api_client/models/editpinrequest.py: id: 394a855b5f16 - last_write_checksum: sha1:2ab581efcb31ece5d80adac97fdba88727fc9da5 - pristine_git_object: d19c91a1f64bbbed70c05885945ea5a5d95146e7 + last_write_checksum: sha1:82a916fda862f925e11d66dc76747237994d94ff + pristine_git_object: 0e4ab11c051f2c0972bcc78c8e9d11675b3a52fa src/glean/api_client/models/editworkflowrequest.py: id: b4e7d6c2b721 - last_write_checksum: sha1:af89744481a4a1b07c0a2b1e56267647d7f9a84a - pristine_git_object: 5d3ba4f1039c79d087bc34f8a2e85f979060c290 + last_write_checksum: sha1:0be0d3982975c3c8d25ea4ac4fe211f87d10fc4a + pristine_git_object: e0407e4b74bf9b13c92616de060b19048d0df60f src/glean/api_client/models/employeeinfodefinition.py: id: e16fd44a957b - last_write_checksum: sha1:31adb02b284e9800e5ec9c47b4b7931124bdb453 - pristine_git_object: 1a6ef5934dd8feb168b75676266fd59f327b18da + last_write_checksum: sha1:da5d23ed6b9f55e935bf854b3a2a9fd1d2028d41 + pristine_git_object: 1b4123177417029c359dea11c9fc651a68c7ab06 src/glean/api_client/models/employeeteaminfo.py: id: f50b29739646 - last_write_checksum: sha1:c5c1a5c9397fc297e5b724a203ec7eedd43d9dad - pristine_git_object: 91d78b8d4a7c6b7298689c189a03963746dae920 + last_write_checksum: sha1:cf2e3e6686ba1ce59a1a1103bcf0aec81c9592a0 + pristine_git_object: 1d96d6b3eb9e70112a209b436c412b30ebdd08c0 src/glean/api_client/models/entitiessortorder.py: id: cd626c042435 last_write_checksum: sha1:606f29ffe3a88b92c0c916b49c5bc1a290b9637f @@ -5522,12 +5530,12 @@ trackedFiles: pristine_git_object: af479617f97e668b22634dd88373471ceea7c7a6 src/glean/api_client/models/errormessage.py: id: b2d0a949c567 - last_write_checksum: sha1:333dcf5a80490f22926497048e1ff8c19423375e - pristine_git_object: 5979617bcbe5d35a2b952ec6ffb10c23455987e7 + last_write_checksum: sha1:e700c4980da172f202dd6977f14cba5482f82bb3 + pristine_git_object: 39c888bf9912a1c0836a711b73289dc4e23a6dbe src/glean/api_client/models/eventclassification.py: id: 6430165e5712 - last_write_checksum: sha1:5fe02ee5694772d7b2d508f1eb5e457e1a85d72c - pristine_git_object: 7ed6e3fc0abf297b40dfe43a3f8f0bb3b7335e6c + last_write_checksum: sha1:86de240473358a6576b10dc50f66e2f32b80463b + pristine_git_object: 473d9ac71d19ec6abba5674f508dc2318f45f8c3 src/glean/api_client/models/eventclassificationname.py: id: "00e500099220" last_write_checksum: sha1:a6474e7214348deab1e02765dc1f6281d8fb3802 @@ -5538,192 +5546,192 @@ trackedFiles: pristine_git_object: 2fc0a34fb83cf361d4167e22685f67eaa1cd269c src/glean/api_client/models/exportinfo.py: id: 7039fdf82b53 - last_write_checksum: sha1:a69c686182dee61cc884327c87f0bef1be71e381 - pristine_git_object: 75811dd489fcefae9c55879fada8dbe520830de1 + last_write_checksum: sha1:43110305f38fb15954b69c1237926bb135356481 + pristine_git_object: eeaab1961bd5568e12b094968b3e1d7bbd238bc4 src/glean/api_client/models/externalsharingoptions.py: id: 0df611382e60 - last_write_checksum: sha1:4919f95cf5299ce7d8f3694bfd6315b68840e88b - pristine_git_object: e569b8340a3a1fdf672586e5bf6313913cb53b5f + last_write_checksum: sha1:dd83d5bbb2c605a4e1076ed3d7d341b8d64bac31 + pristine_git_object: 56fc4c1ab8b8a1f9cc112055072556a3da600bb7 src/glean/api_client/models/externalshortcut.py: id: b9c91219a7e1 - last_write_checksum: sha1:2f36eb751587c541581934c644e77bd08d922392 - pristine_git_object: 33344b4108708a0eaab4a47d04bb9f9923efa29d + last_write_checksum: sha1:0f7b32e3d577c043df74b448d24a5175a70cb7ce + pristine_git_object: 193085fa4a2362756bffc5f8d9b167d3c4421c84 src/glean/api_client/models/extractedqna.py: id: e4498c224e1e - last_write_checksum: sha1:02c76af5edabda94ce2f4d95914cefec7f050f53 - pristine_git_object: 6a255674fde15bd601bdd6ef074de6187971410a + last_write_checksum: sha1:238bb04142e094e1243df5f5227df1ff06c307dd + pristine_git_object: 81baf5e3643d9402781c37bbe6054d902f198047 src/glean/api_client/models/facetbucket.py: id: 3dabbd5bcfb4 - last_write_checksum: sha1:af84cbf7988dca4f7d998bafbdd41eae2ee90e36 - pristine_git_object: f8d356f73ba7ab657d3955f6435a94a6b700981f + last_write_checksum: sha1:f419304aab686004a024a70b7febfc9dc9139599 + pristine_git_object: 888f69519a6e272ba3efbe36dc846f1b91685d2b src/glean/api_client/models/facetbucketfilter.py: id: d1e4435eff08 - last_write_checksum: sha1:3fd7e6b2f08b1c29c9999eab2d12406c156012d2 - pristine_git_object: 19df5a17e69c63bd0355021b687b4598189172d8 + last_write_checksum: sha1:2a66f91132f3360617ebcffddac6f3daab25cf9f + pristine_git_object: 47e74c76ba8491ef0b4be3227afa2c820242573e src/glean/api_client/models/facetfilter.py: id: 0092f5488ed7 - last_write_checksum: sha1:71945c896dd40a6072a619d0226ff79b626e5e41 - pristine_git_object: d882c35ba28f7be55ddc5b5f4a47bee27f01fb01 + last_write_checksum: sha1:6db2acca9b7ba74fc17920faf1e2f65209247b1f + pristine_git_object: ab657850c80b05167e0b5e44d5b1e43a07bcf1f3 src/glean/api_client/models/facetfilterset.py: id: 24a068134424 - last_write_checksum: sha1:cac7cc417665fe2d95c4a9de2a4b7095d0abb0a5 - pristine_git_object: b1f689e7cbe160b1191780f88c1b66db4666fcf4 + last_write_checksum: sha1:ae7ef0e7f6cec427942a6d28ca7e180af23de7ac + pristine_git_object: 8f8d2356392781f6b68257b46b5417ca4eec2da8 src/glean/api_client/models/facetfiltervalue.py: id: 2538d6322ce2 - last_write_checksum: sha1:35c3ccd1e7d83eec5a9a5e8c54f8060d336305d4 - pristine_git_object: a32ff103ebc302390bd568f703c7ee2656d5fd2b + last_write_checksum: sha1:31a9e903db2b10d9c95e666cefe467739e8c1a27 + pristine_git_object: 09f80806e057e4a82cc833aaa388308fc07542eb src/glean/api_client/models/facetresult.py: id: 0b08040192a1 - last_write_checksum: sha1:9c5b4fff2ca3c99cfc7921b95cd40fdecace8192 - pristine_git_object: 6cea2b89790635cadb5afbe94e4b6a409933dbb6 + last_write_checksum: sha1:365b792994414a16818d08e19839beb00337e39a + pristine_git_object: d5793131389b533f56f75acb411b8d270fdff624 src/glean/api_client/models/facetvalue.py: id: 37b332e83210 - last_write_checksum: sha1:4dd701b69d4079c4f068d692e02cd4a87903f7f4 - pristine_git_object: fdf378c8dc7f45bf2e638cd1e4900f4464d5d938 + last_write_checksum: sha1:78d5857679612b91481a979555bf99a2af04eb31 + pristine_git_object: 74214e5ba5cd0a91bda8b8ff16f8e86105c147c4 src/glean/api_client/models/favoriteinfo.py: id: c8966a607f00 - last_write_checksum: sha1:6c5eed7096282ad3c4444bd15a43bd7c55ab5d68 - pristine_git_object: 17359e01fa84c77c0074e5d321ae7ac50451a48d + last_write_checksum: sha1:438f31fcfb32080aca1066b950f948ce3ef0b7d9 + pristine_git_object: 5ed77ab2fb689795ee04561c4c07d5c15ebc71ce src/glean/api_client/models/feedback.py: id: 511140b14aff - last_write_checksum: sha1:6b121c6d4b112fe8271598735390319195558228 - pristine_git_object: 1dfc5693f596424df85a279938470af2da752f1d + last_write_checksum: sha1:1f6f42a6033c4ae3186efa6df2e6614459a09deb + pristine_git_object: bc94f4ab9e49885cb09d3cdbccba5524b71456b7 src/glean/api_client/models/feedbackchatexchange.py: id: 8a8e469394a1 - last_write_checksum: sha1:fd19bb89b532bb5ee4c798e352a83af00e03d118 - pristine_git_object: 291794c5d27686fed3c85ef0f9212fde461cf0a2 + last_write_checksum: sha1:230b179d0708147a7f141c51c5a7f260ac1061e6 + pristine_git_object: f548453db255816f45defc6f0cad14f9c23f86b1 src/glean/api_client/models/feedbackop.py: id: d74abf6b0a42 - last_write_checksum: sha1:fa5e1e58653c2ab36c5f6c50cfe32541eaf65a3b - pristine_git_object: 44041cb376d89949c815ea1e7813505940605855 + last_write_checksum: sha1:bd380c96120d3e474d33d068aa4004f7d0e87376 + pristine_git_object: c6443424c754e8d37a5a8ad0ed40e4cac71edf60 src/glean/api_client/models/feedentry.py: id: 023eb6c10ae1 - last_write_checksum: sha1:4f7598c87d7da11d918a6dab5a61ec9e24572c58 - pristine_git_object: ffccc86e179a75d20c2cbc4037cd56fe77465c8a + last_write_checksum: sha1:d7121a6865bb51078a09fe2584e36c1215a1d462 + pristine_git_object: 79d12f403d7fe861b2c47c5e2a0bafb300609817 src/glean/api_client/models/feedop.py: id: b8067ac0a127 - last_write_checksum: sha1:c58cb0a3a01925eb14d84176c5c6e9d8f4d84cf1 - pristine_git_object: f39626285f84630e5a9233736d652914b759d44b + last_write_checksum: sha1:74aca1c824c4dfbdca894bc9fedb30713cbb85d8 + pristine_git_object: dbb4d6bf1739762e7fabcff9f4f2f0378e99878c src/glean/api_client/models/feedrequest.py: id: 33496b6a5bab - last_write_checksum: sha1:5e04e35f53fbfef6ebb9fc8cc74ab76af0046f6f - pristine_git_object: 2fe3ed0a2c8dfd203cc75b8beb39e03c7925c59f + last_write_checksum: sha1:4cf2a3fa8865a460f74e356b15cffd60f1d620be + pristine_git_object: fe18fa86249d16bd5a33aa98f09986f5a5d06e34 src/glean/api_client/models/feedrequestoptions.py: id: b99003fbf522 - last_write_checksum: sha1:d5ffee29242075cbe6d2dd5ec916b0c3d40acf54 - pristine_git_object: b0d65380ac5f1bbfcc8b3bdcf8b44bd22b760a31 + last_write_checksum: sha1:d1ba551a6fa2e81dcc05e1885642d122f66ac1cb + pristine_git_object: f9e0d21301a3cef863597dcb5824b92db14605ad src/glean/api_client/models/feedresponse.py: id: 4a48e189e0c4 - last_write_checksum: sha1:84c63b88f2f6fea64ea6f15d41e776bd57e95181 - pristine_git_object: 683438c837601f483526ec18756fadc7222edb24 + last_write_checksum: sha1:faa0b1a0bc79e83c59b59b88a55c405e50b42295 + pristine_git_object: 9aad69e3f0494e917c2a5ed1d4404359c91fcf1d src/glean/api_client/models/feedresult.py: id: ae187332b37a - last_write_checksum: sha1:89d820d22656e37126da8c9be688270b17bdf8e3 - pristine_git_object: 66006982c627a51a56e9631899130e2dfed6bc86 + last_write_checksum: sha1:11f520a1d4dc8c74b495f3cf0a06dccd1aa34131 + pristine_git_object: 358603df2e0f871451f01258753204ec0785eadc src/glean/api_client/models/followupaction.py: id: e2de5c4c8524 - last_write_checksum: sha1:49e1a826449081fecfcd828c940604db949a8533 - pristine_git_object: 5a44621581bf4944e7e56a5964a655d7bc081d5c + last_write_checksum: sha1:36bd9bee1c95e8a3243d324ea7ffab9309ca7f6c + pristine_git_object: 5eb3270929cdf8b0e727477578b3f2b273ed7200 src/glean/api_client/models/generatedattachment.py: id: 257c5ef9996e - last_write_checksum: sha1:8e29bc6b5a6ef39fc90852c801e10bda5e2ef8cf - pristine_git_object: f431eeded29a29c46d37e0f6977f8aca5e3d1261 + last_write_checksum: sha1:531ec052a62a465f2c9d089f43e7e5b1b4d05842 + pristine_git_object: bb3d814c8c021ee23f0e71c952cf4d3c8cfe210c src/glean/api_client/models/generatedattachmentcontent.py: id: cd6ddc3356e2 - last_write_checksum: sha1:121cd44820c25f12d1e8290dc9c195661e7f25ad - pristine_git_object: cc022b56eeb282ea4f508c9cd87f28f81b0f51fe + last_write_checksum: sha1:4103fcd398a440bc6b9cf067fee833ac7a7a93bc + pristine_git_object: 7ee09daf10d297e9fb7e565973721aada93bf5a2 src/glean/api_client/models/generatedqna.py: id: c505fd0d1ece - last_write_checksum: sha1:977cfe47cea6e8bba465d0a96897d7ca2b964286 - pristine_git_object: f1fbf6355ef61a62a6b005133879be71fb3a775f + last_write_checksum: sha1:1c6a767530d4cc75e5c78f552147dda0d235f045 + pristine_git_object: 5e7c7147ef1ee2880fa31ace76472fd54d577c7c src/glean/api_client/models/get_rest_api_index_custom_metadata_schema_groupname_op.py: id: cee009e61198 last_write_checksum: sha1:892d386f5c31ce84be5656afa0e9c78b47128b71 pristine_git_object: af2ec64b10156b7098dc0c21b7d63d0cae1cc64a src/glean/api_client/models/get_rest_api_v1_tools_listop.py: id: 34cf81e82af3 - last_write_checksum: sha1:4f84149547bee459f0a7f05a9b37c7d9d256af7e - pristine_git_object: b5265a6086412a71445036330b444d889e033cf7 + last_write_checksum: sha1:a9cc71894a563bf2e6feb3f7d1221e5c887b9542 + pristine_git_object: ffe9632636c8820fd47f430c78588d14b0afb91b src/glean/api_client/models/getactionpackauthstatusop.py: id: 3901c2d16ed0 last_write_checksum: sha1:af917b3d2da7081a76dc5225a11ca3ce033aff5b pristine_git_object: 596234eab9affb498754b9606ead92d7a006fe98 src/glean/api_client/models/getagentop.py: id: 40981170ded0 - last_write_checksum: sha1:69acb6eb3a47aa7033c5661c241c8467e9f806a7 - pristine_git_object: 9cb3838322708bd13002d26f6970c663fb989105 + last_write_checksum: sha1:a5dc231e461b53ac3fab900a2db38480cf0d940a + pristine_git_object: 00864b204b4112fde4bbf38232fe6ed779b37194 src/glean/api_client/models/getagentschemasop.py: id: 21bfced8e2bc - last_write_checksum: sha1:c6c9064deb5103dad3bbb21e008ee089ec7ac0d6 - pristine_git_object: c381cdaea97ca53818651803a51a2dd133e4f9dd + last_write_checksum: sha1:9185d08a54797c13abd8b9c93eaf68af115357d9 + pristine_git_object: 9a2ee367223e9239ff8a85b32639e1749b40bf9a src/glean/api_client/models/getanswererror.py: id: 7d4df3bf2bfc - last_write_checksum: sha1:e8dd4317871d0643b9156c5110f0757113e2f820 - pristine_git_object: 102fadd9bf967b99a1fee20027e4be5ed6902943 + last_write_checksum: sha1:7007ffbbfa5a5ba31e4d3bd92aa3393c3444d23a + pristine_git_object: f5af1a19991c802e5d7b9c0c50e91e2abcade7df src/glean/api_client/models/getanswerop.py: id: d02c69702982 - last_write_checksum: sha1:169959016e00ee8aab88f0378e3e6ced394575ad - pristine_git_object: 3a64977851c11a39ff5f3ca5f82b3eaf71f922fe + last_write_checksum: sha1:7cdbefc5c5822029dac3981a1b052ae0f09a5be7 + pristine_git_object: 6a436c4b4e2a8453dd627d89f3745a1b260b5c36 src/glean/api_client/models/getanswerrequest.py: id: 51b52ca6bdd1 - last_write_checksum: sha1:49ba892a13c8c344e0ec4417a8793461db0ac6d3 - pristine_git_object: 5a1648a161b019200d53e5aea51c2f9504fec1bb + last_write_checksum: sha1:4bdf98db78da5da2acde58832b331b09b6c1e9eb + pristine_git_object: 1ae2db6cec73f4998ee627c5b6a97a2411f92884 src/glean/api_client/models/getanswerresponse.py: id: 29a80a8d4d70 - last_write_checksum: sha1:5ddb79ddd6acd5b78f2ae5d761e5eda34949ef65 - pristine_git_object: 6bb54cef2ccde6c095fd17214c783da77dbd6037 + last_write_checksum: sha1:eb12ff36910f9bdf99194c942197ad71d581ef97 + pristine_git_object: 2f4c99ed43f232d219491be40dc611a60853fcf3 src/glean/api_client/models/getchatapplicationop.py: id: 320af39d31c3 - last_write_checksum: sha1:838ee71b14a211d21ff189a2962c02cb0825dd42 - pristine_git_object: 8431fc2efa1b8e3f6e5ff275696e68935e67c979 + last_write_checksum: sha1:d0dcb7e51f494b6d5a5ca2f4f7bc01d586a495b6 + pristine_git_object: d90bc43c945f8fcfbd2ba97b71f735410c7cb147 src/glean/api_client/models/getchatapplicationrequest.py: id: 6e15de2008bd last_write_checksum: sha1:9788428769ee01fbe7bc39b4281ce952d2a8e052 pristine_git_object: 5406833371cf8145c2c245108bce7a7f5b4424fb src/glean/api_client/models/getchatapplicationresponse.py: id: 8147c65ec269 - last_write_checksum: sha1:513e7c852c94bc4f2e2009825fc0c5c72190daf0 - pristine_git_object: c4b388714d4ecbfbb9476a055d4c950128c72007 + last_write_checksum: sha1:27daa528e496565ba028b0a85e636d3db66b37ee + pristine_git_object: f45255751c1ebeeb057f3703f695393a53fd3bf2 src/glean/api_client/models/getchatfileop.py: id: 6dc641c60a78 - last_write_checksum: sha1:0a8a9755c7ed12d7cc8f4a1844d8619ed8d08ded - pristine_git_object: 60bbf3271ae420b5b5b6f0ed44419242aeafdf93 + last_write_checksum: sha1:23210531fdd56b9bb128f27150b77a343bde9166 + pristine_git_object: 74b965a5dd8290ea8850b8cfa5d268c422d12587 src/glean/api_client/models/getchatfilesop.py: id: 48b9a5c63e2c - last_write_checksum: sha1:b3584731846f91629eb30a5e44ac46f7306d9e08 - pristine_git_object: d0ba2bef4154af18be6b5eda11d225b6ef987b70 + last_write_checksum: sha1:ea769479682c934eee65ab68caf1327901222611 + pristine_git_object: 466a19c2ceca8f092dbe97032d215bc73d116f10 src/glean/api_client/models/getchatfilesrequest.py: id: 86e8fe781667 last_write_checksum: sha1:6b76bab1d15ffaee5754f5045b0701ebc994a26f pristine_git_object: d29ef1be18c9bec94ab9b207159a0b729ea6e9b9 src/glean/api_client/models/getchatfilesresponse.py: id: af6a057b156e - last_write_checksum: sha1:f28d5c86c08e69aad88cd5c1d10ca499e4324395 - pristine_git_object: c3d8e2e9a736ecbd9edf70d415e8a2ee79263d21 + last_write_checksum: sha1:77ea2989519bf02beaab0f2fb2367cd0edaa3811 + pristine_git_object: df6cb607a1835432767e0f19a3c572b53f16eb68 src/glean/api_client/models/getchatop.py: id: 2b157d86e810 - last_write_checksum: sha1:7fba50ab316f12a352e22aadd1066aace9bfe2ed - pristine_git_object: c4155fe3abc66d93dfa10efbc84aec804425a1d1 + last_write_checksum: sha1:92620379386ae8d6517f8a67e3c97f4c91b730c0 + pristine_git_object: 5be45633bdd7ec614990504ea26f391bb6864462 src/glean/api_client/models/getchatrequest.py: id: 408479eb0833 last_write_checksum: sha1:7d4a3169cb0ab0954471eca8f5066cbb0f265e93 pristine_git_object: ddc9479885a8be6494fdf7840b269983e715b138 src/glean/api_client/models/getchatresponse.py: id: 0ed1381b51b7 - last_write_checksum: sha1:c26dfa56429195e39101c679451ec27039318052 - pristine_git_object: 7dfadab71ab57286727d953366b23b7a78e4d476 + last_write_checksum: sha1:0dfbc0969de494719eda3cb97be52a20a959cb7a + pristine_git_object: 9c9daadf93641ba29071b41ee816fa3dc7b07a35 src/glean/api_client/models/getcollectionop.py: id: e46c77b755f4 - last_write_checksum: sha1:6f9ac4feda4a8d879faaaf64ce7dabb47c3d73c6 - pristine_git_object: 92fdcda500ba4cce82ccf9ecff86bacf17f717b1 + last_write_checksum: sha1:e2a68e98ed1680a4bbaa32316595fe4cb69c8fd4 + pristine_git_object: 5720a4ac3ce32fcbf31ed6861f640f4c82cd7182 src/glean/api_client/models/getcollectionrequest.py: id: e133223930a2 - last_write_checksum: sha1:d1747dcafee4b85381dd7652232d618a0d3be960 - pristine_git_object: 36d10443a188e97aff3ba27f54a4481805e21c56 + last_write_checksum: sha1:cb6a5fbe91f8044a624672a6be45681a3d7bf05b + pristine_git_object: 3ca5191b1ca91d4217aac5c97b9e373c168809a5 src/glean/api_client/models/getcollectionresponse.py: id: 458c44d7b658 - last_write_checksum: sha1:cb8b6a2bd5ae9230bfde9537cfdd7e2ef178a3d8 - pristine_git_object: 10123b3a3b0f987d0f603afcf374fa3e27a815c4 + last_write_checksum: sha1:e767886f34a7216c0f4fc411f7c6a3530d84b17a + pristine_git_object: cffa440e9a4e1fb7ba275969270451a6cc5b7a9f src/glean/api_client/models/getdatasourceconfigrequest.py: id: 42b2eeea0fdc last_write_checksum: sha1:72e44bdd713ea77abbd991bd01e7f433cd2443ea @@ -5738,104 +5746,104 @@ trackedFiles: pristine_git_object: 25a21bd1a03a9e6966f1e979e2be8830d4f93243 src/glean/api_client/models/getdlpreportresponse.py: id: 0e0111b5d484 - last_write_checksum: sha1:0f3a4d3aad6cfe33e17c54e2c39175007354df39 - pristine_git_object: 7af2ec3d8f6dfcb26f20db7f043345ca83fb1069 + last_write_checksum: sha1:465dd31ad6adadcfca2b5970b98ea073e666bec3 + pristine_git_object: 84202f83ea465381dc735586c1804d91e032eb21 src/glean/api_client/models/getdocpermissionsop.py: id: 085293ca24a4 - last_write_checksum: sha1:84df043245e69ed11b0e459e814df92f1f6d48b7 - pristine_git_object: bc562e4133d5f22e83ff3724de9846808e3bf7f7 + last_write_checksum: sha1:1390cd4d6926da2da13181ade3834afd3284a800 + pristine_git_object: 1129e68fd59d69fac8440f2f06c32c49605d9450 src/glean/api_client/models/getdocpermissionsrequest.py: id: 9e472fc389dd - last_write_checksum: sha1:ca6532cef63e26ebe9c30c6c5014a738853c9b63 - pristine_git_object: 4c4a4e5b966c56189c9e4deee8230829ab67329c + last_write_checksum: sha1:27f31f0d6697b61a1476782973e2f7dbb1cc3c1f + pristine_git_object: d5c8c1449a738a2907dca605023734255444471a src/glean/api_client/models/getdocpermissionsresponse.py: id: 44cd7997b6a0 - last_write_checksum: sha1:161c380681479f837ebde8e21e94d941747971cc - pristine_git_object: 061e8975f7dd87e8eac8bff34990e8ee47205c56 + last_write_checksum: sha1:20ff86cd773baf4eb64bff69012fc3940240e882 + pristine_git_object: 343e281437efef70ddf21987fbb82576a6f3274a src/glean/api_client/models/getdocumentcountrequest.py: id: 46fd4fe893f8 last_write_checksum: sha1:2de1cfa7ec68a49963d911e61b230a6475c73c72 pristine_git_object: 4fd7db81273bb4929fea350bbba1cacb659cdea8 src/glean/api_client/models/getdocumentcountresponse.py: id: 872d5066d91b - last_write_checksum: sha1:f8e81b4b74396f7942acd3b0c6f4e90c68c1ed7d - pristine_git_object: c3400b20d46c97ec22f85c21e187fed51e2d1834 + last_write_checksum: sha1:a174c2044077bbfdb726e9b7f7c9f3d78fbcc159 + pristine_git_object: 1bca85600f5acd9f878e26512a00993a7f3c5618 src/glean/api_client/models/getdocumentsbyfacetsop.py: id: ca5343a63eff - last_write_checksum: sha1:1ba5ede62829dd92ba085fad3bb369b1a91d1e16 - pristine_git_object: a6bd1531c8e9cb22cd78f1cd81f3ab1ff0a48027 + last_write_checksum: sha1:8388439d01574095611b2e76cf8ce1d5423e1d90 + pristine_git_object: ad26c205a1e796ed73f49238364f911aa44d54a8 src/glean/api_client/models/getdocumentsbyfacetsrequest.py: id: 095fa51d67ed - last_write_checksum: sha1:35e96ab17f29008bf4200233dc35bcfc6b13395f - pristine_git_object: fe741831ac78eff9313f2a4d2429d234a6cb05af + last_write_checksum: sha1:ae3458a97e8734e1c9eea94b2bdd408eafb6554d + pristine_git_object: 84a629ede06229eb4a43a7f49d2ea68fc938a268 src/glean/api_client/models/getdocumentsbyfacetsresponse.py: id: ffcd52e8e229 - last_write_checksum: sha1:fcd96ad7ac48bbdf88f97599f6de011034fb4cdf - pristine_git_object: e7e0337a8366b17eb417470ccd229183be4d6181 + last_write_checksum: sha1:dbd81f80e15a6f8fe71d22fc392ed3acbb1acafb + pristine_git_object: 16725989c6ab7252954c266334207c6896ef3c59 src/glean/api_client/models/getdocumentsop.py: id: 957b85b955b7 - last_write_checksum: sha1:0b3377188c15091c04de3190bc0f4dd76e60435d - pristine_git_object: fd29b3ef55a3ab4fa940ccd8a5bf93bfae99568f + last_write_checksum: sha1:17354bf0cc53bba6f5776b32c11a02f35559e193 + pristine_git_object: 52c0bd8fc84b30c4d51f572be32fd3ae159ae8a2 src/glean/api_client/models/getdocumentsrequest.py: id: 35b06c70131e - last_write_checksum: sha1:62bb272f1ca7b3b9a6cff8a8bcb5d0e58cb817aa - pristine_git_object: 8e64be35de3202a3d86992ed79c006b294c04deb + last_write_checksum: sha1:15e9a78b07862505636de1388520320c823458d5 + pristine_git_object: 148767fe5c809e271a54af38756cf702a766f747 src/glean/api_client/models/getdocumentsresponse.py: id: b2062b96f07c - last_write_checksum: sha1:fef5c4b3503684eb5b1d2c0616f3b221fc429901 - pristine_git_object: 6448b8887248c18fa48e24ddc30967aa287c0328 + last_write_checksum: sha1:b74ee005bfa8d3b704fc30fa26f795dbd1a7cd94 + pristine_git_object: cbe7004cb979da895fe6c3981080ddc451dfd016 src/glean/api_client/models/getdocumentstatusrequest.py: id: c1363f61d9b3 last_write_checksum: sha1:2fdf84dbe3fbca26a2d63d9fff578eae218bc0a1 pristine_git_object: 1a4b391ee1398d7592461f9bc5bc03f62cc36bae src/glean/api_client/models/getdocumentstatusresponse.py: id: bf15cdc33856 - last_write_checksum: sha1:e1437df5bd1e3b8d165e95a75bee4761f6a16ab7 - pristine_git_object: 5bd4fd926abe4057a27fb4bcc0c74f1da0c67e48 + last_write_checksum: sha1:ba28c72020a0d8c609fd2975fe8780b2bb40be7e + pristine_git_object: 6a394956bc7f5f0fc387bbc98b64b05473f360f8 src/glean/api_client/models/getdocumentvisibilityoverridesresponse.py: id: 4fcb987e34c9 - last_write_checksum: sha1:7960ab3d4485c54864c3eee76fd2192f01156b54 - pristine_git_object: cd81ecd7cd1918e4c482cd012a9806640b160fee + last_write_checksum: sha1:b9e36404abf465ce03c40428665edc16161df72b + pristine_git_object: 1a15d7b57583c328db69d42f47d665461645a7b8 src/glean/api_client/models/getdocvisibilityop.py: id: 0f3847de9013 - last_write_checksum: sha1:e424ef68054082c29c96f19f973babe17c62009c - pristine_git_object: 198ee640c908f13a53a84f7939e6ca704c99e684 + last_write_checksum: sha1:a5bc6b2d56306dcce62256679869a22e75b549fe + pristine_git_object: 78a6a70495b782ee2506e4084e6bf2ca5580677b src/glean/api_client/models/getpersonphotoop.py: id: 52871feebe6b - last_write_checksum: sha1:10e6a543cab6b99a77ad87c794d36f0c977e6e92 - pristine_git_object: 7d3d9948d1d527f27b88441934301a449aca639f + last_write_checksum: sha1:90bf6f0ca2fbe300bda1690ed37f43a4cb004f8e + pristine_git_object: 5259171f65d4150c7a5c9cb008c756512e165d5e src/glean/api_client/models/getpinop.py: id: ead822eb0da7 - last_write_checksum: sha1:7f09359a7f5bf28b8713a604d99fd867e20ef8c4 - pristine_git_object: 7c1467b483924b32030847362d876c06d9392d73 + last_write_checksum: sha1:f1ff275da8b7c54c8967a3a50609e3d7f32ddb01 + pristine_git_object: fc239da94061a06c39fc7c3f0fb32cab5ba95bc7 src/glean/api_client/models/getpinrequest.py: id: cd845a071792 - last_write_checksum: sha1:abdf087dcbb9eb9d07653a621ede460ffc6da8a2 - pristine_git_object: c11fbc5cec96be3d49fef79a8c781ee1c5537adb + last_write_checksum: sha1:5751550e29cd6345802396dea9185651340972f6 + pristine_git_object: 6589250eda2825fa243e827e92e0e985a0bea931 src/glean/api_client/models/getpinresponse.py: id: bceff8932b22 - last_write_checksum: sha1:e041099339214bbb075517d340bff8a631821a80 - pristine_git_object: a45629314fc8a15640430e588e61d92b6953fdfd + last_write_checksum: sha1:a1881a69f2f22a7c9d4cba4f8ffade07139441f9 + pristine_git_object: c70328720ca7435f87a1e9ee031fe7836d8916a3 src/glean/api_client/models/getpolicyop.py: id: 58d603f46a48 - last_write_checksum: sha1:560594f5d11e53df0bba0a74a369d9538b1a98ee - pristine_git_object: 95b3502e755a161a68ab37661de93509664bc9bb + last_write_checksum: sha1:8e89cee56bb6a6361a59c321a3912665afefdd11 + pristine_git_object: f73022d3d2d10ec58cc840362d4d7a0064990d5b src/glean/api_client/models/getreportstatusop.py: id: 109bc89ef9e7 last_write_checksum: sha1:d6b857528734b75999673d80dff04999994fb2e1 pristine_git_object: 17fc561771d65ffe3d3c15fec7099aedaf8f3341 src/glean/api_client/models/getshortcutop.py: id: 441211afbd50 - last_write_checksum: sha1:788d31f5eddae3579775a820b5b495fa6da0f1ee - pristine_git_object: 3ca7f668d58fc3288f4623c10342c7314e718953 + last_write_checksum: sha1:ee8120c47e77f89911ec98c4383cb5b3130799e0 + pristine_git_object: f371f25f78bc0109922d182edeb1f2893ffd8ce6 src/glean/api_client/models/getshortcutrequest.py: id: 0c01b7f76574 last_write_checksum: sha1:18d613e1443809e7142560cb14db3b987c91af6c pristine_git_object: 6efe832b0a6facfb137cac38c0ff8db1d4d03302 src/glean/api_client/models/getshortcutresponse.py: id: 2d10a576bd7c - last_write_checksum: sha1:d8df32d525b0631a0261f888b89ef14b54dc03fe - pristine_git_object: b20fa7417eb5341f53bdc78ecdf42db7a1488678 + last_write_checksum: sha1:9d9e0e249f7fb426fdf978b6f2b58fc20e7dcf63 + pristine_git_object: 7096c419ff83dc6f0c634b64c058e405de441f38 src/glean/api_client/models/gettoolserverauthstatusop.py: id: caa449cca979 last_write_checksum: sha1:bf1850bce3e5468612e5e067cd8c6098b7a9d5ff @@ -5850,56 +5858,56 @@ trackedFiles: pristine_git_object: 093c81b4a2331f5bdbedd95dbf68f5310eabc3f3 src/glean/api_client/models/getusercountresponse.py: id: 9cefa2386bed - last_write_checksum: sha1:1df6f1867005284d418a4f3e1e833424e41cd4b8 - pristine_git_object: 9a042fa5adc978c6210d795e56e6b1ba576c2b05 + last_write_checksum: sha1:57243039035e740918dff92c97b976ba0c232849 + pristine_git_object: 26a6a77940935caaa096ed2622a2cebf9e0cdc36 src/glean/api_client/models/gleanassistinsightsresponse.py: id: 10a2648cbcf1 - last_write_checksum: sha1:ed5864db022cd7c00d2f1f97961eeb575e79c599 - pristine_git_object: e6c29553c9be312eb50df7f0035c8c1485494891 + last_write_checksum: sha1:d13daf4cfa96238f131f2f3f21573b721847efb7 + pristine_git_object: 1b1c0bcca1826206fcf6bd3a7b5441f28e98fb6b src/glean/api_client/models/gleandataerror.py: id: 86e8dc6c1eb5 - last_write_checksum: sha1:43fa5675b38cc9bd175f8fd22e9d39756025bc5b - pristine_git_object: 7672589b96aa71f8d3a290a4e5770f9a2b104683 + last_write_checksum: sha1:a89e20e6fcbf8b34ec0aa48f07af59f3fadefac5 + pristine_git_object: 62285724e2d877fe4b0e94a740c652056480689e src/glean/api_client/models/grantpermission.py: id: 0cfd67112b08 - last_write_checksum: sha1:4de0791ab2cfedc646dfc39264e1c0ab08899ec1 - pristine_git_object: a1bb68065a5470dd33a3f1a9f19ca773d26af20f + last_write_checksum: sha1:4a46f8654c3f9fc5ea27cda0e41352a33759f141 + pristine_git_object: 84eb7d0042799975ea499252c30606409b63a5e7 src/glean/api_client/models/greenlistusersrequest.py: id: cc54677a6916 last_write_checksum: sha1:a96583391fcfa804c899066bac902344bc5b22bc pristine_git_object: 85f19cbf2b8e66d45efdd067db1a9d98227edb4d src/glean/api_client/models/group.py: id: 5387fa5912b5 - last_write_checksum: sha1:4fc88663c2502f55e2d742818c0c11864d089781 - pristine_git_object: f1b4a7e932c2605014da90f15aca4546c4f0a68d + last_write_checksum: sha1:351893423e2b3fdaebfda2f2ae0d35c41091ef79 + pristine_git_object: c36dba98bb16594d33f04a0c9d48403718378e29 src/glean/api_client/models/grouptype.py: id: 64925e34480c last_write_checksum: sha1:8b69c4bf7a96fe5ea89e05741eab3b542061b207 pristine_git_object: 88a980fb7f1e533c63641e3d9c445d233f751fcd src/glean/api_client/models/hotword.py: id: 0a4b0a179e14 - last_write_checksum: sha1:8852104f422c25d298bbc9d2975e820ef744a5a2 - pristine_git_object: 51dcb03045ca4ab19de12896f64de549c895b168 + last_write_checksum: sha1:b61642c22c0bdc8fc392c4aa85f9e56be9b25e53 + pristine_git_object: fd221bc356c99d8bd3c0f82f6f0baa62b10c4cc9 src/glean/api_client/models/hotwordproximity.py: id: c4440dabacaf - last_write_checksum: sha1:dcf5fd4dfecef6347eefe3e5b7fe26b7a6e9cc10 - pristine_git_object: ebc0ed38777b6f9204728ae0966181514d98815e + last_write_checksum: sha1:a70a3a6c74d904bbf2ecdb3e99a4d51b3c8cede6 + pristine_git_object: 1e1c60b6479ebc7f01fb3d19dff680df09fe4e1e src/glean/api_client/models/iconconfig.py: id: fec761319e41 - last_write_checksum: sha1:40a570ee41fa86918ceb63a79b5b358d70ce07f8 - pristine_git_object: b7109f6b54dd975c977f0a13e3221c036c9c4cdf + last_write_checksum: sha1:821b3447b0d9681393491bbdc6db3f940f7fecc6 + pristine_git_object: 64ede06a7cc9f8462286cea070aa82f6e477db9b src/glean/api_client/models/importagentop.py: id: c36a782fb6f7 - last_write_checksum: sha1:0238245a8e38883796f8b4a6ae079d1447a7cefb - pristine_git_object: d30f537ead3a77557adbd3b857cf4b2fbc9a4bf3 + last_write_checksum: sha1:17d967ac61f0a4d552522ddf4f79c3933c994b5b + pristine_git_object: 71e0c51c8621264fa0614d16c2b16474c5f3dc95 src/glean/api_client/models/importagentrequest.py: id: e548b6034e1c - last_write_checksum: sha1:2d2d4af837a6eb076ccf323c922f12e262d37d43 - pristine_git_object: c88111d7009ffc6d2eab2f8f6a5367b682fc8cc9 + last_write_checksum: sha1:137cda38723af34ab679d3ad0e2ba1c4d3eeb8ef + pristine_git_object: ff803b47c06b3b4f6212803925db6ce08d30e973 src/glean/api_client/models/importagentresponse.py: id: 22a3fa434b8b - last_write_checksum: sha1:a3e9cc2d8684fe175adf720d8094ad1a0759cca8 - pristine_git_object: 19b134efa10635ae8e18763c90b8e602eb5e009c + last_write_checksum: sha1:490832e8c9fd1eed7d1f813a927b62660a368d33 + pristine_git_object: 184d8619684e7dd376ef765ba4590753f3a3df24 src/glean/api_client/models/importagentstatus.py: id: 11d6671e6bc2 last_write_checksum: sha1:4aa73c9e6bc9877cc8655bf9ca02007bf9e3ec1b @@ -5910,348 +5918,348 @@ trackedFiles: pristine_git_object: 3f93c95cf3b3537fef05ec3ce5a2f7588231ad69 src/glean/api_client/models/indexdocumentrequest.py: id: 39de79505ed8 - last_write_checksum: sha1:f1e607bb1939b44c99540a787ca0d10fec8d62b6 - pristine_git_object: e49af0a9479f0c90dd6291525fea63063a9e7f27 + last_write_checksum: sha1:31fdccc7909a40dd2a8f09419f8d3da718178a66 + pristine_git_object: 738f90d3812a9bd1f9c3037cec734e64496952da src/glean/api_client/models/indexdocumentsrequest.py: id: 937c4ecc3c74 - last_write_checksum: sha1:044953c271e765a9d5658589877ab6d2ebb79f33 - pristine_git_object: df0dc41e64413f34c866522afce394c1d68e2f91 + last_write_checksum: sha1:79d39a36fbdcf2ffe6753ead3a03f56e18e3cbd4 + pristine_git_object: 9133661dcabed202a7c861f73c87155be637b1c1 src/glean/api_client/models/indexemployeerequest.py: id: 3d41098a24df - last_write_checksum: sha1:09b003dd744dd993e99f3abf4e03ed0c42cefa0a - pristine_git_object: c37c66ac44a15692b83c7bc8fde36d4646a140c2 + last_write_checksum: sha1:f2ef52e54af63079c02b2e5cd0e8d3597503f57b + pristine_git_object: 1676889e4a527c27b4b04bca8789e8aa55cfcf7d src/glean/api_client/models/indexgrouprequest.py: id: 46b3cc16858a - last_write_checksum: sha1:1e1a7f0953a25540b46850a1f0add8f5b62ae717 - pristine_git_object: f0b242fdb93194ecfc77237eea3d106b4218af15 + last_write_checksum: sha1:853e4816717bc2a63f12ec02a84586d222a4b84c + pristine_git_object: a3aba2bcd96cff7594c2f016f3b7f54560b4a9e5 src/glean/api_client/models/indexingshortcut.py: id: b2089569a74d - last_write_checksum: sha1:dce40fe8a0919c9cf65c41f6326309cfa414b834 - pristine_git_object: 82edda463beb607dba65ef99a478f35282652e00 + last_write_checksum: sha1:39f5c97e5e8fc5862a8094d9cd3eb2d8e89fd88e + pristine_git_object: 14e9ed0b93fd8cb5533c743cd92d79c9c6c6ca3b src/glean/api_client/models/indexmembershiprequest.py: id: d3abc4681996 - last_write_checksum: sha1:7c5ee232a8646b4c930561a7f74106dea63ddb66 - pristine_git_object: 471ea84bd5fa471cc2e36fa9ab03469145f2726f + last_write_checksum: sha1:0cbbf25529470c21a87c266a0465f5d41a1fb2c3 + pristine_git_object: 0cdb28a87e19a2df5271b408827388d202341d3a src/glean/api_client/models/indexstatus.py: id: 1b79f41f207a - last_write_checksum: sha1:28ac8a8e2040156b23c3e72aad289c63afc8ebe1 - pristine_git_object: 51863783f2e02d6e1d3bacf72285c04ac742119f + last_write_checksum: sha1:6798a9f7581f3ed2df88311b09d8bb6d2b5db15a + pristine_git_object: 69258e11e6e8b0075809d964fbcd3bd6b9dcadd5 src/glean/api_client/models/indexteamrequest.py: id: 7b27fe5b6d69 - last_write_checksum: sha1:1eb31cbb1f1626a5c3cc0b64e8c69156449b628a - pristine_git_object: e524f95153e6223216a49dced56da167c4c33560 + last_write_checksum: sha1:40aaea706325ca2ded80db4a21f624265f6db832 + pristine_git_object: daad53ac1899e000ac202500e35b8c39162e31d4 src/glean/api_client/models/indexuserrequest.py: id: ff0180ed9f7a - last_write_checksum: sha1:703d8aba1460cf9a2a1a6cdc392aa8015e2871f8 - pristine_git_object: 7acd43d1583cc67dc4f370b9a3b981aea698b75a + last_write_checksum: sha1:f362c63a887c21982d982598b18a29b6d5353487 + pristine_git_object: 3ea44b1bdb7776f39f33d7fe5c0d22752733bf7c src/glean/api_client/models/inputoptions.py: id: 29608097f74b - last_write_checksum: sha1:6560ada834c8844b541011ffff7446af43a5d808 - pristine_git_object: 3472a2e4dee4d0e844a3c692f83ba6562c22c12f + last_write_checksum: sha1:ee29e4aa58bba8f0293c99e60dd11af7924aa215 + pristine_git_object: 5b803dc6db091bdc318459bbb850f8c1ce386a76 src/glean/api_client/models/insightsassistantrequest.py: id: ff69cec68e31 - last_write_checksum: sha1:e6f74c316007cb309c2de8050630a85b3918d138 - pristine_git_object: 806dc671c0e0d8855ff39c17451507b63a178217 + last_write_checksum: sha1:8b1eb610233a4d220aeb92f0dbe8cdd7003ae145 + pristine_git_object: ac09523c3d63d4792df224714b6055349fc316fa src/glean/api_client/models/insightschatsummary.py: id: 06b2f68e597d - last_write_checksum: sha1:8373f3ae3e4e5397c33dd77dd4217cd7995f5a13 - pristine_git_object: 44b76c5ac9d5a612baa304d4cae9fbb08f0afece + last_write_checksum: sha1:b17d6e2501a3b665516597e9eb9015a28d65b4a0 + pristine_git_object: ef291b8cb1b5e33e9f33ebdb23166ac995685235 src/glean/api_client/models/insightsop.py: id: ded0a3337a07 - last_write_checksum: sha1:c88dc9426f3a524eab216f55c273173413447622 - pristine_git_object: c0de2bef0cfda6986cec13f9a02557f3b3bf02fb + last_write_checksum: sha1:e01bc40421547a3b46f35eb6611a0090ee106387 + pristine_git_object: c194163d9477714282b89ec0e5a188b22a570dc0 src/glean/api_client/models/insightsoverviewrequest.py: id: ba00a51c6496 - last_write_checksum: sha1:5194f1bd25326c6e1535697851930c6761961311 - pristine_git_object: eda4a606dd0a29d6d5e253e0b35a8bfacfb582ee + last_write_checksum: sha1:fef7c9f769c217bebb55f491325633af092762a8 + pristine_git_object: 7a5e1fa6d7a9be52aad8a9de634f987cb2035be0 src/glean/api_client/models/insightsoverviewresponse.py: id: 9f278319d18c - last_write_checksum: sha1:ce3633f5ef738321cd368553bf78c0787e5191c4 - pristine_git_object: 27313ce1cfa024efa9fcbe79cf77ef99914bf1cc + last_write_checksum: sha1:4ac8e1a9695f823b9947e6aac5927cda5c3a79ad + pristine_git_object: e4fb9e0ffafae94dae5a01dae42354dd11939afc src/glean/api_client/models/insightsrequest.py: id: 72fbc9d1c47b - last_write_checksum: sha1:215c400cd29d4cdf97e01d582822c241495eb8d3 - pristine_git_object: 8ec76f9c1748a93cd4156cea8a388bd8c8f5e6f9 + last_write_checksum: sha1:641737151b6ea76fdd6591c743af34e0d4a944b9 + pristine_git_object: aa059e5b80279e20e60a5e53c2fc65ae5564ccba src/glean/api_client/models/insightsresponse.py: id: 8d5ce8feb796 - last_write_checksum: sha1:0ef2da23ce302022e5f8b6f2dab73c034f369431 - pristine_git_object: aa95f0f43936336805f02b14adac648bc2a9e5b4 + last_write_checksum: sha1:1af9982956d04f55dbae3ffa7c73bc470610fcb6 + pristine_git_object: 36db7acbd198b43acd0d2bc134095670c4fb2c18 src/glean/api_client/models/insightssearchsummary.py: id: 876b12a69ab5 - last_write_checksum: sha1:9cdac95b786fa9bbca712524e7b7c90a2f09d9ea - pristine_git_object: 481ba43c8129461b1795345febf811541a8827ec + last_write_checksum: sha1:8888b0d7a0f554300c4eae4e12a4c750978e78db + pristine_git_object: bc0dc3e68f98dfbeefe25d4832115ea684ae2090 src/glean/api_client/models/invalidoperatorvalueerror.py: id: 92783a6d0aff - last_write_checksum: sha1:5903d231e24afb30c1bdf5c7dcdece23271b23e0 - pristine_git_object: e9e0ee2bfce4031bf643d9ce963b10b03b435ca2 + last_write_checksum: sha1:a0d443a3d2461591f9161ec21458a1f29f2c1be7 + pristine_git_object: 4c013b71833b42cf050666f88818311f329cbd3f src/glean/api_client/models/inviteinfo.py: id: ba829cd6990e - last_write_checksum: sha1:26fd60b367039e5a9062c72b4bc9174988a56b48 - pristine_git_object: 20044d837951b39c0f4ea3c4dbca4371617b05d5 + last_write_checksum: sha1:341e4f88db7c3a215c9d97ca5ba2b5bcaf878441 + pristine_git_object: 48cea460d4855ec1d9ce23c9e4fd4db8ab492fd0 src/glean/api_client/models/labeledcountinfo.py: id: 35eebfd45449 - last_write_checksum: sha1:a4ac8cd329658fd70eb890b21fb7f9cd16c9077d - pristine_git_object: c123fd88245ed5d782c2ae83e275530c3d85add2 + last_write_checksum: sha1:b473746349b3034480f21825d64bfe0952e29ac2 + pristine_git_object: 0bc0a2b30f466897a5c55b8e815d028ae195e696 src/glean/api_client/models/lifecycleevent.py: id: cf06bd7d4f19 - last_write_checksum: sha1:486a3d0e056296ea0f81144afffdf05f007e2c8e - pristine_git_object: d30704e647640863576d70025f28fd4a1f28ef0e + last_write_checksum: sha1:d6fb14871581447e115aa5347daeaed156d7a0d8 + pristine_git_object: bc4960d419842234a00c84defd2544a602bf1b9e src/glean/api_client/models/listanswersop.py: id: 6df22dfa5611 - last_write_checksum: sha1:b7bc88a7995081c1a37c2bb1588037c25f050fd8 - pristine_git_object: eb99f4463abf15d7c14b276968b9df9c18d3d6b5 + last_write_checksum: sha1:2aa923f25310186c062c441d363d79e0d9ebf1d8 + pristine_git_object: 01bcf155f0c5a2a82f60569941a0c407f3c7bc85 src/glean/api_client/models/listanswersrequest.py: id: 182308b967ae - last_write_checksum: sha1:824fcc94dd21b633c4464e9139b65035fb2c11c5 - pristine_git_object: 6868a5387ab04cc1ae7b697d90790ca3ce5476d6 + last_write_checksum: sha1:c6a04b1e66e736813bf91a89bb236a68387083d3 + pristine_git_object: 2c31e54f5f568869256b3478c288ffcc48fad6a7 src/glean/api_client/models/listanswersresponse.py: id: b7fd2c05b83d last_write_checksum: sha1:abc77f90517a39866282b1bbebdb9cb0ff0ad1db pristine_git_object: e92608b140a8de3049806f599fa8fe54e4961e2d src/glean/api_client/models/listchatsop.py: id: 94b86456aeb7 - last_write_checksum: sha1:23b209b16d154e0f3bd78f85c33f7239c85eddf1 - pristine_git_object: cdd71758afcdf9af89db81c0028d65538d2f5f14 + last_write_checksum: sha1:1f94be0a3140c776aab0bce9d9d24435fe5bccc9 + pristine_git_object: e363590a32cb16b280d7837931f08dfd1b51c2a7 src/glean/api_client/models/listchatsresponse.py: id: 50a66bb0b05c - last_write_checksum: sha1:eb129db5e5cf7b921fdac6359b9143b7808b0791 - pristine_git_object: 4c33ac6b11e411093153cfcdf04054b59352979e + last_write_checksum: sha1:44afd70db5b2bdea5c636923e7d08c44c9e02477 + pristine_git_object: ff68c98f36418c03c4f7fdda117ccdde20b31498 src/glean/api_client/models/listcollectionsop.py: id: e09e0878038d - last_write_checksum: sha1:342b62a14338d35b99b933f0002ce823b29ea17b - pristine_git_object: ad00f15cbffb1933b2dbec0fe497ff4a1062e956 + last_write_checksum: sha1:769a98216dccf5618dc2f8a61d31d26eae7e62cd + pristine_git_object: f612f8b3e0a8a29668bab5029a97b5bf73bb08f7 src/glean/api_client/models/listcollectionsrequest.py: id: 1a996c119c07 - last_write_checksum: sha1:c09eae806aea84a6d4ded438a447a843b9b95261 - pristine_git_object: f956dd2a664a6a71da4f480abbbe269053d2f948 + last_write_checksum: sha1:c118a48cf8beda0d5464b18500d30a01256a2f7c + pristine_git_object: 5ca0c41074a77a90d3b891e415344b54eb675b36 src/glean/api_client/models/listcollectionsresponse.py: id: cedec0f42961 last_write_checksum: sha1:2c5a2d4a11b94edcc23ae4083a4c3db6d0f1a8b3 pristine_git_object: fcca4d58be24bae30d9081726ac639c1c99e0153 src/glean/api_client/models/listdlpfindingsexportsresponse.py: id: 880bcb62cf12 - last_write_checksum: sha1:d878c47568278cf5ed0b549f846c07d6e0c88b1b - pristine_git_object: 4920345fcc4ad3a006dd32b032d713c61926f46f + last_write_checksum: sha1:a30adf359aa17ee513d1841a0683a78988cd2de9 + pristine_git_object: 1d172533fb05d65c4e53e28151054eadbd25decc src/glean/api_client/models/listdlpreportsresponse.py: id: c300fd0a9a6c - last_write_checksum: sha1:1ca2655030b725401fc82df4bf6d131294f5424d - pristine_git_object: df22a92d646bca5d72ca874462ef4e46cd245f43 + last_write_checksum: sha1:f07f6d45219f3fea94e7e2fc5ed5f34108a7574f + pristine_git_object: 58201d138f7290bd45045b634c6874801b593d3f src/glean/api_client/models/listentitiesop.py: id: 06a2c7e16783 - last_write_checksum: sha1:f0940efc625659323ca06e0c1bbfa2a6649237b0 - pristine_git_object: c64939c3d9029fbd5ef6d06a1fd63341cbbc3e37 + last_write_checksum: sha1:961d3c8717369225b1fe87317f7c66ea0b68a029 + pristine_git_object: 949125fcc0740d5f2f41b8ad611343ce764f7bf0 src/glean/api_client/models/listentitiesrequest.py: id: 80b3dc9dfe99 - last_write_checksum: sha1:1001bb54755827104cbc2c94e795dad4d0538b83 - pristine_git_object: 74911f035ccc4cf3e2995f00a66200b3c13bc8ca + last_write_checksum: sha1:1dfd7c85fe9bbef6620f911a5c05602d7e3353eb + pristine_git_object: ee0b2e8b2c0b94fa52301d8daf0965e146a899a9 src/glean/api_client/models/listentitiesresponse.py: id: 8cbc0b717442 - last_write_checksum: sha1:5e7e8d4251e63106adcdf4bf256d55ed7b9d8ecb - pristine_git_object: 6f8be48a370fceec00ce87133f9e6d286e70bae1 + last_write_checksum: sha1:65d69a4ce4e7f46467b71206a3ac7bf1c0df8f3d + pristine_git_object: 81624032a04f488cf3bf6db909739aaa08b0a573 src/glean/api_client/models/listpinsop.py: id: 3d0b32b3a1ef - last_write_checksum: sha1:f125f2e4c0f68f7c74225c4c6cc9f85d8eec1240 - pristine_git_object: 147e4bd94d72c9a31df92a7fd1687ce6abc34069 + last_write_checksum: sha1:b809ed010fe0f848b8dd19a4d1fbb404ba7afe52 + pristine_git_object: b8a6fa2ad4ef108ebb9da2dded9cb87afd871b0c src/glean/api_client/models/listpinsresponse.py: id: d8ffc5ecc72d last_write_checksum: sha1:de24dc3fec981597fb7db5b5712b017857a3743c pristine_git_object: aa39d3adc17c52d5463923aa02405af36c4ccbf2 src/glean/api_client/models/listpoliciesop.py: id: be81e93eab44 - last_write_checksum: sha1:4ec9c87f64d63c1eb4e28855d516beca829af78e - pristine_git_object: d0b1cc73635af1b6d993cf26841329f04dbb852f + last_write_checksum: sha1:3256ea79feaeda5788bb3d5f5f677342e2820a69 + pristine_git_object: 1c4ec28639ab550cb98f4be5680843b1880b5f4c src/glean/api_client/models/listshortcutsop.py: id: 299c0fa933c2 - last_write_checksum: sha1:cade0e2fc55c9774df6c3af1ca083ad252a8d655 - pristine_git_object: 8b99ab97753c080ce3ae1d09b38a9f932d138dff + last_write_checksum: sha1:a70538e7b48caad62e961ae7a15757a0fc815bd7 + pristine_git_object: 8d6754953d35da290854802660d35970b5560caf src/glean/api_client/models/listshortcutspaginatedrequest.py: id: 4a13f02487cd - last_write_checksum: sha1:62f506af550b18168f473a2a4df79f6ec39cd97f - pristine_git_object: 30b1e2d7c8bb25c1ff0b8ef87fb5705e32433de4 + last_write_checksum: sha1:8cc4fb2123bfc745968a7e3b881e2333f343a6fa + pristine_git_object: 755603dac9a6b8c06225c1e01fa8cb3164baf3c3 src/glean/api_client/models/listshortcutspaginatedresponse.py: id: 5ea70beb7323 - last_write_checksum: sha1:15867a78d0e32fa85137acd522e541d4e9fe0f07 - pristine_git_object: d8359a2f30439e9e813bbc38d6406177f5f50260 + last_write_checksum: sha1:0be8b545f7c223c59567b350f35f806bec56d13b + pristine_git_object: b2799497070d05dccbbcbdd3a95b90acd26ce069 src/glean/api_client/models/listverificationsop.py: id: c0fd4141bc31 - last_write_checksum: sha1:e31b71c4265848b8af683a87062c10034cf6c7dc - pristine_git_object: 16e9645ac5ecfebe78e1d640f885c2ac6ed0c8e3 + last_write_checksum: sha1:0fe81e067bb4d0194b959391590b508484521197 + pristine_git_object: 6c442e27376af36c26bdc4a59e0b33ba76b33958 src/glean/api_client/models/manualfeedbackinfo.py: id: b7e93f70592f - last_write_checksum: sha1:7c25693c56f51c4a9789fed37caa77874f3c8a19 - pristine_git_object: 5d4bb51527f08455c22de97a0b6b23ab1bd466ee + last_write_checksum: sha1:b6c86aa9d284fe5452b6925183a7b1e157bff5e4 + pristine_git_object: b3627ea78c80cb0374e6b6b1b9c9cb445d5ea4b4 src/glean/api_client/models/manualfeedbacksidebysideinfo.py: id: 5cd6cc3b46ca - last_write_checksum: sha1:b2717bc4112725c29f9d41376e51fc1212ab844f - pristine_git_object: f0f511048d7e6766eddca8222503bfa475ae120a + last_write_checksum: sha1:f2489fd7e95813617da7dbd8403876be601467a5 + pristine_git_object: c8a754e213df90569a7a3af03c5f50cfb4594ea3 src/glean/api_client/models/mcpauthmethodbreakdown.py: id: 4bf72b45633a - last_write_checksum: sha1:88cfbc1814bbbfdb52269472f0c42c6f2e064da8 - pristine_git_object: fb87c13ee59d6a349c0244bb4aa7a3490132c965 + last_write_checksum: sha1:40417967280f0b3032d4813d080e9c87256aaf5a + pristine_git_object: 1b763a361654a7f6359b318a033bffcd7213ccf4 src/glean/api_client/models/mcpbreakdowninsightsrequest.py: id: 332e57fe91b4 - last_write_checksum: sha1:b8a5b8ffbe594cfce61d0183bec0379441638511 - pristine_git_object: 4d3a744d015294bb021141563748b237fe19a669 + last_write_checksum: sha1:bf142eed401106d5bf15d9e3fcf8c91a5ad53ec1 + pristine_git_object: f6d6a5a3d60b47b706efa4b5bb0254a3bd67a303 src/glean/api_client/models/mcpbreakdowninsightsresponse.py: id: 8d4c4b79318f - last_write_checksum: sha1:327324327a51d768f191da5325d9c018d51bef43 - pristine_git_object: e3f49671ad14aa1528da0f08e6a7a54cbcb2d01d + last_write_checksum: sha1:7e9ba750988ae15e12787e44b6da366665101b28 + pristine_git_object: 8ee538d7430936096ee148b3ed8755ae09d955ef src/glean/api_client/models/mcphostapplicationbreakdown.py: id: 1781ca7f416c - last_write_checksum: sha1:d745fe25cc993a40ccee8fad5b7f754c4f839ddc - pristine_git_object: 687302acb43204b46a446bb96d39e413e6bd674f + last_write_checksum: sha1:5c55ac21374c9aa978bcca4739670e1e7864968d + pristine_git_object: 08a477d54013ab8e7e4f055c6e8dee77be47c46b src/glean/api_client/models/mcpinsightsrequest.py: id: f0987b48f7ad - last_write_checksum: sha1:d19e1383c5440b23f73e25309f41b76a648d0520 - pristine_git_object: 270fed0d6feb6dea41904c37fd9fb7ff32e2f668 + last_write_checksum: sha1:5602a3ce98705155caea36094a147f47c3fd7b9a + pristine_git_object: a80ad2a5d13d17d9be5e43f7d2215aa45ed88a6d src/glean/api_client/models/mcpinsightsresponse.py: id: bc582556e2e6 - last_write_checksum: sha1:08ba2360e6cc0330ced4adeb4198a12dbbd9f2fb - pristine_git_object: e4dd8004941b749d595393ac80f7b0e281482f5a + last_write_checksum: sha1:b7f77b94b956f7a50b44aa91de71451807967f1d + pristine_git_object: af5f535704fc1e03cb3c2644d32ffb6e06b057ea src/glean/api_client/models/mcpserverbreakdown.py: id: e18a24a43b3b - last_write_checksum: sha1:128cb65d763be38b59449381cb8dc0f56d80d5a3 - pristine_git_object: aad32563131a8847abe584ca301725dbd6b99253 + last_write_checksum: sha1:c6a18712c7209904187d3262dd842936650b5ace + pristine_git_object: c562d939f89b81954639a2a52c3a3e4257896864 src/glean/api_client/models/mcptoolbreakdown.py: id: c4d0cf268469 - last_write_checksum: sha1:79418ead682d099a3e535fd7c5f9ccccc0ce27ba - pristine_git_object: 5fcb1924ca16d5dad4fe73daaf5465584387fd9b + last_write_checksum: sha1:5821ab3c241e6356d2eaf5fef526062423d98990 + pristine_git_object: 2218ca7cc94b3714c55125bcd8641812c4e7a15e src/glean/api_client/models/mcpuserbreakdown.py: id: 1dab2bbf7d27 - last_write_checksum: sha1:1dfe73c56e8671378f42ae0a04c8eb9b8abbcf02 - pristine_git_object: 42a1ac29e3a9b8b16e5ccddcbef7b94139da8394 + last_write_checksum: sha1:b395cd02ba1229f174984726c74077b69099f0a5 + pristine_git_object: 0c9cc70276e2f58ec54d70743ac85855d3a72711 src/glean/api_client/models/meeting.py: id: 0b1f0fdee050 - last_write_checksum: sha1:d727361f35d0138e09cfd1bc1e8480afd0996795 - pristine_git_object: c3c75325b3963366f30722e868b0a315df3f6557 + last_write_checksum: sha1:7c2f2292c2c8674916d8a8f49693662efc9e9a1d + pristine_git_object: 65b1244f41193b6ea3f963600a97946f3e78a9b9 src/glean/api_client/models/message.py: id: d2e44a188d40 - last_write_checksum: sha1:609d6f7909210e8a5a233a1ef459cf78638bd3a0 - pristine_git_object: 11d42a8f89fe22e36704855e9b49ea59eb52eaf1 + last_write_checksum: sha1:f79a9d7581058ca6d2589cd8988c348a7aea1e9a + pristine_git_object: 5728d587ed6ffbe0c61112f464eb7cd954fd199d src/glean/api_client/models/message_input.py: id: 5dcd2852dd9b - last_write_checksum: sha1:8ff252d6ac28627ffe46b0d7eca7aeb8728ae650 - pristine_git_object: 75d840bf333d8568689c53ab3e5a0932df02d7f7 + last_write_checksum: sha1:a5e4691bdaa86adda87aafab3696508004204186 + pristine_git_object: d919f398c91eda64e5c3b6bfc93fa4a366c6079e src/glean/api_client/models/messagesop.py: id: 60537c3f3449 - last_write_checksum: sha1:0c6da7e005f1115eb21821ae94fad6fbc1bdc2ab - pristine_git_object: 8e1735a0ecd72434644c9fd7025a168acfc735b7 + last_write_checksum: sha1:06d3118770709089d9ffeb8bb0694a668ff8fe51 + pristine_git_object: 119cbd0fe960694904012ee1741e1981ef8edbcf src/glean/api_client/models/messagesrequest.py: id: 5664726a791d - last_write_checksum: sha1:8c056897df7ee00748de5c8e7f580e77a620afe8 - pristine_git_object: 2076bc4f4b990f248b210ed495f793bee5be8ca0 + last_write_checksum: sha1:b334b323e896dff95be82dd7e9cf9ba5f1216790 + pristine_git_object: c016929f1026fb1326f8e3f6cc45a9924e35e7ea src/glean/api_client/models/messagesresponse.py: id: 1c7a6e4dd845 - last_write_checksum: sha1:1d0fcd8f638347b2c5a09b544ae9b350bab23416 - pristine_git_object: d68228bc28c443824b2b73ff1c899053769a56b9 + last_write_checksum: sha1:d2815a7e6e6b22635680f25d6b951a2f8461c5f7 + pristine_git_object: b53724895b222c3a5315399c90beb73e077fb1db src/glean/api_client/models/objectdefinition.py: id: 96d425234754 - last_write_checksum: sha1:b63817fa6c300a10905043a49f23466ff583ff98 - pristine_git_object: 65f80f05226193a90eda813741acac28ba772f90 + last_write_checksum: sha1:3c3f678d323323fc1f532d672ebdc24b6b7fae6e + pristine_git_object: 0a49d609aab9ba3e3192fb4228bcbc6aef4bf996 src/glean/api_client/models/objectpermissions.py: id: 6a2561118579 - last_write_checksum: sha1:e3d51c6afdf467afe6559222130ac627a2331625 - pristine_git_object: efe9cecc59c9206139c445c77a279b2f711d3e81 + last_write_checksum: sha1:b992a2980d4a102a6fc2e5c08790b209637d3bf9 + pristine_git_object: 4b5f89205a7ef771057ff3bf337a362afe2108c2 src/glean/api_client/models/operatormetadata.py: id: 820aa2772189 - last_write_checksum: sha1:b172fe562b7c47bd30f87b81549863fe7740c2b2 - pristine_git_object: 09ba687a03f46086f068df7e719aaa2ba202cf74 + last_write_checksum: sha1:c8fdc886e3961307e7097804beeb1fa7fd03c33f + pristine_git_object: 4f529fed9ee6e7d0fd0561a422a6074de76b39ce src/glean/api_client/models/operatorscope.py: id: 143660b5a54b - last_write_checksum: sha1:6848b985c4fb11d0cddf528125d95e3bb26014a0 - pristine_git_object: ebb5f578619d9698b2afab352bd015fb1192fe44 + last_write_checksum: sha1:10a498f2f2fe0159d895c633b506b79d894d54bb + pristine_git_object: 215c815edbfc4dc8cbed1a1320fac281a6ff4886 src/glean/api_client/models/peopleop.py: id: 0701e843e962 - last_write_checksum: sha1:b75a218c54e4ac93510c44f19dc99fa5803447b7 - pristine_git_object: ab286401ed0296450b2ba4751cdb51ccff6f5a5c + last_write_checksum: sha1:f627b4eee83da20ab3c07068500bb1b51ff975aa + pristine_git_object: e4559654f315644aea896cb62229e338e4a64b71 src/glean/api_client/models/peoplerequest.py: id: a7dcc3001149 - last_write_checksum: sha1:1860e6f7a24bdb3bfbc40847d525b1272d924dba - pristine_git_object: 1ecee9b17688fcee5d67e193b1ca08cd878f74a4 + last_write_checksum: sha1:5fa103b3a6cdc38f6d03a6148463c9f9642cbef0 + pristine_git_object: a9beefa83bcfb9a6af67ed5cee19b4c569ca6e14 src/glean/api_client/models/peopleresponse.py: id: 85f4d95884f9 - last_write_checksum: sha1:ed99cd7a6f88c2b90a020d44ca984544e9693cb6 - pristine_git_object: d882d545defeaa06530c915d56890293ccef94c7 + last_write_checksum: sha1:b911627143afee052bed62bc8099edc3788d65d9 + pristine_git_object: f2c3050481f2bb0f4e0c47f3e006d9782bf1ead5 src/glean/api_client/models/peragentinsight.py: id: 4b4b57287b69 - last_write_checksum: sha1:0fd438e75024952d04620122ce331e0d86aaf383 - pristine_git_object: 6b711e39954fbda467c3b1197903b777398676c6 + last_write_checksum: sha1:2d2fe4d7ecca0d056cdfbea44c97b3ef4b096854 + pristine_git_object: 08fe3493f02307fb6d67cb50d153add9496b4125 src/glean/api_client/models/period.py: id: 41a45b1daeb1 - last_write_checksum: sha1:a90f23fbb4cd6574f0e53b39f28653fa796d7140 - pristine_git_object: 5e03da4d0ebb1324cbb67b470e6b2884abee7efd + last_write_checksum: sha1:f7759137af4f53a9c90a7f1dace927980045c0f3 + pristine_git_object: 6a6b4067465deec2fb408f4d9d4c2d326bff987a src/glean/api_client/models/permissions.py: id: f123070d7860 - last_write_checksum: sha1:3b0334bad215f8d510541690dd14c118146547a6 - pristine_git_object: 51f12fd45d92bddf1e7324b8ad76136fbbe8e440 + last_write_checksum: sha1:68559fc74d91bce47bdad1e47d43cf194980a1ab + pristine_git_object: ba3cd47d52668c11d94154ca2b68331c55ede6f0 src/glean/api_client/models/permissionsgroupintersectiondefinition.py: id: bd15f722101b - last_write_checksum: sha1:d70645b20533b35240e169281bfc04361c8942ab - pristine_git_object: 52b20386d1215ca9d5ddf1510c569954ae510c38 + last_write_checksum: sha1:288370109ec335fca87db120f85693d45cb7b940 + pristine_git_object: f3d3e261702634fbff02c0e0be9c6c530e4465f6 src/glean/api_client/models/person.py: id: 486c8c3db123 - last_write_checksum: sha1:1a6ad2c2c4cbe493c84499fe442660ae8ba56005 - pristine_git_object: be88dd7ee62fed92315207cff2267fc5d437062a + last_write_checksum: sha1:a088f87e12320481cc974499160a22d80d458a95 + pristine_git_object: 170fb931f7dd80509ba2e95603dec6ce3c7d117a src/glean/api_client/models/persondistance.py: id: 307f87d6cd91 last_write_checksum: sha1:90c27054198a8779074839f5226724e81271b462 pristine_git_object: e9511127696034578efc1cc3b778b87564be531e src/glean/api_client/models/personmetadata.py: id: c3af6f3d50a4 - last_write_checksum: sha1:6a87a924b1f4c0b27b9d4f502fd339d407212da7 - pristine_git_object: 5290ba806f6e199b07b5e24ec9d8a6f88e92bc58 + last_write_checksum: sha1:154b4eaf9167bd2c6536cc7fa84c6b2cc4219d40 + pristine_git_object: 7d0bcec6286e6b3a85acfaccf0f86ef2855e685b src/glean/api_client/models/personobject.py: id: 59af9c1e1c5f last_write_checksum: sha1:8e37069549deee32a725de213e86c704bf1352ab pristine_git_object: ab476930b20a2aafb05dc45a84edc2abf666a128 src/glean/api_client/models/personteam.py: id: af542996b2bc - last_write_checksum: sha1:6e79f1a13d0e41ac17f90d0647cee212fb566d93 - pristine_git_object: f0b080d9fb622465ea1e63cb9a7df477f74525ad + last_write_checksum: sha1:645a72ee01c3eb058c6b6482fb8b40523150dccb + pristine_git_object: 04a9a14367997893c7cf81442b9bfec1a1a44ded src/glean/api_client/models/persontoteamrelationship.py: id: d81f4d7f9bd8 - last_write_checksum: sha1:c1dba4b3a689988ff60346d0e29e9217aeeed6e5 - pristine_git_object: e2f3055250a808a9ae22bf8732b7027c7a9c36b6 + last_write_checksum: sha1:bd146650be199586f395635756cf3d29c445a977 + pristine_git_object: 800ab41444e78725f6748371a70b0af9094abd56 src/glean/api_client/models/peruserassistantinsight.py: id: aad2213c6217 - last_write_checksum: sha1:d873cd304aa0cbe532deb0d41142b61cf993dff3 - pristine_git_object: a24e6f5d004a03a816e2e4eb13594aa3229f20bc + last_write_checksum: sha1:7f00fe236d04065bd80c3e7f18f1a8070e3f5425 + pristine_git_object: 185cc0dec62c30f9313a8243ac332734839cb1a4 src/glean/api_client/models/peruserinsight.py: id: a243b1a405fc - last_write_checksum: sha1:c36aa68a3c7ff2ba978814cec4e8b52506b21a54 - pristine_git_object: 37af149f5746dce29d909a3fb5d65b40348ed10f + last_write_checksum: sha1:e6dbe570ceb12f6a4af5c54ceb40fd197382b710 + pristine_git_object: 6fa9a0087c5fb44d5b1a0f1254a51bbf3c6b8b9c src/glean/api_client/models/pindocument.py: id: 77cd94d61387 - last_write_checksum: sha1:7c4513c41b8d511327bc32a89750fbd48bc08c18 - pristine_git_object: 7373e05b6b268b24e1b5d91fbfa7466e3a2a2430 + last_write_checksum: sha1:a09cc65cc46b8f26906cc260fa1de0d2a08b4436 + pristine_git_object: 34a2ae1cd2f81dc50f27edd227be5f658d54f248 src/glean/api_client/models/pinop.py: id: 9bccdd6255f1 - last_write_checksum: sha1:d3fdbceeda27177a9c8f8b5bcffe8857a07ac1f6 - pristine_git_object: fb63cdf7183848a077fec7d668b6b4cfc544e796 + last_write_checksum: sha1:55958447d28bf973216bd410b113701959cee13a + pristine_git_object: bf943a3d806eeeb9319d482136bfa4cda2d838b8 src/glean/api_client/models/pinrequest.py: id: 5b14b683421a - last_write_checksum: sha1:73484002a7a37df4baaf05fd282bf904acf54cc9 - pristine_git_object: 1e291af2ba4ec81b33d9b03faad6cb8365c8ab55 + last_write_checksum: sha1:b9eed5c0ba4e8d2a1f3338e4c680e7c21cb44d80 + pristine_git_object: cbf86a5deb77918481f0573fcbdf9dcd18ad9d49 src/glean/api_client/models/platform_admin_agents_listop.py: id: b9abc1576fa5 - last_write_checksum: sha1:eed1d9ca3d55ee9535fea2b05aa42fdff8ba4bf1 - pristine_git_object: 36b4714ea7297ea7fad9844dff4a974c501f2e40 + last_write_checksum: sha1:d2046bb1746f171d263a963da60f8d613100166b + pristine_git_object: b97f302380a421c49d8ec19ae92c085d0a7a16ad src/glean/api_client/models/platform_admin_idp_groups_getop.py: id: b99cd91df7c5 last_write_checksum: sha1:7ee830069ee023d45022d055acef1066dc0f5ab7 pristine_git_object: ba3bfeb455a84130c2898ccfa8b319de90f86352 src/glean/api_client/models/platform_admin_idp_groups_listop.py: id: 1afffa068944 - last_write_checksum: sha1:9708b099fe0f8e76fa08136b0f10933f6035df5c - pristine_git_object: 5ad05d37b95b7fd790727800e87c2827ca6bfc6b + last_write_checksum: sha1:13e3f45a154da21e2931a4b3e41ef4ad7030315e + pristine_git_object: ed2d666bc007a7bc45d634a8c7f1a639b70c30c8 src/glean/api_client/models/platform_admin_oauth_clients_getop.py: id: b1cb3d0d6eb0 last_write_checksum: sha1:4d0411f3b8cc0acc90ca83eb4d4ad1b1264f22c2 pristine_git_object: d7e906c7b8e5a6c7532d18a136dd7b96332e4bbf src/glean/api_client/models/platform_admin_oauth_clients_listop.py: id: 85a47be2a9e3 - last_write_checksum: sha1:576217216cba78fb36624567c849820b425963a7 - pristine_git_object: 02a682332c3d62b873d7b9ba1ce2273782c5aac6 + last_write_checksum: sha1:c492ed50b7b7a1f3f48856b5f1eecd707c1005d8 + pristine_git_object: 6a17468c3a30d56dae67250f7b2d9ee3df823c02 src/glean/api_client/models/platform_agents_cancel_runop.py: id: c5b34ef0de1f last_write_checksum: sha1:e4e08794926fc36c0f3f00adffcd792b99d281ca @@ -6270,20 +6278,20 @@ trackedFiles: pristine_git_object: 01a8e34febfc748e2c1a51455b3ad070d4736d8c src/glean/api_client/models/platform_agents_get_schemasop.py: id: 54795e674f69 - last_write_checksum: sha1:2179f25a466baab76de315e6e736876ba97b60f1 - pristine_git_object: dbe9a0361971bfec84cba04e3c44ba7e72cd1a22 + last_write_checksum: sha1:48ec75eb66e36e76f98c1bc6a5609401acf860c0 + pristine_git_object: f139efc743b35179f6ef2d57c2cec7f4dccc2d5b src/glean/api_client/models/platform_agents_getop.py: id: 606568a4c8fc last_write_checksum: sha1:58370e345df87a242670e2cfdb26800caa6a00ce pristine_git_object: 880c65c1e74dd49543d650516f29141c6cdd486d src/glean/api_client/models/platform_chat_create_streamop.py: id: 6950e1c0b047 - last_write_checksum: sha1:489939715defc6fa1f52fc4664326dd4f582aa97 - pristine_git_object: 10c83a83983658fceef0fe3066ef939145035157 + last_write_checksum: sha1:2d6020e93102b753c405c689d302fdad9702b308 + pristine_git_object: ec6e201a7a38e690155548a150121c6449cd88df src/glean/api_client/models/platform_chat_createop.py: id: 6f911817c878 - last_write_checksum: sha1:4133f592f181982f11cc9199ce9a9b7af60dce6a - pristine_git_object: 1812a49682ddc269112ef551e55660b821b15612 + last_write_checksum: sha1:eab5617b3e6f5661dce758108fdb55a83db00bde + pristine_git_object: cb59d9fd1868006db5e6f12fbb8a36893d37c023 src/glean/api_client/models/platform_chat_updateop.py: id: 58966e27d7e7 last_write_checksum: sha1:2d6cfc9569deaa7fb12df7d3fdff40620b774e50 @@ -6294,12 +6302,12 @@ trackedFiles: pristine_git_object: 36667c75a40a168731e31a4d03c2619aeed0bc38 src/glean/api_client/models/platform_departments_listop.py: id: 03fb36e7edab - last_write_checksum: sha1:3f424ca3007e62478bfba3baaf43ddbbe2f19d1f - pristine_git_object: 6b8e9bec73fcd010e7a745d30f8de5c48c977940 + last_write_checksum: sha1:53e19f1c426b7d8e224fa842c9e9f2f3a91cb9e1 + pristine_git_object: e61db5ea80452300bed14b6457caf0abf8fd607f src/glean/api_client/models/platform_search_filtersop.py: id: 3876ec8f6e5b - last_write_checksum: sha1:0551a1836339a7b0f5dea4cf8946e001384d3146 - pristine_git_object: 2120898eda5b77bff898692d2bff7c90a74513ae + last_write_checksum: sha1:0752cccbbd26682e660f9b6266efb191ecaae303 + pristine_git_object: 53cc08380a0d3c37f9d258d86e6ebb6d2bc2ada1 src/glean/api_client/models/platform_skills_create_versionop.py: id: c107217b99a3 last_write_checksum: sha1:03372f5d66b5644281f59d46b1e34f414ba75da9 @@ -6326,20 +6334,20 @@ trackedFiles: pristine_git_object: fc64256bf43449e23e1e7d093a45ee3fdfc441e5 src/glean/api_client/models/platform_skills_list_versionsop.py: id: 4d91c282c246 - last_write_checksum: sha1:6d512e70608e914407b2a51c96ddbe9e54815e21 - pristine_git_object: b34fd73fdde468889d03ff2534a9ff58a4fca25d + last_write_checksum: sha1:3c96a0006849ee89e91d5ec28014b5a317c46d65 + pristine_git_object: 99ff904f4c13b20d65d30d556f5d93d42a0d6a64 src/glean/api_client/models/platform_skills_listop.py: id: 2172706b6858 - last_write_checksum: sha1:ec8e8ead0aba41dadf4c74c51c9544f3f121a191 - pristine_git_object: 5c21fa77645acbbeaed69a4e5ad7cb9844670e3b + last_write_checksum: sha1:d8a27b169dab20063ba5eecdc6d94779d048245b + pristine_git_object: da1cdf6657f4857d64ad81871175dcb4932eb088 src/glean/api_client/models/platform_skills_preview_source_streamop.py: id: 18b6a2dae087 - last_write_checksum: sha1:ea54a718241b065e791ed9f8e967818908521288 - pristine_git_object: 2ce11df6c8c13e74a959efc0ebc1b10e1a37169d + last_write_checksum: sha1:47836149e6116987aad73dec8c0d09be9ff77daf + pristine_git_object: 8be76711fe691d1faf8e567faacda6b3fc6b3533 src/glean/api_client/models/platform_skills_preview_sourceop.py: id: b7afa7764cef - last_write_checksum: sha1:72d025c4863fddbcca0f2ffc40d0647b5379875b - pristine_git_object: f56672761b4b2dee0cbff34294868eb7448492a4 + last_write_checksum: sha1:575799782f2d9c903bb05da34c79904736110f22 + pristine_git_object: b2c67314ae780b6147f18ff2a3ed750bb655c3b7 src/glean/api_client/models/platform_skills_syncop.py: id: c6a29bedca20 last_write_checksum: sha1:90811712776457d85a5abe880857d1aef55f0197 @@ -6350,20 +6358,20 @@ trackedFiles: pristine_git_object: 42e0aca116a2efe4c5677df642857a6d87ea33b8 src/glean/api_client/models/platform_trigger_presets_events_searchop.py: id: b0f92c9e51c0 - last_write_checksum: sha1:43a982dfeb43611dd5f6a8eb030d6b1471666c8c - pristine_git_object: 79b57ae0802b2276f29106841cd3f30220302bda + last_write_checksum: sha1:531a75da72d8a9507a3cd4da8bd8507c189793a3 + pristine_git_object: c3d152c8cb9872a4b89e1d9146b2574d01159409 src/glean/api_client/models/platform_trigger_presets_getop.py: id: d35c8c1f7979 last_write_checksum: sha1:f74824ae6cdbd2ea35317694fbd534c20de879fb pristine_git_object: 3003dbdfed61fc7b1721e64c0067f799643cf135 src/glean/api_client/models/platform_trigger_presets_input_values_listop.py: id: 7951dfdf15f3 - last_write_checksum: sha1:96dda20479e6342ac1255e6e849ae875a8dea470 - pristine_git_object: 6579af39c9914ac78cac95acd516765e11c1b07c + last_write_checksum: sha1:5ef348b0747b3767adf856be5a81b114bfa96743 + pristine_git_object: b0c915abee672bcdd02552fb3ee05e4f6642cba1 src/glean/api_client/models/platform_trigger_presets_listop.py: id: 45db1bf0d71a - last_write_checksum: sha1:c0cb25954c13f3c2d00795112192102731c513bf - pristine_git_object: 5b040fdcd13d1c1df02d7fce7ab52b21644542d1 + last_write_checksum: sha1:b2db0f097fc2308bac11e0ed86c0fbfb8f0ee243 + pristine_git_object: 0c5f11b880c40d0817b9658002d7196dec57a3ac src/glean/api_client/models/platform_triggers_createop.py: id: c89b2acac97f last_write_checksum: sha1:b5ecf9194888ec6b2761507bee941377a1784438 @@ -6374,48 +6382,44 @@ trackedFiles: pristine_git_object: e3caabe56a5f10774d467da23ef58db3a7185906 src/glean/api_client/models/platform_triggers_events_searchop.py: id: 57bde8d65d6d - last_write_checksum: sha1:cc953a4c764d32db794cd0ee010263146936dfdd - pristine_git_object: 6ac07ec2a687d87dfe87a467de5d5fb959b6ed5c + last_write_checksum: sha1:87c9e13dc9cb38111f169230ec1a25c824588178 + pristine_git_object: 9e192f9d29bd196dad1a3efe5bc470b265e09aa9 src/glean/api_client/models/platform_triggers_getop.py: id: 6e5e83bd3585 last_write_checksum: sha1:4ade6bd1e582d818f8ee1fc2f0693f1b47a7316f pristine_git_object: 892ee9941f53cbaa38221871219e4d59b80be0c1 src/glean/api_client/models/platform_triggers_listop.py: id: 855dd1c60f61 - last_write_checksum: sha1:9b7f95121a02bdc5c4c8775bde84f4beb6d80507 - pristine_git_object: 4eb3df404a9993d2f39df37bfb20afcdbfb6bb5e + last_write_checksum: sha1:09776156cabad371a87f2923c8306116867b7865 + pristine_git_object: b416179965c628fae636f11cddb34fb31909fc0b src/glean/api_client/models/platform_triggers_updateop.py: id: ee2002799c52 last_write_checksum: sha1:b4e89947c50873b2b74a283fdd1bbfa852134c6b pristine_git_object: c57697e4999df306ed30b910fd2e1d0e5007663b src/glean/api_client/models/platform_users_getop.py: id: e5254455c1fc - last_write_checksum: sha1:d89824c72e08c06e6ec460ab90cb363aeda6cdf0 - pristine_git_object: 2ab9c826c74cf922b97fa24e4c1df5ef04733d59 + last_write_checksum: sha1:988e1751969f9fade9a44b8e0226bc0cbfbba497 + pristine_git_object: 16116035b7f3c83afc7ec6c3af5ad004f7e8704b src/glean/api_client/models/platform_users_listop.py: id: f852a1d382ff - last_write_checksum: sha1:25830d68a72f56af0dd27b080b5adfa3f7e83bb1 - pristine_git_object: 0f5bf662bfc161782f96cc1c4788be1657681b38 + last_write_checksum: sha1:15550150c946627ebd000819791daf744844832d + pristine_git_object: e86201dce132b878ebe86ed917ef9360b11b75a4 src/glean/api_client/models/platformactionsummary.py: id: 00069b22d246 - last_write_checksum: sha1:f714e076c3e0c86ded17dd732ba304dfc7d5526e - pristine_git_object: 66c767a0e78c47a85c72fbf6ee8b13d2183cefdb - src/glean/api_client/models/platformadminagent.py: - id: fa83e1e9b71c - last_write_checksum: sha1:18824dcda02d21fec922c358b1b258f0e06f4546 - pristine_git_object: 3e97d4746d56fb88029b2e718f16dc29a19ac2a3 + last_write_checksum: sha1:6c5cfe3348ffaab102dd0b531d18e8e657041e29 + pristine_git_object: f865867e39b53f3bcabeed7bd2e43c4e20289b0a src/glean/api_client/models/platformadminagentfilter.py: id: c2e1489f07cd - last_write_checksum: sha1:55d211593209f319fadd880dde8ca1872c71c3b8 - pristine_git_object: 5ee20909727f6304741bc99234d16164db7bdf8e + last_write_checksum: sha1:efcd187ca74913b3d88f366af32ef8ce67a83d3a + pristine_git_object: ed7364a771dd81b670321937ed92efaf15961018 src/glean/api_client/models/platformagent.py: id: edd82e5a258f - last_write_checksum: sha1:328c481368021207acf8a57a2193415e2afd4f9c - pristine_git_object: 84a399b6340586d32288c770d5a586668c16f9b5 + last_write_checksum: sha1:6fdbb6795e122818574913d41857143e669002c4 + pristine_git_object: 2e2f3d950be09fe7969a9d7f8451b07ab438077d src/glean/api_client/models/platformagentcapabilities.py: id: 16d4984052e6 - last_write_checksum: sha1:69717c61750d0ce8bbc07832053a06b59f17eab9 - pristine_git_object: 099c35b707245056fc4fff0b297dc8c8c894318c + last_write_checksum: sha1:78fd9b80bd80cdc7235ffbabfccc7a04b8c10b3f + pristine_git_object: e731da28e183481e83efce72437ccbd5e3aedda7 src/glean/api_client/models/platformagentexecutionstatus.py: id: 2c3e0bdc97dd last_write_checksum: sha1:26f14b0b81c18b0aaca73f4ac27c6fcc657d90a6 @@ -6426,8 +6430,8 @@ trackedFiles: pristine_git_object: dff409304169026967f63b216afa4cad4e72d215 src/glean/api_client/models/platformagentrun.py: id: 6a27f28ec4bf - last_write_checksum: sha1:04e126eefa9aa91ff20eae6156e1737fb9210774 - pristine_git_object: 26bf40035054db162a6577ff5ca9354a56bcea84 + last_write_checksum: sha1:edf47e8e7e1fd454b19a1dda9ee0092f84d4cb16 + pristine_git_object: 6f2809981b535dc2c6037eed95ab63238ebbeebb src/glean/api_client/models/platformagentrunapprovaldecision.py: id: 8ee7cd2a0264 last_write_checksum: sha1:0343bc7a10bcffcf076281cccdc189f8140258ad @@ -6438,8 +6442,8 @@ trackedFiles: pristine_git_object: 14efa2f2f726ccb26370ddca42b27b791c54be61 src/glean/api_client/models/platformagentruncreaterequest.py: id: fc8dc50abaee - last_write_checksum: sha1:0a2e22bb784fe1c5b1f36158bee47aa387ca2084 - pristine_git_object: 645f523e6632da76f0bdc8872e8d0132db6dbc00 + last_write_checksum: sha1:9ec24059e19452ebc272fb1aff56b78f4f8c1862 + pristine_git_object: 4347ec7f3e8fa8be4d98d047ef13cfb1dea41f28 src/glean/api_client/models/platformagentrunerror.py: id: a415b46071c5 last_write_checksum: sha1:2ff1839f6e55e7992ecc086c228466471a81a9d0 @@ -6458,88 +6462,88 @@ trackedFiles: pristine_git_object: dc860898c5a2a5837168fb26654e5aaeb6feb50e src/glean/api_client/models/platformagentruntoolapproval.py: id: 914f1fbb5e0d - last_write_checksum: sha1:73b36d78d4eb9aa89234b08062226f2d68a4d5f1 - pristine_git_object: c51c46ed4490f4eb072cf3a30a8d704e58e51307 + last_write_checksum: sha1:aa5facd26ba9c9d89294eb44c2ca37bc91fee4cb + pristine_git_object: bff77014ad6725b5193309c21dc6b898a07365d1 src/glean/api_client/models/platformagentrunwaitresponse.py: id: 3498df9c1961 - last_write_checksum: sha1:3f8f7707d02ded94a0021b99c00e3df4223b772b - pristine_git_object: f2454eb001143fcfd5e47276ec7f9a5d7211a411 + last_write_checksum: sha1:a8a41fb6208374cf95931adef0b9ded218824db6 + pristine_git_object: c94bc078f8a125534dbfbff77683ae2aff7aabd6 src/glean/api_client/models/platformagentschemasresponse.py: id: bc725034e9b9 - last_write_checksum: sha1:2f5f83536b604f36b3042b59725615a03432ef5e - pristine_git_object: 9bd08605cf43b2414f8ddd0f6cb444cf1c72df8a + last_write_checksum: sha1:c92a9244c29012c2f30fc367582b75734200f0a6 + pristine_git_object: 1682f0057e3d8cbd573dc71bc63725436b7b223a src/glean/api_client/models/platformagentssearchrequest.py: id: eb40369d333e - last_write_checksum: sha1:e3995ce3be21d708199fe323356e2d9a1d8ad716 - pristine_git_object: 0ddc45d29a02c82a54f12ef6ceec8f19761c36c7 + last_write_checksum: sha1:af020af92383e36164312eefd68388f7f9fd5ca8 + pristine_git_object: 334ebd45baed915fec5d8f84621f2a7264526e4d src/glean/api_client/models/platformagentssearchresponse.py: id: 2c3bddef7679 last_write_checksum: sha1:23dd758cffab6db76a051eb029776a64613a38f6 pristine_git_object: c9f820b8a8edc25853156cf3f9a6c0b43feb1865 src/glean/api_client/models/platformauthenticationsuggestion.py: id: e99ec01300d2 - last_write_checksum: sha1:bac4d353a350bfed0361d6668c56efca232bd782 - pristine_git_object: 04be56b8972f39419fc27c325e9f4824a09f96f2 + last_write_checksum: sha1:c0a9d929f0c720cd0deb4ec875ad3e83aab6ed20 + pristine_git_object: 05b88a4a257ba45cea4e307adbb7ccd2e62fef0e src/glean/api_client/models/platformchat.py: id: 7d7cdb715150 last_write_checksum: sha1:2aed039b492fb2d1557c8b533f7d47bfe2c0b335 pristine_git_object: a90a39ec20ea1fa87a25c360012da3f82ab9df4b src/glean/api_client/models/platformchatcitationannotation.py: id: 50f8f46928e1 - last_write_checksum: sha1:205801bf117b3d26c686c529d0d8cb28e30a6100 - pristine_git_object: 5dd276ba7ca775a7c7f0a50e3fa7ad1228c39924 + last_write_checksum: sha1:6b6ceba994803a960db104670497662098aa4509 + pristine_git_object: 0bdd5bb3273417384e85ca035c73a4597245dee9 src/glean/api_client/models/platformchatcitationsnippet.py: id: 99f1e0941ff0 - last_write_checksum: sha1:97c26e2f2d9196f5bb6514b90248c920278eb9b0 - pristine_git_object: c679f40a98eeeaf640d6aad4584c7f48dd4f1e7d + last_write_checksum: sha1:20930d2d77989554cedb286946b3b5941873832a + pristine_git_object: 56ef906c54dd9323d32cff1c908355a515b1ff5b src/glean/api_client/models/platformchatcitationsource.py: id: c6040b8a28ad last_write_checksum: sha1:c528f717ba81dee45b381f78e3afc7c4ef414604 pristine_git_object: b44f4b97a5553ceb98d4651a39abbd753e03e960 src/glean/api_client/models/platformchatcompletedresponse.py: id: ed59f46e73df - last_write_checksum: sha1:f4bc030382f556fee134d6ce386c1f15309b3db7 - pristine_git_object: 9c0061dac37bcaacd39ab2cf1f0de5a59a67eb79 + last_write_checksum: sha1:10bb0201e9619419abdbf0bbc05b7cef6ac7fe99 + pristine_git_object: 735a7dda4967cafc0e1e97a61565eb7f3362b6db src/glean/api_client/models/platformchatcustomentitysource.py: id: 385a56c07858 - last_write_checksum: sha1:219f6e5baa20d6954839bfc16a00a9f424fbb96e - pristine_git_object: f2ec133b16adcf53ecb88e3c1aa69ecd112b5dcd + last_write_checksum: sha1:01c163f6123026fb5b4da4e4cc5ed271fb978f6c + pristine_git_object: 5848608d0a096f465af2e69d6da8628620311e36 src/glean/api_client/models/platformchatdocumentsource.py: id: 1cd8111e3b4c - last_write_checksum: sha1:d74a2645a5776c88544b53ddb06731439ec5c46f - pristine_git_object: 54714c55ff800caea6c9748e180f6640e3470003 + last_write_checksum: sha1:60bdeb6202ff1e1fe96891a18eb60fa523811f80 + pristine_git_object: 54318f061ae23133f2db315242b0f4778b83112b src/glean/api_client/models/platformchatfailedresponse.py: id: a67ad1be1af7 - last_write_checksum: sha1:58cf0496973a6fc25167bd99f88ecc50d0ba914c - pristine_git_object: 7c34fe7f67991f56f3a8ef2fbc843c309d386584 + last_write_checksum: sha1:1d1c6c27bc7b8ce78cb707d4f006aa23e86af54b + pristine_git_object: 9de899b6d23bb314d817343b9bef4a125a0b0899 src/glean/api_client/models/platformchatfilesource.py: id: 1a9d4653c065 - last_write_checksum: sha1:d995e1a8bf690e316793f4916fbca81f0a279e47 - pristine_git_object: 228194cbc7650afc2858cb8d66ee469d388fb543 + last_write_checksum: sha1:e38c9a9e129a6dc9c5dd51ac52b561fd3365c945 + pristine_git_object: 902ea18b2d84cecff77a506e50989c1fc23a7232 src/glean/api_client/models/platformchatinputmessage.py: id: e32871fda394 last_write_checksum: sha1:1ddb82a8dcac6a1943b99fb2cdfb2c464e8eab07 pristine_git_object: 9d21d2a18e6de246b38312c05fafc8698635ac6a src/glean/api_client/models/platformchatjsonschemaformat.py: id: 322d59bf877b - last_write_checksum: sha1:d0425f69e2957aec73d75171a4f7a0d0971ae6df - pristine_git_object: c22174e07d47e011f182bbdbbac05355996b67e2 + last_write_checksum: sha1:8c073b18676e964222c9e9992ad201e81f063c7b + pristine_git_object: e1051b5097a954c26e382a02ca354cbad6c95b0f src/glean/api_client/models/platformchatoutputmessage.py: id: 15c8512d3810 last_write_checksum: sha1:1f0846a6e9bf7c2a1b9f5ea870cb0c4f6896c449 pristine_git_object: 9082277a0bb6b75d23c5fef7eead2aa13d8147cf src/glean/api_client/models/platformchatoutputtextcontent.py: id: 91b9987e8b98 - last_write_checksum: sha1:901d84ef8719d7d7dbff8c7c0af9a6ee5eef538a - pristine_git_object: eb56d9a116b6a3ff747db32b2ffcd5cf57dd794a + last_write_checksum: sha1:5f811dfd4ca57990cdda15b9196e00e67a310455 + pristine_git_object: f2f7ad4ac38dc4b2e0a62e523e1140ad5577e346 src/glean/api_client/models/platformchatpersonsource.py: id: 617b816c747b - last_write_checksum: sha1:1068fde6d156f689d9f93b799dd8b5a2fa399315 - pristine_git_object: a2e120b176b2a3d8f8d5060f5717290ffb07eda4 + last_write_checksum: sha1:03d6904a978c82c42f1cca2f0a172471de24e0c0 + pristine_git_object: 032a4fd3b98bbfe996adf6b2073f26f894a2acc6 src/glean/api_client/models/platformchatresponseerror.py: id: eff7e0843760 - last_write_checksum: sha1:258f4d2e46ae0166430059c1438d440feafde069 - pristine_git_object: ef73e944a19d1f8ab90b8887acd0f559fe1c0989 + last_write_checksum: sha1:ed9b70f39889d53d8d716792306577ff2cb64490 + pristine_git_object: 4ef321d668ddefb828511d545fb2d36190cfd139 src/glean/api_client/models/platformchatstreameventserversentevent.py: id: d57b3400c0da last_write_checksum: sha1:e12371eb200cfd626081149f469b84bc82d4861e @@ -6550,48 +6554,48 @@ trackedFiles: pristine_git_object: 0163838facbd457a6bdbea21960c90ca62a49172 src/glean/api_client/models/platformchatstreamoutputtextdeltaserversentevent.py: id: 8257fcec25b6 - last_write_checksum: sha1:119efe8576169a98e65bb9ad8937854fa87debc7 - pristine_git_object: 1d7e6a4cfe219077e4e582d931cbfe74290d214c + last_write_checksum: sha1:3d22c4ead49355418a45cb7b1bde6bb7a6677f1b + pristine_git_object: 8d3a3c8f9a161ba8d220e43800b99036fa00991a src/glean/api_client/models/platformchatstreamoutputtextdone.py: id: bc299dbeed70 last_write_checksum: sha1:89c53f357f95ad4df72be7c13a410e5feed4219c pristine_git_object: e427df2017190f12e983404d9c69acfd8c150f98 src/glean/api_client/models/platformchatstreamoutputtextdoneserversentevent.py: id: 83feaebd0587 - last_write_checksum: sha1:96e95ac3c8f6808f8eb406834669291bde8539f6 - pristine_git_object: f56d5aefa180f847d2b27cd131b26918c92573eb + last_write_checksum: sha1:7d361215e3429843cdb1a96431033a863605c6b0 + pristine_git_object: 391e59a13307458c1c8cce3822768785165d3abe src/glean/api_client/models/platformchatstreamprogress.py: id: ca5d31d56d00 last_write_checksum: sha1:3329703dbc5a470ba1e275949b8350a6c3b398b0 pristine_git_object: e29fde8c84cf2b89b5fa3ae93ea3f2618843d385 src/glean/api_client/models/platformchatstreamprogressserversentevent.py: id: 0d36ce15e207 - last_write_checksum: sha1:11dabc6ba6505da4da614396828998657ced6588 - pristine_git_object: d6b76035b48df0bec60eed9ff57d868626398b59 + last_write_checksum: sha1:25db1c0b62995cd0bff874a05067cfc4211476ff + pristine_git_object: 57eade7a28238b2700ba399b20017b6a00959abb src/glean/api_client/models/platformchatstreamresponsecompleted.py: id: 64df4fae402e last_write_checksum: sha1:44a8278d8fdd9442b80b1e9941fcf0c49e584c5f pristine_git_object: 32e505c96385285678d0763700b6ecdc602bcf75 src/glean/api_client/models/platformchatstreamresponsecompletedserversentevent.py: id: efffc7a2b4e1 - last_write_checksum: sha1:f1c4daa3a49c21c40b31d7777a3ade92a7900c23 - pristine_git_object: 143aa870f79a6d69457f06c208d14c37c0629935 + last_write_checksum: sha1:33c9416b9a4b079a1ac489bb80408f15b3dbac02 + pristine_git_object: 30e5a8f636e58265b988193378bff3a6b8c114ab src/glean/api_client/models/platformchatstreamresponsecreated.py: id: d62c520b895e last_write_checksum: sha1:9899d75b217cdcbdf9c13cb17721797838bec0a4 pristine_git_object: d4afad87888cab51a2b891f80193d8817f969881 src/glean/api_client/models/platformchatstreamresponsecreatedserversentevent.py: id: 92e86b61f8a6 - last_write_checksum: sha1:575b70f732bbe5456de5b0a8e8007313c2b0f2bc - pristine_git_object: bc55a9e27c5f5ddf967048bc4f0e5dabdeb8c509 + last_write_checksum: sha1:da53703e913b6fc74d4b912a2cc3fd840f891b6a + pristine_git_object: 8d447f1c52041a5b31b940b26ae50fe211859ef5 src/glean/api_client/models/platformchatstreamresponsefailed.py: id: 2da55e29c74a last_write_checksum: sha1:4d9cd599d5a6512fb3f70c965832974319c40c5d pristine_git_object: b4908b629778520bc0446bb5d04522434aba4ae7 src/glean/api_client/models/platformchatstreamresponsefailedserversentevent.py: id: aa2699dde615 - last_write_checksum: sha1:82061a27d94f683de9be3c439c45e5aa075cb2bf - pristine_git_object: c4c16ab8bdbddd7554803c73557c31f474df4be8 + last_write_checksum: sha1:bcf3cfce8e504cdefbdb4cb4525c7de165ebdc36 + pristine_git_object: 503b483182ac71ff3d750f6d76ae0da2189fc7eb src/glean/api_client/models/platformchattextformat.py: id: 4436e4437556 last_write_checksum: sha1:ecc4be5d35513e1210ebe1b1e0bc3e05994392c0 @@ -6606,8 +6610,8 @@ trackedFiles: pristine_git_object: 3f1ee692dc8da7072eda49ed0a3901612eff6a65 src/glean/api_client/models/platformcontentschedulewebhookevent.py: id: 9967e953a04e - last_write_checksum: sha1:c4967523e69ff60285e770e785059a415498409f - pristine_git_object: 0b1d4cff05ff8c5e659537e4510b572f763e2855 + last_write_checksum: sha1:e5f13b1bde416a32c2902ecbae3915dfd0ac69ae + pristine_git_object: 69cf6882d566d11384fbb3717cb308eda3cddb78 src/glean/api_client/models/platformcontenttype.py: id: 87e6bc168e08 last_write_checksum: sha1:97548628abf68b0b2727ba126ce363000e8d2882 @@ -6616,26 +6620,30 @@ trackedFiles: id: 30d2d116afc7 last_write_checksum: sha1:fe1bb6ad44d39ce794c56869d659333ac4fe5ade pristine_git_object: cd2ba67fa39dab5eb8b2490daa3872fcff56719e + src/glean/api_client/models/platformdepartmentfilter.py: + id: ae81e4dde1ba + last_write_checksum: sha1:cdb1e54b902d595d4641859d35ac26a2cd49b5de + pristine_git_object: d86fb7a4f693af08a6c7e51beb36898532bba973 src/glean/api_client/models/platformdepartmentreference.py: id: f7cc53587523 last_write_checksum: sha1:a4048e3c0cacff074ae936e9b7e80797b67cde1c pristine_git_object: 2c2e118cee8a98336e134580ea03e8f72c028d44 src/glean/api_client/models/platformdocumentchangewebhookevent.py: id: 9fcc235e9237 - last_write_checksum: sha1:b3b267d4ea3fcd6b46dc447e2e0dae3fda859ff7 - pristine_git_object: a1eb453df5bc9f744651211e88c82dc25a7037d6 + last_write_checksum: sha1:83c8ea4b08f0a844a6a24e1f15b194c2dbdad050 + pristine_git_object: 7297d66caea0c6733618ce652e8cdfa16f930092 src/glean/api_client/models/platformdurableagentrun.py: id: 9183fd1b5740 - last_write_checksum: sha1:5e19454934cb4e186b75fb44aa081785eff50bf9 - pristine_git_object: 842b5cb8128b114784a2c11cc1cb319b47501099 + last_write_checksum: sha1:bac335d5267a8b070d4c9f5f508857ae8ac1c396 + pristine_git_object: 029e358a77e0e1d5e72581af853afa0c12ed2f37 src/glean/api_client/models/platformfilter.py: id: e0719ea40cc5 - last_write_checksum: sha1:a56bda496c9eb473d9aaa08426e077e2694216d9 - pristine_git_object: 2243c5535a3e7a8a76c0e7845a496dea1d97ad81 + last_write_checksum: sha1:b0876a284fc343177255c293e7b566d89615e013 + pristine_git_object: ca289e21ccb8a6cbe480a57d051aab397cad8c31 src/glean/api_client/models/platformfilterfieldinfo.py: id: 5be6062efbd8 - last_write_checksum: sha1:ad8f52a53b9839f63ac0f4eabc4e3cffcd6a5790 - pristine_git_object: 755b03c792d7ef713fb86ef6d119e19c8b27f116 + last_write_checksum: sha1:60b4af453be9d1774f2e17d2d6185c90177460ea + pristine_git_object: 56be01121a5eeb969f3477a527a2fe62b31594c1 src/glean/api_client/models/platformfilteroperator.py: id: f7d7bf136596 last_write_checksum: sha1:542dab71eb37501311f1457ef804f2486cc12d69 @@ -6662,28 +6670,28 @@ trackedFiles: pristine_git_object: d942f16be733b3b9464937e3eed26d458512ff41 src/glean/api_client/models/platformidpgroupfilter.py: id: a5486ce45071 - last_write_checksum: sha1:2343af6fabdea57108709db8b9ad813b83f69fb3 - pristine_git_object: eb97fc8556738ca4dac147de216a7982f495dc20 + last_write_checksum: sha1:8f674c654696d162286fe35f69bcd809f87add13 + pristine_git_object: 1b342286a52d34fee6235859bb84829c10565e01 src/glean/api_client/models/platformlistadminagentsresponse.py: id: f2bde0abdb4c - last_write_checksum: sha1:1482c91f3ace4723e037cdf5c8bb8d6c254286c2 - pristine_git_object: 7f6dd1b0eed9550e8af53d428ab931910df15837 + last_write_checksum: sha1:fa415bc645f98aa1d1b02c901e2b6a17c2ba0318 + pristine_git_object: 547d896120d8f28b4507bc6894c23ef085349eff src/glean/api_client/models/platformlistdepartmentsresponse.py: id: e9f64ae3372f - last_write_checksum: sha1:504e5de282f6bcb1cd42694eac7db5cb6c03bffa - pristine_git_object: 5d5f23e3402321ad59cdb5f661eb2a5a55e37b5f + last_write_checksum: sha1:db1286406d06461949a7b3825cff2c35679e438d + pristine_git_object: e0b71b2bad21ba518fa5de9074d4ad9f27fa702a src/glean/api_client/models/platformlistidpgroupsresponse.py: id: 44674fdaaef8 - last_write_checksum: sha1:5345e152d6adc4fd9dc728af48a15a976c10c664 - pristine_git_object: 18c3ce90fdb159b980464d70dbe662719573bc5d + last_write_checksum: sha1:c12ec0333fa5f4fff490b6b29d58da860877cb59 + pristine_git_object: a5e1e32be8ce09ecd784fcc2ab51de43720b0211 src/glean/api_client/models/platformlistoauthclientsresponse.py: id: 235bf58adc51 - last_write_checksum: sha1:29d880709cc07f8b86a41c064ef3f3faf58aac0f - pristine_git_object: d8c490d57c821f5de248a674965efa75008b8d55 + last_write_checksum: sha1:0be27574df4faff6cd031971af62f661d858126a + pristine_git_object: 5f239f9d2f79e4b5cc898b8eea323ef60ede52c4 src/glean/api_client/models/platformlistusersresponse.py: id: b6850e9c2d42 - last_write_checksum: sha1:65a611596b03c38f60b243ced727194895ccb981 - pristine_git_object: 97500a84ed02743b293dc146809498f91e3abc94 + last_write_checksum: sha1:86d856e39a221933f9f4ccb806499e32626a04fe + pristine_git_object: 3227c21a013e12bbfc698c6392690780e5692031 src/glean/api_client/models/platformmessage.py: id: 5124dae40c5d last_write_checksum: sha1:e86beb4e210ed500ab72011ef90bb97b909a39e8 @@ -6698,28 +6706,32 @@ trackedFiles: pristine_git_object: 9d7939bdf32bd515ba72c0271a3c89ece1dcb429 src/glean/api_client/models/platformmessagetextblock.py: id: e631f7c5ce6b - last_write_checksum: sha1:bf12461143a8e0a80824fe9093455813f1a3d15a - pristine_git_object: 1a7cadf41ea356c7f778c6d9e63cc6d269e3c7f2 + last_write_checksum: sha1:73cd01b394272f456f0e3719515008e55f853b76 + pristine_git_object: 4904526ba8af0c0975a7daf13529b122d2eb8097 src/glean/api_client/models/platformmessagetextblock_input.py: id: a94017fc587c last_write_checksum: sha1:a7bf23349f2aa6aeb11de705a2d947a267f9aaf6 pristine_git_object: ddc4a1bb76ea66050631863cd0c52a779ba630ef src/glean/api_client/models/platformoauthclient.py: id: bc5af16babef - last_write_checksum: sha1:6caa05578f6dc9753aa16b270b712737a0a23ca2 - pristine_git_object: 9c807ea9ab07edf9236ca4d0dcbc1c878c007859 + last_write_checksum: sha1:0f5cc0330220357d44edcfd1dbb2f8e1d934457a + pristine_git_object: ccd20aa0e31521973c8288144d494f6d9e496283 src/glean/api_client/models/platformoauthclientaigateway.py: id: f2ed1f675f36 - last_write_checksum: sha1:3362b35013841b1c96a842a7d8f6e20f32436072 - pristine_git_object: f5430b9cb6de7129378e2d55d2bb85f97a34a68a + last_write_checksum: sha1:5056426a18281595fc41c15f02f822c91ccad4a2 + pristine_git_object: 43a45793e649f9f360e0daecd91c8eef1f5051ca src/glean/api_client/models/platformoauthclientfilter.py: id: e11374eaeda7 - last_write_checksum: sha1:6e111b57a64418ff03218e7afcbbc7649d84731a - pristine_git_object: ea586d117905ed68390aba8f5ce6a68518e18b72 + last_write_checksum: sha1:af15131fa26527a8fdc76ef3bc4a29116ff51490 + pristine_git_object: 321178b7cf697125313f1a221f094c3948b5f325 src/glean/api_client/models/platformoauthclientregistrationtype.py: id: a08966e25466 last_write_checksum: sha1:c9d30351610ca5529fc3f0d3f942d643c95f388a pristine_git_object: 3a7ab587a787ada135b7451af20b85892358a96b + src/glean/api_client/models/platformoauthclientsupportedapp.py: + id: e3efb17bee20 + last_write_checksum: sha1:c47ce4d428941fa74b891370d9fa1036b248611c + pristine_git_object: 36fc4cebcb1c82a8c5448c7e7609e464d1fbc8c6 src/glean/api_client/models/platformoauthclienttype.py: id: f5f0eda8f068 last_write_checksum: sha1:b69c58f23d5a014e15b4627e7f59541f1586acaa @@ -6734,48 +6746,48 @@ trackedFiles: pristine_git_object: 6884296937665c3535fbda991517cfa48071abbe src/glean/api_client/models/platformpersonreference.py: id: 2ff9ab749423 - last_write_checksum: sha1:a366e67090ccf5a9754576467db2043a33e8a8e2 - pristine_git_object: 3f68797935412add6a9cbe28335641064352c8c5 + last_write_checksum: sha1:16b87a8bea592aa47c507f53d839b5657a8fda62 + pristine_git_object: ce9abb5380fe6d9c65f14be0a7cf77cf96f20ab2 src/glean/api_client/models/platformpersontype.py: id: 5d31e0f3b166 last_write_checksum: sha1:3ff2115c948c3201c3dea39cdf8983d275836202 pristine_git_object: 911ad65a4714ed92f53e86b5d63fcdb100672e0f src/glean/api_client/models/platformproblemdetail.py: id: 564643c3d847 - last_write_checksum: sha1:bc77e15836741f22cc5d2f67b8fe32d2e4668986 - pristine_git_object: 05d4d46e2111a803b4194f0d81d50b315a7efa15 + last_write_checksum: sha1:5a5e1d59dafb3850e0814a93809bfa5579a27132 + pristine_git_object: 385b58ff150dbda76713efca577bf9fc0c6455fc src/glean/api_client/models/platformproblemdetailcode.py: id: 3aa0b8193255 last_write_checksum: sha1:7f0f9bc67cdaa742e4cf4494bf2a3c29f8b58a16 pristine_git_object: 38faf64fa45b9b6eab44800fef032e7802e33c33 src/glean/api_client/models/platformproblemdetailerror.py: id: ea67cf68f170 - last_write_checksum: sha1:c2f31d78abfaf8e63bd7ab62ff9e0fb281caa5a6 - pristine_git_object: 336efdc33bfb762c3b0ddfc706b8d089da3cc23f + last_write_checksum: sha1:957326c18d72604e356405eb639d5241fc11b773 + pristine_git_object: 403b5f416599095e381170b7885a52430c89f9f8 src/glean/api_client/models/platformresult.py: id: 65de4ed5c1b3 - last_write_checksum: sha1:3595144f47e6d1509379ee4aea9c0adb05c545cd - pristine_git_object: 2cd03e1822ab3a0f5558b14f44c983d8bf123964 + last_write_checksum: sha1:9b17d8de65df7933301db2c608a5c0a1a2ee8ac0 + pristine_git_object: 2e6a499ea15e3c9998e7b0dd8a59fbd8226a4919 src/glean/api_client/models/platformsearchfiltersresponse.py: id: 743edd99f7aa last_write_checksum: sha1:9c6e81390c3f1665bc2d26c2e3c5face283f759d pristine_git_object: 1d8aa68908c3e182cbc926542d39bfc45d585be3 src/glean/api_client/models/platformsearchrequest.py: id: f2376466383f - last_write_checksum: sha1:0255eb2414fa128be1d2369af61a6f9b9aa0fa53 - pristine_git_object: 8a3cd9bc7053b60f71b536f9f8e3593355bf5579 + last_write_checksum: sha1:a09c31128ffa2017e4ed6810fce9a43fcb79745a + pristine_git_object: 822f554197c769cff0ebec7e15c335f92dc237f2 src/glean/api_client/models/platformsearchresponse.py: id: 7ee9ec06e00c - last_write_checksum: sha1:ffcd075eb5fc0308760c1ac2065ad4915cc94642 - pristine_git_object: ff13d204ece88b150c32fb69c65e266c7756b1af + last_write_checksum: sha1:532208729ea1cf2e39ef6f7fb254ee76792fcaa2 + pristine_git_object: 1c10da1727b6fceb93813882e0549e91ab51e2c6 src/glean/api_client/models/platformskill.py: id: 10e1f311015c - last_write_checksum: sha1:e1a70d0d4758869a8afc969c11b59f8426666c64 - pristine_git_object: d77b1fa2833bbe578a96a19f0402770e9aacf491 + last_write_checksum: sha1:7257d51ab77816c18ca2ec255ec7b344190389f3 + pristine_git_object: 5085ac0d5f3521cac07c1035df8116e558adb9f9 src/glean/api_client/models/platformskillcreaterequest.py: id: 9d75227d70d1 - last_write_checksum: sha1:f6dadfcbab4b2800dd99abb6807b82b27c8c288e - pristine_git_object: 51a4dfa457c8d586441855b6d998e1cacaa4f127 + last_write_checksum: sha1:fb951f5f170be797e7dcc2c3b6523c376cc79bb4 + pristine_git_object: 239a85e137bc2b221df2cd4350a94c199e95d1f0 src/glean/api_client/models/platformskillcreateresponse.py: id: f11878ab49a8 last_write_checksum: sha1:868d0362a2eda01f274b0f478db180dc98e87f3d @@ -6798,8 +6810,8 @@ trackedFiles: pristine_git_object: f05da6ac9653f6ba3b9fb1de2f1bd66730aa00ae src/glean/api_client/models/platformskillslistresponse.py: id: b031da1d2783 - last_write_checksum: sha1:771558db4f0e0d491b51cce54360fd084fe31051 - pristine_git_object: 8d37912ab9c1d7576088665dc12638d485bd510b + last_write_checksum: sha1:bcb0fa554986c924eb9b455986d6f307e280e267 + pristine_git_object: 81b3f72bf31f2b0ca101c02551bb2f6df1d4d70e src/glean/api_client/models/platformskillsourcepreview.py: id: aeb8f137962d last_write_checksum: sha1:2e2fd40151aff7cd3f0cb08997d66ffce8bfc314 @@ -6822,12 +6834,12 @@ trackedFiles: pristine_git_object: 37cf8bc1466c6482fd43c53d3ac2b54759d7d9b8 src/glean/api_client/models/platformskillsourcepreviewstreamerror.py: id: 5a87352ef914 - last_write_checksum: sha1:4334a44e1c7d20ca04ee3f9bacd4ee0af81d90a0 - pristine_git_object: 68f225d37986aa6aa2a122bdaf8c9d6650720eb3 + last_write_checksum: sha1:7a85eafdc5e805ec082f0cecb57090a76991a431 + pristine_git_object: 143036e26c87989f2c9af7d5283e9116ffbb73df src/glean/api_client/models/platformskillsourcepreviewstreamerrorserversentevent.py: id: 3d6a6f10c215 - last_write_checksum: sha1:7b4fc344bcf4b976f1ac30c635b33bb74c350ad0 - pristine_git_object: cd9a68bdfcea436b6dd29b7cf495f27cba535b0d + last_write_checksum: sha1:4e7a8aaee878dabbb574e796010a789c23980c7b + pristine_git_object: b0564ee61134ef64569a2cdeb23cdbcda1f14239 src/glean/api_client/models/platformskillsourcepreviewstreameventserversentevent.py: id: 187d998b8358 last_write_checksum: sha1:57c6e49c9c023f8feda24909b2e8a8b13a164e5d @@ -6838,36 +6850,36 @@ trackedFiles: pristine_git_object: ecca3b704cd9db73933238972abe905e8f3688b3 src/glean/api_client/models/platformskillsourcepreviewstreamprogressserversentevent.py: id: 08a0cd6abc04 - last_write_checksum: sha1:dcc1a85f50f73fd1ed260233241c4e80c08bcc70 - pristine_git_object: 60c2dbed5e9f4464fc77ff713d5eb2fe35b1a109 + last_write_checksum: sha1:8e19a5ee57a145e4955054c6875a5b3184567be0 + pristine_git_object: 59c9383e55f4ddfd61b387adc403f4551e1e3538 src/glean/api_client/models/platformskillsourcepreviewstreamresult.py: id: 36520c198eac last_write_checksum: sha1:7c2f9f0100f9f84584e31863615d0e3c98a611c6 pristine_git_object: df6d3b6ef858e6c4415579d09ea3b4da137cf569 src/glean/api_client/models/platformskillsourcepreviewstreamresultserversentevent.py: id: 4475a41fb7e4 - last_write_checksum: sha1:72ec21c35c356c749b601685f87f9eef59be019a - pristine_git_object: 0741143e4b96a4fb01f0f26116bd2be1c1b0fed7 + last_write_checksum: sha1:c71d086223632660904d6c02613e4f4cc2f37065 + pristine_git_object: 412bcc678551bbb5b33d12c0d3697d67bb3f4450 src/glean/api_client/models/platformskillsourcepreviewstreamscan.py: id: 3361e8ce4f5a last_write_checksum: sha1:acf9e15967f6864307c0c29b109a9c265d1f010f pristine_git_object: a8fd422972c649a00c59dd85553ecba063c2d3d5 src/glean/api_client/models/platformskillsourcepreviewstreamscanserversentevent.py: id: 0a1e279e7ab2 - last_write_checksum: sha1:dc4e9d65b448d67b88c6c93fa76814f95ecce53b - pristine_git_object: aa588667793ad02acc2b771bb991e3f3a82eb75c + last_write_checksum: sha1:d14f3cfc42d29ffd96a8592986b718534e180b8f + pristine_git_object: 6ad8430ca50baeced35396002f18b90f64b4d58d src/glean/api_client/models/platformskillsourcepreviewstreamskill.py: id: 7a2284184193 last_write_checksum: sha1:071f2b93c7f5671f8932b50c148545cc6a874516 pristine_git_object: 937205e34b188f3f5112cd3e8feabe190a6972f4 src/glean/api_client/models/platformskillsourcepreviewstreamskillserversentevent.py: id: a7a0cb837838 - last_write_checksum: sha1:6259d650dadb7a3bedc7ec369f197e6fc3fd1e52 - pristine_git_object: 6197d06de7f450eca9fe73fbeb6b9cb6534f428b + last_write_checksum: sha1:da83ccdb0d369e1515eccbd083cfc45a81c52d3f + pristine_git_object: df3485873bf42c2a13ab515bfe828d4c4ca5888a src/glean/api_client/models/platformskillsourceprovenance.py: id: 9d34177a5499 - last_write_checksum: sha1:f1e2f0b74c65cd83e452b6e1cb0e33f0921c1085 - pristine_git_object: d1352b1f9d6654cc43a2c81e33177d5c9a0e8528 + last_write_checksum: sha1:cf537d814c4ff6d8f80d6020980ea94d96da1b92 + pristine_git_object: 545d8b9c27528849b2776654d4c77f83a5e55482 src/glean/api_client/models/platformskillstatus.py: id: 4576e2918e48 last_write_checksum: sha1:f7a447d7333ae356690db028cc6d43c3f0bf8f7b @@ -6902,20 +6914,20 @@ trackedFiles: pristine_git_object: 332170623ef54b4b09220a020f9b4d03112e77e5 src/glean/api_client/models/platformskillvalidationrequest.py: id: 2dc8e5ebed86 - last_write_checksum: sha1:f9b7d85dddd5e9be5055cfab81cdc3a218d2a923 - pristine_git_object: d0a3a2b4d53d722ee63fde843f4e83b695f0ba62 + last_write_checksum: sha1:4e14ae2e765b241eeb266779bdb8cc65222eb9f6 + pristine_git_object: deb2b889dacd0376c36ce39b7e13e66b64be4a6a src/glean/api_client/models/platformskillvalidationresponse.py: id: 9ce3b88a9cc1 last_write_checksum: sha1:40595cbd0cb6e9e4ea8621266432b8a99967e865 pristine_git_object: 76af15759b1cf333367ba3f25496adae56ab0fdc src/glean/api_client/models/platformskillversion.py: id: a9b3f54c0ef8 - last_write_checksum: sha1:507ac67246f4d360aef9c77bc6eed79d11d82e9a - pristine_git_object: 44bae12500c45e8d2ad592f13c64cad643c9ea5e + last_write_checksum: sha1:e4fd26d2772ce5974315dd2d686b866aac00bfda + pristine_git_object: bbc7f77de7596e1a662b84650bf4b80c95568298 src/glean/api_client/models/platformskillversioncreaterequest.py: id: 1c6238ada8d8 - last_write_checksum: sha1:bac2536e701bed1e26401613f7459a6641522233 - pristine_git_object: dc1d6f9ef353396c4e525b7f62c55f14ed517c38 + last_write_checksum: sha1:01752c713453e68ebdbb3c697db7e00ee4ceee91 + pristine_git_object: 96c0388bee1c776bb7d67dc769eddc207ede8866 src/glean/api_client/models/platformskillversioncreateresponse.py: id: c24768d28605 last_write_checksum: sha1:d624736af0d491420b3c7be54e7d51f117bf82d7 @@ -6926,36 +6938,36 @@ trackedFiles: pristine_git_object: 828ce5457e0a36292852e503244f1af9a23429e7 src/glean/api_client/models/platformskillversionslistresponse.py: id: 6ffeabf770b5 - last_write_checksum: sha1:5a7d3f257969977964f675198fc992d98a4a24ab - pristine_git_object: 37b4b1c81f298ffdc3060a16c62ce1db60834236 + last_write_checksum: sha1:f8487e6c9fa3b8241838c966722698a9179829f5 + pristine_git_object: 1c353c90209718e23ce0960011fe573d6a8b78e2 src/glean/api_client/models/platformtimerange.py: id: bf2b03e84949 - last_write_checksum: sha1:645217a3827cd2a7455b88277f1ba2dcd4a5daf1 - pristine_git_object: 0a5acb2a9110e33b96db4e36aa09c1bf36ab1cbf + last_write_checksum: sha1:b2576ea8fe9a290812d36be2c6e27b74a57492fe + pristine_git_object: f8a81a90a8f06b07daddc03afdaad32af6c983e7 src/glean/api_client/models/platformtrigger.py: id: 5c3b071bd50e - last_write_checksum: sha1:741572e81b11b6088c4764bd5d4e2008e0c612a8 - pristine_git_object: c354235905c7d7dedba4138e92ff2da100fd9964 + last_write_checksum: sha1:913ce5a5850de4142efe700f59c9a96471fde7eb + pristine_git_object: cb84d6f80b8ccb842ed94ec519ff62e3741aa2f6 src/glean/api_client/models/platformtriggerauth_output.py: id: afb2090fc73a last_write_checksum: sha1:3f5774a5446a8e72ce52ef899151cd734f3eba57 pristine_git_object: 0288980e445de6bfd6c19f98d62c63e4a4bb0a9d src/glean/api_client/models/platformtriggercreaterequest.py: id: d11a4c9a8272 - last_write_checksum: sha1:77412e6a290a4926ac2a1b1cc70ddd064c074e54 - pristine_git_object: d70686f2babf5c986d36ea0577a39d1ba0f614c4 + last_write_checksum: sha1:e219089fbbd123df9dc2231654f39bbff8db092b + pristine_git_object: 9ea3278521a1df99345b324569c70618ea6e14f3 src/glean/api_client/models/platformtriggercreateresponse.py: id: "632392221518" last_write_checksum: sha1:0159ee031fb0d52920a5ee996fc802c8f994dae8 pristine_git_object: f0f1a850dd346eb83826e18d131d8e571ac7fcc4 src/glean/api_client/models/platformtriggerdelivery.py: id: 90a60a468b73 - last_write_checksum: sha1:7101828ee6e750ae16350234e8972ec27d267378 - pristine_git_object: 84e4fb283dc8a9fc998f19e8751e9af46fb7647d + last_write_checksum: sha1:68df1e368bb0e335d1c7cc6ed7dfa453e41bc731 + pristine_git_object: 630ca46edac0e1a383966c70b16acf16910711aa src/glean/api_client/models/platformtriggerdelivery_output.py: id: d3848fcf9e21 - last_write_checksum: sha1:bd2442a31eb90c9bad87fd19fa4f0e31a71df14c - pristine_git_object: 5ba108c1651a0a7c257c467b9ba189076343a9ac + last_write_checksum: sha1:804f570f908a8af6386ea7b2a852cb3b53e0d952 + pristine_git_object: e27c70bd4904d6f3a96ddf1332d69817f823dfa1 src/glean/api_client/models/platformtriggerevent.py: id: 9da9f24676df last_write_checksum: sha1:407d67c37846f17d827efd14e2b54bb112dc4e74 @@ -6966,8 +6978,8 @@ trackedFiles: pristine_git_object: 8a0756fd25a9533a1b54551b1ccecbcc2be6a78c src/glean/api_client/models/platformtriggereventsearchrequest.py: id: a12d9a25b03f - last_write_checksum: sha1:ef2cb01810db71399032e363a7b3ce2e83ddb803 - pristine_git_object: a8f990c26aa733629f3b4d383b354bdb76a48134 + last_write_checksum: sha1:3daca1034aa1858efe78f09645e5a3d5c3c39ff5 + pristine_git_object: 1f856a301bb4db8355cbb229b02a021bd4aa3b7d src/glean/api_client/models/platformtriggereventsearchresponse.py: id: e64d420cabe2 last_write_checksum: sha1:9c8ce1282d7df5d5fc91dcfc48b883a14ce0cc7f @@ -6982,24 +6994,24 @@ trackedFiles: pristine_git_object: ca171e8de7e7eea3a11b3b7702f408bb2896fcf3 src/glean/api_client/models/platformtriggerlistresponse.py: id: 0e42c35449ae - last_write_checksum: sha1:8991a1b3fb50b336d7ac62ea62a92b7118765e7d - pristine_git_object: 16bdf27f18c3ac5eada3adbfd80508096704eeb2 + last_write_checksum: sha1:2f901df0601f05f58c57e7310b274597388dae10 + pristine_git_object: 5596d4e1f59494d37e616b166b099041ef26cbb8 src/glean/api_client/models/platformtriggerpreset.py: id: c6916e8c8b88 - last_write_checksum: sha1:c0a09c7a33620e1975162d53cdbd2e719293e94d - pristine_git_object: a7c372a895acf96f964ca1727dda09eb9792380e + last_write_checksum: sha1:99977f55a506cedfb162417f6646915b52bc5f8e + pristine_git_object: 3494c0205146732d9f02fd67b7a3c2bc484de3ee src/glean/api_client/models/platformtriggerpreseteventsearchrequest.py: id: 9ba241010b73 - last_write_checksum: sha1:b4befaefcf96dee59741252944510be840fabeac - pristine_git_object: ac214e062927c1a0c080d5d4274e24230899731a + last_write_checksum: sha1:d34537e49e23b428b50e2e8f9e1ebd11466ddd71 + pristine_git_object: cfc588ba430877c04c171d5f8c2854ba7806cc08 src/glean/api_client/models/platformtriggerpresetgetresponse.py: id: c7c32a376aaa last_write_checksum: sha1:52985b19b8be2adc1bedbe14deeee8c8d6f7d0c0 pristine_git_object: a5b185f33bd4d68228b6904fd1868a5a9e0d954c src/glean/api_client/models/platformtriggerpresetinput.py: id: 05ad6ccb0653 - last_write_checksum: sha1:69b3c9306c65b037e5cd5c58cd443eb3ba3e1565 - pristine_git_object: ebe2f2240d97ad6b416268c4bd5df602a824ae63 + last_write_checksum: sha1:e9cd77e4abb1e22d7b4c2a96cd9233738f038550 + pristine_git_object: eb89f85a6229e19164ddb2a96fbbc897c69030f3 src/glean/api_client/models/platformtriggerpresetinputtype.py: id: a49815e9d095 last_write_checksum: sha1:50bba9278f596b1700f74881b8d6a6c4f267305b @@ -7014,40 +7026,40 @@ trackedFiles: pristine_git_object: d3a2336f945a1f5e9ad0be5622960425c4a94238 src/glean/api_client/models/platformtriggerpresetlistresponse.py: id: af06a9ea071d - last_write_checksum: sha1:e2f8f394fc704ffdf8ee91507b2120f83da24b0b - pristine_git_object: 60c4d72bc4382f3a95396e971584a25c7c528610 + last_write_checksum: sha1:0317ae38f999c687b5428a53375ed9077332d185 + pristine_git_object: 1be21e48533ba6a0500f7b6c9deaad7a9c82f61f src/glean/api_client/models/platformtriggerpresetsummary.py: id: 3ea0384dca13 - last_write_checksum: sha1:e536d737c0b5493b1db48616119348b957ae1d66 - pristine_git_object: 64917154f171a2b1c4a617599d8e0cb220f0a8de + last_write_checksum: sha1:10284a3249230cdc3a92bcdb452d6237f6b78141 + pristine_git_object: 6c38ca0ba5a2ecb6afa8a5ec9915be3dd0ce2a4c src/glean/api_client/models/platformtriggerstatus.py: id: b50f5721d508 last_write_checksum: sha1:d96648687316249472f6d1417db1a0a941df04ce pristine_git_object: 0c789c9a5c0bd295a19cf12d8dd3f929bb3042b8 src/glean/api_client/models/platformtriggerupdaterequest.py: id: 91dbd3e53881 - last_write_checksum: sha1:22d575e744eff6e20cefcd3c0dc4e84437331c43 - pristine_git_object: 7dcbd6a275b49e1ab02477079becfa9474622bb4 + last_write_checksum: sha1:ca5968d084ea67f23ff935ad5d6246edf3e26c38 + pristine_git_object: 3a2a7a03a0a7b2ee9dcd1f7f9bfbb63d88226820 src/glean/api_client/models/platformtriggerwebhookevent.py: id: 54052878b616 last_write_checksum: sha1:f2741b9f076567225c44a6e78963c682ed076b96 pristine_git_object: 70e79cb4a4f378290fbf377ae7f18b78e5183f56 src/glean/api_client/models/platformtriggerwithsecret.py: id: e0f28c4af07a - last_write_checksum: sha1:e1035b1e52647d0cba1a2d784e92e70ac9ecd425 - pristine_git_object: 43b0b789a24961eaf150cd49ac1fc4aedeff3281 + last_write_checksum: sha1:26368c78663cd98d2e6d9ebbf65b58d4aa1e8683 + pristine_git_object: 56b92c945b2dfdc2934167ac991f45e80ecc173a src/glean/api_client/models/platformuser.py: id: 184a8efd11c3 - last_write_checksum: sha1:97be01e2734169d7f24f89ded9d6c22a45a3516a - pristine_git_object: cb52c1802238bbede7787cd85736102a73ea476c + last_write_checksum: sha1:f572c4eb9d68de2fa80429e7ca44b6b6f779f757 + pristine_git_object: 90df516a372938ec1a10ea12392ea90404a4801d src/glean/api_client/models/platformuserdatasourceprofile.py: id: 930b42fcfee7 - last_write_checksum: sha1:680ba6eb828a9408edfa11148bf0d4407f238078 - pristine_git_object: 247c584f3e99ddcbb98ff1257cdb164899cbbfa8 + last_write_checksum: sha1:b7506dc81af6382b654a892901bee5e66d085128 + pristine_git_object: 624fb79c8eaca586e3a5b15bfec4182c91cd4266 src/glean/api_client/models/platformuserfilter.py: id: 98a969006921 - last_write_checksum: sha1:f8c21d6a4fbfcc3ee26dd787637b82ce73c6dac6 - pristine_git_object: 349411f5919d87ca981775c8d83721a0d8b71ca8 + last_write_checksum: sha1:0727e510c164a7d457cc3b139cec8f98f5c4aece + pristine_git_object: aa5abca5e6a9f86742546c71477efd631d42ffc0 src/glean/api_client/models/platformuserinclude.py: id: a749fbfc54f7 last_write_checksum: sha1:a08e812b2277f32e4d1b5f482a066c3710f6b882 @@ -7062,8 +7074,8 @@ trackedFiles: pristine_git_object: 3f5ea79c0debd518f17935277fe3e3bd3e6870b1 src/glean/api_client/models/possiblevalue.py: id: 6046129b9c7d - last_write_checksum: sha1:4495a1288f312de877f9bcaa547f35178119ca59 - pristine_git_object: 1881d2039a7b9e4f08c6af33c908a78f051033c1 + last_write_checksum: sha1:b407079455f8d2883fb0a24eb428168daa74e3f7 + pristine_git_object: da9368084b411aa07d6f98a2b2beea295622cc60 src/glean/api_client/models/post_api_index_v1_debug_datasource_document_eventsop.py: id: abd99421d713 last_write_checksum: sha1:4f1a7e19b1e2f176074443316570065706fe7cbe @@ -7090,32 +7102,32 @@ trackedFiles: pristine_git_object: 93bcbc0b2495f59d24b9f75a8e68c47fcd69e55d src/glean/api_client/models/processalldocumentsrequest.py: id: eca970f6b17d - last_write_checksum: sha1:1f8d977cd86106f1205fccbd6f7c8898a6276217 - pristine_git_object: aa29557c7b29a299b1d195dbd21d60b60672f2e4 + last_write_checksum: sha1:6640d30f33b2f6bc7a511faca209c7dcc48aa88f + pristine_git_object: 6acfbcc71bd48c7757de1fea6e01ba455364abe6 src/glean/api_client/models/processallmembershipsrequest.py: id: 237c53ded9e1 - last_write_checksum: sha1:1d520decc6fa8c1bc8960a6b3443fa4d8c33232e - pristine_git_object: f1bba49df88d0d730d9ecf83257dff950d6acf8e + last_write_checksum: sha1:5c964ca862a6f62e96665e1e510491cdb9c76ed5 + pristine_git_object: 2def760b299ff8cb082217a1595fd6df09283a92 src/glean/api_client/models/processinghistoryevent.py: id: 87811e111132 - last_write_checksum: sha1:c7dd17b990ab3f56b5f817e397e672f639ad5920 - pristine_git_object: 61b4c04786eee4c0f2e8a864f6eae2564444236c + last_write_checksum: sha1:02436783ebba5325228c8fbcd66cafcccd990d6f + pristine_git_object: 810a0797f90e8a3a115ccb70fadf6bb61eadd9b7 src/glean/api_client/models/prompttemplate.py: id: 349206a29c89 - last_write_checksum: sha1:2845d4ff5af26c13353fcbd8060e37bfca043195 - pristine_git_object: 90327467d4d0d687879f460836a2a714abf3f071 + last_write_checksum: sha1:ec470d9a640a1fa33b7cc03d96ce52123b3ca53b + pristine_git_object: f58473d4fdae0ff5ac276ce0abfdd0b9610fcda9 src/glean/api_client/models/prompttemplateresult.py: id: f4c9cc06db98 - last_write_checksum: sha1:f177b5c594718d1f96f33c8dc4b38f6ead291ff9 - pristine_git_object: efd9ff4700d2bcf26b3593bb40b1d34f6ce6e4fb + last_write_checksum: sha1:64520da3ddd3c0fcb80507a42c66735fd5254ac8 + pristine_git_object: e8cdbcce8662932092dbbe3867513adc56693f21 src/glean/api_client/models/propertydefinition.py: id: a5640d2ddbc8 - last_write_checksum: sha1:670a6b36041422f5f8223026c11d665dd3b838eb - pristine_git_object: 6ec503a239bc42d07faceb158b6b8fc2dd665a70 + last_write_checksum: sha1:8b07cc5789d4c75917a532ef5755fe136b744654 + pristine_git_object: 6c06b73b3236e04b23e20dc261a255d525a4a7f6 src/glean/api_client/models/propertygroup.py: id: f592edab23dd - last_write_checksum: sha1:7a2c704e758bd2703ea9dab202cb663e2784429f - pristine_git_object: f3ed0cfdf6036135f807e6a2d882b2aace08cbde + last_write_checksum: sha1:bcca66876705811cf26300da382598b94efe1e3c + pristine_git_object: ca1c429c2e00a93fc38048e92a7a5409ca20c3d9 src/glean/api_client/models/put_rest_api_index_custom_metadata_schema_groupname_op.py: id: 0a4f9b623706 last_write_checksum: sha1:651bddf0bd127dbcf32ef23fe556ccb9fa4c8820 @@ -7126,84 +7138,84 @@ trackedFiles: pristine_git_object: b8da6cec25c11e6b49e475e53fce749418710563 src/glean/api_client/models/querysuggestion.py: id: d999a3a9d983 - last_write_checksum: sha1:d43fb0420b33b016822529d740992d7a5d8274be - pristine_git_object: 39b6d5e513142fa23df9103d52e52a1b2df3632b + last_write_checksum: sha1:5f19575d36df54117a904264d0df95a97ae527c8 + pristine_git_object: fcbb550413a0eb96ef255aa86a0ffc1b0e0eb9b3 src/glean/api_client/models/querysuggestionlist.py: id: a0b2d6cd9e8d - last_write_checksum: sha1:9579a516d26837e13e185e9e996391d9f8e8ed55 - pristine_git_object: 8723c878c36f42f2c72654b5c752c0b366b5b50e + last_write_checksum: sha1:7e1ebe5df008b16617705002c9022e57be5cc7bd + pristine_git_object: 0cbb0da42f4058c7e9be446cb502830476ec9cee src/glean/api_client/models/quicklink.py: id: 0304461c2f90 - last_write_checksum: sha1:80359422d1067bb6718c30c71c371929cb2d85b9 - pristine_git_object: 75045a1ff55daf62bf893cbbb5a52a4287942806 + last_write_checksum: sha1:154e4102927a1ef829ef01160c9b65f9489623f7 + pristine_git_object: 54758e92b3b5801502537d7910d2ee72ab5692c4 src/glean/api_client/models/reaction.py: id: 076b69450df3 - last_write_checksum: sha1:d4a5a1c380a3b4caf64ad3377817376a21071ef6 - pristine_git_object: 40dd0af419479f13e301768f57172ba163037a49 + last_write_checksum: sha1:5e359807b7c17535e1f97af0d9e28876e8fbd265 + pristine_git_object: 1a940169e782a4ef96b6941728c56b820f37e506 src/glean/api_client/models/readpermission.py: id: 13410259df92 - last_write_checksum: sha1:0f5edfe09499050d43d1e50357025eb98516e251 - pristine_git_object: b82781fdc48bac49fc6adcede9a821d4d0874a59 + last_write_checksum: sha1:6d4ea47bb32d9745510df0d4baac58c6f3ec0caf + pristine_git_object: 11eb51499ac30ae642450527f91c910574934694 src/glean/api_client/models/recommendationsop.py: id: ee5dd14cd496 - last_write_checksum: sha1:4bb0c267213c83cd9fbe74dd460ff03d1373a3d7 - pristine_git_object: 02f83b74189ebfdf73c92a7f45ad619b87cb4df8 + last_write_checksum: sha1:e24dca23d2e964a206a8c8b4ffa664e5dc2106e3 + pristine_git_object: 3a324b0f978da968eb56217d48dcc3c9b5e04e19 src/glean/api_client/models/recommendationsrequest.py: id: a520b92b656f - last_write_checksum: sha1:d6d5b9faae629d5a6112b9e3da7cd4d6552d7953 - pristine_git_object: 507d92fa93023593dca8dc8bd3bfe3796f20af5d + last_write_checksum: sha1:d559d8be21efda9ba8f8cdfb32ced5281ba5b74e + pristine_git_object: 469a3564cc802acaafbbea7a8820fc88b18e60cd src/glean/api_client/models/recommendationsrequestoptions.py: id: f4240d7e4353 - last_write_checksum: sha1:ac1ad1caf79117cb8c5b742731a05bd185711c11 - pristine_git_object: 162c9f7685718a17f9aa40e0bcd289551b34750d + last_write_checksum: sha1:4e1db50d5e29bf425672055e7992c3c825c4d30d + pristine_git_object: 0cf9e79999abf6dea5965f9ef3482b74c9e19647 src/glean/api_client/models/referencerange.py: id: 99d8cc67073d - last_write_checksum: sha1:51fe4767defc867fcce553a39cccef816a6e0e0a - pristine_git_object: 851c90fafd1ed4ceda5edc31cb61157608a4ebd1 + last_write_checksum: sha1:de50c4c55331513d74d3dd3773974b3438c454b0 + pristine_git_object: 57583405eb6c92468ee03d24a0ca145835eb9cbf src/glean/api_client/models/relateddocuments.py: id: "956195080413" - last_write_checksum: sha1:4457e52fbf83c3d8be529b9906b3be3ab3e65205 - pristine_git_object: 81ed4fa9b6c997d5b9a0f3c9168c90e41d3a2cac + last_write_checksum: sha1:940d501764c3b5f0846e49f8a68c998cd41ded99 + pristine_git_object: 7ff74c44827ba22ecb0ae1aef098e3c0940992e3 src/glean/api_client/models/relatedobject.py: id: c8937c435039 - last_write_checksum: sha1:af8f0e69f54b6dae715a0ec62eb1faf21f931856 - pristine_git_object: 94a1515c39e6ab1ff3120dab4576195df637d2cb + last_write_checksum: sha1:20c6ebcc778d990d8c81a4fcfab7721cc349e1d6 + pristine_git_object: 847e75288a599171b754510706d596324a728a9d src/glean/api_client/models/relatedobjectedge.py: id: 73ab27238170 - last_write_checksum: sha1:4291bddffff01dd38c0509314714fd6b483fe935 - pristine_git_object: 6a5b09725efd25c6ca0684b4db6b962790d12d74 + last_write_checksum: sha1:a299cd2b117187a4b535109d4b8382c9cbf7e5e5 + pristine_git_object: 3b67a48f18ede90570c0b5bf75712cad2f46b12b src/glean/api_client/models/relatedquestion.py: id: 7a4bcc49206c - last_write_checksum: sha1:46f1235014e4f384daaefeb1b398c572ade0f00a - pristine_git_object: 0bd513ec01b8dd34acdf5d6c82baab1e7150edde + last_write_checksum: sha1:148efa013d01dd5247898c652e8cf48bb3300a6f + pristine_git_object: 1648e1f49941a5d9287fcc2d2af82e876704b630 src/glean/api_client/models/reminder.py: id: fa39219753da - last_write_checksum: sha1:9c771e2bf1f3187443201deb26161e3ce30f42b6 - pristine_git_object: 8a084dd759778243af1f96f3980d9c46fa228a0e + last_write_checksum: sha1:67ee32f9e3f67ce0597228ff9528e6a0191ba7fe + pristine_git_object: 5e74c0b729c77c5d8e09286e6f69b6d21d533b81 src/glean/api_client/models/reminderrequest.py: id: b74a3f389e9a - last_write_checksum: sha1:fd9a85afc919d58e42c3a0dabb32c75f13a56576 - pristine_git_object: 5f4e8c646b852f53287e854716e5ddf76e60f7e0 + last_write_checksum: sha1:c987ef7ffea9163f24558aef96a77f4b4f59f882 + pristine_git_object: 0a4d3b83f593d8a2e8f889b35b0ec22f695b7fb9 src/glean/api_client/models/reportstatusresponse.py: id: 772284b8ed0e - last_write_checksum: sha1:6bbd579bf04952878b62702c53ac089940b09314 - pristine_git_object: ea27cecbdfb8bf2dff2b4062579aa3fd70d9c580 + last_write_checksum: sha1:02d76c28d857a122ee8a16515b0811ef0419063d + pristine_git_object: 2715c9ffccb807e400e74d2c96dbfbd78a9e49db src/glean/api_client/models/restrictionfilters.py: id: 2fb7b9c3c114 - last_write_checksum: sha1:0c2fb811b3872765eb43b50354d5134c63d31bda - pristine_git_object: 2e649d73bb1a3382337ae1f2f0be2ca96cabe839 + last_write_checksum: sha1:f5f61769894eedd2ea1538a0c662310134c3f77f + pristine_git_object: b987f26d8f6759a6f8fed73f034fa5ee5e553012 src/glean/api_client/models/resultsdescription.py: id: 15c668146af5 - last_write_checksum: sha1:9b06335149d9880a28c945e60ebecf497b3e78d3 - pristine_git_object: 7c8140e5c18542cb5b7b13c7f4cf734013d13ac5 + last_write_checksum: sha1:b067614a2743f60b358767052b8046ca8193c5ca + pristine_git_object: e9e887c1fff907a2924bae805eeb7aa4c04d9b28 src/glean/api_client/models/resultsresponse.py: id: 64338eec2f88 - last_write_checksum: sha1:9de171e1987517e200acfb2f98d957ddbe939631 - pristine_git_object: b6ea890230d3c9255ca137b3e671f70f07c672d4 + last_write_checksum: sha1:a30dd469d1d38b4eb525110ade7a0b4b401f7bfd + pristine_git_object: 073f936f7396ff5ccc7157c1ae276a32cc941f1e src/glean/api_client/models/resulttab.py: id: ab5996a4e338 - last_write_checksum: sha1:47e64ce6b2f42edcd5e311218791fb375f9752e8 - pristine_git_object: 3683f422ddd5b3065454a5a14ccb9639d96dbc9e + last_write_checksum: sha1:102113428c70b25ebf23e5cb44a0af387dfe3ee2 + pristine_git_object: 4804db564a4c3b8f59bc105854607709c0c6d297 src/glean/api_client/models/rotatedatasourcecredentialsop.py: id: 52c9d892f054 last_write_checksum: sha1:73f9c6365b506b3c22a7c1c46765a950c7481abc @@ -7214,280 +7226,280 @@ trackedFiles: pristine_git_object: e9dfdd442b5dd8e6a0caecf9079dfaecf1f05d2e src/glean/api_client/models/rotatetokenresponse.py: id: 77a67fdbdad9 - last_write_checksum: sha1:70fa60be71c4eb8e04999ca6d84b9e72cea19540 - pristine_git_object: 723b5b9c9e2e7ba03737eee2f019a3547385f027 + last_write_checksum: sha1:4ff4a1b98bd9cf2b061554940ce33d02b03952fc + pristine_git_object: 072a6e8a2a64ea8c4b74ea04345f5a1cce78f003 src/glean/api_client/models/scopetype.py: id: 2f48507a9410 last_write_checksum: sha1:4245fb548034949fad3ffea8f6afa5ddea1ffde0 pristine_git_object: e45814ba47a94bde527ff4fe6f216224211eb3af src/glean/api_client/models/searchagentsrequest.py: id: e4777828bb53 - last_write_checksum: sha1:49a2951cc53859434c49bfd408bfb8f20be732a3 - pristine_git_object: a66f7d033ec65907f16edeafe241698a99ef93f9 + last_write_checksum: sha1:6112191d8ab92a6a20ba9d3167203c0e82cbd09d + pristine_git_object: 4d18f6a16b2cd44c680fb68770d136e4c3e62f09 src/glean/api_client/models/searchagentsresponse.py: id: ab538c03a9e7 - last_write_checksum: sha1:966d23f457caf948ccb9c3146c896cec9aeee922 - pristine_git_object: 9e6b9852b797e99e0b0fdacddc14e29c0a9b733c + last_write_checksum: sha1:8e36b360200b813dfa6baf4012cab55455d18011 + pristine_git_object: 5fa3344f8c2f687b39733f505ee95cc080d86a95 src/glean/api_client/models/searchop.py: id: bf0e9fa90f9f - last_write_checksum: sha1:ceb0ac07f9ef9da3f864de222967630d84295626 - pristine_git_object: d1dd1a5c5cd0cbdbfec3d1b71a11e1c5172eef20 + last_write_checksum: sha1:9b74f01f8e7d632d4a94ae0813ac8e4f897baffc + pristine_git_object: 93594d83df9a1fcf3665d68733bf3dbaecbce759 src/glean/api_client/models/searchproviderinfo.py: id: b68ee1b0b172 - last_write_checksum: sha1:7eb4317de4570eac02a377fcd3f6d15533390667 - pristine_git_object: 84921983d237d16b44dd1746590d7a78dafc818a + last_write_checksum: sha1:011ab85bb8989768b6e460a7f61d24580e46a195 + pristine_git_object: 6ca6a285b5af73917a6c83315abc87de1d07267e src/glean/api_client/models/searchrequest.py: id: 719f98a441ea - last_write_checksum: sha1:0b58de889fe0fa092d1457860a54e3a377ab22c5 - pristine_git_object: 535df87596e62767f1f8499a01547f754786078f + last_write_checksum: sha1:d16e18a8ed9d6266e3d2ae521e7d2df2dc875b18 + pristine_git_object: 91653376fbf5b28ac51569b9a282817215e74ddc src/glean/api_client/models/searchrequestinputdetails.py: id: f9016fc47ba7 - last_write_checksum: sha1:9590af880bb1d81811808c2f319899523e12fabd - pristine_git_object: 900e4ff23c51d2f7b4182a92cf04782761914c3d + last_write_checksum: sha1:cb707a929039d231ea6990a53fb5c1d9ffd52c26 + pristine_git_object: 58ca448e4a0576f8555a8841691a73360b0da017 src/glean/api_client/models/searchrequestoptions.py: id: c7963bd59328 - last_write_checksum: sha1:fc025a6e49aaef42f90f7287592799e53d479ab1 - pristine_git_object: f5006c08f5f60180cb4c99ef4c37855f4d4a0893 + last_write_checksum: sha1:1eed3f4f25eae0f6f1e49afd984c86434c0423fd + pristine_git_object: 2bfbe7bd7c0dd1958b4d900ffba49fc146f92af3 src/glean/api_client/models/searchresponse.py: id: d705ad40d03c - last_write_checksum: sha1:6cc100f27205541e4ed49ea7046c303fe13b2963 - pristine_git_object: 0135246be23f25b95e11d3d167095e9707730cf1 + last_write_checksum: sha1:b8f590348602804502e457535935ba7ea5b399af + pristine_git_object: a71e3e2d70d9034a7b86e1d5c3fd263fa201ab8b src/glean/api_client/models/searchresponsemetadata.py: id: a10bad5e36b4 - last_write_checksum: sha1:ee67e32b1b616e61867bcc09e81346be64296054 - pristine_git_object: 0d4c2a385af0f5da372d8a647d591ccb6e9468a2 + last_write_checksum: sha1:fee0f2f93142ccee4e4d382fb651a07878f9fc70 + pristine_git_object: 54e6544ff8c19bd6bc016227f6ded1a034a420ce src/glean/api_client/models/searchresult.py: id: 80390a0977b7 - last_write_checksum: sha1:8ef2dd214f3e8c975ae28bfd7432e871f2b6d449 - pristine_git_object: 9bcd86392b024ba6a7c5b4727cc5b88198fe860d + last_write_checksum: sha1:b44d32afc08fff58806be71f7573487135ec5b21 + pristine_git_object: 1a32857d61cd65a03910528c22c6646953ee7f05 src/glean/api_client/models/searchresultprominenceenum.py: id: 611302793a36 last_write_checksum: sha1:75da9f35ae33d71515f58654134b6d614f453ecf pristine_git_object: 27ef471f64a9f280f3142d2f9b825c0058b2c365 src/glean/api_client/models/searchresultsnippet.py: id: 70ba81075b57 - last_write_checksum: sha1:7c53a2f78614a06e3b78c626cda58e96fb3fc3e1 - pristine_git_object: 949ba65d0af74e0149356e8604f3dc16d886860f + last_write_checksum: sha1:50c6eca4b8a0a0d87bf7263def8419b74c2401e3 + pristine_git_object: 025f2c8d76a1e233cf583d4f2780527b93f3c582 src/glean/api_client/models/searchwarning.py: id: c2eca228f00f - last_write_checksum: sha1:0a2bcceeceee257d807202e5def6d83dfc85e05e - pristine_git_object: 79a0826de8a9db054081f8b9cdcc3831b1735dbb + last_write_checksum: sha1:6ec8a3362fc0d01cbfc04e18331a59ae262f4a45 + pristine_git_object: 443d8904a6bea65a0b34222e73c655a6253b2a95 src/glean/api_client/models/sectiontype.py: id: 9b5de392015d last_write_checksum: sha1:130b8a1f543787e1f3f63915036bcf448ec52ceb pristine_git_object: 59fe1bb6ae5db2711599be0bb64971a8a8aa4c9f src/glean/api_client/models/security.py: id: 79159407101e - last_write_checksum: sha1:8969db847e8b331204e2b1eaf5e1bc16c54048bc - pristine_git_object: c248ffd0c4139a8d90f3d9e90af34490f940f7c7 + last_write_checksum: sha1:589a0b69c35d8046b253cd678af618c323866938 + pristine_git_object: 3d52aec94c6e5e282e859ccbde72de21f19e65fb src/glean/api_client/models/seenfeedbackinfo.py: id: 6a7a196ed797 - last_write_checksum: sha1:31b5cbaf866e30162e40c35ec7701fb8e0045e5c - pristine_git_object: a5ebcfaa179fba1405e7aad53f24fcf9acb58110 + last_write_checksum: sha1:463bdf703aaba686a5531e8f83c187bb76f402d5 + pristine_git_object: 94a8146225189bae7dc3a9df7ed7b153023df040 src/glean/api_client/models/sensitivecontentoptions.py: id: 156ff45324dc - last_write_checksum: sha1:15a9e1957dfac5dcf4d150ae07872109dd92dec5 - pristine_git_object: 10775067ac0aa552971fc437c805c5d90b87c6bc + last_write_checksum: sha1:1145dd7d9551222517290a26621cf26de9e2ff9d + pristine_git_object: 9cfb7066baad0088e982f40857fa3cdd7c209d1a src/glean/api_client/models/sensitiveexpression.py: id: f2d93e2a2977 - last_write_checksum: sha1:8b4146543b62a90884a429e0b8c1fab6f04b2b11 - pristine_git_object: 4f4970c317e5e47b92aecb2b35e6d6976807a2d4 + last_write_checksum: sha1:b93904feeed0be923a60881cf42d9ea2db06f996 + pristine_git_object: 71d2f6296df35d4c929987b4bdce27858581fa74 src/glean/api_client/models/sensitiveinfotype.py: id: 6d9d1a461507 - last_write_checksum: sha1:c6a5a4a9818661d6ebb28a68b3df859cea4b4dbe - pristine_git_object: 4d362e735eaebcc8ffa9ad17930c21723ec738f6 + last_write_checksum: sha1:a92c3551a4c22f61f7f9201805737e92ff7cf09e + pristine_git_object: a4fdec05eb74e1b64a2f8978cce419a967c054d7 src/glean/api_client/models/servertoolrequest.py: id: 68e8f4700c18 - last_write_checksum: sha1:fd353a890565dffa872f1ed76e8276c713c72674 - pristine_git_object: c88abbe5702b9dfa72709ac74658c54c726f7753 + last_write_checksum: sha1:91818c3b069714bd4884d6c5da5ff45eac14ac96 + pristine_git_object: 26d36e38048350c3f9a2f945cee8ef45fecc5bec src/glean/api_client/models/servertoolresponse.py: id: 48123cc8f7a6 - last_write_checksum: sha1:20105bc9f50d17cf32c0ed6e2985a06acd7c7e5c - pristine_git_object: 8af507a2405c4555021fba915084ca3c8d170d6c + last_write_checksum: sha1:34c29bf336a9d77786d5c900d27a1974d15b33b2 + pristine_git_object: 785491e6756fee5cda5fb22da9239a4648dfff88 src/glean/api_client/models/sessioninfo.py: id: 4127a11bdfbc - last_write_checksum: sha1:109e98c476f5bf747e35b7051e2702961c518167 - pristine_git_object: 0a0ab5212d819022274b18bbd66874850c679af3 + last_write_checksum: sha1:8a07aadf09330e11396b9b72d597772914685f7a + pristine_git_object: a09c9198794a3aa34040f03fd38b9d9b519cf53c src/glean/api_client/models/share.py: id: 39287bae7e7f - last_write_checksum: sha1:7baf7314be3c109a90756455cd32f420ca2ea823 - pristine_git_object: 3356d1fb50d14a4d11fe4f7495add5cd422cf7ea + last_write_checksum: sha1:04efcf9201bf0c7425ffbaee00f8312ee560e881 + pristine_git_object: d52ccfb40b435374cf89ea95986c08b4bf19c179 src/glean/api_client/models/sharingoptions.py: id: c757da755d4e - last_write_checksum: sha1:11480ca36220c7cd4b5d383e79fb7aa64c835d07 - pristine_git_object: 09336c168d08c481086e1116577ff2bc9d8f4fa5 + last_write_checksum: sha1:c8c3ecb7f68fd97489491f5d196365126d48b1fa + pristine_git_object: 4491efbc4d5004b82681b5d061583c2f70f1657c src/glean/api_client/models/shortcut.py: id: b40331355c7b - last_write_checksum: sha1:bd116933fde8e359b21dae6184e29f63841c775c - pristine_git_object: 6038fd52a4bcb3f9c1f26460bf09ceb7e247be3d + last_write_checksum: sha1:64fa938fa3e945fe2e0115627a99addcd472dce8 + pristine_git_object: f53e41fe0880b826daed40a1ae574d71505ad823 src/glean/api_client/models/shortcuterror.py: id: 2f86c1d02a49 - last_write_checksum: sha1:9fe0fd6f8ccde62c2d2eb8eb01e0c56cbfe5a1df - pristine_git_object: b4922a4c5c1d6f564bab4ecdf3ff0823225aafd3 + last_write_checksum: sha1:ef55baca8dcf47c9c9d842598aaa49d9d7d82dbf + pristine_git_object: 00ef9df7f45ea01bfea36005df0358c3cb4d34d3 src/glean/api_client/models/shortcutmutableproperties.py: id: 16671c35b7ba - last_write_checksum: sha1:2fd1fe7e2d31469e380ae47fd7fc62213c9e24de - pristine_git_object: a70757ead51012662c34111b312c65df755b7990 + last_write_checksum: sha1:7b5135710e40342d4b0531704d76aea65e3566c6 + pristine_git_object: 5512668123208cd71612f7b0177667260270aed3 src/glean/api_client/models/shortcutspaginationmetadata.py: id: 84d3ffe2fd5f - last_write_checksum: sha1:ec6b065434c14409bfab5041e0ab7b062f672b17 - pristine_git_object: dd14f76d91c1c9ae65d19d617726b5f2fc4837a8 + last_write_checksum: sha1:0bb4cdb6fca310478e7d1d2f24a14cf8329280a2 + pristine_git_object: 789dbe980da65f6678053163af12951eaa721b9a src/glean/api_client/models/sidebysideimplementation.py: id: 76cfd351a2aa - last_write_checksum: sha1:f829edc84b796610597ed5497f7b670517ee9f0e - pristine_git_object: 2df5ff06886601073ff704d1af1176ab8bb8d9a3 + last_write_checksum: sha1:8ce35f1a2042e51f588d84ee89bd20787ad34ddc + pristine_git_object: 3952025d49a3a87762344c11a45d290d4769717d src/glean/api_client/models/socialnetwork.py: id: 7d186cb460af - last_write_checksum: sha1:5c0c7996878346969e0f9eab01f78cebbe6087c7 - pristine_git_object: 3a736be58c68b7aea7151e928e12d0eee58df091 + last_write_checksum: sha1:b88c9c378faabbc954375752d32bc30fb7371c56 + pristine_git_object: 41e4212c7efabcf8476a2cf11c76ed7fb29b31f7 src/glean/api_client/models/socialnetworkdefinition.py: id: ff972e9d65be - last_write_checksum: sha1:7b593b4870d2aeb2536629e1be9b750b8f7db385 - pristine_git_object: be8259cd81a246b9a1bbc371d1b0eb6c6682ba3b + last_write_checksum: sha1:aa51eec5d86ca227612308615df9bfda06010ce9 + pristine_git_object: f8be92dccd9dcbf3000bb0614b49a60bcfc614a9 src/glean/api_client/models/sortoptions.py: id: 7e730ebbc35c - last_write_checksum: sha1:7a69b99ac2d064cb8364579fbf2ab7eefb7d591c - pristine_git_object: b47e3975573c6b4fa41b97a1ee74c06d76040a2e + last_write_checksum: sha1:bf1373bb3809a83041ca025fb15a056268bb7e3c + pristine_git_object: 675ae4dbe4e3fa3f76f33df21624d2184537846a src/glean/api_client/models/structuredlink.py: id: d619bb983c4a - last_write_checksum: sha1:253c8b08c395c4d5354d84dd4303a6a7cf6f4df8 - pristine_git_object: 64e4e5b9503c69a7fab950d8e05d25dfab543be4 + last_write_checksum: sha1:97a0fdbc7eb3fa0f6f1e5b3bae2ddceff9351654 + pristine_git_object: e1b788d51141159168f31b529bc68d50e5a56a18 src/glean/api_client/models/structuredlocation.py: id: c0c11256d82f - last_write_checksum: sha1:7d0283180442f7c282f013b05df46aade77b1381 - pristine_git_object: 8fc2a7f5653b37df6ce2250dfcaec28d14ec6f89 + last_write_checksum: sha1:27ec935d1554915b16a393121f090ec25e5d4478 + pristine_git_object: d73bdb42566fd2e64005c8be758a145e6ce5f886 src/glean/api_client/models/structuredresult.py: id: 1777b707d24b - last_write_checksum: sha1:f25435006d961e8157f1788d55b019ac2e98798a - pristine_git_object: ead2bdf1a52968bce716d6fce3519b69fde650d9 + last_write_checksum: sha1:62955c1e9bc4ad1ae0185d7e95f3eebe44e1a027 + pristine_git_object: 742283daf6cb76394213a9f59af65cd479daac14 src/glean/api_client/models/structuredtext.py: id: 5a5980e70744 - last_write_checksum: sha1:cc017d001d800043a1069074138676d128fa6814 - pristine_git_object: dcf058b2fde6c92bd6f0b8ab893e4d53c137da3e + last_write_checksum: sha1:5e9bf65199669141a7919e00eac9f7ed2e1db066 + pristine_git_object: da2f3e0060fbd5e66cf6b607bdc3fea9e14f2538 src/glean/api_client/models/structuredtextitem.py: id: 283dcc948aaf - last_write_checksum: sha1:4d4bf0925e74117d7e739bf5d70b7e06e64c6153 - pristine_git_object: 6eeb60a01e6fa04e8f2baa9a0914ce62b1661962 + last_write_checksum: sha1:82cec563f5d6e29505f6503d865cde04008d842c + pristine_git_object: 322c7695e8f951394cb030d0a9f46cb15d371126 src/glean/api_client/models/structuredtextmutableproperties.py: id: 04eeabe42124 last_write_checksum: sha1:ff30b684a5689d343ba2f8e4ae6b60228a5e3767 pristine_git_object: 4a55f087a9b19d542b32dd8064185b090e76b787 src/glean/api_client/models/successresponse.py: id: ccb94bace869 - last_write_checksum: sha1:526d0e027fa8a066081c0ad2950b0161724c5c18 - pristine_git_object: c48ec8644af3efd5bb4e17a0d7b421499f0f879e + last_write_checksum: sha1:9c314b2d3349c9889d2fbe574ae6db35b880a5be + pristine_git_object: b4b1034a7df77f77c4b560de3e6b868c4c696dc8 src/glean/api_client/models/summarizeop.py: id: 2b87b3e6aa4c - last_write_checksum: sha1:47eb38ea7bdfd516866d08dc9214bbc215022f94 - pristine_git_object: 1211d870deb4159e03665024bdd728e40f3adf81 + last_write_checksum: sha1:becba5dc18271d1697b1b52c2c96a8e3d132ebe9 + pristine_git_object: e4f93aed1b0af9c76d434239d7a8b729d5e86aec src/glean/api_client/models/summarizerequest.py: id: 368175eae49b - last_write_checksum: sha1:860fbd11f01580645fbfa605f8e522b121be9eb2 - pristine_git_object: 2ee5dfa9b22efeb68b34df86294dc9e0bc03c7c4 + last_write_checksum: sha1:d4858384543941c7ee67363ea9278de7701a73bc + pristine_git_object: efe2297b6a8082214461244eaf2b5a5ba1ad731c src/glean/api_client/models/summarizeresponse.py: id: f49fb35062e3 - last_write_checksum: sha1:6095fad01602ee9d8810920aafee22caead3b35a - pristine_git_object: ca5dc1b69bd269c493e2a3ee40f1a151b2a3056a + last_write_checksum: sha1:468a3291fff6c2a23a402223d93427fe0776e1cd + pristine_git_object: 04e75ead945d135da0b222ec21f4fa59398b6745 src/glean/api_client/models/summary.py: id: ec310b5768ac - last_write_checksum: sha1:2512e7b07e429ee63d5066edb6b30ad7209f11fc - pristine_git_object: 35573db75a59c75e36529c5d7885760cd0b68390 + last_write_checksum: sha1:752a5f2374edc2f463da314a3901ccb01a736c7b + pristine_git_object: 6199b003660535fb8852728edd0bb9fbe66e2e64 src/glean/api_client/models/team.py: id: 8899a02080f7 - last_write_checksum: sha1:87f9abc7173690f5eab49c3668e542f4f07aefcb - pristine_git_object: 7fa4e16213e567c637369a357d9f87e34d2f59d6 + last_write_checksum: sha1:a35dd6c9b3a81d9b16139a560f6ee4e757ad6b62 + pristine_git_object: 5f668efd07e6b4c9053dfbb6538e84b8b10eda1f src/glean/api_client/models/teamemail.py: id: e0dd0042405b - last_write_checksum: sha1:42e472b5890b4b0c1c0ae31c078a4b4d9e0f5f7b - pristine_git_object: 73f5b4cdd89f726432ee186f5ab19098daff70ae + last_write_checksum: sha1:402a38a4678741514c65e88f575b2474681cd789 + pristine_git_object: f05c3357f00fb1d44bdc964599639f51a95455f1 src/glean/api_client/models/teaminfodefinition.py: id: eba67dbd2ba5 - last_write_checksum: sha1:15ffb877c242c1cc3402afde5609e763242d5491 - pristine_git_object: d5e57583e32aab947759344d5f9689d108c4b462 + last_write_checksum: sha1:cb695d194070ec67b82075c8cc0e8afed23430ff + pristine_git_object: e9bd97844b3b271b75585dc6d1c2e691619d6e2b src/glean/api_client/models/teammember.py: id: 6c0e36f8a165 - last_write_checksum: sha1:a2881555a6e38ef335aae7523962b4310e028609 - pristine_git_object: 9b534f8c969ecea239d10d528cd1c85de8284151 + last_write_checksum: sha1:9096a5de56f55a798daed1baaf689477b47cf746 + pristine_git_object: bf81737dc82d2aea6f4cbad59694eb19bec1d8df src/glean/api_client/models/textrange.py: id: fd0971fbe1a2 - last_write_checksum: sha1:0d1f2487aa4c25d5511e9028e63aad0ef356ac93 - pristine_git_object: 9cd52eba35b4e1580aae1f49c905fd22dd493267 + last_write_checksum: sha1:e44e379f56a60a2c91254be4d9932ad57f164c7d + pristine_git_object: 5ee9232a1bf84171b3d0dc9eaebe48e126432d95 src/glean/api_client/models/thumbnail.py: id: f1c4780867a9 - last_write_checksum: sha1:73a1890db32d564451fa4fb369b79221f5604c1b - pristine_git_object: decf9c1fb4bff8b96d6727dd46b90ae6de12f5cc + last_write_checksum: sha1:db31a8318ea53d562ec7fc587d6cb4cf71631aa3 + pristine_git_object: 2e1fb5df20dc3a71fd3a3013ad1e97326e679fcb src/glean/api_client/models/timeinterval.py: id: 391f82a52f47 last_write_checksum: sha1:c9259a0abf0a4076b3b112c648b1106f07d145d4 pristine_git_object: b9dc81f9a345f2d2bb564847a37c1df49df5ad5c src/glean/api_client/models/timepoint.py: id: a7733c748aad - last_write_checksum: sha1:c20944d39d4f0e62eb1026c6763c1851d91735db - pristine_git_object: 64b09feaa92b4b0829e9c5a27567ae7936f98c49 + last_write_checksum: sha1:7483a07f86c04e022369925644c63872e29b1644 + pristine_git_object: 2c4fa3c0b348cf5097bb262c65fc441268b921b6 src/glean/api_client/models/timerange.py: id: 781aa895d3c7 - last_write_checksum: sha1:01b81d6451d3f463730d7e5bd2ffaa9c4abb08f8 - pristine_git_object: 7ac2cf3c5844baaccbf4a8aabdc54289a653c46e + last_write_checksum: sha1:2255f18e8bba51f322d697ca921ae5701e25b783 + pristine_git_object: 4d1c04aa1fdbc8e5393576eb93ac3da2138978e7 src/glean/api_client/models/timerangefilter.py: id: 0eead7612909 - last_write_checksum: sha1:ba3eb8497c8bd60817be9067eda04a28caff34cf - pristine_git_object: b8ad317806ded0ecdc42bd4d923de199881e4922 + last_write_checksum: sha1:25935ebc6d66a6aa62588a57316d05775b481d06 + pristine_git_object: 2d83d0be07073ec2608103223b8d77e58d39ad13 src/glean/api_client/models/tool.py: id: acaa76f0ab87 - last_write_checksum: sha1:d6eefafc0dbe06ada923be3af630ca6c40cbd45d - pristine_git_object: 86839d1b3a9942ee9890d1bbcb29d4326ea63685 + last_write_checksum: sha1:f56a2db443a868dc6a520ae0612770a38aa55b27 + pristine_git_object: 80b8c2a973d73b12be37945739f3fbd462f6f126 src/glean/api_client/models/toolannotations.py: id: 2b8a8339730f - last_write_checksum: sha1:7bedaba236594e70feb3f20d902be83d725dd978 - pristine_git_object: fa00357c76e2d4458aa23bf45175d6f354a6b18d + last_write_checksum: sha1:8ffdb0a1a573cae3afb9d3ce43544bc95e36b458 + pristine_git_object: 0e69454532451ca8f9c230de6f23551951f50811 src/glean/api_client/models/tooldefinition.py: id: be1be88fb89c - last_write_checksum: sha1:53fa688bf149f3eae975894ce765fd098cd00875 - pristine_git_object: 805617b1ffc5776af15895148c0c9c841fa6299a + last_write_checksum: sha1:ef86fa1554dcaae77c6668e9a83d1d42f155894b + pristine_git_object: 995cf32bcbd8fbff71459400fa61d0de2f54d511 src/glean/api_client/models/tooldefinitionsresponse.py: id: 40fc72a511c0 - last_write_checksum: sha1:4a42b7cccfb3522ca62cd8072c18929ebf085365 - pristine_git_object: a0fa1e092f2587591c0143ac67c6443217a7d31a + last_write_checksum: sha1:9f7a9226fc038ef47915d2d481ad029ae99ff967 + pristine_git_object: 25fd786177074731354aa4f33d795ab27c895930 src/glean/api_client/models/toolinfo.py: id: f210c6276023 - last_write_checksum: sha1:0fb5a9601b9e8ecd9cd71c2f82624fbac8a592f7 - pristine_git_object: 9bbfdf3278d0a840ffbd7de03fa1cd3927bee8b6 + last_write_checksum: sha1:7c37457f04afa4f314749bfe39b6aeb684ddf996 + pristine_git_object: 4eef455667de5ddb23def3a5286560f46f91c6b9 src/glean/api_client/models/toolmetadata.py: id: 7ed199e1f217 - last_write_checksum: sha1:d54d796d1a94a56690f2de3671cb2061b011ba2b - pristine_git_object: d7928cf2abdb80a78cda4d4ac95eb7972f833cc1 + last_write_checksum: sha1:3c777ac74fb4e757e79cef2ced822bdd852a14e4 + pristine_git_object: 9922b38f69c6a24357b9f0c8583b6ae8afd1b5fe src/glean/api_client/models/toolparameter.py: id: 630b822ac98b - last_write_checksum: sha1:f74e8f9a8b2c6b6e33f203a47ce22b726956b4b4 - pristine_git_object: 2e00547de68060483eb4c0bd03776f98448ad333 + last_write_checksum: sha1:4eac44737de1ef86a3b828dd0b0a3de536236ff0 + pristine_git_object: 357c53288ec78e9184519c34fa56887e9e1332c9 src/glean/api_client/models/toolscallparameter.py: id: 983b41ea115b - last_write_checksum: sha1:38a941f1f6839953e84f6f197ce17bf47e84481d - pristine_git_object: 43b68c3eb55f56e8fc1eb10358fa78dc7acca56e + last_write_checksum: sha1:efe0a1b2ce9bb234de4e595337f4c682d82877ce + pristine_git_object: 398e96c5a73feb0044e154e840dfd8064a8f5b2c src/glean/api_client/models/toolscallrequest.py: id: 9af3249fec36 last_write_checksum: sha1:a0e99244668fb57980063d3ec7ac932580116ee1 pristine_git_object: 235e9ae1251be7b423ffc8acf100eea5a02af808 src/glean/api_client/models/toolscallresponse.py: id: fe536f511452 - last_write_checksum: sha1:cfbece61e77a75264b9969fe7197135393087b29 - pristine_git_object: 9949402b2ffc01f5070ca7153d7269151ea1e3b2 + last_write_checksum: sha1:6d910faa80634e1d617b393f9b9ca449bbbcd430 + pristine_git_object: 54efccff07226f362f06a7e1b6248255f037ba5b src/glean/api_client/models/toolserverauthstatus.py: id: 82f4cd9ac482 last_write_checksum: sha1:76f2229bcd262a4cc24610fc778247aa9530a439 pristine_git_object: 3a96ab186ed724155a9ff8743cad28248a21dce2 src/glean/api_client/models/toolserverauthstatusresponse.py: id: c6b7976340b5 - last_write_checksum: sha1:4ff21869aaecf7e045b9915ae866a21f54879296 - pristine_git_object: 8af7af9ce7802ca78089f6020e54998783b6ec48 + last_write_checksum: sha1:8e1c98549e7eecb09f697ce969158aaf52e82d7e + pristine_git_object: e89164b91595697d5bba5f8c69a32214f6ad6c2d src/glean/api_client/models/toolsets.py: id: 72b778695427 - last_write_checksum: sha1:769b67c2c1f91052572476e4815eb7c86df25703 - pristine_git_object: c1ecb2c2d2fc66f7f60a63730124c56fae49ce95 + last_write_checksum: sha1:aedeb981e9eb1d8a552df8350c6ce2cd563616ad + pristine_git_object: 1275114ff1055c78557d005ef24efa7924173f25 src/glean/api_client/models/toolslistresponse.py: id: 80ee602f49c0 - last_write_checksum: sha1:fcb7dcb2d397e61affaee277952ad255b1f3a947 - pristine_git_object: 8b5a32ccf25fcfb0fb904e8046bf1b36110a3880 + last_write_checksum: sha1:762f8ceb4ac0e8dfbced7f155f8d46f5498f325f + pristine_git_object: f03b99a7326c244d741ba453760372bfefc907d1 src/glean/api_client/models/ugcaction_union.py: id: d9231b157fa4 last_write_checksum: sha1:7bd0713052e74bc3e94a483d1c965514bd07a24e @@ -7498,24 +7510,24 @@ trackedFiles: pristine_git_object: 01c9179afe6b224cfd50edf19752e43e7d962979 src/glean/api_client/models/unauthorizeddatasourceinstance.py: id: d3507c78b8df - last_write_checksum: sha1:e86e33256eecf3766c2cc9fedeab56e34e0f129c - pristine_git_object: 526f77245423fa7bdea4fd79611568ce7d1ab604 + last_write_checksum: sha1:50c3cd764ecf48537d98bf2307116b9819ad449e + pristine_git_object: b8995b715cc8a29588524e37e6f7e15f0838490f src/glean/api_client/models/unpin.py: id: fd3f7ecf7a4f - last_write_checksum: sha1:4a6c085a7adc9e096bf94eaa44c10385f1b67e17 - pristine_git_object: 406ddefe413ec39dd66dd60c2a85e87be9343881 + last_write_checksum: sha1:e828c4f05f4923c7be106a233b49f9cba98b7fd3 + pristine_git_object: 2a99e19555c03b5db4881d7c217e08347e93fcc8 src/glean/api_client/models/unpinop.py: id: 37bd03782f09 - last_write_checksum: sha1:c5e5144c2a07f606228a79f9cbc582b8d0c98477 - pristine_git_object: 788b1fdb04944cb32b07461c5a0ecdc5a9f24e16 + last_write_checksum: sha1:333f7746533c5ad816fa24026ae5c7fb996aac5f + pristine_git_object: c13ce09477fb6ccd091f7fa9a637aad79b4066b3 src/glean/api_client/models/updateannouncementop.py: id: d409429a77e2 - last_write_checksum: sha1:ade4910fc7b004a312259f9c4b6aa7fd036fd292 - pristine_git_object: 8ccce4d02d629fff50652a4174c6f54999946173 + last_write_checksum: sha1:c67e3c86dc5f0b8f89bd3c4c83f13cdaf77a8329 + pristine_git_object: 012a23653f21960a234f6f23fc57dc83b10e1ba7 src/glean/api_client/models/updateannouncementrequest.py: id: 4e395ad26b24 - last_write_checksum: sha1:3070d15dab71d888ec5e8d7cc4fd513fceac4946 - pristine_git_object: 04efd10306f68210dc6f0af333ca4794d1f7ac77 + last_write_checksum: sha1:49964b1b6167660d25dc96176440bbf55c85c803 + pristine_git_object: a0ceb74fa5d0735c0e5121fe7398382fcad86560 src/glean/api_client/models/updatedatasourceconfigurationrequest.py: id: 2d2985d17d84 last_write_checksum: sha1:e08a352d5d8c680c7d07e762f8eacefbb5122bc8 @@ -7526,152 +7538,152 @@ trackedFiles: pristine_git_object: 1f77deeb8fb6a8a875f49e590e9a98381e5fce41 src/glean/api_client/models/updatedlpconfigrequest.py: id: a3d254d01c5f - last_write_checksum: sha1:a7e3e3ac77f9d12bf18f4ae19eff7efe1cea597d - pristine_git_object: dfa51cedbbfd90f614d4081984c46e7a1f3784ac + last_write_checksum: sha1:afc68afd0a462a286132db53f2c5745947bccfab + pristine_git_object: fd6690c264e7283cfa16d737eddaa065f1dcb212 src/glean/api_client/models/updatedlpconfigresponse.py: id: ebdba2bf5b4f - last_write_checksum: sha1:90fd4a8d4128ea8868bffa008e820edf789f7187 - pristine_git_object: 216e80d9c8139898c93a80490dba41386e952ad5 + last_write_checksum: sha1:6535381ed7a437525b72c5c4f2730a140ed33142 + pristine_git_object: 8c9d493c2edd86748d852eac9ad0721af58744e4 src/glean/api_client/models/updatedlpreportrequest.py: id: 955dc0f697ca - last_write_checksum: sha1:fee504071f3fdd7137f1f6a48ff4d02a5a1a0c60 - pristine_git_object: 8fdd3dd17dcf39232d8ca3d595cbcfd3289f95ef + last_write_checksum: sha1:7e06a0ef3c4f2cfe3330c549eca1766fc44521be + pristine_git_object: 877140c6ba9ae328294f601d4f59f552ed334201 src/glean/api_client/models/updatedlpreportresponse.py: id: 4d603da790ea - last_write_checksum: sha1:4721c153bcb2ffaabfa9586d5277567d7a48029a - pristine_git_object: ecb9e43f2342345855f4ae68c761086209ce119d + last_write_checksum: sha1:1739cd32ef448a706ea9091712ba5521c3c86ddc + pristine_git_object: 5f2b4e5e922ebc3bafa00bc0e36d47db68cd1c25 src/glean/api_client/models/updatedocumentvisibilityoverridesrequest.py: id: 90d244edbd6e - last_write_checksum: sha1:2bbfff791dcfbb383b15a1988cc33a2d634cb895 - pristine_git_object: 94e18dacb0a992d93450e5ac41d11a16ba0af086 + last_write_checksum: sha1:42801a7927dd2c599a785c6ba96783dc4a39b935 + pristine_git_object: cdf5e54857062aaaaa3085ee7f0b0c4ec5e4541b src/glean/api_client/models/updatedocumentvisibilityoverridesresponse.py: id: dbb7fcf4b9d4 - last_write_checksum: sha1:b9a064834b34f180499be5782d836c94fce64cb0 - pristine_git_object: 480787419c72aada57f0bdaa35c13910392d5af7 + last_write_checksum: sha1:ba6da7470adde9a11e7c137300a1eb40958d0243 + pristine_git_object: 23958108ddb99087aaf01003ffc56bf73526a75c src/glean/api_client/models/updatepermissionsrequest.py: id: ba573c50cb8e - last_write_checksum: sha1:f27ed068709eeec81b4b0bfb9fdf9308055e8824 - pristine_git_object: 0c622986c397c5307162b457e7b4f42c0eae5f14 + last_write_checksum: sha1:8405cec6114933657599d886719cfe6eb8549e41 + pristine_git_object: 8431ec20e6ec191cbae265c6ad2bf38bcc93387e src/glean/api_client/models/updatepolicyop.py: id: 2ba2a5f2e331 last_write_checksum: sha1:1d85a868469b55eeda4ca98ad2ced3865d00705f pristine_git_object: b34f7fd4589842113a042c9991b5dd58a82b411f src/glean/api_client/models/updateshortcutop.py: id: fca201b21308 - last_write_checksum: sha1:212766f3c8400107ec76808b0ad9c696949e4100 - pristine_git_object: f047f8ac73141a5daf60adffa1a7b02556747d57 + last_write_checksum: sha1:e6f4b09e0834d9a85a4a819e06200f47a15a9311 + pristine_git_object: 60f7fe13f04ffa1d2634b24722e0fbf4083764fa src/glean/api_client/models/updateshortcutrequest.py: id: b8914e398f61 - last_write_checksum: sha1:e150c110b1a22d17f7d3890f7641b9259c105fe4 - pristine_git_object: 4b89b63afb6be07639b415aa1e966e25fb0a649c + last_write_checksum: sha1:133370258b0d4e38a09134370923205adbc2b69d + pristine_git_object: 6bb63fe010e7efc896cd8cd87ddd19b9f6218b3b src/glean/api_client/models/updateshortcutresponse.py: id: 0080d0c4a831 - last_write_checksum: sha1:d663c9a98c3a61ec5d1c5cfc7e91d5463c9a4938 - pristine_git_object: 9c51a9a413af75272894448766fac05e234923d5 + last_write_checksum: sha1:47400bf335b4550f5d37974dd3b3be734bab0a2b + pristine_git_object: 765772e2a8db9ff9a6f08ee993168fc4397ce5c9 src/glean/api_client/models/updatetype.py: id: bdade91a9b2b last_write_checksum: sha1:7b185f14a24c29e8b53ce58533971828af23f4ef pristine_git_object: 6a51a4bbf41b92eae18eeca9df409b52522ab70d src/glean/api_client/models/uploadchatfilesop.py: id: 29eaccdd7727 - last_write_checksum: sha1:49c7eecd495fafef3262c61a38cca3ca16c057ef - pristine_git_object: 4aafc91088fbdc1fe88f61ea577e131b6bbea769 + last_write_checksum: sha1:9252470036319b92020fdc4d799018a78a9652ce + pristine_git_object: eee3c432b43df3a1e838fe25cd6110ca4dda8a48 src/glean/api_client/models/uploadchatfilesrequest.py: id: c648ec79e147 - last_write_checksum: sha1:5e29579aa4b79f9ab7b66136bac2367df16f5175 - pristine_git_object: 23c3ccd7d585e5611f624aabb29ac26d2bc3d6e9 + last_write_checksum: sha1:38a8393127ea22656904a81e92afdbff16db27ed + pristine_git_object: 08d3b2b7df114f7834604ecc7779f2fb604b46b2 src/glean/api_client/models/uploadchatfilesresponse.py: id: 73c5f35b8280 - last_write_checksum: sha1:8876a4b054e7099e4ab7be02969b945f19618a92 - pristine_git_object: a707d722e5da141e451a2c017a9e56ce292f01ef + last_write_checksum: sha1:aee6bf57221882232f5318814d946cb05f183530 + pristine_git_object: 0878b0e87be0c51bb9caaa4f16a66c459d40683d src/glean/api_client/models/uploadshortcutsrequest.py: id: 4f829de3d1cc - last_write_checksum: sha1:fd127151466f2fb034ed5039fdfb9a2ccd0440d0 - pristine_git_object: e73b9c17d98242d041111ad18c5d0c8a9b35d4dd + last_write_checksum: sha1:ce2471f74a360266707c92d2b7e3aaff146d4f9a + pristine_git_object: d1112d339c28809e1ae6af2e55947a214110c62c src/glean/api_client/models/uploadstatusenum.py: id: a93d3718abcc last_write_checksum: sha1:3de738be3c16545f46bc3a05ba903e5cab17a216 pristine_git_object: 950f6a404fa4ea4f8667a58817fd471f0b000b7a src/glean/api_client/models/user.py: id: 4a3ebe791009 - last_write_checksum: sha1:6d89823e90d4e93add8c251f1acb02b62a032963 - pristine_git_object: 3a8ab795961f4f19f29a41c1dfc4572fef3613d1 + last_write_checksum: sha1:e5b8ae99551c74ae5cf8868d2938b82667f29b4b + pristine_git_object: d5382806e832aeb4146de2754ec2a937db2328b9 src/glean/api_client/models/useractivity.py: id: 7ed02b8eeead - last_write_checksum: sha1:d66376c26f1c30cbaf8accd738bb678b53687ac3 - pristine_git_object: 17d6333ec93d40cdc66a0c34905b8448fa950298 + last_write_checksum: sha1:e578db841466c2c3fa869e013fa140f165e5f196 + pristine_git_object: 57d03b1e4c1dbdba90ee185ec5ae77b64577939b src/glean/api_client/models/useractivityinsight.py: id: 07ac5bf2e903 - last_write_checksum: sha1:98d6ae5191726e765f8eb4f39fdcebf3fa9ae5be - pristine_git_object: 692a10352b2b48ca8c2f24a65fd5b18b35a2abac + last_write_checksum: sha1:c08289c5bf3d720c23ad112c465ee649d16d2e88 + pristine_git_object: cc94be3f9df32f7825ea3c655dd57dc9edf70267 src/glean/api_client/models/usergeneratedcontentid.py: id: e51bf3d3e0b3 - last_write_checksum: sha1:70c041ff5c91f2778fd6e516cea33e04dfe684ac - pristine_git_object: cd30606c9a481635c29b032b245e8759d82516f9 + last_write_checksum: sha1:42292c81240a4c3e9ceea9bd1de9164f8570aef9 + pristine_git_object: 6d0527a1fefe01fa32ef92d820c7a32251a60be7 src/glean/api_client/models/userreferencedefinition.py: id: b094f30ebd7e - last_write_checksum: sha1:21b47a5c10ca61f02a14f58ab0c8c23ea5da1fc9 - pristine_git_object: ae7ab2967f8de4d7dac2cf03053d528a91bee43e + last_write_checksum: sha1:a7754dcb0df6a8c08c4f245609d369ba2fb5b91f + pristine_git_object: fb807611a73a283935acb54c1e3410f34060fba2 src/glean/api_client/models/userrole.py: id: 63599e4c3216 last_write_checksum: sha1:4ec82f0c733b59d7b8de27a5d655e8edba17e88b pristine_git_object: 2768603fd77e16d9f82da184d9e236a9e2a8fde2 src/glean/api_client/models/userrolespecification.py: id: c746dd831aa4 - last_write_checksum: sha1:63e66be2502d6fc53e1ef2000c81f727c7c7be93 - pristine_git_object: 485de693b31d4e66a0f97fdb883c71695deddce2 + last_write_checksum: sha1:964865fe8ba148cde8993f0d2c1997a2d74f4aa9 + pristine_git_object: d7009f5c829e3fabe696183ce4834f8dd1116e1b src/glean/api_client/models/userstatusresponse.py: id: 30477cf9a61f - last_write_checksum: sha1:96b0eba205dac7e1729d80f36b1ec83445f6e391 - pristine_git_object: 0ee6f353859f22c0772d82b3d187779a9bc05e88 + last_write_checksum: sha1:dcf1311bb5f8f6ddd3b23c134e3029f3f6d7694b + pristine_git_object: fdaa5ca89c4dab99ee94c89779d7227a97405c1e src/glean/api_client/models/userviewinfo.py: id: d03415292af5 - last_write_checksum: sha1:48f8ae7205dbb6bf549d0ca7d0ac646c7ce92b9e - pristine_git_object: 9dfde209095574f6bdd7f8a580635fd06971ddde + last_write_checksum: sha1:71790c43e5a4f784dd31b903e4bc675bb8fccc4f + pristine_git_object: ac4ed31403301c113bacdca743a7c5870e6918cc src/glean/api_client/models/verification.py: id: f20b858aacfe - last_write_checksum: sha1:3255ba06f7cc4851886e5849ecb08c8974b7d8ff - pristine_git_object: 014203d0d0fc8e884c28db44fb6b8aa0f4887213 + last_write_checksum: sha1:e049c38de7d7ab0dec1f09f0494eb5ee2c18e3f4 + pristine_git_object: 76e1e238834ca63e122d91ed76243a6ac9f8348e src/glean/api_client/models/verificationfeed.py: id: a4d305725b8f - last_write_checksum: sha1:9113b50bf3349d304e489ce838fdd6f98d2ed8e7 - pristine_git_object: 46752ed82d3dd5a89347be26cfe8fd15c3defca1 + last_write_checksum: sha1:7e803268d28d2ed4814005a02545dce9264f6012 + pristine_git_object: bb78d0034d429c5a920291078e5bee7b4eb3a7eb src/glean/api_client/models/verificationmetadata.py: id: 16a575323484 - last_write_checksum: sha1:9188962a6d01167cb9a043929edcd73117d6f7f6 - pristine_git_object: a04d6ea398204a7d84b37756759e24ffb100a5e1 + last_write_checksum: sha1:675863f9c119f119dc96f3a6af94db20933ebe13 + pristine_git_object: 1246e835f42340cfdd90966797deab54da2eb3ba src/glean/api_client/models/verifyop.py: id: 99ea97ea1819 - last_write_checksum: sha1:fd1ab5a3d7882ed9a2a08bb88621d918eaae7c9e - pristine_git_object: c4c3e68112f54b31a11cbb442f021fdbedc0a29c + last_write_checksum: sha1:e58cefb1e6785a3251917f78f9c12edfda64f683 + pristine_git_object: 2544c6da2ac29d1d70cc18e5416938dd674c5ae1 src/glean/api_client/models/verifyrequest.py: id: 7a0d65d316c5 - last_write_checksum: sha1:3ecb78e68f8c63b8dd9211638062de15a91b69fa - pristine_git_object: 7c93b46f83ad101dd6862f42f7bda2e7e8e12399 + last_write_checksum: sha1:78859524b1f5a7ecb8484e4199e0fb8b0842658a + pristine_git_object: ffcb7f722ba2366d6d2c06d4652606a5fb2ca58d src/glean/api_client/models/viewerinfo.py: id: dc44fac102b9 - last_write_checksum: sha1:f7d42913fc8f018ff42d8fb1959340b76d58e20f - pristine_git_object: a974e0a33a74258aa98f60178a329c57635d99c2 + last_write_checksum: sha1:c78f13acd90f92260649099b9b0a804f924e413b + pristine_git_object: 4bd3314b8dfedfb66ce0ad90a5216df651a688b0 src/glean/api_client/models/workflow.py: id: e59e0fe5f663 - last_write_checksum: sha1:9c517b8d64b88fc358e3d2f6efd36e0e3ddee2ff - pristine_git_object: 063e8acfa8ad0cd0740c3b178877b7828e45d7f5 + last_write_checksum: sha1:15f4439478f3347db229ba5bfb4787a6ff25c357 + pristine_git_object: 4a7901822403f9e3810b137678cd93296d462d46 src/glean/api_client/models/workflowfeedbackinfo.py: id: 720e747620b1 - last_write_checksum: sha1:fea4b83ec5656ae417c8bd061e84da594170ce32 - pristine_git_object: a0d06dbc26ecfd2d925cbbd9cc428cc857ab2c1a + last_write_checksum: sha1:f48750931d3216d4eaac59f148c9da9961c1eb35 + pristine_git_object: 16d1d80d371d6f76eaf4ede893bbdf576991e534 src/glean/api_client/models/workflowresult.py: id: 9e8c0e8e72ce last_write_checksum: sha1:2fc30549bf6d27cec977b7ec878b0dfca15f21b0 pristine_git_object: b3e81a84fad5595cccb410baafe741420914243c src/glean/api_client/models/writeactionparameter.py: id: 3a7daceaf3fc - last_write_checksum: sha1:3df741b5e9c69a1889b8135b1c7baaf7a2131ca6 - pristine_git_object: 65b3d94cc5cf6a65bc909386d5c5ffaea6e3092a + last_write_checksum: sha1:8ae869336ff113583293941c505357edf1fd7056 + pristine_git_object: 1ce448c7173230a7d113c75243c57926d4bdfe48 src/glean/api_client/models/writepermission.py: id: e15ed09cb123 - last_write_checksum: sha1:fe32a275a30e01eeb69c059cbdbbb9d7318c71ad - pristine_git_object: 85e816dc7cea2c95b4e067d756e428be2696d0a4 + last_write_checksum: sha1:6b784b4038a86cfc6f5dcd96f554ce268997ed70 + pristine_git_object: ab4f0283871bfbedd6025058531ecc77ee133541 src/glean/api_client/oauth.py: id: a703a4eba235 last_write_checksum: sha1:b14a7cee0428196153d2c3a85180e3e72027602c @@ -7722,16 +7734,16 @@ trackedFiles: pristine_git_object: 3bbd7579fe769c115a3563915231b013cd30b5ab src/glean/api_client/types/__init__.py: id: f63c790831ee - last_write_checksum: sha1:f9ad14217f832e74f594285960125add50324be9 - pristine_git_object: faa268137bc01c9d08cfadc4797017db48747a96 + last_write_checksum: sha1:166eb50af851c4200ed67fe47c64b1d58b99ed72 + pristine_git_object: 3a43a78ab719ec504ec95c050c984c843407d366 src/glean/api_client/types/base64fileinput.py: id: 83c3e0b80185 last_write_checksum: sha1:1522687ae3398374c35710cad993a6e82b5ab99d pristine_git_object: 862566fe2b1db830276b390e136e65090e5963d2 src/glean/api_client/types/basemodel.py: id: 436a12e02484 - last_write_checksum: sha1:10d84aedeb9d35edfdadf2c3020caa1d24d8b584 - pristine_git_object: a9a640a1a7048736383f96c67c6290c86bf536ee + last_write_checksum: sha1:ebe5d75bf430ed4b0c52cfbdda3e3cb9ba6c9c64 + pristine_git_object: e4ae50e2cd384a4c5670933e26571ccbc14c3d10 src/glean/api_client/users.py: id: f7d2f9613f16 last_write_checksum: sha1:94a20905ae9a640459746b266ffb4e04f4ee8f6c @@ -7790,8 +7802,8 @@ trackedFiles: pristine_git_object: 406c1e7c36c7a4fa4fb48bb567d254e2803e1792 src/glean/api_client/utils/security.py: id: 5c4255995c2c - last_write_checksum: sha1:355ba142fd72ec019e46b9aadb1da7172c17a312 - pristine_git_object: 4a272f16c2af33f6364bd9aec9cdc33b91f228d2 + last_write_checksum: sha1:53ba91dcafd9ea5c37cdf7985a567ac024b02f1a + pristine_git_object: 4d69291791d9dc8fdc35b82fd640374ead61c4ea src/glean/api_client/utils/serializers.py: id: c499367f56e9 last_write_checksum: sha1:2fb543339b424a0818b126e69695df5c91cd4d7b @@ -7886,8 +7898,8 @@ trackedFiles: pristine_git_object: ff7097f855b75a46f88c437dfba247c1a1c17e52 tests/mockserver/internal/handler/pathgetapiadminagents.go: id: 251c7a00fc9c - last_write_checksum: sha1:687dce8eea853067f3751999616f3c45ea109444 - pristine_git_object: ba8311c30c90c27cdd4bd7c4361fcfe68821c7c9 + last_write_checksum: sha1:d93e6b246088ac3a21712f756b20e48be1273e7f + pristine_git_object: 280f1473fb7bca57194ebc434475cc1ba6754de1 tests/mockserver/internal/handler/pathgetapiadminidpgroups.go: id: 2baeefdbdf00 last_write_checksum: sha1:93caf50834f211a478487e624d8f967d2a9e93ae @@ -7902,8 +7914,8 @@ trackedFiles: pristine_git_object: c220279bf0e6b5169c43d3335a26fda29b6d9af3 tests/mockserver/internal/handler/pathgetapiadminoauthclientsclientid.go: id: f4fe4cc2d9ca - last_write_checksum: sha1:2c5c7dfaa0e64d86920642875daa547ee06109df - pristine_git_object: 3d4cee4a087837aad4e178d0f07e36e304861f2a + last_write_checksum: sha1:53e713fd25daf5f80d295ab3153d1baf3743352e + pristine_git_object: f4abe7f8e30699dd520c5f5ac111989052415690 tests/mockserver/internal/handler/pathgetapiagentsagentid.go: id: 118e0c46ba00 last_write_checksum: sha1:8ad0cc0ad413e34c3d950ee07ccd13ce861a261b @@ -9470,12 +9482,12 @@ trackedFiles: pristine_git_object: 04cc3a93272ac70933b0485bee31b335e05ab623 tests/mockserver/internal/sdk/models/components/feedentry.go: id: d25fd66fcf7a - last_write_checksum: sha1:0cba5f10843bc3a3993283a95e23322f6cf2b1c7 - pristine_git_object: 96ae65e33fa4eeb798638246321e147355e0f7bf + last_write_checksum: sha1:12463b26391932190974a3fdc74a252c9dfd1445 + pristine_git_object: 49e0b392593a8a0f2bb3421e84f89bab536a193e tests/mockserver/internal/sdk/models/components/feedrequest.go: id: b06bc4cef0cf - last_write_checksum: sha1:2c219bc9c0a524256633e691e4b152fda5f3e657 - pristine_git_object: b4d41d5526331bab42e093097f209e98d317935e + last_write_checksum: sha1:f0e5d2c8636651dbc4364f0719d429c2979864e6 + pristine_git_object: e136164f808b5dc9c1228b0ba56eb5c255a064d8 tests/mockserver/internal/sdk/models/components/feedrequestoptions.go: id: fd9245fe1bf2 last_write_checksum: sha1:fa30b7fd6ee3e45896d7bbe36e33e7c0cb9000ba @@ -9486,8 +9498,8 @@ trackedFiles: pristine_git_object: 54f9d1a8997983156c84e69f888c59a80d06c2b1 tests/mockserver/internal/sdk/models/components/feedresult.go: id: 47411573e67a - last_write_checksum: sha1:fb4f26ff6f528ce1eecf3bf11c03fa0b0b310afe - pristine_git_object: 26bf077c1a5c42d08b728512fdb58afe1c465a6f + last_write_checksum: sha1:625ee9753e8d0ac78438590dd43bbe26a7014159 + pristine_git_object: 75e05c28b858b74b737329539b9258327b6a2131 tests/mockserver/internal/sdk/models/components/followupaction.go: id: 38179fec19b1 last_write_checksum: sha1:32a31f7af77a58ce6f3284e8550d01fcf0d3bddd @@ -9862,8 +9874,8 @@ trackedFiles: pristine_git_object: 0c852dd3a7a2cf25798b15303e82ec7b5e8a59e6 tests/mockserver/internal/sdk/models/components/message.go: id: d96e45d4acde - last_write_checksum: sha1:0e6cc5d1d8ec8b4b3f53a139287bdba721f50f80 - pristine_git_object: 1a80d9f41a6955a6808c40689af6f68970f5300c + last_write_checksum: sha1:b74344f5d051a99d30a716303ad69ec5594df811 + pristine_git_object: c48ba6d91ac33e5ba23f16c58629de3a3e010a66 tests/mockserver/internal/sdk/models/components/messageinput.go: id: 2e4e9011080e last_write_checksum: sha1:17693a85d1cc1b7a61b698521a468f9ad7fc8420 @@ -9960,14 +9972,10 @@ trackedFiles: id: 696bcfeed832 last_write_checksum: sha1:4284aa5cd97b0516fd7b19e9ffc69231a1dd61de pristine_git_object: 5a56a4c8b3d833211df4fbd7864ec581310ed2e1 - tests/mockserver/internal/sdk/models/components/platformadminagent.go: - id: 2c97156ecc89 - last_write_checksum: sha1:565863b04d13014eca27c33116710b9e2ca33a14 - pristine_git_object: 4bbce8970a9ee9ad227484197ee2b62e13147538 tests/mockserver/internal/sdk/models/components/platformadminagentfilter.go: id: cf37857e4576 - last_write_checksum: sha1:d3d70f7c2e550fbde818cdd0b0e02d24836064a2 - pristine_git_object: 281428559519dd9e2a1dc5442188c9b4dbb77bfa + last_write_checksum: sha1:1c2ad1529774467d38f80d94e8b3d0a9c9b2bf33 + pristine_git_object: 1bdc67b394900c4c3bd31500b76088982ddea656 tests/mockserver/internal/sdk/models/components/platformagent.go: id: dcdd9a7bc9de last_write_checksum: sha1:b55d4b147d41e3732e54372b8f1fc4c69a6a2426 @@ -10176,14 +10184,18 @@ trackedFiles: id: a1eb3b7148bf last_write_checksum: sha1:094bff06100193f57b6766f2f42139c2e5bcd8b8 pristine_git_object: e577fb7f7b9c911e698ec560181abbe596be0416 + tests/mockserver/internal/sdk/models/components/platformdepartmentfilter.go: + id: 6d13622a8fbc + last_write_checksum: sha1:229510f237e67ef1875d7ebe5673563e08ccc497 + pristine_git_object: 3682e943a8cd8f34449e4ca7e86690c523a01ab3 tests/mockserver/internal/sdk/models/components/platformdepartmentreference.go: id: 70d2b44864b9 last_write_checksum: sha1:162483f7feda149b24edddafa9e898c4863b2338 pristine_git_object: 2ee7e2883b368fbf70a5b8e505c54c4d7db5d98a tests/mockserver/internal/sdk/models/components/platformdocumentchangewebhookevent.go: id: 14cae8b8b46f - last_write_checksum: sha1:eeef00ef9e08df054c9f0b37881495b3ddc400c6 - pristine_git_object: 790da9be746c8ffb31da4ddd45e70435cae25c20 + last_write_checksum: sha1:517567fd985dee9c650d5faec8f0dbd5543d0a6a + pristine_git_object: 3c4a688ac8adabacc66ed8b948361a93388383e9 tests/mockserver/internal/sdk/models/components/platformdurableagentrun.go: id: c5a46edb6f15 last_write_checksum: sha1:458ce005910afe9a31b5d4768d399c7c308ec921 @@ -10222,12 +10234,12 @@ trackedFiles: pristine_git_object: 9118f5da03fce73205733126adb9d11ed3177eff tests/mockserver/internal/sdk/models/components/platformidpgroupfilter.go: id: 8ca4dd0b1c45 - last_write_checksum: sha1:e5f09e4996b67b68f4f04d9437e207b394a17ddb - pristine_git_object: 8e13791a6088ab492927a2961857a669ccd273d7 + last_write_checksum: sha1:16288f7f6d8d7f8d759ce68fa4182b9fb1d25dfe + pristine_git_object: 22ec277cbdfa1deed9186d909e4dcb698e1bfd0a tests/mockserver/internal/sdk/models/components/platformlistadminagentsresponse.go: id: df07b2205bbb - last_write_checksum: sha1:088ec93e30b3f8115bfcf0a4127f1ac4dcc356c2 - pristine_git_object: 76987e776337e8fbecb24e0a61065de47b419c45 + last_write_checksum: sha1:94ac9642fb61703e47a23e53ba2257c904fd5ea4 + pristine_git_object: ea7638e00da18e5ea544c2a533e765b32569104c tests/mockserver/internal/sdk/models/components/platformlistdepartmentsresponse.go: id: adc42a0bfc78 last_write_checksum: sha1:b7be31156fc95c6c352a29d06d4ae56223854d02 @@ -10266,20 +10278,24 @@ trackedFiles: pristine_git_object: a2f9800f6c38ae73cda44bafede4ab6d202cbe0f tests/mockserver/internal/sdk/models/components/platformoauthclient.go: id: d90003ce5781 - last_write_checksum: sha1:9933f27d967975d02d677c5cf2521bbccde3fae5 - pristine_git_object: 119260cce00144de7b582c60da80aa1986a15476 + last_write_checksum: sha1:d51196eb5ecaff56f514ac76c95d80eec11dce01 + pristine_git_object: f630e0b307b21854d6721a870c9fd8e498d4737c tests/mockserver/internal/sdk/models/components/platformoauthclientaigateway.go: id: ba8e78860058 - last_write_checksum: sha1:3fdfd335d966256b5914ac87e4dc2aa1fc978a6a - pristine_git_object: 263cde38d910cb97e9f5149472a3d70fe063ab26 + last_write_checksum: sha1:cc9d10039195c453d6f461c57b7ad5bf378dc7fb + pristine_git_object: cfe90273ada79626576f184d0f526f113542fcf5 tests/mockserver/internal/sdk/models/components/platformoauthclientfilter.go: id: 24de3d9ff0fc - last_write_checksum: sha1:a0d6a9d3d6594134231a09cd20ef7982aaa5b9bf - pristine_git_object: 1c05df1daf2c8f79e11b61ba924fe7a3171fc086 + last_write_checksum: sha1:06fd50b81bde0e951831854cdf8e3681ab18645e + pristine_git_object: f202d5ffcbc34d65628293af76ccc5dc77af5db2 tests/mockserver/internal/sdk/models/components/platformoauthclientregistrationtype.go: id: fb9f75c9b15f last_write_checksum: sha1:d92753223f1d444bc62c8d1dd7cc91486e27fe19 pristine_git_object: 7294d5348b4d18f3de4029ddbaa90d4b0155519c + tests/mockserver/internal/sdk/models/components/platformoauthclientsupportedapp.go: + id: ea36797444f9 + last_write_checksum: sha1:13f27f2fe6e1b8a8f3a6cdb02d2a5f54e81283ca + pristine_git_object: 1bcc8b7c9d1336d1e8ebc295060db4af8b1527df tests/mockserver/internal/sdk/models/components/platformoauthclienttype.go: id: 0056d4234411 last_write_checksum: sha1:040f267a3dfba475ba60bb787bbd5a2678b36d79 @@ -11478,24 +11494,24 @@ trackedFiles: pristine_git_object: d6f74b3f76e41314e5e33934c50f5bd0bda958de tests/mockserver/internal/sdk/models/operations/platformadminagentslist.go: id: 99cbbbd118bb - last_write_checksum: sha1:0021765ac703647f06d61ead73194ba47fe2cee5 - pristine_git_object: d7d5f97207908e499d4b6a4220402b215867e804 + last_write_checksum: sha1:5ea04cede6e995bb2a7d4a11c8333fad544618a4 + pristine_git_object: d2af3528690d6d9a4f56da4a574e0f1f2ab3d0c4 tests/mockserver/internal/sdk/models/operations/platformadminidpgroupsget.go: id: 178f8ae5410c last_write_checksum: sha1:a3b66015947cf559be636885898b2381f19f5c35 pristine_git_object: 9d945ec6a6abac779de8608b3f318633480964c1 tests/mockserver/internal/sdk/models/operations/platformadminidpgroupslist.go: id: 6ada360234cd - last_write_checksum: sha1:3f03f3348213ba0edadeb0eaff7c03975f7711ce - pristine_git_object: 4db8923f3214d7d43f8ac7ec38a42c22c031e5c3 + last_write_checksum: sha1:cf36ba748d9df94e0b5627be07883ccd759b07fc + pristine_git_object: 82eedbfa686e7433ce62ef520112b597344718e2 tests/mockserver/internal/sdk/models/operations/platformadminoauthclientsget.go: id: 3ad0e383f02c last_write_checksum: sha1:8ba65879bd37f42650b891b0bb9d765b653e7b4f pristine_git_object: e9f0b13fe1519f2691ab5f2266723e8af8f77626 tests/mockserver/internal/sdk/models/operations/platformadminoauthclientslist.go: id: b5e6d7f00d94 - last_write_checksum: sha1:7058986e2c6003b127aafd1c598498030f24e736 - pristine_git_object: 97201a835327be816ff7090e2670f294f466c95c + last_write_checksum: sha1:3407b677c64d9344942570a3cfe7dba20e5b7a07 + pristine_git_object: b0aa31512ba23b457ef10261f79d0d097404a759 tests/mockserver/internal/sdk/models/operations/platformagentscancelrun.go: id: 0800b4f494e5 last_write_checksum: sha1:90d511938d50df74af601cab9ebdfda8aee8ecee @@ -11542,8 +11558,8 @@ trackedFiles: pristine_git_object: 2b33e7d4c7bb1ce745c4bfbbb59bcb7857239657 tests/mockserver/internal/sdk/models/operations/platformdepartmentslist.go: id: 6aea7d77d71a - last_write_checksum: sha1:63bb3390658d8e18b7bbd95fc5674383082c491f - pristine_git_object: cbcb58c4717dbabd68bc30064d4b2a0974ae1035 + last_write_checksum: sha1:09a7b9100572f1079b3725995d6988619754d5b6 + pristine_git_object: 172b02684b86a89f982b068acac33e1cd5c747e3 tests/mockserver/internal/sdk/models/operations/platformsearch.go: id: d990791ac101 last_write_checksum: sha1:9da9b49850375b74bf6296fcec336ba9ad1e1eea @@ -12126,8 +12142,8 @@ trackedFiles: pristine_git_object: 6cc8aeec3c52329d389081db0a27f10f53f214b9 tests/test_messages.py: id: be23089b1f8b - last_write_checksum: sha1:a91c985cd1d11560059dc448b10e0c7b75ed60e5 - pristine_git_object: dfdc18641f0d6c38d84b4603ad2da71f75f2e13c + last_write_checksum: sha1:2404e23964ef6a1f5ddc900402b34e597d2d9617 + pristine_git_object: 132005ec7d1e35f805b6a8c28e07e043bce22f0a tests/test_people.py: id: 37c243940039 last_write_checksum: sha1:2b78b1c5ea17f267895188b1b48ff9fe2bc19f17 @@ -12154,8 +12170,8 @@ trackedFiles: pristine_git_object: 1c854370da050c261cb2cbcf9cc16829f5d8e78c tests/test_summarize.py: id: a255d8a6f627 - last_write_checksum: sha1:4f50b660d414adea1d509dfc957eb74a12654ee4 - pristine_git_object: 63b4eb8541c2b110dab6dda746fef9ac074611f1 + last_write_checksum: sha1:927e079ca08e811f8396e062d73d30e74201c7f3 + pristine_git_object: fd2baddb17f4be22555bd1ddf5fd50e82285a042 tests/test_tools.py: id: 70889bdf7321 last_write_checksum: sha1:e9e37efd6a65d805c02d70d548df9c87dd062b0e @@ -13723,7 +13739,7 @@ examples: client_id: "{client_id}" responses: "200": - application/json: {"client": {"client_id": "", "display_name": "Janie_Von32", "registration_type": "STATIC", "grant_types": [], "redirect_uris": [""], "is_active": false}, "request_id": ""} + application/json: {"client": {"client_id": "", "display_name": "Janie_Von32", "registration_type": "STATIC", "grant_types": [], "redirect_uris": [""], "is_enabled": true}, "request_id": ""} "400": application/problem+json: {"type": "https://developers.glean.com/errors/invalid-cursor", "title": "Invalid Pagination Cursor", "status": 400, "detail": "The provided cursor has expired. Start a new search to get a fresh cursor.\n", "code": "invalid_cursor", "documentation_url": "https://developers.glean.com/errors/invalid-cursor", "request_id": "req_7f8a9b0c1d2e", "errors": [{"pointer": "/messages/0/role", "detail": "Must be one of: USER, GLEAN_AI.", "code": "invalid_cursor"}]} "500": @@ -13979,7 +13995,7 @@ generatedTests: platform-admin-idp-groups-get: "2026-10-22T17:49:39Z" platform-departments-get: "2026-10-22T17:49:39Z" platform-users-get: "2026-10-22T17:49:39Z" -releaseNotes: "## Python SDK Changes:\n* `glean.admin.idpgroups.list()`: `response.results[].is_active` **Removed** (Breaking ⚠️)\n* `glean.users.list()`: `response.results[].is_active` **Removed** (Breaking ⚠️)\n* `glean.departments.list()`: \n * `request.filters` **Removed** (Breaking ⚠️)\n * `response.results[].is_active` **Removed** (Breaking ⚠️)\n* `glean.admin.idpgroups.get()`: **Added**\n* `glean.departments.get()`: **Added**\n* `glean.users.get()`: **Added**\n* `glean.admin.usage.get_settings()`: **Removed** (Breaking ⚠️)\n* `glean.admin.usage.update_settings()`: **Removed** (Breaking ⚠️)\n* `glean.chat.update()`: **Added**\n* `glean.admin.oauth.clients.get()`: **Added**\n* `glean.admin.oauth.clients.list()`: **Added**\n* `glean.client.collections.list()`: `request.query` **Added**\n* `glean.client.search.retrieve_feed()`: \n * `request.categories[].enum(discover)` **Added**\n * `response.results[]` **Changed**\n" +releaseNotes: "## Python SDK Changes:\n* `glean.admin.oauth.clients.list()`: `response.results[]` **Changed** (Breaking ⚠️)\n* `glean.admin.oauth.clients.get()`: `response.client` **Changed** (Breaking ⚠️)\n* `glean.admin.agents.list()`: `response.results[]` **Changed** (Breaking ⚠️)\n* `glean.departments.list()`: `request.filters` **Added**\n* `glean.client.agents.run()`: `response.run.messages[].message_tracking_token` **Added**\n* `glean.client.search.retrieve_feed()`: \n * `request.categories[].enum(personal_agent_nux)` **Added**\n * `response.results[]` **Changed**\n" generatedFiles: - .devcontainer/README.md - .devcontainer/devcontainer.json diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index b9d663d6..6cb9a8bb 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -35,7 +35,7 @@ generation: generateNewTests: true skipResponseBodyAssertions: true python: - version: 0.17.18 + version: 0.17.19 additionalDependencies: dev: {} main: {} @@ -87,6 +87,7 @@ python: methodArguments: infer-optional-args methodTimeoutArgument: timeout-ms methodTimeoutUnits: milliseconds + modelSerializationMethods: false moduleName: glean.api_client multipartArrayFormat: standard optionalDependencies: {} @@ -94,6 +95,7 @@ python: packageManager: poetry packageName: glean-api-client preApplyUnionDiscriminators: false + preserveUnknownFields: false pytestFilterWarnings: [] pytestTimeout: 0 rawResponseHelpers: false diff --git a/.speakeasy/glean-merged-spec.yaml b/.speakeasy/glean-merged-spec.yaml index 09e78710..51f15431 100644 --- a/.speakeasy/glean-merged-spec.yaml +++ b/.speakeasy/glean-merged-spec.yaml @@ -2,8 +2,8 @@ openapi: 3.1.0 info: version: "0.9.0" title: Glean API - x-source-commit-sha: a867a686a6645ed82261417da199dab121c93738 - x-open-api-commit-sha: fe88ab139b3676484d0c44cc0b1c5043e8340915 + x-source-commit-sha: 1dd554463247991aa7a52b40626dde560b176099 + x-open-api-commit-sha: bc69c400e1d62e10133b3f20ad9002aa37ddfe49 description: | # Introduction In addition to the data sources that Glean has built-in support for, Glean also provides a REST API that enables customers to put arbitrary content in the search index. This is useful, for example, for doing permissions-aware search over content in internal tools that reside on-prem as well as for searching over applications that Glean does not currently support first class. In addition these APIs allow the customer to push organization data (people info, organization structure etc) into Glean. @@ -2449,7 +2449,7 @@ paths: - OAuth clients summary: List OAuth clients description: | - List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. A client is active when it is enabled. Inactive clients are left out unless an is_active filter includes the value "false". To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. + List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. Disabled clients are left out unless an is_enabled filter includes the value "false". Use filters to find clients by name, client_id, usage_client_id, LLM Gateway access, or supported app. To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. operationId: platform-admin-oauth-clients-list x-glean-scopes: legacy: @@ -2482,7 +2482,7 @@ paths: - in: query name: filters description: | - JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{"field":"is_active","values":["true","false"]}]. + JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{"field":"is_enabled","values":["true","false"]}]. To find the Claude Code clients, send [{"field":"supported_app","values":["CLAUDE_CODE"]}]. required: false content: application/json: @@ -2527,7 +2527,7 @@ paths: - OAuth clients summary: Get an OAuth client description: | - Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_active false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. + Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_enabled false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. operationId: platform-admin-oauth-clients-get x-glean-scopes: legacy: @@ -2575,7 +2575,7 @@ paths: - Departments summary: List departments description: | - List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. + List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. Send a name filter to return only the departments whose display_name contains a value. operationId: platform-departments-list x-glean-scopes: legacy: @@ -2598,11 +2598,34 @@ paths: default: 50 - in: query name: cursor - description: Opaque pagination cursor from a previous response. + description: | + Opaque pagination cursor from a previous response. Send the same filters that the previous request used. required: false schema: type: string minLength: 1 + - in: query + name: filters + description: | + JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + required: false + content: + application/json: + schema: + type: array + minItems: 1 + maxItems: 10 + description: Filters on department fields, combined with AND. + items: + $ref: "#/components/schemas/PlatformDepartmentFilter" + description: One filter on a department field. + examples: + name: + summary: Departments whose display name contains "engineering" + value: + - field: name + values: + - engineering responses: "200": description: Successful response. @@ -2690,7 +2713,7 @@ paths: - IdP Groups summary: List IdP groups description: | - List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{"field":"provider_instance","operator":"EQUALS","values":["okta"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. + List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{"field":"provider_instance","operator":"EQUALS","values":["okta"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Send a provider filter to list only one provider's groups, and a name filter to list only the groups whose display_name contains a value. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. operationId: platform-admin-idp-groups-list x-glean-scopes: legacy: @@ -2723,7 +2746,7 @@ paths: - in: query name: filters description: | - JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as "okta". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. required: false content: application/json: @@ -2735,6 +2758,16 @@ paths: items: $ref: "#/components/schemas/PlatformIdpGroupFilter" description: One filter on an IdP group field. + examples: + provider_and_name: + summary: Okta groups whose display name contains "engineering" + value: + - field: provider + values: + - okta + - field: name + values: + - engineering responses: "200": description: Successful response. @@ -3000,7 +3033,7 @@ paths: - Admin Agents summary: List all agents description: | - List every agent in the workspace, ordered by display_name and then by agent_id. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are inactive and are left out unless an is_active filter includes the value "false". Use the agent_id of an active agent with other Platform APIs, for example as a usage limit target. A deleted agent is not a valid usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. + List every agent in the workspace, ordered by name and then by agent_id. Each agent has the same shape that Get agent returns. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are left out. Use the agent_id with other Platform APIs, for example as a usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. operationId: platform-admin-agents-list x-glean-scopes: legacy: @@ -3033,7 +3066,7 @@ paths: - in: query name: filters description: | - JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{"field":"is_active","values":["true","false"]}]. + JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains "HR", send [{"field":"name","values":["HR"]}]. required: false content: application/json: @@ -12366,16 +12399,33 @@ components: properties: field: type: string - pattern: ^is_active$ - description: The client field to filter on. The only supported field is is_active. + pattern: ^(is_enabled|name|client_id|usage_client_id|has_ai_gateway|supported_app)$ + description: | + The client field to filter on. + - is_enabled: "true" matches enabled clients, and "false" matches disabled + clients. + + - name: matches clients whose display_name contains the value, ignoring + case and surrounding whitespace. Each value is at most 256 characters. + + - client_id: matches the client with this OAuth client_id. + - usage_client_id: matches the client with this ai_gateway.usage_client_id. + - has_ai_gateway: "true" matches clients that can call the Glean LLM + Gateway, which are the clients with ai_gateway. "false" matches the + other clients. + + - supported_app: matches clients whose ai_gateway.supported_apps contains + the value, such as CLAUDE_CODE. The values are the OAuthClientSupportedApp + values. values: type: array minItems: 1 + maxItems: 100 description: The values to match. A client matches when any value matches. items: type: string - pattern: ^(true|false)$ - description: "\"true\" matches active clients. \"false\" matches inactive clients." + minLength: 1 + description: A value to match. Blank values are rejected. operator: allOf: - $ref: "#/components/schemas/PlatformFilterOperator" @@ -12450,17 +12500,37 @@ components: NO_AUTHENTICATION: The client does not authenticate. Public clients use this method. PRIVATE_KEY_JWT: The client signs a JWT with its private key. TLS_CLIENT_AUTH: The client authenticates with a mutual TLS certificate. + PlatformOAuthClientSupportedApp: + type: string + description: An app that an LLM Gateway client is set up for. + enum: + - CLAUDE_CODE + - CODEX + x-enumDescriptions: + CLAUDE_CODE: Claude Code. + CODEX: OpenAI Codex. + x-speakeasy-enum-descriptions: + CLAUDE_CODE: Claude Code. + CODEX: OpenAI Codex. PlatformOAuthClientAiGateway: type: object description: LLM Gateway details of an OAuth client. additionalProperties: false required: - usage_client_id + - supported_apps properties: usage_client_id: type: string description: | The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id. + supported_apps: + type: array + description: | + The apps that the client is set up for, in alphabetical order. Empty when no app is recorded for the client. + items: + $ref: "#/components/schemas/PlatformOAuthClientSupportedApp" + description: An app that the client is set up for. PlatformOAuthClient: type: object description: An OAuth client that an admin created for the workspace. @@ -12471,7 +12541,7 @@ components: - registration_type - grant_types - redirect_uris - - is_active + - is_enabled properties: client_id: type: string @@ -12502,10 +12572,10 @@ components: items: type: string description: A redirect URI. - is_active: + is_enabled: type: boolean description: | - Whether the client is active. A client that an admin disabled is inactive and cannot authenticate. + Whether the client is enabled. A client that an admin disabled cannot authenticate. created_at: type: string format: date-time @@ -12553,6 +12623,36 @@ components: request_id: type: string description: Request identifier for correlating this response. + PlatformDepartmentFilter: + type: object + additionalProperties: false + required: + - field + - values + description: A filter on one department field. + properties: + field: + type: string + pattern: ^name$ + description: | + The department field to filter on. The only supported field is name, which matches departments whose display_name contains the value, ignoring case and surrounding whitespace. Each value is at most 256 characters. To find the department with an exact name, such as a department_name from a usage limit response, filter by the name and compare display_name exactly. + values: + type: array + minItems: 1 + maxItems: 100 + description: The values to match. A department matches when any value matches. + items: + type: string + minLength: 1 + description: A value to match. Blank values are rejected. + operator: + allOf: + - $ref: "#/components/schemas/PlatformFilterOperator" + description: Canonical Platform filter operator. + enum: + - EQUALS + default: EQUALS + description: The only supported operator is EQUALS. Defaults to EQUALS. PlatformDepartmentReference: type: object description: A reference to a department in the Glean directory. @@ -12620,17 +12720,26 @@ components: properties: field: type: string - pattern: ^provider_instance$ + pattern: ^(provider_instance|provider|name)$ description: | - The IdP group field to filter on. The only supported field is provider_instance. + The IdP group field to filter on. + - provider_instance: matches groups from the datasource instance, such as + "okta", ignoring case. + + - provider: matches groups from the identity provider, such as "okta", ignoring + case. + + - name: matches groups whose display_name contains the value, ignoring case and + surrounding whitespace. Each value is at most 256 characters. values: type: array minItems: 1 + maxItems: 100 description: The values to match. An IdP group matches when any value matches. items: type: string minLength: 1 - description: A datasource instance name for provider_instance. + description: A value to match. Empty values, and blank name values, are rejected. operator: allOf: - $ref: "#/components/schemas/PlatformFilterOperator" @@ -12901,16 +13010,18 @@ components: properties: field: type: string - pattern: ^is_active$ - description: The agent field to filter on. The only supported field is is_active. + pattern: ^(name|description)$ + description: | + The agent field to filter on. name matches agents whose name contains the value. description matches agents whose description contains the value. Matching ignores case and surrounding whitespace. Each value is at most 256 characters. values: type: array minItems: 1 + maxItems: 100 description: The values to match. An agent matches when any value matches. items: type: string - pattern: ^(true|false)$ - description: "\"true\" matches active agents. \"false\" matches deleted agents." + minLength: 1 + description: A value to match. Blank values are rejected. operator: allOf: - $ref: "#/components/schemas/PlatformFilterOperator" @@ -12919,25 +13030,6 @@ components: - EQUALS default: EQUALS description: The only supported operator is EQUALS. Defaults to EQUALS. - PlatformAdminAgent: - type: object - description: An agent in the workspace. - additionalProperties: false - required: - - agent_id - - display_name - - is_active - properties: - agent_id: - type: string - description: | - Opaque agent ID. Other Platform APIs, such as usage limits, accept and return this ID. - display_name: - type: string - description: The name that Glean shows for the agent. - is_active: - type: boolean - description: Whether the agent is active. A deleted agent is inactive. PlatformListAdminAgentsResponse: type: object description: One page of agents. @@ -12949,9 +13041,9 @@ components: properties: results: type: array - description: The agents on this page, ordered by display_name and then by agent_id. + description: The agents on this page, ordered by name and then by agent_id. items: - $ref: "#/components/schemas/PlatformAdminAgent" + $ref: "#/components/schemas/PlatformAgent" has_more: type: boolean description: Whether more agents are available after this page. @@ -13182,10 +13274,17 @@ components: pattern: ^DOCUMENT_CHANGE$ content: type: string - description: Email body content when the event is for an email document. + description: Email body content when the event is for an email document, or the message text when the event is for a Slack message. content_truncated: type: boolean description: Present and true when source content exceeded the delivery size limit. + facets: + type: object + description: Facets of a Slack message as the event saw them, keyed as trigger filters key them, for example `from`, `mentions` and `channel`. Person facets carry the person's name. Each key lists up to 50 distinct values. Omitted for other documents and when the event has no facets. + additionalProperties: + type: array + items: + type: string example: version: "1" trigger_id: trigger_test_123 @@ -18809,6 +18908,10 @@ components: - type title: Content description: The content of the message. + messageTrackingToken: + type: string + description: 'An opaque token that represents this particular agent message. Populated only on `GLEAN_AI` messages in responses. To record feedback, pass the token of the message being rated (typically the final `GLEAN_AI` message of the run) as the single entry in `trackingTokens` to `/feedback`, with `category: CHAT`.' + readOnly: true AgentRunCreate: type: object properties: @@ -20715,6 +20818,7 @@ components: - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP - DEMO_CARD + - PERSONAL_AGENT_NUX - RESOLVE_MEETING_CONFLICT - FINDING_MEETING_ROOM - OOO_PLANNER @@ -21209,6 +21313,7 @@ components: - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP - DEMO_CARD + - PERSONAL_AGENT_NUX - RESOLVE_MEETING_CONFLICT - FINDING_MEETING_ROOM - OOO_PLANNER @@ -21313,6 +21418,7 @@ components: - PROJECT_FOCUS_BLOCK - PROJECT_NEXT_STEP - DEMO_CARD + - PERSONAL_AGENT_NUX - RESOLVE_MEETING_CONFLICT - FINDING_MEETING_ROOM - OOO_PLANNER diff --git a/.speakeasy/tests.arazzo.yaml b/.speakeasy/tests.arazzo.yaml index e0f69387..855b39d4 100644 --- a/.speakeasy/tests.arazzo.yaml +++ b/.speakeasy/tests.arazzo.yaml @@ -159696,7 +159696,7 @@ workflows: - condition: $response.header.Content-Type == application/json - context: $response.body condition: | - {"client":{"client_id":"","display_name":"Janie_Von32","registration_type":"STATIC","grant_types":[],"redirect_uris":[""],"is_active":false},"request_id":""} + {"client":{"client_id":"","display_name":"Janie_Von32","registration_type":"STATIC","grant_types":[],"redirect_uris":[""],"is_enabled":true},"request_id":""} type: simple x-speakeasy-test-group: clients x-speakeasy-test-rebuild: true diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index a476cb92..6b61ac90 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.803.1 +speakeasyVersion: 1.805.0 sources: Glean API: sourceNamespace: glean-api-specs - sourceRevisionDigest: sha256:e0d6fab09b60a5caa02a27906e8f29a80d3544ef8a1418c923ebafa06ffc3dee - sourceBlobDigest: sha256:0f2bbe5dc4673e325c8bcbf3bf7343affc5c7a4a3a36f55d1fc4d1dd88de66c7 + sourceRevisionDigest: sha256:5af3490c1cd1cce6179415fa675ca45c35a4356646b62795fbd707c89d630f2e + sourceBlobDigest: sha256:acc732efabf6fc204e5cda2db05c97e5a18630196c0706c3f6de7958beb4a4a8 tags: - latest Glean Client API: @@ -16,10 +16,10 @@ targets: glean: source: Glean API sourceNamespace: glean-api-specs - sourceRevisionDigest: sha256:e0d6fab09b60a5caa02a27906e8f29a80d3544ef8a1418c923ebafa06ffc3dee - sourceBlobDigest: sha256:0f2bbe5dc4673e325c8bcbf3bf7343affc5c7a4a3a36f55d1fc4d1dd88de66c7 + sourceRevisionDigest: sha256:5af3490c1cd1cce6179415fa675ca45c35a4356646b62795fbd707c89d630f2e + sourceBlobDigest: sha256:acc732efabf6fc204e5cda2db05c97e5a18630196c0706c3f6de7958beb4a4a8 codeSamplesNamespace: glean-api-specs-python-code-samples - codeSamplesRevisionDigest: sha256:2c03e1592badb94d5c70fc3678d3becd1c647e74e041d183259a24911a958cb9 + codeSamplesRevisionDigest: sha256:955dbeb4ab1234a624f292cef0ce9dc2e8b4b9454d4cdd3cbe56e2f6dfc990fa workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/README.md b/README.md index 40fb5514..d927ca50 100644 --- a/README.md +++ b/README.md @@ -143,7 +143,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[ @@ -173,7 +173,7 @@ import os async def main(): async with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = await glean.client.chat.create_async(messages=[ @@ -201,7 +201,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[ @@ -231,7 +231,7 @@ import os async def main(): async with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = await glean.client.chat.create_stream_async(messages=[ @@ -269,7 +269,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent") @@ -639,7 +639,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.chat.create_stream(input="Summarize our parental leave policy as JSON.", store=True, text={ @@ -693,7 +693,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.create(file={ @@ -720,7 +720,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent", @@ -740,7 +740,7 @@ import os with Glean( retry_config=RetryConfig("backoff", BackoffStrategy(1, 50, 1.1, 100), False), - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent") @@ -856,7 +856,7 @@ import os with Glean( server_idx=0, instance="instance-name", - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent") @@ -876,7 +876,7 @@ import os with Glean( server_url="https://instance-name-be.glean.com", - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent") @@ -895,7 +895,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.datasources.submit(datasource_instance="", type_="", request_body={ @@ -1018,18 +1018,20 @@ import os def main(): with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: # Rest of application here... + pass # Or when using async: async def amain(): async with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: # Rest of application here... + pass ``` diff --git a/RELEASES.md b/RELEASES.md index a7b17ee7..ace8a388 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1038,4 +1038,14 @@ Based on: ### Generated - [python v0.17.18] . ### Releases -- [PyPI v0.17.18] https://pypi.org/project/glean-api-client/0.17.18 - . \ No newline at end of file +- [PyPI v0.17.18] https://pypi.org/project/glean-api-client/0.17.18 - . + +## 2026-10-31 04:28:01 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.805.0 (2.954.8) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.17.19] . +### Releases +- [PyPI v0.17.19] https://pypi.org/project/glean-api-client/0.17.19 - . \ No newline at end of file diff --git a/USAGE.md b/USAGE.md index 13f153fa..5f789a5a 100644 --- a/USAGE.md +++ b/USAGE.md @@ -6,7 +6,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[ @@ -36,7 +36,7 @@ import os async def main(): async with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = await glean.client.chat.create_async(messages=[ @@ -62,7 +62,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[ @@ -92,7 +92,7 @@ import os async def main(): async with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = await glean.client.chat.create_stream_async(messages=[ diff --git a/docs/models/feedrequestcategory.md b/docs/models/feedrequestcategory.md index ddae3565..d4b9bfb5 100644 --- a/docs/models/feedrequestcategory.md +++ b/docs/models/feedrequestcategory.md @@ -56,6 +56,7 @@ value = FeedRequestCategory.DOCUMENT_SUGGESTION | `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | | `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | | `DEMO_CARD` | DEMO_CARD | +| `PERSONAL_AGENT_NUX` | PERSONAL_AGENT_NUX | | `RESOLVE_MEETING_CONFLICT` | RESOLVE_MEETING_CONFLICT | | `FINDING_MEETING_ROOM` | FINDING_MEETING_ROOM | | `OOO_PLANNER` | OOO_PLANNER | diff --git a/docs/models/feedresultcategory.md b/docs/models/feedresultcategory.md index f072be9a..3080c795 100644 --- a/docs/models/feedresultcategory.md +++ b/docs/models/feedresultcategory.md @@ -60,6 +60,7 @@ value = FeedResultCategory.DOCUMENT_SUGGESTION | `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | | `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | | `DEMO_CARD` | DEMO_CARD | +| `PERSONAL_AGENT_NUX` | PERSONAL_AGENT_NUX | | `RESOLVE_MEETING_CONFLICT` | RESOLVE_MEETING_CONFLICT | | `FINDING_MEETING_ROOM` | FINDING_MEETING_ROOM | | `OOO_PLANNER` | OOO_PLANNER | diff --git a/docs/models/justificationtype.md b/docs/models/justificationtype.md index a7a0915b..0e94d6b0 100644 --- a/docs/models/justificationtype.md +++ b/docs/models/justificationtype.md @@ -73,6 +73,7 @@ value = JustificationType.FREQUENTLY_ACCESSED | `PROJECT_FOCUS_BLOCK` | PROJECT_FOCUS_BLOCK | | `PROJECT_NEXT_STEP` | PROJECT_NEXT_STEP | | `DEMO_CARD` | DEMO_CARD | +| `PERSONAL_AGENT_NUX` | PERSONAL_AGENT_NUX | | `RESOLVE_MEETING_CONFLICT` | RESOLVE_MEETING_CONFLICT | | `FINDING_MEETING_ROOM` | FINDING_MEETING_ROOM | | `OOO_PLANNER` | OOO_PLANNER | diff --git a/docs/models/message.md b/docs/models/message.md index 2bc3e991..19993421 100644 --- a/docs/models/message.md +++ b/docs/models/message.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `role` | *Optional[str]* | :heavy_minus_sign: | The role of the message. | USER | -| `content` | List[[models.MessageTextBlock](../models/messagetextblock.md)] | :heavy_minus_sign: | The content of the message. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `role` | *Optional[str]* | :heavy_minus_sign: | The role of the message. | USER | +| `content` | List[[models.MessageTextBlock](../models/messagetextblock.md)] | :heavy_minus_sign: | The content of the message. | | +| `message_tracking_token` | *Optional[str]* | :heavy_minus_sign: | An opaque token that represents this particular agent message. Populated only on `GLEAN_AI` messages in responses. To record feedback, pass the token of the message being rated (typically the final `GLEAN_AI` message of the run) as the single entry in `trackingTokens` to `/feedback`, with `category: CHAT`. | | \ No newline at end of file diff --git a/docs/models/platformadminagent.md b/docs/models/platformadminagent.md deleted file mode 100644 index dd3ff628..00000000 --- a/docs/models/platformadminagent.md +++ /dev/null @@ -1,12 +0,0 @@ -# PlatformAdminAgent - -An agent in the workspace. - - -## Fields - -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | -| `agent_id` | *str* | :heavy_check_mark: | Opaque agent ID. Other Platform APIs, such as usage limits, accept and return this ID.
| -| `display_name` | *str* | :heavy_check_mark: | The name that Glean shows for the agent. | -| `is_active` | *bool* | :heavy_check_mark: | Whether the agent is active. A deleted agent is inactive. | \ No newline at end of file diff --git a/docs/models/platformadminagentfilter.md b/docs/models/platformadminagentfilter.md index 8c063b2a..9190b322 100644 --- a/docs/models/platformadminagentfilter.md +++ b/docs/models/platformadminagentfilter.md @@ -5,8 +5,8 @@ A filter on one agent field. ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `field` | *str* | :heavy_check_mark: | The agent field to filter on. The only supported field is is_active. | -| `values` | List[*str*] | :heavy_check_mark: | The values to match. An agent matches when any value matches. | -| `operator` | [Optional[models.PlatformAdminAgentFilterOperator]](../models/platformadminagentfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `field` | *str* | :heavy_check_mark: | The agent field to filter on. name matches agents whose name contains the value. description matches agents whose description contains the value. Matching ignores case and surrounding whitespace. Each value is at most 256 characters.
| +| `values` | List[*str*] | :heavy_check_mark: | The values to match. An agent matches when any value matches. | +| `operator` | [Optional[models.PlatformAdminAgentFilterOperator]](../models/platformadminagentfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file diff --git a/docs/models/platformadminagentslistrequest.md b/docs/models/platformadminagentslistrequest.md index 67e78ada..53c5c53b 100644 --- a/docs/models/platformadminagentslistrequest.md +++ b/docs/models/platformadminagentslistrequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of agents to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformAdminAgentFilter](../models/platformadminagentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{"field":"is_active","values":["true","false"]}].
| \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of agents to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformAdminAgentFilter](../models/platformadminagentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains "HR", send [{"field":"name","values":["HR"]}].
| \ No newline at end of file diff --git a/docs/models/platformadminidpgroupslistrequest.md b/docs/models/platformadminidpgroupslistrequest.md index 50a0fc62..a2e7a8a7 100644 --- a/docs/models/platformadminidpgroupslistrequest.md +++ b/docs/models/platformadminidpgroupslistrequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformIdpGroupFilter](../models/platformidpgroupfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as "okta". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together.
| \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformIdpGroupFilter](../models/platformidpgroupfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error.
| \ No newline at end of file diff --git a/docs/models/platformadminoauthclientslistrequest.md b/docs/models/platformadminoauthclientslistrequest.md index c47d4534..1ff91d25 100644 --- a/docs/models/platformadminoauthclientslistrequest.md +++ b/docs/models/platformadminoauthclientslistrequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of clients to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformOAuthClientFilter](../models/platformoauthclientfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{"field":"is_active","values":["true","false"]}].
| \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of clients to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformOAuthClientFilter](../models/platformoauthclientfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{"field":"is_enabled","values":["true","false"]}]. To find the Claude Code clients, send [{"field":"supported_app","values":["CLAUDE_CODE"]}].
| \ No newline at end of file diff --git a/docs/models/platformdepartmentfilter.md b/docs/models/platformdepartmentfilter.md new file mode 100644 index 00000000..58c6dd15 --- /dev/null +++ b/docs/models/platformdepartmentfilter.md @@ -0,0 +1,12 @@ +# PlatformDepartmentFilter + +A filter on one department field. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `field` | *str* | :heavy_check_mark: | The department field to filter on. The only supported field is name, which matches departments whose display_name contains the value, ignoring case and surrounding whitespace. Each value is at most 256 characters. To find the department with an exact name, such as a department_name from a usage limit response, filter by the name and compare display_name exactly.
| +| `values` | List[*str*] | :heavy_check_mark: | The values to match. A department matches when any value matches. | +| `operator` | [Optional[models.PlatformDepartmentFilterOperator]](../models/platformdepartmentfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file diff --git a/docs/models/platformdepartmentfilteroperator.md b/docs/models/platformdepartmentfilteroperator.md new file mode 100644 index 00000000..03b97fb0 --- /dev/null +++ b/docs/models/platformdepartmentfilteroperator.md @@ -0,0 +1,23 @@ +# PlatformDepartmentFilterOperator + +The only supported operator is EQUALS. Defaults to EQUALS. + +## Example Usage + +```python +from glean.api_client.models import PlatformDepartmentFilterOperator + +value = PlatformDepartmentFilterOperator.EQUALS +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `EQUALS` | EQUALS | +| `NOT_EQUALS` | NOT_EQUALS | +| `GT` | GT | +| `GTE` | GTE | +| `LT` | LT | +| `LTE` | LTE | \ No newline at end of file diff --git a/docs/models/platformdepartmentslistrequest.md b/docs/models/platformdepartmentslistrequest.md index da1561a2..08eab4db 100644 --- a/docs/models/platformdepartmentslistrequest.md +++ b/docs/models/platformdepartmentslistrequest.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of departments to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of departments to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformDepartmentFilter](../models/platformdepartmentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error.
| \ No newline at end of file diff --git a/docs/models/platformdocumentchangewebhookevent.md b/docs/models/platformdocumentchangewebhookevent.md index 926494c1..989f70fa 100644 --- a/docs/models/platformdocumentchangewebhookevent.md +++ b/docs/models/platformdocumentchangewebhookevent.md @@ -3,17 +3,18 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `version` | *str* | :heavy_check_mark: | Webhook payload schema version. | | -| `trigger_id` | *str* | :heavy_check_mark: | ID of the Platform trigger that produced the event. | trigger_test_123 | -| `event_type` | *str* | :heavy_check_mark: | N/A | | -| `datasource` | *str* | :heavy_check_mark: | Datasource the event originated from. | GITHUB | -| `reason` | *str* | :heavy_check_mark: | Why the event fired. | REVIEW_REQUESTED | -| `doc_type` | *str* | :heavy_check_mark: | Datasource-specific object type. | pull | -| `doc_id` | *str* | :heavy_check_mark: | Identifier of the document the event is about. | GITHUB_pull_123 | -| `view_url` | *str* | :heavy_check_mark: | Link to the document in its source system. | https://github.com/acme/payments-api/pull/123 | -| `title` | *str* | :heavy_check_mark: | Title of the document, or the subject for email. | Bug: login fails on Safari | -| `event_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available. | | -| `content` | *Optional[str]* | :heavy_minus_sign: | Email body content when the event is for an email document. | | -| `content_truncated` | *Optional[bool]* | :heavy_minus_sign: | Present and true when source content exceeded the delivery size limit. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `version` | *str* | :heavy_check_mark: | Webhook payload schema version. | | +| `trigger_id` | *str* | :heavy_check_mark: | ID of the Platform trigger that produced the event. | trigger_test_123 | +| `event_type` | *str* | :heavy_check_mark: | N/A | | +| `datasource` | *str* | :heavy_check_mark: | Datasource the event originated from. | GITHUB | +| `reason` | *str* | :heavy_check_mark: | Why the event fired. | REVIEW_REQUESTED | +| `doc_type` | *str* | :heavy_check_mark: | Datasource-specific object type. | pull | +| `doc_id` | *str* | :heavy_check_mark: | Identifier of the document the event is about. | GITHUB_pull_123 | +| `view_url` | *str* | :heavy_check_mark: | Link to the document in its source system. | https://github.com/acme/payments-api/pull/123 | +| `title` | *str* | :heavy_check_mark: | Title of the document, or the subject for email. | Bug: login fails on Safari | +| `event_time` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available. | | +| `content` | *Optional[str]* | :heavy_minus_sign: | Email body content when the event is for an email document, or the message text when the event is for a Slack message. | | +| `content_truncated` | *Optional[bool]* | :heavy_minus_sign: | Present and true when source content exceeded the delivery size limit. | | +| `facets` | Dict[str, List[*str*]] | :heavy_minus_sign: | Facets of a Slack message as the event saw them, keyed as trigger filters key them, for example `from`, `mentions` and `channel`. Person facets carry the person's name. Each key lists up to 50 distinct values. Omitted for other documents and when the event has no facets. | | \ No newline at end of file diff --git a/docs/models/platformidpgroupfilter.md b/docs/models/platformidpgroupfilter.md index f42af6ec..7082c97f 100644 --- a/docs/models/platformidpgroupfilter.md +++ b/docs/models/platformidpgroupfilter.md @@ -5,8 +5,8 @@ A filter on one IdP group field. ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `field` | *str* | :heavy_check_mark: | The IdP group field to filter on. The only supported field is provider_instance.
| -| `values` | List[*str*] | :heavy_check_mark: | The values to match. An IdP group matches when any value matches. | -| `operator` | [Optional[models.PlatformIdpGroupFilterOperator]](../models/platformidpgroupfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `field` | *str* | :heavy_check_mark: | The IdP group field to filter on.
- provider_instance: matches groups from the datasource instance, such as
"okta", ignoring case.

- provider: matches groups from the identity provider, such as "okta", ignoring
case.

- name: matches groups whose display_name contains the value, ignoring case and
surrounding whitespace. Each value is at most 256 characters.
| +| `values` | List[*str*] | :heavy_check_mark: | The values to match. An IdP group matches when any value matches. | +| `operator` | [Optional[models.PlatformIdpGroupFilterOperator]](../models/platformidpgroupfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file diff --git a/docs/models/platformlistadminagentsresponse.md b/docs/models/platformlistadminagentsresponse.md index 493b8956..74158e87 100644 --- a/docs/models/platformlistadminagentsresponse.md +++ b/docs/models/platformlistadminagentsresponse.md @@ -7,7 +7,7 @@ One page of agents. | Field | Type | Required | Description | | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------- | -| `results` | List[[models.PlatformAdminAgent](../models/platformadminagent.md)] | :heavy_check_mark: | The agents on this page, ordered by display_name and then by agent_id. | +| `results` | List[[models.PlatformAgent](../models/platformagent.md)] | :heavy_check_mark: | The agents on this page, ordered by name and then by agent_id. | | `has_more` | *bool* | :heavy_check_mark: | Whether more agents are available after this page. | | `next_cursor` | *OptionalNullable[str]* | :heavy_minus_sign: | Opaque cursor for the next page; null or absent when has_more is false. | | `request_id` | *str* | :heavy_check_mark: | Request identifier for correlating this response. | \ No newline at end of file diff --git a/docs/models/platformoauthclient.md b/docs/models/platformoauthclient.md index 62d7532d..8b72efac 100644 --- a/docs/models/platformoauthclient.md +++ b/docs/models/platformoauthclient.md @@ -14,6 +14,6 @@ An OAuth client that an admin created for the workspace. | `grant_types` | List[[models.PlatformOAuthGrantType](../models/platformoauthgranttype.md)] | :heavy_check_mark: | The OAuth grant types that the client can use. | | `token_endpoint_auth_method` | [Optional[models.PlatformOAuthTokenEndpointAuthMethod]](../models/platformoauthtokenendpointauthmethod.md) | :heavy_minus_sign: | How an OAuth client authenticates to the token endpoint. | | `redirect_uris` | List[*str*] | :heavy_check_mark: | The redirect URIs that the client can use. | -| `is_active` | *bool* | :heavy_check_mark: | Whether the client is active. A client that an admin disabled is inactive and cannot authenticate.
| +| `is_enabled` | *bool* | :heavy_check_mark: | Whether the client is enabled. A client that an admin disabled cannot authenticate.
| | `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_minus_sign: | When the client was created. Absent when it is not known. | | `ai_gateway` | [Optional[models.PlatformOAuthClientAiGateway]](../models/platformoauthclientaigateway.md) | :heavy_minus_sign: | LLM Gateway details of an OAuth client. | \ No newline at end of file diff --git a/docs/models/platformoauthclientaigateway.md b/docs/models/platformoauthclientaigateway.md index 88dcbcbf..d0cef82f 100644 --- a/docs/models/platformoauthclientaigateway.md +++ b/docs/models/platformoauthclientaigateway.md @@ -7,4 +7,5 @@ LLM Gateway details of an OAuth client. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `usage_client_id` | *str* | :heavy_check_mark: | The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id.
| \ No newline at end of file +| `usage_client_id` | *str* | :heavy_check_mark: | The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id.
| +| `supported_apps` | List[[models.PlatformOAuthClientSupportedApp](../models/platformoauthclientsupportedapp.md)] | :heavy_check_mark: | The apps that the client is set up for, in alphabetical order. Empty when no app is recorded for the client.
| \ No newline at end of file diff --git a/docs/models/platformoauthclientfilter.md b/docs/models/platformoauthclientfilter.md index 90753cb7..ca5651f2 100644 --- a/docs/models/platformoauthclientfilter.md +++ b/docs/models/platformoauthclientfilter.md @@ -5,8 +5,8 @@ A filter on one OAuth client field. ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `field` | *str* | :heavy_check_mark: | The client field to filter on. The only supported field is is_active. | -| `values` | List[*str*] | :heavy_check_mark: | The values to match. A client matches when any value matches. | -| `operator` | [Optional[models.PlatformOAuthClientFilterOperator]](../models/platformoauthclientfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `field` | *str* | :heavy_check_mark: | The client field to filter on.
- is_enabled: "true" matches enabled clients, and "false" matches disabled
clients.

- name: matches clients whose display_name contains the value, ignoring
case and surrounding whitespace. Each value is at most 256 characters.

- client_id: matches the client with this OAuth client_id.
- usage_client_id: matches the client with this ai_gateway.usage_client_id.
- has_ai_gateway: "true" matches clients that can call the Glean LLM
Gateway, which are the clients with ai_gateway. "false" matches the
other clients.

- supported_app: matches clients whose ai_gateway.supported_apps contains
the value, such as CLAUDE_CODE. The values are the OAuthClientSupportedApp
values.
| +| `values` | List[*str*] | :heavy_check_mark: | The values to match. A client matches when any value matches. | +| `operator` | [Optional[models.PlatformOAuthClientFilterOperator]](../models/platformoauthclientfilteroperator.md) | :heavy_minus_sign: | The only supported operator is EQUALS. Defaults to EQUALS. | \ No newline at end of file diff --git a/docs/models/platformoauthclientsupportedapp.md b/docs/models/platformoauthclientsupportedapp.md new file mode 100644 index 00000000..32b4ba07 --- /dev/null +++ b/docs/models/platformoauthclientsupportedapp.md @@ -0,0 +1,21 @@ +# PlatformOAuthClientSupportedApp + +An app that an LLM Gateway client is set up for. + +## Example Usage + +```python +from glean.api_client.models import PlatformOAuthClientSupportedApp + +value = PlatformOAuthClientSupportedApp.CLAUDE_CODE + +# Open enum: unrecognized values are captured as UnrecognizedStr +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `CLAUDE_CODE` | CLAUDE_CODE | +| `CODEX` | CODEX | \ No newline at end of file diff --git a/docs/sdks/adminagents/README.md b/docs/sdks/adminagents/README.md index 1a1f8216..f4b51cc5 100644 --- a/docs/sdks/adminagents/README.md +++ b/docs/sdks/adminagents/README.md @@ -8,7 +8,7 @@ ## list -List every agent in the workspace, ordered by display_name and then by agent_id. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are inactive and are left out unless an is_active filter includes the value "false". Use the agent_id of an active agent with other Platform APIs, for example as a usage limit target. A deleted agent is not a valid usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. +List every agent in the workspace, ordered by name and then by agent_id. Each agent has the same shape that Get agent returns. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are left out. Use the agent_id with other Platform APIs, for example as a usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. ### Example Usage @@ -20,7 +20,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.admin.agents.list(page_size=50) @@ -32,12 +32,12 @@ with Glean( ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of agents to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformAdminAgentFilter](../../models/platformadminagentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{"field":"is_active","values":["true","false"]}].
| -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of agents to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformAdminAgentFilter](../../models/platformadminagentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains "HR", send [{"field":"name","values":["HR"]}].
| +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response diff --git a/docs/sdks/adminidpgroups/README.md b/docs/sdks/adminidpgroups/README.md index 40a6696e..0574fa56 100644 --- a/docs/sdks/adminidpgroups/README.md +++ b/docs/sdks/adminidpgroups/README.md @@ -9,7 +9,7 @@ ## list -List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{"field":"provider_instance","operator":"EQUALS","values":["okta"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. +List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{"field":"provider_instance","operator":"EQUALS","values":["okta"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Send a provider filter to list only one provider's groups, and a name filter to list only the groups whose display_name contains a value. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. ### Example Usage @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.admin.idpgroups.list(page_size=50) @@ -33,12 +33,12 @@ with Glean( ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformIdpGroupFilter](../../models/platformidpgroupfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as "okta". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together.
| -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformIdpGroupFilter](../../models/platformidpgroupfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error.
| +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response @@ -66,7 +66,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.admin.idpgroups.get(idp_group_id="{idp_group_id}") diff --git a/docs/sdks/agents/README.md b/docs/sdks/agents/README.md index c7d0fedc..a2e5d718 100644 --- a/docs/sdks/agents/README.md +++ b/docs/sdks/agents/README.md @@ -26,7 +26,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.search(name="HR Policy Agent") @@ -69,7 +69,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.get(agent_id="{agent_id}") @@ -112,7 +112,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.get_schemas(agent_id="{agent_id}", include_tools=False) @@ -156,7 +156,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.create_run(agent_id="{agent_id}", messages=[ @@ -215,7 +215,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.get_run(agent_id="{agent_id}", run_id="{run_id}") @@ -259,7 +259,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.cancel_run(agent_id="{agent_id}", run_id="{run_id}") @@ -303,7 +303,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.agents.respond_to_run(agent_id="{agent_id}", run_id="{run_id}", responses=[ diff --git a/docs/sdks/announcements/README.md b/docs/sdks/announcements/README.md index 6ce0ff13..09c63507 100644 --- a/docs/sdks/announcements/README.md +++ b/docs/sdks/announcements/README.md @@ -22,7 +22,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.announcements.create(start_time=parse_datetime("2023-05-01T12:02:10.816Z"), end_time=parse_datetime("2024-03-17T14:19:30.278Z"), title="", body={ @@ -1120,7 +1120,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.announcements.delete(id=458809) @@ -1157,7 +1157,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.announcements.update(start_time=parse_datetime("2023-10-24T01:53:24.440Z"), end_time=parse_datetime("2024-10-30T07:24:12.087Z"), title="", id=210913, body={ diff --git a/docs/sdks/answers/README.md b/docs/sdks/answers/README.md index 1ba6c974..7a32df2a 100644 --- a/docs/sdks/answers/README.md +++ b/docs/sdks/answers/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.answers.create(data={ @@ -112,7 +112,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.answers.delete(id=3, doc_id="ANSWERS_answer_3") @@ -149,7 +149,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.answers.update(id=3, doc_id="ANSWERS_answer_3", question="Why is the sky blue?", body_text="From https://en.wikipedia.org/wiki/Diffuse_sky_radiation, the sky is blue because blue light is more strongly scattered than longer-wavelength light.", audience_filters=[ @@ -244,7 +244,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.answers.retrieve(id=3, doc_id="ANSWERS_answer_3") @@ -288,7 +288,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.answers.list() diff --git a/docs/sdks/chatsdk/README.md b/docs/sdks/chatsdk/README.md index 022f1c28..17bb210c 100644 --- a/docs/sdks/chatsdk/README.md +++ b/docs/sdks/chatsdk/README.md @@ -22,7 +22,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.chat.create(input="Summarize our parental leave policy as JSON.", store=True, text={ @@ -88,7 +88,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.chat.update(chat_id="{chat_id}", name="Quarterly planning notes") @@ -132,7 +132,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.chat.create_stream(input="Summarize our parental leave policy as JSON.", store=True, text={ diff --git a/docs/sdks/clientactivity/README.md b/docs/sdks/clientactivity/README.md index 456e90e3..34d00a05 100644 --- a/docs/sdks/clientactivity/README.md +++ b/docs/sdks/clientactivity/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.activity.report(events=[ @@ -79,7 +79,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.activity.feedback(feedback1={ diff --git a/docs/sdks/clientagents/README.md b/docs/sdks/clientagents/README.md index 4df20f8a..ec148630 100644 --- a/docs/sdks/clientagents/README.md +++ b/docs/sdks/clientagents/README.md @@ -26,7 +26,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.create() @@ -72,7 +72,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.retrieve(agent_id="") @@ -115,7 +115,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.agents.update(agent_id="") @@ -157,7 +157,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.retrieve_schemas(agent_id="") @@ -200,7 +200,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.import_(agent_id="", bundle={ @@ -256,7 +256,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.list(name="HR Policy Agent") @@ -299,7 +299,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.run_stream(agent_id="", messages=[ @@ -350,7 +350,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.agents.run(agent_id="", messages=[ diff --git a/docs/sdks/clientauthentication/README.md b/docs/sdks/clientauthentication/README.md index 7d4827b2..c50cb20e 100644 --- a/docs/sdks/clientauthentication/README.md +++ b/docs/sdks/clientauthentication/README.md @@ -27,7 +27,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.authentication.check_datasource_auth() @@ -71,7 +71,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.authentication.create_token() diff --git a/docs/sdks/clientchat/README.md b/docs/sdks/clientchat/README.md index dae29ba8..457fecd1 100644 --- a/docs/sdks/clientchat/README.md +++ b/docs/sdks/clientchat/README.md @@ -29,7 +29,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[], timeout_millis=30000) @@ -47,7 +47,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[ @@ -73,7 +73,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[ @@ -101,7 +101,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[], timeout_millis=30000) @@ -119,7 +119,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create(messages=[], timeout_millis=30000) @@ -171,7 +171,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.chat.delete_all() @@ -207,7 +207,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.chat.delete(ids=[]) @@ -244,7 +244,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.retrieve(id="") @@ -287,7 +287,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.list() @@ -328,7 +328,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.retrieve_application(id="") @@ -370,7 +370,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.upload_files(files=[]) @@ -412,7 +412,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.retrieve_files(file_ids=[ @@ -456,7 +456,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.chat.delete_files(file_ids=[ @@ -498,7 +498,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.retrieve_file(file_id="") @@ -539,7 +539,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[], timeout_millis=30000) @@ -557,7 +557,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[ @@ -583,7 +583,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[ @@ -611,7 +611,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[], timeout_millis=30000) @@ -629,7 +629,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.chat.create_stream(messages=[], timeout_millis=30000) diff --git a/docs/sdks/clientdatasources/README.md b/docs/sdks/clientdatasources/README.md index 83d845c0..59f4a92b 100644 --- a/docs/sdks/clientdatasources/README.md +++ b/docs/sdks/clientdatasources/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.datasources.retrieve_configuration(datasource_id="o365sharepoint", instance_id="o365sharepoint_abc123") @@ -66,7 +66,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.datasources.update_configuration(datasource_id="o365sharepoint", instance_id="o365sharepoint_abc123", configuration={ @@ -114,7 +114,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.datasources.retrieve_credential_status(datasource_instance_id="o365sharepoint_abc123") @@ -157,7 +157,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.datasources.rotate_credentials(datasource_instance_id="o365sharepoint_abc123", credentials={ diff --git a/docs/sdks/clientdocuments/README.md b/docs/sdks/clientdocuments/README.md index f2fd9a07..fd4c6947 100644 --- a/docs/sdks/clientdocuments/README.md +++ b/docs/sdks/clientdocuments/README.md @@ -22,7 +22,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.documents.retrieve_permissions() @@ -63,7 +63,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.documents.retrieve() @@ -104,7 +104,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.documents.retrieve_by_facets(get_documents_by_facets_request={ @@ -166,7 +166,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.documents.summarize(document_specs=[ diff --git a/docs/sdks/clients/README.md b/docs/sdks/clients/README.md index b0ebf46d..3c679b01 100644 --- a/docs/sdks/clients/README.md +++ b/docs/sdks/clients/README.md @@ -9,7 +9,7 @@ ## list -List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. A client is active when it is enabled. Inactive clients are left out unless an is_active filter includes the value "false". To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. +List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. Disabled clients are left out unless an is_enabled filter includes the value "false". Use filters to find clients by name, client_id, usage_client_id, LLM Gateway access, or supported app. To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. ### Example Usage @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.admin.oauth.clients.list(page_size=50) @@ -33,12 +33,12 @@ with Glean( ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of clients to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| -| `filters` | List[[models.PlatformOAuthClientFilter](../../models/platformoauthclientfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{"field":"is_active","values":["true","false"]}].
| -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of clients to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformOAuthClientFilter](../../models/platformoauthclientfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{"field":"is_enabled","values":["true","false"]}]. To find the Claude Code clients, send [{"field":"supported_app","values":["CLAUDE_CODE"]}].
| +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response @@ -54,7 +54,7 @@ with Glean( ## get -Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_active false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. +Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_enabled false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. ### Example Usage @@ -66,7 +66,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.admin.oauth.clients.get(client_id="{client_id}") diff --git a/docs/sdks/clientsearch/README.md b/docs/sdks/clientsearch/README.md index 2ca2ff68..a8a4bf7e 100644 --- a/docs/sdks/clientsearch/README.md +++ b/docs/sdks/clientsearch/README.md @@ -24,7 +24,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.search.query_as_admin(query="vacation policy", tracking_token="trackingToken", source_document=models.Document( @@ -183,7 +183,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.search.autocomplete(tracking_token="trackingToken", query="what is a que", datasource="GDRIVE", result_size=10, auth_tokens=[ @@ -239,7 +239,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.search.retrieve_feed(timeout_millis=5000) @@ -284,7 +284,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.search.recommendations(source_document=models.Document( @@ -510,7 +510,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.search.query(query="vacation policy", tracking_token="trackingToken", source_document=models.Document( diff --git a/docs/sdks/clientshortcuts/README.md b/docs/sdks/clientshortcuts/README.md index 67222f0a..f9cfc1b4 100644 --- a/docs/sdks/clientshortcuts/README.md +++ b/docs/sdks/clientshortcuts/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.shortcuts.create(data={ @@ -83,7 +83,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.shortcuts.delete(id=975862) @@ -119,7 +119,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.shortcuts.retrieve(get_shortcut_request={ @@ -162,7 +162,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.shortcuts.list(page_size=10, cursor="", filters=[ @@ -222,7 +222,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.shortcuts.update(id=268238, added_roles=[ diff --git a/docs/sdks/clientverification/README.md b/docs/sdks/clientverification/README.md index 63fa8d6c..d321b394 100644 --- a/docs/sdks/clientverification/README.md +++ b/docs/sdks/clientverification/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.verification.add_reminder(document_id="") @@ -65,7 +65,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.verification.list() @@ -106,7 +106,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.verification.verify(document_id="") diff --git a/docs/sdks/collections/README.md b/docs/sdks/collections/README.md index 08b788c0..803ce33a 100644 --- a/docs/sdks/collections/README.md +++ b/docs/sdks/collections/README.md @@ -26,7 +26,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.add_items(collection_id=7742.68) @@ -68,7 +68,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.create(name="", added_roles=[ @@ -150,7 +150,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.collections.delete(ids=[ @@ -192,7 +192,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.delete_item(collection_id=6980.49, item_id="") @@ -235,7 +235,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.update(name="", id=347152, added_roles=[ @@ -317,7 +317,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.update_item(collection_id=142375, item_id="") @@ -362,7 +362,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.retrieve(id=425335) @@ -406,7 +406,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.collections.list() diff --git a/docs/sdks/custommetadata/README.md b/docs/sdks/custommetadata/README.md index adac5170..591db4d2 100644 --- a/docs/sdks/custommetadata/README.md +++ b/docs/sdks/custommetadata/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.custom_metadata.upsert(doc_id="", group_name="", custom_metadata=[]) @@ -68,7 +68,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.custom_metadata.delete(doc_id="", group_name="") @@ -112,7 +112,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.custom_metadata.get_schema(group_name="") @@ -155,7 +155,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.custom_metadata.upsert_schema(group_name="", metadata_keys=[]) @@ -199,7 +199,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.custom_metadata.delete_schema(group_name="") diff --git a/docs/sdks/departments/README.md b/docs/sdks/departments/README.md index 245fe6ee..daa008d7 100644 --- a/docs/sdks/departments/README.md +++ b/docs/sdks/departments/README.md @@ -9,7 +9,7 @@ ## list -List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. +List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. Send a name filter to return only the departments whose display_name contains a value. ### Example Usage @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.departments.list(page_size=50) @@ -33,11 +33,12 @@ with Glean( ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of departments to return. Defaults to 50. Maximum is 100. | -| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `page_size` | *Optional[int]* | :heavy_minus_sign: | Maximum number of departments to return. Defaults to 50. Maximum is 100. | +| `cursor` | *Optional[str]* | :heavy_minus_sign: | Opaque pagination cursor from a previous response. Send the same filters that the previous request used.
| +| `filters` | List[[models.PlatformDepartmentFilter](../../models/platformdepartmentfilter.md)] | :heavy_minus_sign: | JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error.
| +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response @@ -65,7 +66,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.departments.get(department_id="{department_id}") diff --git a/docs/sdks/entities/README.md b/docs/sdks/entities/README.md index a5c95e0e..123e022a 100644 --- a/docs/sdks/entities/README.md +++ b/docs/sdks/entities/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.entities.list(filter_=[ @@ -85,7 +85,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.entities.read_people(fallback_to_authenticated_identity=False, obfuscated_ids=[ @@ -136,7 +136,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.entities.retrieve_person_photo(person_id="") diff --git a/docs/sdks/findings/README.md b/docs/sdks/findings/README.md index a6076d27..36032b33 100644 --- a/docs/sdks/findings/README.md +++ b/docs/sdks/findings/README.md @@ -22,7 +22,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.findings.create() @@ -67,7 +67,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.findings.list() @@ -106,7 +106,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.findings.download(id="") @@ -146,7 +146,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.governance.data.findings.delete(id=741945) diff --git a/docs/sdks/indexingauthentication/README.md b/docs/sdks/indexingauthentication/README.md index 4dd9ebe7..5dc2821b 100644 --- a/docs/sdks/indexingauthentication/README.md +++ b/docs/sdks/indexingauthentication/README.md @@ -19,7 +19,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.authentication.rotate_token() diff --git a/docs/sdks/indexingdatasource/README.md b/docs/sdks/indexingdatasource/README.md index 9e293dca..eb0623b5 100644 --- a/docs/sdks/indexingdatasource/README.md +++ b/docs/sdks/indexingdatasource/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.datasource.status(datasource="") diff --git a/docs/sdks/indexingdatasources/README.md b/docs/sdks/indexingdatasources/README.md index 2cd1df56..3c21aac1 100644 --- a/docs/sdks/indexingdatasources/README.md +++ b/docs/sdks/indexingdatasources/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.datasources.add(name="", datasource_category=models.DatasourceCategory.UNCATEGORIZED, url_regex="https://example-company.datasource.com/.*", quicklinks=[ @@ -91,7 +91,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.datasources.retrieve_config(datasource="") @@ -131,7 +131,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.datasources.submit(datasource_instance="", type_="", request_body={ @@ -150,7 +150,7 @@ with Glean( | Parameter | Type | Required | Description | | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | | `datasource_instance` | *str* | :heavy_check_mark: | Datasource instance that should process the submission | -| `type` | *str* | :heavy_check_mark: | Submission type registered for the datasource | +| `type_` | *str* | :heavy_check_mark: | Submission type registered for the datasource | | `request_body` | Dict[str, *Any*] | :heavy_check_mark: | N/A | | `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | | `server_url` | *Optional[str]* | :heavy_minus_sign: | An optional server URL to use. | diff --git a/docs/sdks/indexingdocuments/README.md b/docs/sdks/indexingdocuments/README.md index b477bb6d..b67bdfe9 100644 --- a/docs/sdks/indexingdocuments/README.md +++ b/docs/sdks/indexingdocuments/README.md @@ -32,7 +32,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.documents.add_or_update(document=models.DocumentDefinition( @@ -70,7 +70,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.documents.index(datasource="", documents=[]) @@ -107,7 +107,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.documents.bulk_index(upload_id="", datasource="", documents=[]) @@ -159,7 +159,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.documents.process_all() @@ -194,7 +194,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.documents.delete(datasource="", object_type="", id="") @@ -235,7 +235,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.debug(datasource="", object_type="Article", doc_id="art123") @@ -280,7 +280,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.debug_many(datasource="", debug_documents=[]) @@ -324,7 +324,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.check_access(datasource="", object_type="", doc_id="", user_email="") @@ -372,7 +372,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.status(datasource="", object_type="", doc_id="") @@ -419,7 +419,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.count(datasource="") @@ -460,7 +460,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.documents.debug_events(datasource="", object_type="Article", doc_id="art123", start_date="2025-05-01", max_events=50) diff --git a/docs/sdks/indexingpermissions/README.md b/docs/sdks/indexingpermissions/README.md index a2231eb1..4090ced2 100644 --- a/docs/sdks/indexingpermissions/README.md +++ b/docs/sdks/indexingpermissions/README.md @@ -30,7 +30,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.update_permissions(datasource="", permissions={}) @@ -69,7 +69,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.index_user(datasource="", user={ @@ -111,7 +111,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.bulk_index_users(upload_id="", datasource="", users=[ @@ -157,7 +157,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.index_group(datasource="", group={ @@ -198,7 +198,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.bulk_index_groups(upload_id="", datasource="", groups=[ @@ -243,7 +243,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.index_membership(datasource="", membership={ @@ -282,7 +282,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.bulk_index_memberships(upload_id="", datasource="", memberships=[ @@ -326,7 +326,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.process_memberships() @@ -363,7 +363,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.delete_user(datasource="", email="Ed.Johnston@gmail.com") @@ -402,7 +402,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.delete_group(datasource="", group_name="") @@ -439,7 +439,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.delete_membership(datasource="", membership={ @@ -478,7 +478,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.permissions.authorize_beta_users(datasource="", emails=[ diff --git a/docs/sdks/indexingshortcuts/README.md b/docs/sdks/indexingshortcuts/README.md index 6d8cda7a..eab15bfe 100644 --- a/docs/sdks/indexingshortcuts/README.md +++ b/docs/sdks/indexingshortcuts/README.md @@ -20,7 +20,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.shortcuts.bulk_index(upload_id="", shortcuts=[ @@ -66,7 +66,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.shortcuts.upload(upload_id="", shortcuts=[ diff --git a/docs/sdks/insights/README.md b/docs/sdks/insights/README.md index 9dbe2045..95b9ecab 100644 --- a/docs/sdks/insights/README.md +++ b/docs/sdks/insights/README.md @@ -19,7 +19,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.insights.retrieve() diff --git a/docs/sdks/messages/README.md b/docs/sdks/messages/README.md index 0aa193b3..754dd663 100644 --- a/docs/sdks/messages/README.md +++ b/docs/sdks/messages/README.md @@ -19,7 +19,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.messages.retrieve(id_type=models.IDType.CONVERSATION_ID, id="", datasource=models.Datasource.GCHAT) diff --git a/docs/sdks/people/README.md b/docs/sdks/people/README.md index 6544cda9..49e64a05 100644 --- a/docs/sdks/people/README.md +++ b/docs/sdks/people/README.md @@ -31,7 +31,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.people.debug(datasource="", email="u1@foo.com") @@ -77,7 +77,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.indexing.people.count(datasource="") @@ -117,7 +117,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.index(employee={ @@ -164,7 +164,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.bulk_index(upload_id="", employees=[ @@ -216,7 +216,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.process_all_employees_and_teams() @@ -250,7 +250,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.delete(employee_email="") @@ -286,7 +286,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.index_team(team={ @@ -336,7 +336,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.delete_team(id="") @@ -371,7 +371,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.indexing.people.bulk_index_teams(upload_id="", teams=[ diff --git a/docs/sdks/pins/README.md b/docs/sdks/pins/README.md index 3a4952c3..992d9ac4 100644 --- a/docs/sdks/pins/README.md +++ b/docs/sdks/pins/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.pins.update(audience_filters=[ @@ -80,7 +80,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.pins.retrieve() @@ -121,7 +121,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.pins.list(request_body={}) @@ -162,7 +162,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.pins.create(audience_filters=[ @@ -219,7 +219,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.client.pins.remove() diff --git a/docs/sdks/policies/README.md b/docs/sdks/policies/README.md index ade2483c..e06a874e 100644 --- a/docs/sdks/policies/README.md +++ b/docs/sdks/policies/README.md @@ -23,7 +23,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.policies.retrieve(id="") @@ -64,7 +64,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.policies.update(id="") @@ -109,7 +109,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.policies.list() @@ -150,7 +150,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.policies.create() @@ -193,7 +193,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.policies.download(id="") diff --git a/docs/sdks/reports/README.md b/docs/sdks/reports/README.md index 5dd26e03..6dae1cb2 100644 --- a/docs/sdks/reports/README.md +++ b/docs/sdks/reports/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.reports.create() @@ -62,7 +62,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.reports.download(id="") @@ -102,7 +102,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.data.reports.status(id="") diff --git a/docs/sdks/search/README.md b/docs/sdks/search/README.md index 43e735ef..816c6349 100644 --- a/docs/sdks/search/README.md +++ b/docs/sdks/search/README.md @@ -22,7 +22,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.search.query(query="quarterly planning 2026", page_size=10, filters=[ @@ -79,7 +79,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.search.list_filters() diff --git a/docs/sdks/skills/README.md b/docs/sdks/skills/README.md index 6c9d5b42..b7dcfee4 100644 --- a/docs/sdks/skills/README.md +++ b/docs/sdks/skills/README.md @@ -34,7 +34,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.create(file={ @@ -80,7 +80,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.list(page_size=20) @@ -124,7 +124,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.import_(source_urls=[ @@ -170,7 +170,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.validate(file={ @@ -216,7 +216,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.preview_source(source_url="https://github.com/anthropics/skills") @@ -260,7 +260,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.update(skill_id="{skill_id}", status=models.PlatformSkillUpdateStatus.ENABLED) @@ -304,7 +304,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.skills.delete(skill_id="{skill_id}") @@ -342,7 +342,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.retrieve(skill_id="{skill_id}") @@ -385,7 +385,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.retrieve_content(skill_id="{skill_id}") @@ -428,7 +428,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.sync(skill_id="{skill_id}") @@ -472,7 +472,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.create_version(skill_id="{skill_id}", file={ @@ -519,7 +519,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.list_versions(skill_id="{skill_id}", page_size=20) @@ -564,7 +564,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.retrieve_version(skill_id="{skill_id}", version=1) @@ -608,7 +608,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.retrieve_version_content(skill_id="{skill_id}", version=1) @@ -652,7 +652,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.skills.preview_source_stream(source_url="https://github.com/anthropics/skills") diff --git a/docs/sdks/tools/README.md b/docs/sdks/tools/README.md index 8a336814..e8694d9a 100644 --- a/docs/sdks/tools/README.md +++ b/docs/sdks/tools/README.md @@ -25,7 +25,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.list() @@ -65,7 +65,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.run(name="", parameters={ @@ -111,7 +111,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.retrieve_action_pack_auth_status(action_pack_id="") @@ -158,7 +158,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.authorize_action_pack(action_pack_id="", return_url="https://merry-allocation.org/") @@ -201,7 +201,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.retrieve_tool_server_auth_status(server_id="") @@ -248,7 +248,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.authorize_tool_server(server_id="", return_url="https://lucky-disadvantage.com") @@ -299,7 +299,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.tools.get_tool_server_tools(server_id="", tool_names=[ diff --git a/docs/sdks/triggers/README.md b/docs/sdks/triggers/README.md index 6b9d92d2..247855ca 100644 --- a/docs/sdks/triggers/README.md +++ b/docs/sdks/triggers/README.md @@ -29,7 +29,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.create(preset_id="GITHUB_1", delivery={ @@ -79,7 +79,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.list(page_size=50) @@ -123,7 +123,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.get(trigger_id="{trigger_id}") @@ -166,7 +166,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.update(trigger_id="{trigger_id}", status=models.PlatformTriggerStatus.ENABLED, description="Reviews I am tagged on, sent to my team's review channel", inputs={ @@ -217,7 +217,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: glean.triggers.delete(trigger_id="{trigger_id}") @@ -255,7 +255,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.search_events(trigger_id="{trigger_id}", page_size=10) @@ -299,7 +299,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.list_presets(page_size=50) @@ -344,7 +344,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.get_preset(preset_id="{preset_id}") @@ -387,7 +387,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.list_preset_input_values(preset_id="{preset_id}", field="{field}") @@ -432,7 +432,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.triggers.search_preset_events(preset_id="{preset_id}", inputs={ diff --git a/docs/sdks/users/README.md b/docs/sdks/users/README.md index 98da7f52..5fd6a2c9 100644 --- a/docs/sdks/users/README.md +++ b/docs/sdks/users/README.md @@ -21,7 +21,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.users.list(page_size=50) @@ -67,7 +67,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.users.get(user_id="{user_id}") diff --git a/docs/sdks/visibilityoverrides/README.md b/docs/sdks/visibilityoverrides/README.md index 049688db..f2e8bcfb 100644 --- a/docs/sdks/visibilityoverrides/README.md +++ b/docs/sdks/visibilityoverrides/README.md @@ -20,7 +20,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.documents.visibilityoverrides.list() @@ -60,7 +60,7 @@ import os with Glean( - api_token=os.getenv("GLEAN_API_TOKEN", ""), + api_token=os.getenv("GLEAN_API_TOKEN"), ) as glean: res = glean.client.governance.documents.visibilityoverrides.create() diff --git a/pyproject.toml b/pyproject.toml index c74b7296..6aa023a9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "glean-api-client" -version = "0.17.18" +version = "0.17.19" description = "Python Client SDK Generated by Speakeasy." authors = [{ name = "Glean Technologies, Inc." },] readme = "README-PYPI.md" diff --git a/src/glean/api_client/_version.py b/src/glean/api_client/_version.py index fa384545..759f31ba 100644 --- a/src/glean/api_client/_version.py +++ b/src/glean/api_client/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "glean-api-client" -__version__: str = "0.17.18" +__version__: str = "0.17.19" __openapi_doc_version__: str = "0.9.0" -__gen_version__: str = "2.950.2" -__user_agent__: str = "speakeasy-sdk/python 0.17.18 2.950.2 0.9.0 glean-api-client" +__gen_version__: str = "2.954.8" +__user_agent__: str = "speakeasy-sdk/python 0.17.19 2.954.8 0.9.0 glean-api-client" try: if __package__ is not None: diff --git a/src/glean/api_client/admin_agents.py b/src/glean/api_client/admin_agents.py index 612c52bf..2b51dabd 100644 --- a/src/glean/api_client/admin_agents.py +++ b/src/glean/api_client/admin_agents.py @@ -28,13 +28,13 @@ def list( ) -> models.PlatformListAdminAgentsResponse: r"""List all agents - List every agent in the workspace, ordered by display_name and then by agent_id. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are inactive and are left out unless an is_active filter includes the value \"false\". Use the agent_id of an active agent with other Platform APIs, for example as a usage limit target. A deleted agent is not a valid usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. + List every agent in the workspace, ordered by name and then by agent_id. Each agent has the same shape that Get agent returns. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are left out. Use the agent_id with other Platform APIs, for example as a usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. :param page_size: Maximum number of agents to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + :param filters: JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains \"HR\", send [{\"field\":\"name\",\"values\":[\"HR\"]}]. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -157,13 +157,13 @@ async def list_async( ) -> models.PlatformListAdminAgentsResponse: r"""List all agents - List every agent in the workspace, ordered by display_name and then by agent_id. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are inactive and are left out unless an is_active filter includes the value \"false\". Use the agent_id of an active agent with other Platform APIs, for example as a usage limit target. A deleted agent is not a valid usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. + List every agent in the workspace, ordered by name and then by agent_id. Each agent has the same shape that Get agent returns. Unlike agent search, the list does not depend on who an agent is shared with, so it includes private and disabled agents. Deleted agents are left out. Use the agent_id with other Platform APIs, for example as a usage limit target. The caller must be able to read all agents, administer agents, or read workspace billing. :param page_size: Maximum number of agents to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + :param filters: JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains \"HR\", send [{\"field\":\"name\",\"values\":[\"HR\"]}]. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method diff --git a/src/glean/api_client/admin_idpgroups.py b/src/glean/api_client/admin_idpgroups.py index 619c63bf..79752d0b 100644 --- a/src/glean/api_client/admin_idpgroups.py +++ b/src/glean/api_client/admin_idpgroups.py @@ -28,13 +28,13 @@ def list( ) -> models.PlatformListIdpGroupsResponse: r"""List IdP groups - List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{\"field\":\"provider_instance\",\"operator\":\"EQUALS\",\"values\":[\"okta\"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. + List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{\"field\":\"provider_instance\",\"operator\":\"EQUALS\",\"values\":[\"okta\"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Send a provider filter to list only one provider's groups, and a name filter to list only the groups whose display_name contains a value. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. :param page_size: Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as \"okta\". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + :param filters: JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -157,13 +157,13 @@ async def list_async( ) -> models.PlatformListIdpGroupsResponse: r"""List IdP groups - List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{\"field\":\"provider_instance\",\"operator\":\"EQUALS\",\"values\":[\"okta\"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. + List the identity provider (IdP) groups that Glean loads from the directory, ordered by display_name and then by idp_group_id. Use idp_group_id to name a group in other Platform APIs, such as the usage limit evaluation and limit increase request APIs. Usage limits apply only to IdP groups from the datasource instance in usage_settings.user_grouping.idp_group_provider_instance of the get usage settings response, and this API always lists that instance's groups. To list only those groups, pass that value in a provider_instance filter of the filters parameter, for example `filters=[{\"field\":\"provider_instance\",\"operator\":\"EQUALS\",\"values\":[\"okta\"]}]`, URL-encoded as `filters=%5B%7B%22field%22%3A%22provider_instance%22%2C%22operator%22%3A%22EQUALS%22%2C%22values%22%3A%5B%22okta%22%5D%7D%5D`. Send a provider filter to list only one provider's groups, and a name filter to list only the groups whose display_name contains a value. Internal O365 ownership groups and SharePoint groups are left out. The caller must be able to read the workspace configuration or the workspace billing. :param page_size: Maximum number of IdP groups to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as \"okta\". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + :param filters: JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method diff --git a/src/glean/api_client/clients.py b/src/glean/api_client/clients.py index 2261caa2..0a77ba5c 100644 --- a/src/glean/api_client/clients.py +++ b/src/glean/api_client/clients.py @@ -28,13 +28,13 @@ def list( ) -> models.PlatformListOAuthClientsResponse: r"""List OAuth clients - List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. A client is active when it is enabled. Inactive clients are left out unless an is_active filter includes the value \"false\". To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. + List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. Disabled clients are left out unless an is_enabled filter includes the value \"false\". Use filters to find clients by name, client_id, usage_client_id, LLM Gateway access, or supported app. To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. :param page_size: Maximum number of clients to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + :param filters: JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{\"field\":\"is_enabled\",\"values\":[\"true\",\"false\"]}]. To find the Claude Code clients, send [{\"field\":\"supported_app\",\"values\":[\"CLAUDE_CODE\"]}]. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -157,13 +157,13 @@ async def list_async( ) -> models.PlatformListOAuthClientsResponse: r"""List OAuth clients - List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. A client is active when it is enabled. Inactive clients are left out unless an is_active filter includes the value \"false\". To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. + List the static OAuth clients that admins created for this workspace, ordered by display_name and then by client_id. Dynamically registered clients and Glean's own clients, such as Glean Desktop, are not listed. Disabled clients are left out unless an is_enabled filter includes the value \"false\". Use filters to find clients by name, client_id, usage_client_id, LLM Gateway access, or supported app. To set a usage limit for a client, send its ai_gateway.usage_client_id, not its client_id, to the usage APIs. The caller needs admin read or billing read permission. :param page_size: Maximum number of clients to return. Defaults to 50. Maximum is 100. :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. - :param filters: JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + :param filters: JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{\"field\":\"is_enabled\",\"values\":[\"true\",\"false\"]}]. To find the Claude Code clients, send [{\"field\":\"supported_app\",\"values\":[\"CLAUDE_CODE\"]}]. :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -279,7 +279,7 @@ def get( ) -> models.PlatformGetOAuthClientResponse: r"""Get an OAuth client - Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_active false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. + Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_enabled false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. :param client_id: The OAuth client_id of the client. @@ -393,7 +393,7 @@ async def get_async( ) -> models.PlatformGetOAuthClientResponse: r"""Get an OAuth client - Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_active false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. + Get one static OAuth client that an admin created for this workspace. A client that an admin disabled is returned with is_enabled false. A deleted client, a dynamically registered client, one of Glean's own clients, such as Glean Desktop, and an unknown client_id all return 404. The path takes the OAuth client_id, not ai_gateway.usage_client_id. The caller needs admin read or billing read permission. :param client_id: The OAuth client_id of the client. diff --git a/src/glean/api_client/departments.py b/src/glean/api_client/departments.py index ec84bc78..f228808c 100644 --- a/src/glean/api_client/departments.py +++ b/src/glean/api_client/departments.py @@ -6,7 +6,7 @@ from glean.api_client.types import OptionalNullable, UNSET from glean.api_client.utils import get_security_from_env from glean.api_client.utils.unmarshal_json_response import unmarshal_json_response -from typing import Any, Mapping, Optional +from typing import Any, Iterable, List, Mapping, Optional, Union class Departments(BaseSDK): @@ -15,6 +15,12 @@ def list( *, page_size: Optional[int] = 50, cursor: Optional[str] = None, + filters: Optional[ + Union[ + Iterable[models.PlatformDepartmentFilter], + Iterable[models.PlatformDepartmentFilterTypedDict], + ] + ] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -22,11 +28,14 @@ def list( ) -> models.PlatformListDepartmentsResponse: r"""List departments - List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. + List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. Send a name filter to return only the departments whose display_name contains a value. :param page_size: Maximum number of departments to return. Defaults to 50. Maximum is 100. - :param cursor: Opaque pagination cursor from a previous response. + :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. + + :param filters: JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -45,6 +54,9 @@ def list( request = models.PlatformDepartmentsListRequest( page_size=page_size, cursor=cursor, + filters=utils.get_pydantic_model( + filters, Optional[List[models.PlatformDepartmentFilter]] + ), ) req = self._build_request( @@ -132,6 +144,12 @@ async def list_async( *, page_size: Optional[int] = 50, cursor: Optional[str] = None, + filters: Optional[ + Union[ + Iterable[models.PlatformDepartmentFilter], + Iterable[models.PlatformDepartmentFilterTypedDict], + ] + ] = None, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -139,11 +157,14 @@ async def list_async( ) -> models.PlatformListDepartmentsResponse: r"""List departments - List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. + List the departments in the Glean directory, ordered by display_name and then by department_id. The list includes every department that at least one user belongs to or that a usage limit names, so a caller can show the name of a department that a usage limit still names after its users leave it. Department names are exact, so names that differ only by case are different departments. Send a name filter to return only the departments whose display_name contains a value. :param page_size: Maximum number of departments to return. Defaults to 50. Maximum is 100. - :param cursor: Opaque pagination cursor from a previous response. + :param cursor: Opaque pagination cursor from a previous response. Send the same filters that the previous request used. + + :param filters: JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -162,6 +183,9 @@ async def list_async( request = models.PlatformDepartmentsListRequest( page_size=page_size, cursor=cursor, + filters=utils.get_pydantic_model( + filters, Optional[List[models.PlatformDepartmentFilter]] + ), ) req = self._build_request_async( diff --git a/src/glean/api_client/indexing_datasources.py b/src/glean/api_client/indexing_datasources.py index cdf0f4db..81ca4683 100644 --- a/src/glean/api_client/indexing_datasources.py +++ b/src/glean/api_client/indexing_datasources.py @@ -598,7 +598,7 @@ def submit( Validates and asynchronously processes a datasource-specific submission. :param datasource_instance: Datasource instance that should process the submission - :param type: Submission type registered for the datasource + :param type_: Submission type registered for the datasource :param request_body: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method @@ -712,7 +712,7 @@ async def submit_async( Validates and asynchronously processes a datasource-specific submission. :param datasource_instance: Datasource instance that should process the submission - :param type: Submission type registered for the datasource + :param type_: Submission type registered for the datasource :param request_body: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method diff --git a/src/glean/api_client/models/__init__.py b/src/glean/api_client/models/__init__.py index 3f9f860b..b8a094af 100644 --- a/src/glean/api_client/models/__init__.py +++ b/src/glean/api_client/models/__init__.py @@ -1472,7 +1472,6 @@ PlatformActionSummary, PlatformActionSummaryTypedDict, ) - from .platformadminagent import PlatformAdminAgent, PlatformAdminAgentTypedDict from .platformadminagentfilter import ( PlatformAdminAgentFilter, PlatformAdminAgentFilterOperator, @@ -1699,6 +1698,11 @@ PlatformDatasourceFilterInfo, PlatformDatasourceFilterInfoTypedDict, ) + from .platformdepartmentfilter import ( + PlatformDepartmentFilter, + PlatformDepartmentFilterOperator, + PlatformDepartmentFilterTypedDict, + ) from .platformdepartmentreference import ( PlatformDepartmentReference, PlatformDepartmentReferenceTypedDict, @@ -1784,6 +1788,7 @@ PlatformOAuthClientFilterTypedDict, ) from .platformoauthclientregistrationtype import PlatformOAuthClientRegistrationType + from .platformoauthclientsupportedapp import PlatformOAuthClientSupportedApp from .platformoauthclienttype import PlatformOAuthClientType from .platformoauthgranttype import PlatformOAuthGrantType from .platformoauthtokenendpointauthmethod import ( @@ -3474,11 +3479,9 @@ "PlacementReason", "PlatformActionSummary", "PlatformActionSummaryTypedDict", - "PlatformAdminAgent", "PlatformAdminAgentFilter", "PlatformAdminAgentFilterOperator", "PlatformAdminAgentFilterTypedDict", - "PlatformAdminAgentTypedDict", "PlatformAdminAgentsListRequest", "PlatformAdminAgentsListRequestTypedDict", "PlatformAdminIdpGroupsGetRequest", @@ -3649,6 +3652,9 @@ "PlatformContentType", "PlatformDatasourceFilterInfo", "PlatformDatasourceFilterInfoTypedDict", + "PlatformDepartmentFilter", + "PlatformDepartmentFilterOperator", + "PlatformDepartmentFilterTypedDict", "PlatformDepartmentReference", "PlatformDepartmentReferenceTypedDict", "PlatformDepartmentsGetRequest", @@ -3703,6 +3709,7 @@ "PlatformOAuthClientFilterOperator", "PlatformOAuthClientFilterTypedDict", "PlatformOAuthClientRegistrationType", + "PlatformOAuthClientSupportedApp", "PlatformOAuthClientType", "PlatformOAuthClientTypedDict", "PlatformOAuthGrantType", @@ -5310,8 +5317,6 @@ "PlatformUsersListRequestTypedDict": ".platform_users_listop", "PlatformActionSummary": ".platformactionsummary", "PlatformActionSummaryTypedDict": ".platformactionsummary", - "PlatformAdminAgent": ".platformadminagent", - "PlatformAdminAgentTypedDict": ".platformadminagent", "PlatformAdminAgentFilter": ".platformadminagentfilter", "PlatformAdminAgentFilterOperator": ".platformadminagentfilter", "PlatformAdminAgentFilterTypedDict": ".platformadminagentfilter", @@ -5447,6 +5452,9 @@ "PlatformContentType": ".platformcontenttype", "PlatformDatasourceFilterInfo": ".platformdatasourcefilterinfo", "PlatformDatasourceFilterInfoTypedDict": ".platformdatasourcefilterinfo", + "PlatformDepartmentFilter": ".platformdepartmentfilter", + "PlatformDepartmentFilterOperator": ".platformdepartmentfilter", + "PlatformDepartmentFilterTypedDict": ".platformdepartmentfilter", "PlatformDepartmentReference": ".platformdepartmentreference", "PlatformDepartmentReferenceTypedDict": ".platformdepartmentreference", "PlatformDocumentChangeWebhookEvent": ".platformdocumentchangewebhookevent", @@ -5498,6 +5506,7 @@ "PlatformOAuthClientFilterOperator": ".platformoauthclientfilter", "PlatformOAuthClientFilterTypedDict": ".platformoauthclientfilter", "PlatformOAuthClientRegistrationType": ".platformoauthclientregistrationtype", + "PlatformOAuthClientSupportedApp": ".platformoauthclientsupportedapp", "PlatformOAuthClientType": ".platformoauthclienttype", "PlatformOAuthGrantType": ".platformoauthgranttype", "PlatformOAuthTokenEndpointAuthMethod": ".platformoauthtokenendpointauthmethod", diff --git a/src/glean/api_client/models/actionpreview.py b/src/glean/api_client/models/actionpreview.py index 8aada545..64f20725 100644 --- a/src/glean/api_client/models/actionpreview.py +++ b/src/glean/api_client/models/actionpreview.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class ActionPreview(BaseModel): r"""Short summary of what this specific tool invocation will do.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["markdown", "description"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/actionsummary.py b/src/glean/api_client/models/actionsummary.py index 399db3e4..32287ced 100644 --- a/src/glean/api_client/models/actionsummary.py +++ b/src/glean/api_client/models/actionsummary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -71,6 +76,9 @@ class ActionSummary(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -81,11 +89,14 @@ def serialize_model(self, handler): "data_source", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/activityevent.py b/src/glean/api_client/models/activityevent.py index 4f6bc8f3..9be3f395 100644 --- a/src/glean/api_client/models/activityevent.py +++ b/src/glean/api_client/models/activityevent.py @@ -4,7 +4,12 @@ from .activityeventparams import ActivityEventParams, ActivityEventParamsTypedDict from datetime import datetime from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -57,13 +62,19 @@ class ActivityEvent(BaseModel): params: Optional[ActivityEventParams] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "params"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/activityeventparams.py b/src/glean/api_client/models/activityeventparams.py index b084d4af..c7542f3b 100644 --- a/src/glean/api_client/models/activityeventparams.py +++ b/src/glean/api_client/models/activityeventparams.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -62,6 +67,9 @@ class ActivityEventParams(BaseModel): r"""Indicates that the parameters are incomplete and more parameters may be sent with the same action+timestamp+URL in the future. This is used for sending the duration when a `VIEW` is finished.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -76,11 +84,14 @@ def serialize_model(self, handler): "truncated", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/addcollectionitemserror.py b/src/glean/api_client/models/addcollectionitemserror.py index 8f738ea3..7081f948 100644 --- a/src/glean/api_client/models/addcollectionitemserror.py +++ b/src/glean/api_client/models/addcollectionitemserror.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -34,13 +39,19 @@ def serialize_error_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["errorType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/addcollectionitemsop.py b/src/glean/api_client/models/addcollectionitemsop.py index 2cd893c6..fdbd6d2b 100644 --- a/src/glean/api_client/models/addcollectionitemsop.py +++ b/src/glean/api_client/models/addcollectionitemsop.py @@ -5,7 +5,12 @@ AddCollectionItemsRequest, AddCollectionItemsRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class AddcollectionitemsRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/addcollectionitemsrequest.py b/src/glean/api_client/models/addcollectionitemsrequest.py index b440c09b..e40617b2 100644 --- a/src/glean/api_client/models/addcollectionitemsrequest.py +++ b/src/glean/api_client/models/addcollectionitemsrequest.py @@ -5,7 +5,12 @@ CollectionItemDescriptor, CollectionItemDescriptorTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -32,13 +37,19 @@ class AddCollectionItemsRequest(BaseModel): r"""The CollectionItemDescriptors of the items being added.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["addedCollectionItemDescriptors"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/addcollectionitemsresponse.py b/src/glean/api_client/models/addcollectionitemsresponse.py index 80294bce..9ac4e3cd 100644 --- a/src/glean/api_client/models/addcollectionitemsresponse.py +++ b/src/glean/api_client/models/addcollectionitemsresponse.py @@ -6,7 +6,12 @@ AddCollectionItemsErrorTypedDict, ) from .collection import Collection, CollectionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -23,13 +28,19 @@ class AddCollectionItemsResponse(BaseModel): error: Optional[AddCollectionItemsError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["collection", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/additionalfielddefinition.py b/src/glean/api_client/models/additionalfielddefinition.py index 75e99935..3db57b2e 100644 --- a/src/glean/api_client/models/additionalfielddefinition.py +++ b/src/glean/api_client/models/additionalfielddefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -66,13 +71,19 @@ class AdditionalFieldDefinition(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["key", "value"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/addverificationreminderop.py b/src/glean/api_client/models/addverificationreminderop.py index b6b9c1a2..02ff7b59 100644 --- a/src/glean/api_client/models/addverificationreminderop.py +++ b/src/glean/api_client/models/addverificationreminderop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .reminderrequest import ReminderRequest, ReminderRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class AddverificationreminderRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/adminsearchop.py b/src/glean/api_client/models/adminsearchop.py index 6578e5e3..4ba04dc6 100644 --- a/src/glean/api_client/models/adminsearchop.py +++ b/src/glean/api_client/models/adminsearchop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .searchrequest import SearchRequest, SearchRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class AdminsearchRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agent.py b/src/glean/api_client/models/agent.py index ce46c088..9c9e9725 100644 --- a/src/glean/api_client/models/agent.py +++ b/src/glean/api_client/models/agent.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import ConfigDict, model_serializer from typing import Any, Dict, Optional @@ -60,13 +65,19 @@ def additional_properties(self, value): self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["ap.io.messages", "ap.io.streaming"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) serialized.pop(k, serialized.pop(n, None)) @@ -117,13 +128,19 @@ class Agent(BaseModel): r"""The agent metadata. Currently not implemented.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentconfig.py b/src/glean/api_client/models/agentconfig.py index 2a7bb3d1..7a720183 100644 --- a/src/glean/api_client/models/agentconfig.py +++ b/src/glean/api_client/models/agentconfig.py @@ -4,7 +4,12 @@ from .toolsets import ToolSets, ToolSetsTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -86,13 +91,19 @@ def serialize_mode(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["agent", "toolSets", "mode", "useImageGeneration"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentrun.py b/src/glean/api_client/models/agentrun.py index 0439dfdf..87c7a50a 100644 --- a/src/glean/api_client/models/agentrun.py +++ b/src/glean/api_client/models/agentrun.py @@ -4,7 +4,12 @@ from .agentexecutionstatus import AgentExecutionStatus from .message import Message, MessageTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -53,13 +58,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["input", "messages", "metadata", "status"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentruncreate.py b/src/glean/api_client/models/agentruncreate.py index c85f04f0..ff05f975 100644 --- a/src/glean/api_client/models/agentruncreate.py +++ b/src/glean/api_client/models/agentruncreate.py @@ -2,7 +2,12 @@ from __future__ import annotations from .message_input import MessageInput, MessageInputTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -37,13 +42,19 @@ class AgentRunCreate(BaseModel): r"""The metadata to pass to the agent.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["input", "messages", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentrunwaitresponse.py b/src/glean/api_client/models/agentrunwaitresponse.py index e09e51eb..a7ee3cf8 100644 --- a/src/glean/api_client/models/agentrunwaitresponse.py +++ b/src/glean/api_client/models/agentrunwaitresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .agentrun import AgentRun, AgentRunTypedDict from .message import Message, MessageTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class AgentRunWaitResponse(BaseModel): r"""The messages returned by the run.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["run", "messages"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentschemas.py b/src/glean/api_client/models/agentschemas.py index f69f3156..7649af14 100644 --- a/src/glean/api_client/models/agentschemas.py +++ b/src/glean/api_client/models/agentschemas.py @@ -2,7 +2,12 @@ from __future__ import annotations from .actionsummary import ActionSummary, ActionSummaryTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -58,13 +63,19 @@ class AgentSchemas(BaseModel): r"""List of tools that the agent can invoke. Only included when include_tools query parameter is set to true.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "tools"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentsinsightsv2request.py b/src/glean/api_client/models/agentsinsightsv2request.py index 13a2eea4..cae6f7c4 100644 --- a/src/glean/api_client/models/agentsinsightsv2request.py +++ b/src/glean/api_client/models/agentsinsightsv2request.py @@ -2,7 +2,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -34,13 +39,19 @@ class AgentsInsightsV2Request(BaseModel): day_range: Annotated[Optional[Period], pydantic.Field(alias="dayRange")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["agentIds", "departments", "managerEmails", "dayRange"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentsinsightsv2response.py b/src/glean/api_client/models/agentsinsightsv2response.py index ae50b9b4..f996de1f 100644 --- a/src/glean/api_client/models/agentsinsightsv2response.py +++ b/src/glean/api_client/models/agentsinsightsv2response.py @@ -13,7 +13,12 @@ from .agentusersinsight import AgentUsersInsight, AgentUsersInsightTypedDict from .labeledcountinfo import LabeledCountInfo, LabeledCountInfoTypedDict from .peragentinsight import PerAgentInsight, PerAgentInsightTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -122,6 +127,9 @@ class AgentsInsightsV2Response(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -144,11 +152,14 @@ def serialize_model(self, handler): "downvotesTimeseries", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentstimesavedinsight.py b/src/glean/api_client/models/agentstimesavedinsight.py index 25a613c6..c247fbbb 100644 --- a/src/glean/api_client/models/agentstimesavedinsight.py +++ b/src/glean/api_client/models/agentstimesavedinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -51,6 +56,9 @@ class AgentsTimeSavedInsight(BaseModel): r"""Total number of users who provided feedback on time saved for this agent over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -63,11 +71,14 @@ def serialize_model(self, handler): "feedbackUserCount", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentsusagebydepartmentinsight.py b/src/glean/api_client/models/agentsusagebydepartmentinsight.py index bcfd9c30..4e7deaac 100644 --- a/src/glean/api_client/models/agentsusagebydepartmentinsight.py +++ b/src/glean/api_client/models/agentsusagebydepartmentinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -56,6 +61,9 @@ class AgentsUsageByDepartmentInsight(BaseModel): r"""Indicates whether the agent has been deleted""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -69,11 +77,14 @@ def serialize_model(self, handler): "isDeleted", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentusecaseinsight.py b/src/glean/api_client/models/agentusecaseinsight.py index 4841a4ed..c100e943 100644 --- a/src/glean/api_client/models/agentusecaseinsight.py +++ b/src/glean/api_client/models/agentusecaseinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -62,6 +67,9 @@ class AgentUseCaseInsight(BaseModel): r"""Indicates whether the top agent has been deleted.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -75,11 +83,14 @@ def serialize_model(self, handler): "topAgentIsDeleted", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/agentusersinsight.py b/src/glean/api_client/models/agentusersinsight.py index 13ed679e..ca751312 100644 --- a/src/glean/api_client/models/agentusersinsight.py +++ b/src/glean/api_client/models/agentusersinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -50,6 +55,9 @@ class AgentUsersInsight(BaseModel): r"""Total number of agent runs for this user over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -61,11 +69,14 @@ def serialize_model(self, handler): "runCount", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/allowlistoptions.py b/src/glean/api_client/models/allowlistoptions.py index 0059b3cd..f10c2618 100644 --- a/src/glean/api_client/models/allowlistoptions.py +++ b/src/glean/api_client/models/allowlistoptions.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class AllowlistOptions(BaseModel): r"""list of regular expressions whose matches are considered whitelisted content""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["terms", "regexes"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/announcement.py b/src/glean/api_client/models/announcement.py index 2e111b78..7c2b1d29 100644 --- a/src/glean/api_client/models/announcement.py +++ b/src/glean/api_client/models/announcement.py @@ -11,7 +11,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -47,13 +52,19 @@ class AnnouncementViewerInfo(BaseModel): r"""Whether the viewer has read the announcement.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isDismissed", "isRead"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -220,6 +231,9 @@ def serialize_post_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -251,11 +265,14 @@ def serialize_model(self, handler): "favoriteInfo", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/anonymousevent.py b/src/glean/api_client/models/anonymousevent.py index 96c2e34b..befdf1f4 100644 --- a/src/glean/api_client/models/anonymousevent.py +++ b/src/glean/api_client/models/anonymousevent.py @@ -4,7 +4,12 @@ from .timeinterval import TimeInterval, TimeIntervalTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -46,13 +51,19 @@ def serialize_event_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["time", "eventType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/answer.py b/src/glean/api_client/models/answer.py index e14d6240..08b98e62 100644 --- a/src/glean/api_client/models/answer.py +++ b/src/glean/api_client/models/answer.py @@ -7,7 +7,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -175,6 +180,9 @@ def serialize_source_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -203,11 +211,14 @@ def serialize_model(self, handler): "sourceDocument", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/answercreationdata.py b/src/glean/api_client/models/answercreationdata.py index 447a1bc7..19d1acab 100644 --- a/src/glean/api_client/models/answercreationdata.py +++ b/src/glean/api_client/models/answercreationdata.py @@ -9,7 +9,12 @@ ) from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -101,6 +106,9 @@ class AnswerCreationData(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -118,11 +126,14 @@ def serialize_model(self, handler): "combinedAnswerText", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/answerlike.py b/src/glean/api_client/models/answerlike.py index abee3d1a..4c53f12f 100644 --- a/src/glean/api_client/models/answerlike.py +++ b/src/glean/api_client/models/answerlike.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -27,13 +32,19 @@ class AnswerLike(BaseModel): r"""The time the user liked the answer in ISO format (ISO 8601).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["user", "createTime"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/answerresult.py b/src/glean/api_client/models/answerresult.py index f0b6ce8a..7b22bdef 100644 --- a/src/glean/api_client/models/answerresult.py +++ b/src/glean/api_client/models/answerresult.py @@ -3,7 +3,12 @@ from __future__ import annotations from .answer import Answer, AnswerTypedDict from .favoriteinfo import FavoriteInfo, FavoriteInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -34,13 +39,19 @@ class AnswerResult(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["trackingToken", "favoriteInfo"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/appresult.py b/src/glean/api_client/models/appresult.py index 2105b7fe..d05b67d1 100644 --- a/src/glean/api_client/models/appresult.py +++ b/src/glean/api_client/models/appresult.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class AppResult(BaseModel): r"""If there is available icon URL.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docType", "mimeType", "iconUrl"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/assistantinsightsresponse.py b/src/glean/api_client/models/assistantinsightsresponse.py index 47e9bf2f..2c60675d 100644 --- a/src/glean/api_client/models/assistantinsightsresponse.py +++ b/src/glean/api_client/models/assistantinsightsresponse.py @@ -6,7 +6,12 @@ PerUserAssistantInsight, PerUserAssistantInsightTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -95,6 +100,9 @@ class AssistantInsightsResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -114,11 +122,14 @@ def serialize_model(self, handler): "downvotesTimeseries", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/authconfig.py b/src/glean/api_client/models/authconfig.py index f085390a..732ae6b1 100644 --- a/src/glean/api_client/models/authconfig.py +++ b/src/glean/api_client/models/authconfig.py @@ -4,7 +4,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -206,6 +211,9 @@ def serialize_auth_header_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -224,11 +232,14 @@ def serialize_model(self, handler): "lastAuthorizedAt", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/authcontext.py b/src/glean/api_client/models/authcontext.py index a184a4fc..635fd072 100644 --- a/src/glean/api_client/models/authcontext.py +++ b/src/glean/api_client/models/authcontext.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -22,13 +27,19 @@ class AuthContext(BaseModel): r"""ID of the MCP server (populated when toolType is MCP).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["serverId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/authtoken.py b/src/glean/api_client/models/authtoken.py index 7551c7f6..bd0ff7c6 100644 --- a/src/glean/api_client/models/authtoken.py +++ b/src/glean/api_client/models/authtoken.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -35,13 +40,19 @@ class AuthToken(BaseModel): r"""Unix timestamp when this token expires (in seconds since epoch UTC).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["scope", "tokenType", "authUser", "expiration"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/autocompleteop.py b/src/glean/api_client/models/autocompleteop.py index 97d2bf4e..53b5f54d 100644 --- a/src/glean/api_client/models/autocompleteop.py +++ b/src/glean/api_client/models/autocompleteop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .autocompleterequest import AutocompleteRequest, AutocompleteRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class AutocompleteRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/autocompleterequest.py b/src/glean/api_client/models/autocompleterequest.py index adfebaa0..80338704 100644 --- a/src/glean/api_client/models/autocompleterequest.py +++ b/src/glean/api_client/models/autocompleterequest.py @@ -4,7 +4,12 @@ from .authtoken import AuthToken, AuthTokenTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -80,6 +85,9 @@ class AutocompleteRequest(BaseModel): r"""Auth tokens which may be used for federated results.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -93,11 +101,14 @@ def serialize_model(self, handler): "authTokens", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/autocompleteresponse.py b/src/glean/api_client/models/autocompleteresponse.py index cca14924..5bfa1e22 100644 --- a/src/glean/api_client/models/autocompleteresponse.py +++ b/src/glean/api_client/models/autocompleteresponse.py @@ -8,7 +8,12 @@ ) from .gleandataerror import GleanDataError, GleanDataErrorTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -59,6 +64,9 @@ class AutocompleteResponse(BaseModel): r"""Time in milliseconds the backend took to respond to the request.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -71,11 +79,14 @@ def serialize_model(self, handler): "backendTimeMillis", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/autocompleteresult.py b/src/glean/api_client/models/autocompleteresult.py index 68854db6..f61a06d0 100644 --- a/src/glean/api_client/models/autocompleteresult.py +++ b/src/glean/api_client/models/autocompleteresult.py @@ -9,7 +9,12 @@ from .ugcaction_union import UgcActionUnion, UgcActionUnionTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -107,6 +112,9 @@ def serialize_result_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -123,11 +131,14 @@ def serialize_model(self, handler): "ranges", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/autocompleteresultgroup.py b/src/glean/api_client/models/autocompleteresultgroup.py index 09788d2b..964bed3b 100644 --- a/src/glean/api_client/models/autocompleteresultgroup.py +++ b/src/glean/api_client/models/autocompleteresultgroup.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class AutocompleteResultGroup(BaseModel): r"""The title of the result group to be displayed. Empty means no title.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["startIndex", "endIndex", "title"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/badge.py b/src/glean/api_client/models/badge.py index d5675152..b63a6cdb 100644 --- a/src/glean/api_client/models/badge.py +++ b/src/glean/api_client/models/badge.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -40,13 +45,19 @@ class Badge(BaseModel): r"""The badge should be shown on the PersonAttribution""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["key", "displayName", "iconConfig", "pinned"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexdocumentsrequest.py b/src/glean/api_client/models/bulkindexdocumentsrequest.py index db14fe54..43ab2f9c 100644 --- a/src/glean/api_client/models/bulkindexdocumentsrequest.py +++ b/src/glean/api_client/models/bulkindexdocumentsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentdefinition import DocumentDefinition, DocumentDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -57,6 +62,9 @@ class BulkIndexDocumentsRequest(BaseModel): r"""True if older documents need to be force deleted after the upload completes. Defaults to older documents being deleted asynchronously. This must only be set when `isLastPage = true`""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -66,11 +74,14 @@ def serialize_model(self, handler): "disableStaleDocumentDeletionCheck", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexemployeesrequest.py b/src/glean/api_client/models/bulkindexemployeesrequest.py index 43014e31..1b16f3ed 100644 --- a/src/glean/api_client/models/bulkindexemployeesrequest.py +++ b/src/glean/api_client/models/bulkindexemployeesrequest.py @@ -5,7 +5,12 @@ EmployeeInfoDefinition, EmployeeInfoDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -55,6 +60,9 @@ class BulkIndexEmployeesRequest(BaseModel): r"""True if older employee data needs to be force deleted after the upload completes. Defaults to older data being deleted only if the percentage of data being deleted is less than 20%. This must only be set when `isLastPage = true`""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -64,11 +72,14 @@ def serialize_model(self, handler): "disableStaleDataDeletionCheck", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexgroupsrequest.py b/src/glean/api_client/models/bulkindexgroupsrequest.py index 99f12d8b..787ee53e 100644 --- a/src/glean/api_client/models/bulkindexgroupsrequest.py +++ b/src/glean/api_client/models/bulkindexgroupsrequest.py @@ -5,7 +5,12 @@ DatasourceGroupDefinition, DatasourceGroupDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -60,6 +65,9 @@ class BulkIndexGroupsRequest(BaseModel): r"""True if older group data needs to be force deleted after the upload completes. Defaults to older data being deleted only if the percentage of data being deleted is less than a reasonable threshold. This must only be set when `isLastPage = true`""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -69,11 +77,14 @@ def serialize_model(self, handler): "disableStaleDataDeletionCheck", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexmembershipsrequest.py b/src/glean/api_client/models/bulkindexmembershipsrequest.py index 81740610..7db3f4c5 100644 --- a/src/glean/api_client/models/bulkindexmembershipsrequest.py +++ b/src/glean/api_client/models/bulkindexmembershipsrequest.py @@ -5,7 +5,12 @@ DatasourceBulkMembershipDefinition, DatasourceBulkMembershipDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -58,15 +63,21 @@ class BulkIndexMembershipsRequest(BaseModel): r"""group who's memberships are specified""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["isFirstPage", "isLastPage", "forceRestartUpload", "group"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexshortcutsrequest.py b/src/glean/api_client/models/bulkindexshortcutsrequest.py index 3aae4c03..3958f0f0 100644 --- a/src/glean/api_client/models/bulkindexshortcutsrequest.py +++ b/src/glean/api_client/models/bulkindexshortcutsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .externalshortcut import ExternalShortcut, ExternalShortcutTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -45,13 +50,19 @@ class BulkIndexShortcutsRequest(BaseModel): r"""Flag to discard previous upload attempts and start from scratch. Must be specified with isFirstPage=true""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isFirstPage", "isLastPage", "forceRestartUpload"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexteamsrequest.py b/src/glean/api_client/models/bulkindexteamsrequest.py index 0fd38bfa..53c0f835 100644 --- a/src/glean/api_client/models/bulkindexteamsrequest.py +++ b/src/glean/api_client/models/bulkindexteamsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .teaminfodefinition import TeamInfoDefinition, TeamInfoDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -45,13 +50,19 @@ class BulkIndexTeamsRequest(BaseModel): r"""Flag to discard previous upload attempts and start from scratch. Must be specified with isFirstPage=true""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isFirstPage", "isLastPage", "forceRestartUpload"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkindexusersrequest.py b/src/glean/api_client/models/bulkindexusersrequest.py index bfbff92f..6b4cb4f2 100644 --- a/src/glean/api_client/models/bulkindexusersrequest.py +++ b/src/glean/api_client/models/bulkindexusersrequest.py @@ -5,7 +5,12 @@ DatasourceUserDefinition, DatasourceUserDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -60,6 +65,9 @@ class BulkIndexUsersRequest(BaseModel): r"""True if older user data needs to be force deleted after the upload completes. Defaults to older data being deleted only if the percentage of data being deleted is less than a reasonable threshold. This must only be set when `isLastPage = true`""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -69,11 +77,14 @@ def serialize_model(self, handler): "disableStaleDataDeletionCheck", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/bulkuploadhistoryevent.py b/src/glean/api_client/models/bulkuploadhistoryevent.py index b1daac94..89cc4688 100644 --- a/src/glean/api_client/models/bulkuploadhistoryevent.py +++ b/src/glean/api_client/models/bulkuploadhistoryevent.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -82,15 +87,21 @@ def serialize_processing_state(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["uploadId", "startTime", "endTime", "status", "processingState"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/calendarattendee.py b/src/glean/api_client/models/calendarattendee.py index bc67f962..11366462 100644 --- a/src/glean/api_client/models/calendarattendee.py +++ b/src/glean/api_client/models/calendarattendee.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -59,15 +64,21 @@ def serialize_response_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["isOrganizer", "isInGroup", "groupAttendees", "responseStatus"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/calendarattendees.py b/src/glean/api_client/models/calendarattendees.py index 40d5ce80..21cb2671 100644 --- a/src/glean/api_client/models/calendarattendees.py +++ b/src/glean/api_client/models/calendarattendees.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -53,6 +58,9 @@ class CalendarAttendees(BaseModel): r"""Total number of attendees who have responded tentatively (i.e. responded maybe) to this event.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -65,11 +73,14 @@ def serialize_model(self, handler): "numTentative", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/calendarevent.py b/src/glean/api_client/models/calendarevent.py index 212954dc..62f9b3f4 100644 --- a/src/glean/api_client/models/calendarevent.py +++ b/src/glean/api_client/models/calendarevent.py @@ -15,6 +15,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) import pydantic from pydantic import field_serializer, model_serializer @@ -141,6 +143,9 @@ def serialize_room_booking_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -161,11 +166,14 @@ def serialize_model(self, handler): ] ) nullable_fields = set(["isOrganizer"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/canonicalizingregextype.py b/src/glean/api_client/models/canonicalizingregextype.py index 33218a64..7f2753ff 100644 --- a/src/glean/api_client/models/canonicalizingregextype.py +++ b/src/glean/api_client/models/canonicalizingregextype.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -27,13 +32,19 @@ class CanonicalizingRegexType(BaseModel): r"""Regular expression to transform into a canonical string.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["matchRegex", "rewriteRegex"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/channelinviteinfo.py b/src/glean/api_client/models/channelinviteinfo.py index a97c2ccd..37128afd 100644 --- a/src/glean/api_client/models/channelinviteinfo.py +++ b/src/glean/api_client/models/channelinviteinfo.py @@ -4,7 +4,12 @@ from .communicationchannel import CommunicationChannel from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING @@ -59,15 +64,21 @@ def serialize_channel(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["channel", "isAutoInvite", "inviter", "inviteTime", "reminderTime"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chat.py b/src/glean/api_client/models/chat.py index 2c89193d..cb080996 100644 --- a/src/glean/api_client/models/chat.py +++ b/src/glean/api_client/models/chat.py @@ -6,7 +6,12 @@ from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict from .person import Person, PersonTypedDict from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -77,6 +82,9 @@ class Chat(BaseModel): r"""A list of roles for this Chat.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -93,11 +101,14 @@ def serialize_model(self, handler): "roles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatcitationannotation.py b/src/glean/api_client/models/chatcitationannotation.py index 176c5d75..11364eb2 100644 --- a/src/glean/api_client/models/chatcitationannotation.py +++ b/src/glean/api_client/models/chatcitationannotation.py @@ -10,6 +10,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -40,14 +42,20 @@ class ChatCitationAnnotation(BaseModel): snippets: OptionalNullable[List[ChatCitationSnippet]] = UNSET @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["start_index", "end_index", "snippets"]) nullable_fields = set(["start_index", "end_index", "snippets"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/chatcitationsnippet.py b/src/glean/api_client/models/chatcitationsnippet.py index 16364ab5..343cc245 100644 --- a/src/glean/api_client/models/chatcitationsnippet.py +++ b/src/glean/api_client/models/chatcitationsnippet.py @@ -7,6 +7,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing_extensions import NotRequired, TypedDict @@ -23,14 +25,20 @@ class ChatCitationSnippet(BaseModel): page_number: OptionalNullable[int] = UNSET @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_number"]) nullable_fields = set(["page_number"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/chatcustomentitysource.py b/src/glean/api_client/models/chatcustomentitysource.py index bfb2f915..9b651f1f 100644 --- a/src/glean/api_client/models/chatcustomentitysource.py +++ b/src/glean/api_client/models/chatcustomentitysource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class ChatCustomEntitySource(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "title", "url", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatdocumentsource.py b/src/glean/api_client/models/chatdocumentsource.py index 513c3ec8..ced5a603 100644 --- a/src/glean/api_client/models/chatdocumentsource.py +++ b/src/glean/api_client/models/chatdocumentsource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional, Union from typing_extensions import NotRequired, TypeAliasType, TypedDict @@ -32,13 +37,19 @@ class ChatDocumentSourceDocument2(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["document_id", "title", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -72,13 +83,19 @@ class ChatDocumentSourceDocument1(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["url", "title", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatfile.py b/src/glean/api_client/models/chatfile.py index cf7a5a7a..133e9528 100644 --- a/src/glean/api_client/models/chatfile.py +++ b/src/glean/api_client/models/chatfile.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatfilemetadata import ChatFileMetadata, ChatFileMetadataTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -37,13 +42,19 @@ class ChatFile(BaseModel): r"""Metadata of a file uploaded by a user for Chat.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "url", "name", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatfilemetadata.py b/src/glean/api_client/models/chatfilemetadata.py index b4cb6dc4..7ede8dd9 100644 --- a/src/glean/api_client/models/chatfilemetadata.py +++ b/src/glean/api_client/models/chatfilemetadata.py @@ -4,7 +4,12 @@ from .chatfilefailurereason import ChatFileFailureReason from .chatfilestatus import ChatFileStatus from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -67,15 +72,21 @@ def serialize_failure_reason(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["status", "uploadTime", "processedSize", "failureReason", "mimeType"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatfilesource.py b/src/glean/api_client/models/chatfilesource.py index 7cfc1f8f..5c34d84e 100644 --- a/src/glean/api_client/models/chatfilesource.py +++ b/src/glean/api_client/models/chatfilesource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -32,13 +37,19 @@ class ChatFileSource(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["title", "url", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatmessage.py b/src/glean/api_client/models/chatmessage.py index 811cb243..e4a6a065 100644 --- a/src/glean/api_client/models/chatmessage.py +++ b/src/glean/api_client/models/chatmessage.py @@ -6,7 +6,12 @@ from .chatmessagefragment import ChatMessageFragment, ChatMessageFragmentTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -147,6 +152,9 @@ def serialize_message_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -162,11 +170,14 @@ def serialize_model(self, handler): "hasMoreFragments", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatmessagecitation.py b/src/glean/api_client/models/chatmessagecitation.py index 15fd3786..b7ee2193 100644 --- a/src/glean/api_client/models/chatmessagecitation.py +++ b/src/glean/api_client/models/chatmessagecitation.py @@ -7,7 +7,12 @@ from .document import Document, DocumentTypedDict from .person import Person, PersonTypedDict from .referencerange import ReferenceRange, ReferenceRangeTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -66,6 +71,9 @@ class ChatMessageCitation(BaseModel): r"""Each reference range and its corresponding snippets""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -78,11 +86,14 @@ def serialize_model(self, handler): "referenceRanges", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatmessagefragment.py b/src/glean/api_client/models/chatmessagefragment.py index 844224bb..34f9e4f8 100644 --- a/src/glean/api_client/models/chatmessagefragment.py +++ b/src/glean/api_client/models/chatmessagefragment.py @@ -8,7 +8,12 @@ from .servertoolresponse import ServerToolResponse, ServerToolResponseTypedDict from .structuredresult import StructuredResult, StructuredResultTypedDict from .toolinfo import ToolInfo, ToolInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -105,6 +110,9 @@ class ChatMessageFragment(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -119,11 +127,14 @@ def serialize_model(self, handler): "serverToolResponse", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatmetadata.py b/src/glean/api_client/models/chatmetadata.py index 81530650..d684c1d8 100644 --- a/src/glean/api_client/models/chatmetadata.py +++ b/src/glean/api_client/models/chatmetadata.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -63,6 +68,9 @@ class ChatMetadata(BaseModel): r"""Defines how to render an icon""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -76,11 +84,14 @@ def serialize_model(self, handler): "icon", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatmetadataresult.py b/src/glean/api_client/models/chatmetadataresult.py index 53e0ef97..b76965e8 100644 --- a/src/glean/api_client/models/chatmetadataresult.py +++ b/src/glean/api_client/models/chatmetadataresult.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatmetadata import ChatMetadata, ChatMetadataTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class ChatMetadataResult(BaseModel): r"""An opaque token that represents this particular Chat. To be used for `/feedback` reporting.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["chat", "trackingToken"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatop.py b/src/glean/api_client/models/chatop.py index d14b8817..065f54c0 100644 --- a/src/glean/api_client/models/chatop.py +++ b/src/glean/api_client/models/chatop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatrequest import ChatRequest, ChatRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -40,13 +45,19 @@ class ChatRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatpersonsource.py b/src/glean/api_client/models/chatpersonsource.py index f6f643e8..037391bc 100644 --- a/src/glean/api_client/models/chatpersonsource.py +++ b/src/glean/api_client/models/chatpersonsource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -29,13 +34,19 @@ class ChatPersonSource(BaseModel): url: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatrequest.py b/src/glean/api_client/models/chatrequest.py index ca0d3695..5ff812dd 100644 --- a/src/glean/api_client/models/chatrequest.py +++ b/src/glean/api_client/models/chatrequest.py @@ -8,7 +8,12 @@ ChatRestrictionFiltersTypedDict, ) from .sessioninfo import SessionInfo, SessionInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -81,6 +86,9 @@ class ChatRequest(BaseModel): r"""If set, response lines will be streamed one-by-one as they become available. Each will be a ChatResponse, formatted as JSON, and separated by a new line. If false, the entire response will be returned at once. Note that if this is set and the model being used does not support streaming, the model's response will not be streamed, but other messages from the endpoint still will be.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -96,11 +104,14 @@ def serialize_model(self, handler): "stream", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatresponse.py b/src/glean/api_client/models/chatresponse.py index aa3afabf..088bbf2a 100644 --- a/src/glean/api_client/models/chatresponse.py +++ b/src/glean/api_client/models/chatresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .chatmessage import ChatMessage, ChatMessageTypedDict from .chatmetadata import ChatMetadata, ChatMetadataTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -53,6 +58,9 @@ class ChatResponse(BaseModel): r"""A token that is used to track the session.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -64,11 +72,14 @@ def serialize_model(self, handler): "chatSessionTrackingToken", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatrestrictionfilters.py b/src/glean/api_client/models/chatrestrictionfilters.py index 51db943b..a9e361bd 100644 --- a/src/glean/api_client/models/chatrestrictionfilters.py +++ b/src/glean/api_client/models/chatrestrictionfilters.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentspec_union import DocumentSpecUnion, DocumentSpecUnionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -31,15 +36,21 @@ class ChatRestrictionFilters(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["containerSpecs", "documentSpecs", "datasourceInstances"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatresult.py b/src/glean/api_client/models/chatresult.py index 8058b2bb..9b21a76e 100644 --- a/src/glean/api_client/models/chatresult.py +++ b/src/glean/api_client/models/chatresult.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chat import Chat, ChatTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class ChatResult(BaseModel): r"""An opaque token that represents this particular Chat. To be used for `/feedback` reporting.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["chat", "trackingToken"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatskill.py b/src/glean/api_client/models/chatskill.py index b6327b42..afc7891b 100644 --- a/src/glean/api_client/models/chatskill.py +++ b/src/glean/api_client/models/chatskill.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -31,13 +36,19 @@ class ChatSkill(BaseModel): r"""URL for viewing the skill.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatstreamop.py b/src/glean/api_client/models/chatstreamop.py index 6ce3ce9b..a58c08ec 100644 --- a/src/glean/api_client/models/chatstreamop.py +++ b/src/glean/api_client/models/chatstreamop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatrequest import ChatRequest, ChatRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -32,13 +37,19 @@ class ChatStreamRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatsuggestion.py b/src/glean/api_client/models/chatsuggestion.py index 95b2928c..88282009 100644 --- a/src/glean/api_client/models/chatsuggestion.py +++ b/src/glean/api_client/models/chatsuggestion.py @@ -3,7 +3,12 @@ from __future__ import annotations from .artifacttype import ArtifactType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -53,15 +58,21 @@ def serialize_artifact_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["query", "cta", "feature", "artifactType", "sourceDocumentIds"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/chatzerostatesuggestionoptions.py b/src/glean/api_client/models/chatzerostatesuggestionoptions.py index 75527af1..315b2ce2 100644 --- a/src/glean/api_client/models/chatzerostatesuggestionoptions.py +++ b/src/glean/api_client/models/chatzerostatesuggestionoptions.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -20,13 +25,19 @@ class ChatZeroStateSuggestionOptions(BaseModel): r"""The Chat Application ID this feed request should be scoped to. Empty means there is no Chat Application ID..""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["applicationId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/checkdocumentaccessresponse.py b/src/glean/api_client/models/checkdocumentaccessresponse.py index 373b9388..e4964c2a 100644 --- a/src/glean/api_client/models/checkdocumentaccessresponse.py +++ b/src/glean/api_client/models/checkdocumentaccessresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -22,13 +27,19 @@ class CheckDocumentAccessResponse(BaseModel): r"""If true, user has access to document for search""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["hasAccess"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/clustergroup.py b/src/glean/api_client/models/clustergroup.py index 9805a2fa..e712f5b9 100644 --- a/src/glean/api_client/models/clustergroup.py +++ b/src/glean/api_client/models/clustergroup.py @@ -3,7 +3,12 @@ from __future__ import annotations from .clustertypeenum import ClusterTypeEnum from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -46,13 +51,19 @@ def serialize_cluster_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["clusteredResults", "clusterType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/code.py b/src/glean/api_client/models/code.py index 140e792f..9e609b44 100644 --- a/src/glean/api_client/models/code.py +++ b/src/glean/api_client/models/code.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -33,15 +38,21 @@ class Code(BaseModel): r"""Last file match for a repo""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["repoName", "fileName", "fileUrl", "lines", "isLastMatch"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/codeline.py b/src/glean/api_client/models/codeline.py index 70e471cc..1e5ebb30 100644 --- a/src/glean/api_client/models/codeline.py +++ b/src/glean/api_client/models/codeline.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -27,13 +32,19 @@ class CodeLine(BaseModel): r"""Index ranges depicting matched sections of the line""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["lineNumber", "content", "ranges"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/collection.py b/src/glean/api_client/models/collection.py index 6bb4995e..c5adc9dd 100644 --- a/src/glean/api_client/models/collection.py +++ b/src/glean/api_client/models/collection.py @@ -10,7 +10,12 @@ from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict from .thumbnail import Thumbnail, ThumbnailTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -157,6 +162,9 @@ class Collection(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -184,11 +192,14 @@ def serialize_model(self, handler): "favoriteInfo", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/collectionitem.py b/src/glean/api_client/models/collectionitem.py index 0cbe6492..7de678f2 100644 --- a/src/glean/api_client/models/collectionitem.py +++ b/src/glean/api_client/models/collectionitem.py @@ -4,7 +4,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING @@ -93,6 +98,9 @@ def serialize_item_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -109,11 +117,14 @@ def serialize_model(self, handler): "collection", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/collectionitemdescriptor.py b/src/glean/api_client/models/collectionitemdescriptor.py index 6642f487..c35a23b4 100644 --- a/src/glean/api_client/models/collectionitemdescriptor.py +++ b/src/glean/api_client/models/collectionitemdescriptor.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -57,6 +62,9 @@ class CollectionItemDescriptor(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -69,11 +77,14 @@ def serialize_model(self, handler): "itemType", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/collectionpinnedmetadata.py b/src/glean/api_client/models/collectionpinnedmetadata.py index 2e54e6a4..639dac14 100644 --- a/src/glean/api_client/models/collectionpinnedmetadata.py +++ b/src/glean/api_client/models/collectionpinnedmetadata.py @@ -3,7 +3,12 @@ from __future__ import annotations from .collectionpinmetadata import CollectionPinMetadata, CollectionPinMetadataTypedDict from .collectionpintarget import CollectionPinTarget, CollectionPinTargetTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -29,13 +34,19 @@ class CollectionPinnedMetadata(BaseModel): r"""List of targets this Collection can be pinned to, excluding the targets this Collection is already pinned to. We also include Collection ID already is pinned to each eligible target, which will be 0 if the target has no pinned Collection.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["existingPins", "eligiblePins"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/collectionpintarget.py b/src/glean/api_client/models/collectionpintarget.py index cd3f16f2..db0299be 100644 --- a/src/glean/api_client/models/collectionpintarget.py +++ b/src/glean/api_client/models/collectionpintarget.py @@ -4,7 +4,12 @@ from .collectionpinnablecategories import CollectionPinnableCategories from .collectionpinnabletargets import CollectionPinnableTargets from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -48,13 +53,19 @@ def serialize_target(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["value", "target"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/commentdefinition.py b/src/glean/api_client/models/commentdefinition.py index 121b9722..4f756eb8 100644 --- a/src/glean/api_client/models/commentdefinition.py +++ b/src/glean/api_client/models/commentdefinition.py @@ -6,7 +6,12 @@ UserReferenceDefinition, UserReferenceDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -54,15 +59,21 @@ class CommentDefinition(BaseModel): r"""Describes how a user is referenced in a document. The user can be referenced by email or by a datasource specific id.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["author", "content", "createdAt", "updatedAt", "updatedBy"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/company.py b/src/glean/api_client/models/company.py index acd9da9d..88577d5d 100644 --- a/src/glean/api_client/models/company.py +++ b/src/glean/api_client/models/company.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import date -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -85,6 +90,9 @@ class Company(BaseModel): r"""User facing description of company.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -102,11 +110,14 @@ def serialize_model(self, handler): "about", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/conferencedata.py b/src/glean/api_client/models/conferencedata.py index a9f6b4b4..4fa816c2 100644 --- a/src/glean/api_client/models/conferencedata.py +++ b/src/glean/api_client/models/conferencedata.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -54,13 +59,19 @@ def serialize_source(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["source"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/configurationvalue.py b/src/glean/api_client/models/configurationvalue.py index c7458c5d..dfc97bcc 100644 --- a/src/glean/api_client/models/configurationvalue.py +++ b/src/glean/api_client/models/configurationvalue.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -27,13 +32,19 @@ class ConfigurationValue(BaseModel): r"""The configuration value as a list of strings. Only one of value or valueList should be populated.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["value", "valueList"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/contentdefinition.py b/src/glean/api_client/models/contentdefinition.py index 03e7f7a2..5dfe7247 100644 --- a/src/glean/api_client/models/contentdefinition.py +++ b/src/glean/api_client/models/contentdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class ContentDefinition(BaseModel): r"""base64 encoded binary content. Only one of textContent or binary content can be specified""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["textContent", "binaryContent"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/countinfo.py b/src/glean/api_client/models/countinfo.py index 83d1aa3b..3b06b4e5 100644 --- a/src/glean/api_client/models/countinfo.py +++ b/src/glean/api_client/models/countinfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class CountInfo(BaseModel): r"""The unit of organization over which we did the count aggregation, e.g. org (department) or company""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["period", "org"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createagentop.py b/src/glean/api_client/models/createagentop.py index 4ed4192d..104072fe 100644 --- a/src/glean/api_client/models/createagentop.py +++ b/src/glean/api_client/models/createagentop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .createworkflowrequest import CreateWorkflowRequest, CreateWorkflowRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class CreateAgentRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createannouncementop.py b/src/glean/api_client/models/createannouncementop.py index f07a4fec..ee68d472 100644 --- a/src/glean/api_client/models/createannouncementop.py +++ b/src/glean/api_client/models/createannouncementop.py @@ -5,7 +5,12 @@ CreateAnnouncementRequest, CreateAnnouncementRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class CreateannouncementRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createannouncementrequest.py b/src/glean/api_client/models/createannouncementrequest.py index b7cbb6c5..98b1032b 100644 --- a/src/glean/api_client/models/createannouncementrequest.py +++ b/src/glean/api_client/models/createannouncementrequest.py @@ -6,7 +6,12 @@ from .thumbnail import Thumbnail, ThumbnailTypedDict from datetime import datetime from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -106,6 +111,9 @@ class CreateAnnouncementRequest(BaseModel): r"""URL for viewing the announcement. It will be set to document URL for announcements from other datasources e.g. simpplr. Can only be written when channel=\"SOCIAL_FEED\".""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -122,11 +130,14 @@ def serialize_model(self, handler): "viewUrl", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createanswerop.py b/src/glean/api_client/models/createanswerop.py index 6e7cc763..37b1161e 100644 --- a/src/glean/api_client/models/createanswerop.py +++ b/src/glean/api_client/models/createanswerop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .createanswerrequest import CreateAnswerRequest, CreateAnswerRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class CreateanswerRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createcollectionop.py b/src/glean/api_client/models/createcollectionop.py index 3b504b1b..c4398c6d 100644 --- a/src/glean/api_client/models/createcollectionop.py +++ b/src/glean/api_client/models/createcollectionop.py @@ -7,7 +7,12 @@ CreateCollectionRequest, CreateCollectionRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional, Union @@ -35,13 +40,19 @@ class CreatecollectionRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -62,13 +73,19 @@ class ResponseBody2(BaseModel): collection: Optional[Collection] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["collection"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -89,13 +106,19 @@ class ResponseBody1(BaseModel): error: Optional[CollectionError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createcollectionrequest.py b/src/glean/api_client/models/createcollectionrequest.py index 8ed97b03..6e35a6ed 100644 --- a/src/glean/api_client/models/createcollectionrequest.py +++ b/src/glean/api_client/models/createcollectionrequest.py @@ -4,7 +4,12 @@ from .facetfilter import FacetFilter, FacetFilterTypedDict from .thumbnail import Thumbnail, ThumbnailTypedDict from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -79,6 +84,9 @@ class CreateCollectionRequest(BaseModel): r"""The (optional) ItemId of the next CollectionItem in sequence. If omitted, will be added to the end of the Collection. Only used if parentId is specified.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -94,11 +102,14 @@ def serialize_model(self, handler): "newNextItemId", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createdlpreportrequest.py b/src/glean/api_client/models/createdlpreportrequest.py index 9de15343..d3c1d853 100644 --- a/src/glean/api_client/models/createdlpreportrequest.py +++ b/src/glean/api_client/models/createdlpreportrequest.py @@ -4,7 +4,12 @@ from .dlpconfig import DlpConfig, DlpConfigTypedDict from .dlpfrequency import DlpFrequency from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -47,13 +52,19 @@ def serialize_frequency(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "config", "frequency", "autoHideDocs"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createdlpreportresponse.py b/src/glean/api_client/models/createdlpreportresponse.py index 2fecf5af..4e9b28dc 100644 --- a/src/glean/api_client/models/createdlpreportresponse.py +++ b/src/glean/api_client/models/createdlpreportresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .dlpreport import DlpReport, DlpReportTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class CreateDlpReportResponse(BaseModel): r"""Full policy information that will be used for scans.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["report"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createshortcutop.py b/src/glean/api_client/models/createshortcutop.py index cd9cab87..ac455c57 100644 --- a/src/glean/api_client/models/createshortcutop.py +++ b/src/glean/api_client/models/createshortcutop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .createshortcutrequest import CreateShortcutRequest, CreateShortcutRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class CreateshortcutRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createshortcutresponse.py b/src/glean/api_client/models/createshortcutresponse.py index 7fd2e6eb..cb009295 100644 --- a/src/glean/api_client/models/createshortcutresponse.py +++ b/src/glean/api_client/models/createshortcutresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .shortcut import Shortcut, ShortcutTypedDict from .shortcuterror import ShortcutError, ShortcutErrorTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -20,13 +25,19 @@ class CreateShortcutResponse(BaseModel): error: Optional[ShortcutError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["shortcut", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/createworkflowrequest.py b/src/glean/api_client/models/createworkflowrequest.py index 206d00f3..919884c7 100644 --- a/src/glean/api_client/models/createworkflowrequest.py +++ b/src/glean/api_client/models/createworkflowrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class CreateWorkflowRequest(BaseModel): r"""id of the parent workflow for transient workflows""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "transient", "parentWorkflowId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/currentactiveusers.py b/src/glean/api_client/models/currentactiveusers.py index 1236b653..44bc423c 100644 --- a/src/glean/api_client/models/currentactiveusers.py +++ b/src/glean/api_client/models/currentactiveusers.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -27,13 +32,19 @@ class CurrentActiveUsers(BaseModel): r"""Number of current Weekly Active Users.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["monthlyActiveUsers", "weeklyActiveUsers"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customdatasourceconfig.py b/src/glean/api_client/models/customdatasourceconfig.py index 0b728d6f..587acb9d 100644 --- a/src/glean/api_client/models/customdatasourceconfig.py +++ b/src/glean/api_client/models/customdatasourceconfig.py @@ -9,7 +9,12 @@ from .quicklink import Quicklink, QuicklinkTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -260,6 +265,9 @@ def serialize_connector_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -291,11 +299,14 @@ def serialize_model(self, handler): "isTestDatasource", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customdatavalue.py b/src/glean/api_client/models/customdatavalue.py index a07d2e81..542dee30 100644 --- a/src/glean/api_client/models/customdatavalue.py +++ b/src/glean/api_client/models/customdatavalue.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -34,6 +39,9 @@ class CustomDataValue(BaseModel): ) @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -44,11 +52,14 @@ def serialize_model(self, handler): "booleanValue", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customentity.py b/src/glean/api_client/models/customentity.py index 6cb844cc..dee0aefa 100644 --- a/src/glean/api_client/models/customentity.py +++ b/src/glean/api_client/models/customentity.py @@ -3,7 +3,12 @@ from __future__ import annotations from .customentitymetadata import CustomEntityMetadata, CustomEntityMetadataTypedDict from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -52,6 +57,9 @@ class CustomEntity(BaseModel): r"""A list of user roles for the custom entity explicitly granted by the owner.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -64,11 +72,14 @@ def serialize_model(self, handler): "roles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customentitymetadata.py b/src/glean/api_client/models/customentitymetadata.py index 45958c27..76f0acf5 100644 --- a/src/glean/api_client/models/customentitymetadata.py +++ b/src/glean/api_client/models/customentitymetadata.py @@ -2,7 +2,12 @@ from __future__ import annotations from .customdatavalue import CustomDataValue, CustomDataValueTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, Optional @@ -21,13 +26,19 @@ class CustomEntityMetadata(BaseModel): r"""Custom fields specific to individual datasources""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["customData"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customer.py b/src/glean/api_client/models/customer.py index 7154cf22..1a4ec62d 100644 --- a/src/glean/api_client/models/customer.py +++ b/src/glean/api_client/models/customer.py @@ -4,7 +4,12 @@ from .company import Company, CompanyTypedDict from .customermetadata import CustomerMetadata, CustomerMetadataTypedDict from datetime import date -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, List, Optional, TYPE_CHECKING @@ -71,6 +76,9 @@ class Customer(BaseModel): r"""User facing (potentially generated) notes about company.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -84,11 +92,14 @@ def serialize_model(self, handler): "notes", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customermetadata.py b/src/glean/api_client/models/customermetadata.py index 35adf587..437287a7 100644 --- a/src/glean/api_client/models/customermetadata.py +++ b/src/glean/api_client/models/customermetadata.py @@ -2,7 +2,12 @@ from __future__ import annotations from .customdatavalue import CustomDataValue, CustomDataValueTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, Optional @@ -26,13 +31,19 @@ class CustomerMetadata(BaseModel): r"""Custom fields specific to individual datasources""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasourceId", "customData"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customfielddata.py b/src/glean/api_client/models/customfielddata.py index 5e85ebbf..29910113 100644 --- a/src/glean/api_client/models/customfielddata.py +++ b/src/glean/api_client/models/customfielddata.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING from typing_extensions import NotRequired, TypedDict @@ -28,13 +33,19 @@ class CustomFieldData(BaseModel): r"""Determines whether the client should display this custom field""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["displayable"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customfieldvaluehyperlink.py b/src/glean/api_client/models/customfieldvaluehyperlink.py index 44931d12..95bab0db 100644 --- a/src/glean/api_client/models/customfieldvaluehyperlink.py +++ b/src/glean/api_client/models/customfieldvaluehyperlink.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class CustomFieldValueHyperlink(BaseModel): r"""Link for this URL.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["urlAnchor", "urlLink"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customfieldvalueperson.py b/src/glean/api_client/models/customfieldvalueperson.py index cb264f2b..62652461 100644 --- a/src/glean/api_client/models/customfieldvalueperson.py +++ b/src/glean/api_client/models/customfieldvalueperson.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional, TYPE_CHECKING from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class CustomFieldValuePerson(BaseModel): person: Optional["Person"] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["person"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customfieldvaluestr.py b/src/glean/api_client/models/customfieldvaluestr.py index 68f0fa1e..8f2a8ff5 100644 --- a/src/glean/api_client/models/customfieldvaluestr.py +++ b/src/glean/api_client/models/customfieldvaluestr.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -18,13 +23,19 @@ class CustomFieldValueStr(BaseModel): r"""Text field for string value.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["strText"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/custommetadatapropertydefinition.py b/src/glean/api_client/models/custommetadatapropertydefinition.py index 26d09515..497f493c 100644 --- a/src/glean/api_client/models/custommetadatapropertydefinition.py +++ b/src/glean/api_client/models/custommetadatapropertydefinition.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -59,13 +64,19 @@ def serialize_property_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["skipIndexing"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customproperty.py b/src/glean/api_client/models/customproperty.py index 74cc710e..4b3276bd 100644 --- a/src/glean/api_client/models/customproperty.py +++ b/src/glean/api_client/models/customproperty.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Optional from typing_extensions import NotRequired, TypedDict @@ -24,13 +29,19 @@ class CustomProperty(BaseModel): r"""Must be a string, a number (for INT properties), or an array of strings. A boolean is not valid. When OpenAPI Generator supports `oneOf`, we can semantically enforce this.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "value"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customsensitiveexpression.py b/src/glean/api_client/models/customsensitiveexpression.py index 4d525872..952a8e54 100644 --- a/src/glean/api_client/models/customsensitiveexpression.py +++ b/src/glean/api_client/models/customsensitiveexpression.py @@ -2,7 +2,12 @@ from __future__ import annotations from .customsensitiverule import CustomSensitiveRule, CustomSensitiveRuleTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class CustomSensitiveExpression(BaseModel): r"""The expression to evaluate the keyword match.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "keyword", "evaluationExpression"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/customsensitiverule.py b/src/glean/api_client/models/customsensitiverule.py index c767e33d..11da82b1 100644 --- a/src/glean/api_client/models/customsensitiverule.py +++ b/src/glean/api_client/models/customsensitiverule.py @@ -4,7 +4,12 @@ from .customsensitiveruletype import CustomSensitiveRuleType from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -67,13 +72,19 @@ def serialize_likelihood_threshold(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "value", "type", "likelihoodThreshold"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourcebulkmembershipdefinition.py b/src/glean/api_client/models/datasourcebulkmembershipdefinition.py index 31e0065c..c55a3eb9 100644 --- a/src/glean/api_client/models/datasourcebulkmembershipdefinition.py +++ b/src/glean/api_client/models/datasourcebulkmembershipdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -31,13 +36,19 @@ class DatasourceBulkMembershipDefinition(BaseModel): r"""If the member is a group, then the name of the member group""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["memberUserId", "memberGroupName"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourcecredentialstatusresponse.py b/src/glean/api_client/models/datasourcecredentialstatusresponse.py index 150f1a48..fa34ee33 100644 --- a/src/glean/api_client/models/datasourcecredentialstatusresponse.py +++ b/src/glean/api_client/models/datasourcecredentialstatusresponse.py @@ -4,7 +4,12 @@ from .datasourcecredentialstatus import DatasourceCredentialStatus from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -59,13 +64,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["lastRotatedAt", "expiresAt", "message"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourcemembershipdefinition.py b/src/glean/api_client/models/datasourcemembershipdefinition.py index 4243bb1b..d2625540 100644 --- a/src/glean/api_client/models/datasourcemembershipdefinition.py +++ b/src/glean/api_client/models/datasourcemembershipdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -36,13 +41,19 @@ class DatasourceMembershipDefinition(BaseModel): r"""If the member is a group, then the name of the member group""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["memberUserId", "memberGroupName"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourceobjecttypedocumentcountentry.py b/src/glean/api_client/models/datasourceobjecttypedocumentcountentry.py index 306d5d5b..9ccd1b80 100644 --- a/src/glean/api_client/models/datasourceobjecttypedocumentcountentry.py +++ b/src/glean/api_client/models/datasourceobjecttypedocumentcountentry.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class DatasourceObjectTypeDocumentCountEntry(BaseModel): r"""The number of documents of the corresponding objectType""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["objectType", "count"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourceprofile.py b/src/glean/api_client/models/datasourceprofile.py index 4a54a6d3..f49c16fd 100644 --- a/src/glean/api_client/models/datasourceprofile.py +++ b/src/glean/api_client/models/datasourceprofile.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -42,13 +47,19 @@ class DatasourceProfile(BaseModel): r"""For internal use only. True iff the data source profile was manually added by a user from within Glean (aka not from the original data source)""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["url", "nativeAppUrl", "isUserGenerated"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/datasourceuserdefinition.py b/src/glean/api_client/models/datasourceuserdefinition.py index af754d51..0512610c 100644 --- a/src/glean/api_client/models/datasourceuserdefinition.py +++ b/src/glean/api_client/models/datasourceuserdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class DatasourceUserDefinition(BaseModel): r"""set to false if the user is a former employee or a bot""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["userId", "isActive"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdatasourcestatusidentityresponsecomponent.py b/src/glean/api_client/models/debugdatasourcestatusidentityresponsecomponent.py index a027cc7e..2a677cbd 100644 --- a/src/glean/api_client/models/debugdatasourcestatusidentityresponsecomponent.py +++ b/src/glean/api_client/models/debugdatasourcestatusidentityresponsecomponent.py @@ -5,7 +5,12 @@ BulkUploadHistoryEvent, BulkUploadHistoryEventTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -22,13 +27,19 @@ class DebugDatasourceStatusIdentityResponseComponentCounts(BaseModel): r"""The number of users/groups/memberships uploaded""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["uploaded"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -54,13 +65,19 @@ class DebugDatasourceStatusIdentityResponseComponent(BaseModel): counts: Optional[DebugDatasourceStatusIdentityResponseComponentCounts] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["bulkUploadHistory", "counts"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdatasourcestatusresponse.py b/src/glean/api_client/models/debugdatasourcestatusresponse.py index b77b3855..6fd3f5c1 100644 --- a/src/glean/api_client/models/debugdatasourcestatusresponse.py +++ b/src/glean/api_client/models/debugdatasourcestatusresponse.py @@ -19,7 +19,12 @@ ) from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -45,13 +50,19 @@ class DebugDatasourceStatusResponseCounts(BaseModel): r"""The number of documents indexed, grouped by objectType""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["uploaded", "indexed"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -85,13 +96,19 @@ class Documents(BaseModel): r"""Information about processing history for the datasource""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["bulkUploadHistory", "counts", "processingHistory"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -123,13 +140,19 @@ class Identity(BaseModel): memberships: Optional[DebugDatasourceStatusIdentityResponseComponent] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["processingHistory", "users", "groups", "memberships"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -178,13 +201,19 @@ def serialize_datasource_visibility(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documents", "identity", "datasourceVisibility"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdocumentlifecyclerequest.py b/src/glean/api_client/models/debugdocumentlifecyclerequest.py index 97b74290..fed4b763 100644 --- a/src/glean/api_client/models/debugdocumentlifecyclerequest.py +++ b/src/glean/api_client/models/debugdocumentlifecyclerequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -37,13 +42,19 @@ class DebugDocumentLifecycleRequest(BaseModel): r"""Max number of events to be fetched. Cannot be more than 100 (default 20).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["startDate", "maxEvents"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdocumentlifecycleresponse.py b/src/glean/api_client/models/debugdocumentlifecycleresponse.py index 5e6ded73..e8348557 100644 --- a/src/glean/api_client/models/debugdocumentlifecycleresponse.py +++ b/src/glean/api_client/models/debugdocumentlifecycleresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .lifecycleevent import LifeCycleEvent, LifeCycleEventTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -25,13 +30,19 @@ class DebugDocumentLifecycleResponse(BaseModel): r"""List of lifecycle events corresponding to the document""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["lifeCycleEvents"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdocumentresponse.py b/src/glean/api_client/models/debugdocumentresponse.py index 3efc18aa..8ed45a9c 100644 --- a/src/glean/api_client/models/debugdocumentresponse.py +++ b/src/glean/api_client/models/debugdocumentresponse.py @@ -9,7 +9,12 @@ DocumentStatusResponse, DocumentStatusResponseTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -38,13 +43,19 @@ class DebugDocumentResponse(BaseModel): r"""describes the access control details of the document""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["status", "uploadedPermissions"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdocumentsresponse.py b/src/glean/api_client/models/debugdocumentsresponse.py index 54513fca..b5c31289 100644 --- a/src/glean/api_client/models/debugdocumentsresponse.py +++ b/src/glean/api_client/models/debugdocumentsresponse.py @@ -5,7 +5,12 @@ DebugDocumentsResponseItem, DebugDocumentsResponseItemTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -29,13 +34,19 @@ class DebugDocumentsResponse(BaseModel): r"""List of document ids/urls and their debug information""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documentStatuses"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debugdocumentsresponseitem.py b/src/glean/api_client/models/debugdocumentsresponseitem.py index 63165771..5e76f5a4 100644 --- a/src/glean/api_client/models/debugdocumentsresponseitem.py +++ b/src/glean/api_client/models/debugdocumentsresponseitem.py @@ -2,7 +2,12 @@ from __future__ import annotations from .debugdocumentresponse import DebugDocumentResponse, DebugDocumentResponseTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -35,13 +40,19 @@ class DebugDocumentsResponseItem(BaseModel): r"""Describes the response body of the /debug/{datasource}/document API call""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docId", "objectType", "debugInfo"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/debuguserresponse.py b/src/glean/api_client/models/debuguserresponse.py index 43e28fa9..9828f32c 100644 --- a/src/glean/api_client/models/debuguserresponse.py +++ b/src/glean/api_client/models/debuguserresponse.py @@ -6,7 +6,12 @@ DatasourceGroupDefinitionTypedDict, ) from .userstatusresponse import UserStatusResponse, UserStatusResponseTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -35,13 +40,19 @@ class DebugUserResponse(BaseModel): r"""List of groups the user is a member of, as uploaded via permissions API.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["status", "uploadedGroups"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteallchatsop.py b/src/glean/api_client/models/deleteallchatsop.py index cac2a62d..4354c5b7 100644 --- a/src/glean/api_client/models/deleteallchatsop.py +++ b/src/glean/api_client/models/deleteallchatsop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -31,13 +36,19 @@ class DeleteallchatsRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteannouncementop.py b/src/glean/api_client/models/deleteannouncementop.py index c7b39677..3c4220fc 100644 --- a/src/glean/api_client/models/deleteannouncementop.py +++ b/src/glean/api_client/models/deleteannouncementop.py @@ -5,7 +5,12 @@ DeleteAnnouncementRequest, DeleteAnnouncementRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class DeleteannouncementRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteanswerop.py b/src/glean/api_client/models/deleteanswerop.py index af7a16d7..ecfb54f6 100644 --- a/src/glean/api_client/models/deleteanswerop.py +++ b/src/glean/api_client/models/deleteanswerop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .deleteanswerrequest import DeleteAnswerRequest, DeleteAnswerRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class DeleteanswerRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteanswerrequest.py b/src/glean/api_client/models/deleteanswerrequest.py index 5c83ec3e..90841138 100644 --- a/src/glean/api_client/models/deleteanswerrequest.py +++ b/src/glean/api_client/models/deleteanswerrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class DeleteAnswerRequest(BaseModel): r"""Glean Document ID of the Answer. The Glean Document ID is supported for cases where the Answer ID isn't available. If both are available, using the Answer ID is preferred.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletechatfilesop.py b/src/glean/api_client/models/deletechatfilesop.py index 01f8e688..07f79033 100644 --- a/src/glean/api_client/models/deletechatfilesop.py +++ b/src/glean/api_client/models/deletechatfilesop.py @@ -5,7 +5,12 @@ DeleteChatFilesRequest, DeleteChatFilesRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -41,13 +46,19 @@ class DeletechatfilesRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletechatsop.py b/src/glean/api_client/models/deletechatsop.py index fc7d3083..362885cc 100644 --- a/src/glean/api_client/models/deletechatsop.py +++ b/src/glean/api_client/models/deletechatsop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .deletechatsrequest import DeleteChatsRequest, DeleteChatsRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class DeletechatsRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletecollectionitemop.py b/src/glean/api_client/models/deletecollectionitemop.py index 10966910..c0eb91b6 100644 --- a/src/glean/api_client/models/deletecollectionitemop.py +++ b/src/glean/api_client/models/deletecollectionitemop.py @@ -5,7 +5,12 @@ DeleteCollectionItemRequest, DeleteCollectionItemRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class DeletecollectionitemRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletecollectionitemrequest.py b/src/glean/api_client/models/deletecollectionitemrequest.py index ac801e8c..0bdbb0a1 100644 --- a/src/glean/api_client/models/deletecollectionitemrequest.py +++ b/src/glean/api_client/models/deletecollectionitemrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -28,13 +33,19 @@ class DeleteCollectionItemRequest(BaseModel): r"""The (optional) Glean Document ID of the CollectionItem to remove from this Collection if this is an indexed document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documentId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletecollectionitemresponse.py b/src/glean/api_client/models/deletecollectionitemresponse.py index eb2315c4..07990e31 100644 --- a/src/glean/api_client/models/deletecollectionitemresponse.py +++ b/src/glean/api_client/models/deletecollectionitemresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .collection import Collection, CollectionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class DeleteCollectionItemResponse(BaseModel): collection: Optional[Collection] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["collection"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletecollectionop.py b/src/glean/api_client/models/deletecollectionop.py index 8721ecb5..025ee359 100644 --- a/src/glean/api_client/models/deletecollectionop.py +++ b/src/glean/api_client/models/deletecollectionop.py @@ -5,7 +5,12 @@ DeleteCollectionRequest, DeleteCollectionRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class DeletecollectionRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletecollectionrequest.py b/src/glean/api_client/models/deletecollectionrequest.py index cf68ff3b..638726fb 100644 --- a/src/glean/api_client/models/deletecollectionrequest.py +++ b/src/glean/api_client/models/deletecollectionrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -25,13 +30,19 @@ class DeleteCollectionRequest(BaseModel): r"""The datasource allowed in the Collection to be deleted.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["allowedDatasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletedocumentrequest.py b/src/glean/api_client/models/deletedocumentrequest.py index 3fb67bc9..bf7f79f0 100644 --- a/src/glean/api_client/models/deletedocumentrequest.py +++ b/src/glean/api_client/models/deletedocumentrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -37,13 +42,19 @@ class DeleteDocumentRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteemployeerequest.py b/src/glean/api_client/models/deleteemployeerequest.py index b413b516..8e5879bc 100644 --- a/src/glean/api_client/models/deleteemployeerequest.py +++ b/src/glean/api_client/models/deleteemployeerequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -27,13 +32,19 @@ class DeleteEmployeeRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletegrouprequest.py b/src/glean/api_client/models/deletegrouprequest.py index 651551f3..f27a32a7 100644 --- a/src/glean/api_client/models/deletegrouprequest.py +++ b/src/glean/api_client/models/deletegrouprequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class DeleteGroupRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deletemembershiprequest.py b/src/glean/api_client/models/deletemembershiprequest.py index 60f59a29..020f2d18 100644 --- a/src/glean/api_client/models/deletemembershiprequest.py +++ b/src/glean/api_client/models/deletemembershiprequest.py @@ -5,7 +5,12 @@ DatasourceMembershipDefinition, DatasourceMembershipDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class DeleteMembershipRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteshortcutop.py b/src/glean/api_client/models/deleteshortcutop.py index 5862db47..4e7325c8 100644 --- a/src/glean/api_client/models/deleteshortcutop.py +++ b/src/glean/api_client/models/deleteshortcutop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .deleteshortcutrequest import DeleteShortcutRequest, DeleteShortcutRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class DeleteshortcutRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/deleteuserrequest.py b/src/glean/api_client/models/deleteuserrequest.py index a8dd578b..0f3379f0 100644 --- a/src/glean/api_client/models/deleteuserrequest.py +++ b/src/glean/api_client/models/deleteuserrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -31,13 +36,19 @@ class DeleteUserRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/digest.py b/src/glean/api_client/models/digest.py index 432716a8..c0219288 100644 --- a/src/glean/api_client/models/digest.py +++ b/src/glean/api_client/models/digest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .digestsection import DigestSection, DigestSectionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -38,15 +43,21 @@ class Digest(BaseModel): r"""Array of digest sections from which the podcast was created.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["podcastFileId", "podcastDuration", "digestDate", "sections"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/digestsection.py b/src/glean/api_client/models/digestsection.py index 17ac661e..9ea2598f 100644 --- a/src/glean/api_client/models/digestsection.py +++ b/src/glean/api_client/models/digestsection.py @@ -4,7 +4,12 @@ from .digestupdate import DigestUpdate, DigestUpdateTypedDict from .sectiontype import SectionType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -71,15 +76,21 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["displayName", "channelName", "channelType", "instanceId", "url"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/digestupdate.py b/src/glean/api_client/models/digestupdate.py index be822894..47698e8f 100644 --- a/src/glean/api_client/models/digestupdate.py +++ b/src/glean/api_client/models/digestupdate.py @@ -3,7 +3,12 @@ from __future__ import annotations from .updatetype import UpdateType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -53,13 +58,19 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["urls", "url", "title", "datasource", "summary", "type"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/disambiguation.py b/src/glean/api_client/models/disambiguation.py index 68a5514f..9394aa92 100644 --- a/src/glean/api_client/models/disambiguation.py +++ b/src/glean/api_client/models/disambiguation.py @@ -3,7 +3,12 @@ from __future__ import annotations from .entitytype import EntityType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -42,13 +47,19 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "id", "type"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/displayablelistitemuiconfig.py b/src/glean/api_client/models/displayablelistitemuiconfig.py index 3e0031b7..7a4d9259 100644 --- a/src/glean/api_client/models/displayablelistitemuiconfig.py +++ b/src/glean/api_client/models/displayablelistitemuiconfig.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -24,13 +29,19 @@ class DisplayableListItemUIConfig(BaseModel): r"""show a \"New\" pill next to the item""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["showNewIndicator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpconfig.py b/src/glean/api_client/models/dlpconfig.py index 7ebd4643..a0d47730 100644 --- a/src/glean/api_client/models/dlpconfig.py +++ b/src/glean/api_client/models/dlpconfig.py @@ -14,7 +14,12 @@ ) from .sensitiveinfotype import SensitiveInfoType, SensitiveInfoTypeTypedDict from .sharingoptions import SharingOptions, SharingOptionsTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -114,6 +119,9 @@ class DlpConfig(BaseModel): r"""Terms and regexes that are allow-listed during the scans. If any finding picked up by a rule exactly matches a term, or matches a regex, in the allow-list, it will not be counted as a violation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -132,11 +140,14 @@ def serialize_model(self, handler): "allowlistOptions", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpexportfindingsrequest.py b/src/glean/api_client/models/dlpexportfindingsrequest.py index 094eec89..c9e51712 100644 --- a/src/glean/api_client/models/dlpexportfindingsrequest.py +++ b/src/glean/api_client/models/dlpexportfindingsrequest.py @@ -4,7 +4,12 @@ from .dlpfindingfilter import DlpFindingFilter, DlpFindingFilterTypedDict from .dlpissuefilter import DlpIssueFilter, DlpIssueFilterTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -71,6 +76,9 @@ class DlpExportFindingsRequest(BaseModel): r"""List of field names to exclude from the export""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -82,11 +90,14 @@ def serialize_model(self, handler): "fieldsToExclude", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpfindingfilter.py b/src/glean/api_client/models/dlpfindingfilter.py index 960d3753..b083f366 100644 --- a/src/glean/api_client/models/dlpfindingfilter.py +++ b/src/glean/api_client/models/dlpfindingfilter.py @@ -5,7 +5,12 @@ from .dlpseverity import DlpSeverity from .timerangefilter import TimeRangeFilter, TimeRangeFilterTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -67,6 +72,9 @@ def serialize_severity(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -83,11 +91,14 @@ def serialize_model(self, handler): "archived", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpissuefilter.py b/src/glean/api_client/models/dlpissuefilter.py index b3f50e5f..f667ae79 100644 --- a/src/glean/api_client/models/dlpissuefilter.py +++ b/src/glean/api_client/models/dlpissuefilter.py @@ -4,7 +4,12 @@ from .dlpissuestatus import DlpIssueStatus from .dlpseverity import DlpSeverity from .timerangefilter import TimeRangeFilter, TimeRangeFilterTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -116,6 +121,9 @@ class DlpIssueFilter(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -136,11 +144,14 @@ def serialize_model(self, handler): "timeRange", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpperson.py b/src/glean/api_client/models/dlpperson.py index ee020352..ded766cb 100644 --- a/src/glean/api_client/models/dlpperson.py +++ b/src/glean/api_client/models/dlpperson.py @@ -2,7 +2,12 @@ from __future__ import annotations from .dlppersonmetadata import DlpPersonMetadata, DlpPersonMetadataTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -31,13 +36,19 @@ class DlpPerson(BaseModel): metadata: Optional[DlpPersonMetadata] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlppersonmetadata.py b/src/glean/api_client/models/dlppersonmetadata.py index b3d764a6..0c2b4374 100644 --- a/src/glean/api_client/models/dlppersonmetadata.py +++ b/src/glean/api_client/models/dlppersonmetadata.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class DlpPersonMetadata(BaseModel): r"""The user's primary email address""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["firstName", "email"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/dlpreport.py b/src/glean/api_client/models/dlpreport.py index ff433f12..637828c2 100644 --- a/src/glean/api_client/models/dlpreport.py +++ b/src/glean/api_client/models/dlpreport.py @@ -7,7 +7,12 @@ from .dlpreportstatus import DlpReportStatus from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -121,6 +126,9 @@ def serialize_last_scan_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -138,11 +146,14 @@ def serialize_model(self, handler): "updatedBy", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/document.py b/src/glean/api_client/models/document.py index cb56b4f3..cf4c86ee 100644 --- a/src/glean/api_client/models/document.py +++ b/src/glean/api_client/models/document.py @@ -5,7 +5,12 @@ from .documentcontent import DocumentContent, DocumentContentTypedDict from .documentsection import DocumentSection, DocumentSectionTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -82,6 +87,9 @@ def serialize_connector_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -98,11 +106,14 @@ def serialize_model(self, handler): "sections", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentcontent.py b/src/glean/api_client/models/documentcontent.py index 7a6ea0bf..e87d574d 100644 --- a/src/glean/api_client/models/documentcontent.py +++ b/src/glean/api_client/models/documentcontent.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -20,13 +25,19 @@ class DocumentContent(BaseModel): r"""The plaintext content of the document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["fullTextList"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentdefinition.py b/src/glean/api_client/models/documentdefinition.py index 1fa367c9..28cb613d 100644 --- a/src/glean/api_client/models/documentdefinition.py +++ b/src/glean/api_client/models/documentdefinition.py @@ -16,7 +16,12 @@ UserReferenceDefinition, UserReferenceDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -168,6 +173,9 @@ class DocumentDefinition(BaseModel): r"""Additional metadata properties of the document. These can surface as [facets and operators](https://developers.glean.com/indexing/datasource/custom-properties/operators_and_facets).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -196,11 +204,14 @@ def serialize_model(self, handler): "customProperties", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentinteractions.py b/src/glean/api_client/models/documentinteractions.py index 47ada2f9..f80db9fe 100644 --- a/src/glean/api_client/models/documentinteractions.py +++ b/src/glean/api_client/models/documentinteractions.py @@ -2,7 +2,12 @@ from __future__ import annotations from .countinfo import CountInfo, CountInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -51,6 +56,9 @@ class DocumentInteractions(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -62,11 +70,14 @@ def serialize_model(self, handler): "visitorCount", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentinteractionsdefinition.py b/src/glean/api_client/models/documentinteractionsdefinition.py index 2dd25c44..1798029a 100644 --- a/src/glean/api_client/models/documentinteractionsdefinition.py +++ b/src/glean/api_client/models/documentinteractionsdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class DocumentInteractionsDefinition(BaseModel): num_comments: Annotated[Optional[int], pydantic.Field(alias="numComments")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["numViews", "numLikes", "numComments"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentmetadata.py b/src/glean/api_client/models/documentmetadata.py index 4f50069b..7c18608e 100644 --- a/src/glean/api_client/models/documentmetadata.py +++ b/src/glean/api_client/models/documentmetadata.py @@ -10,7 +10,12 @@ from .viewerinfo import ViewerInfo, ViewerInfoTypedDict from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Dict, List, Optional, TYPE_CHECKING @@ -239,6 +244,9 @@ def serialize_visibility(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -284,11 +292,14 @@ def serialize_model(self, handler): "ancestors", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentpermissionsdefinition.py b/src/glean/api_client/models/documentpermissionsdefinition.py index fd87de54..f9eb4f21 100644 --- a/src/glean/api_client/models/documentpermissionsdefinition.py +++ b/src/glean/api_client/models/documentpermissionsdefinition.py @@ -9,7 +9,12 @@ UserReferenceDefinition, UserReferenceDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -63,6 +68,9 @@ class DocumentPermissionsDefinition(BaseModel): r"""If true, then any user who has an account in the datasource can view the document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -73,11 +81,14 @@ def serialize_model(self, handler): "allowAllDatasourceUsersAccess", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentsection.py b/src/glean/api_client/models/documentsection.py index 6825bbb0..dfd2dce3 100644 --- a/src/glean/api_client/models/documentsection.py +++ b/src/glean/api_client/models/documentsection.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class DocumentSection(BaseModel): r"""The permalink of the document section.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["title", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentspec_union.py b/src/glean/api_client/models/documentspec_union.py index 82e3e535..b44d7b47 100644 --- a/src/glean/api_client/models/documentspec_union.py +++ b/src/glean/api_client/models/documentspec_union.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, Union @@ -50,13 +55,19 @@ def serialize_ugc_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -105,13 +116,19 @@ def serialize_ugc_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentstatusresponse.py b/src/glean/api_client/models/documentstatusresponse.py index 41cc9ad2..5a6cc3d5 100644 --- a/src/glean/api_client/models/documentstatusresponse.py +++ b/src/glean/api_client/models/documentstatusresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -50,6 +55,9 @@ class DocumentStatusResponse(BaseModel): r"""Permission identity status, enum of NOT_UPLOADED, UPLOADED, STATUS_UNKNOWN (Always unknown if `identityDatasourceName` is set). Document visibility may be affected status is `NOT_UPLOADED`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -60,11 +68,14 @@ def serialize_model(self, handler): "permissionIdentityStatus", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentvisibilityoverride.py b/src/glean/api_client/models/documentvisibilityoverride.py index e5d6ad03..4cda398f 100644 --- a/src/glean/api_client/models/documentvisibilityoverride.py +++ b/src/glean/api_client/models/documentvisibilityoverride.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -41,13 +46,19 @@ def serialize_override(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docId", "override"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/documentvisibilityupdateresult.py b/src/glean/api_client/models/documentvisibilityupdateresult.py index c48a36b1..c34a66f6 100644 --- a/src/glean/api_client/models/documentvisibilityupdateresult.py +++ b/src/glean/api_client/models/documentvisibilityupdateresult.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -46,13 +51,19 @@ def serialize_override(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docId", "override", "success"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editagentop.py b/src/glean/api_client/models/editagentop.py index 5d66503e..beb50024 100644 --- a/src/glean/api_client/models/editagentop.py +++ b/src/glean/api_client/models/editagentop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .editworkflowrequest import EditWorkflowRequest, EditWorkflowRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import ( FieldMetadata, PathParamMetadata, @@ -50,13 +55,19 @@ class EditAgentRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editanswerop.py b/src/glean/api_client/models/editanswerop.py index 8aef450a..f9f01bf6 100644 --- a/src/glean/api_client/models/editanswerop.py +++ b/src/glean/api_client/models/editanswerop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .editanswerrequest import EditAnswerRequest, EditAnswerRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class EditanswerRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editanswerrequest.py b/src/glean/api_client/models/editanswerrequest.py index 0e17a606..e002c74d 100644 --- a/src/glean/api_client/models/editanswerrequest.py +++ b/src/glean/api_client/models/editanswerrequest.py @@ -9,7 +9,12 @@ ) from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -118,6 +123,9 @@ class EditAnswerRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -137,11 +145,14 @@ def serialize_model(self, handler): "combinedAnswerText", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionitemop.py b/src/glean/api_client/models/editcollectionitemop.py index ec47c585..9a31b584 100644 --- a/src/glean/api_client/models/editcollectionitemop.py +++ b/src/glean/api_client/models/editcollectionitemop.py @@ -5,7 +5,12 @@ EditCollectionItemRequest, EditCollectionItemRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class EditcollectionitemRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionitemrequest.py b/src/glean/api_client/models/editcollectionitemrequest.py index d263fa2e..b295f80d 100644 --- a/src/glean/api_client/models/editcollectionitemrequest.py +++ b/src/glean/api_client/models/editcollectionitemrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -38,13 +43,19 @@ class EditCollectionItemRequest(BaseModel): r"""The emoji icon for this CollectionItem. Only used for Text type items.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "description", "icon"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionitemresponse.py b/src/glean/api_client/models/editcollectionitemresponse.py index 0803aa97..596a0f4d 100644 --- a/src/glean/api_client/models/editcollectionitemresponse.py +++ b/src/glean/api_client/models/editcollectionitemresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .collection import Collection, CollectionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class EditCollectionItemResponse(BaseModel): collection: Optional[Collection] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["collection"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionop.py b/src/glean/api_client/models/editcollectionop.py index 89876fc8..967cf7ec 100644 --- a/src/glean/api_client/models/editcollectionop.py +++ b/src/glean/api_client/models/editcollectionop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .editcollectionrequest import EditCollectionRequest, EditCollectionRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class EditcollectionRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionrequest.py b/src/glean/api_client/models/editcollectionrequest.py index 7a4edd70..205fbcf0 100644 --- a/src/glean/api_client/models/editcollectionrequest.py +++ b/src/glean/api_client/models/editcollectionrequest.py @@ -4,7 +4,12 @@ from .facetfilter import FacetFilter, FacetFilterTypedDict from .thumbnail import Thumbnail, ThumbnailTypedDict from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -77,6 +82,9 @@ class EditCollectionRequest(BaseModel): r"""The datasource type this Collection can hold.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -91,11 +99,14 @@ def serialize_model(self, handler): "allowedDatasource", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editcollectionresponse.py b/src/glean/api_client/models/editcollectionresponse.py index cf72a321..de16ff74 100644 --- a/src/glean/api_client/models/editcollectionresponse.py +++ b/src/glean/api_client/models/editcollectionresponse.py @@ -17,7 +17,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -187,6 +192,9 @@ def serialize_error_code(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -216,11 +224,14 @@ def serialize_model(self, handler): "error", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editpinop.py b/src/glean/api_client/models/editpinop.py index 608f79b9..151df079 100644 --- a/src/glean/api_client/models/editpinop.py +++ b/src/glean/api_client/models/editpinop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .editpinrequest import EditPinRequest, EditPinRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class EditpinRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editpinrequest.py b/src/glean/api_client/models/editpinrequest.py index d19c91a1..0e4ab11c 100644 --- a/src/glean/api_client/models/editpinrequest.py +++ b/src/glean/api_client/models/editpinrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetfilter import FacetFilter, FacetFilterTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -31,13 +36,19 @@ class EditPinRequest(BaseModel): r"""The opaque id of the pin to be edited.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["queries", "audienceFilters", "id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/editworkflowrequest.py b/src/glean/api_client/models/editworkflowrequest.py index 5d3ba4f1..e0407e4b 100644 --- a/src/glean/api_client/models/editworkflowrequest.py +++ b/src/glean/api_client/models/editworkflowrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class EditWorkflowRequest(BaseModel): r"""The workflow ID we want to update.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/employeeinfodefinition.py b/src/glean/api_client/models/employeeinfodefinition.py index 1a6ef593..1b412317 100644 --- a/src/glean/api_client/models/employeeinfodefinition.py +++ b/src/glean/api_client/models/employeeinfodefinition.py @@ -14,7 +14,12 @@ ) from .structuredlocation import StructuredLocation, StructuredLocationTypedDict from datetime import date -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -199,6 +204,9 @@ class EmployeeInfoDefinition(BaseModel): r"""List of additional fields with more information about the employee.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -229,11 +237,14 @@ def serialize_model(self, handler): "additionalFields", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/employeeteaminfo.py b/src/glean/api_client/models/employeeteaminfo.py index 91d78b8d..1d96d6b3 100644 --- a/src/glean/api_client/models/employeeteaminfo.py +++ b/src/glean/api_client/models/employeeteaminfo.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -31,13 +36,19 @@ class EmployeeTeamInfo(BaseModel): r"""Link to internal company team page""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "name", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/errormessage.py b/src/glean/api_client/models/errormessage.py index 5979617b..39c888bf 100644 --- a/src/glean/api_client/models/errormessage.py +++ b/src/glean/api_client/models/errormessage.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -21,13 +26,19 @@ class ErrorMessage(BaseModel): error_message: Annotated[Optional[str], pydantic.Field(alias="errorMessage")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["source", "errorMessage"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/eventclassification.py b/src/glean/api_client/models/eventclassification.py index 7ed6e3fc..473d9ac7 100644 --- a/src/glean/api_client/models/eventclassification.py +++ b/src/glean/api_client/models/eventclassification.py @@ -3,7 +3,12 @@ from __future__ import annotations from .eventclassificationname import EventClassificationName from .eventstrategyname import EventStrategyName -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class EventClassification(BaseModel): strategies: Optional[List[EventStrategyName]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "strategies"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/exportinfo.py b/src/glean/api_client/models/exportinfo.py index 75811dd4..eeaab196 100644 --- a/src/glean/api_client/models/exportinfo.py +++ b/src/glean/api_client/models/exportinfo.py @@ -6,7 +6,12 @@ from .dlpperson import DlpPerson, DlpPersonTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -107,6 +112,9 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -122,11 +130,14 @@ def serialize_model(self, handler): "exportSize", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/externalsharingoptions.py b/src/glean/api_client/models/externalsharingoptions.py index e569b834..56fc4c1a 100644 --- a/src/glean/api_client/models/externalsharingoptions.py +++ b/src/glean/api_client/models/externalsharingoptions.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -83,6 +88,9 @@ class ExternalSharingOptions(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -97,11 +105,14 @@ def serialize_model(self, handler): "domainAccessEnabled", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/externalshortcut.py b/src/glean/api_client/models/externalshortcut.py index 33344b41..193085fa 100644 --- a/src/glean/api_client/models/externalshortcut.py +++ b/src/glean/api_client/models/externalshortcut.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -70,6 +75,9 @@ class ExternalShortcut(BaseModel): r"""The URL using which the user can access the edit page of the shortcut.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -82,11 +90,14 @@ def serialize_model(self, handler): "editUrl", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/extractedqna.py b/src/glean/api_client/models/extractedqna.py index 6a255674..81baf5e3 100644 --- a/src/glean/api_client/models/extractedqna.py +++ b/src/glean/api_client/models/extractedqna.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -31,13 +36,19 @@ class ExtractedQnA(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["heading", "question", "questionResult"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetbucket.py b/src/glean/api_client/models/facetbucket.py index f8d356f7..888f6951 100644 --- a/src/glean/api_client/models/facetbucket.py +++ b/src/glean/api_client/models/facetbucket.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetvalue import FacetValue, FacetValueTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -31,13 +36,19 @@ class FacetBucket(BaseModel): value: Optional[FacetValue] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["count", "datasource", "percentage", "value"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetbucketfilter.py b/src/glean/api_client/models/facetbucketfilter.py index 19df5a17..47e74c76 100644 --- a/src/glean/api_client/models/facetbucketfilter.py +++ b/src/glean/api_client/models/facetbucketfilter.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class FacetBucketFilter(BaseModel): r"""The per-term prefix that facet buckets should be filtered on.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["facet", "prefix"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetfilter.py b/src/glean/api_client/models/facetfilter.py index d882c35b..ab657850 100644 --- a/src/glean/api_client/models/facetfilter.py +++ b/src/glean/api_client/models/facetfilter.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetfiltervalue import FacetFilterValue, FacetFilterValueTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -27,13 +32,19 @@ class FacetFilter(BaseModel): r"""Indicates the value of a facet, if any, that the given facet is grouped under. This is only used for nested facets, for example, fieldName could be owner and groupName would be Spreadsheet if showing all owners for spreadsheets as a nested facet.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["fieldName", "values", "groupName"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetfilterset.py b/src/glean/api_client/models/facetfilterset.py index b1f689e7..8f8d2356 100644 --- a/src/glean/api_client/models/facetfilterset.py +++ b/src/glean/api_client/models/facetfilterset.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetfilter import FacetFilter, FacetFilterTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -20,13 +25,19 @@ class FacetFilterSet(BaseModel): filters: Optional[List[FacetFilter]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["filters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetfiltervalue.py b/src/glean/api_client/models/facetfiltervalue.py index a32ff103..09f80806 100644 --- a/src/glean/api_client/models/facetfiltervalue.py +++ b/src/glean/api_client/models/facetfiltervalue.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -56,13 +61,19 @@ def serialize_relation_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["value", "relationType", "isNegated"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetresult.py b/src/glean/api_client/models/facetresult.py index 6cea2b89..d5793131 100644 --- a/src/glean/api_client/models/facetresult.py +++ b/src/glean/api_client/models/facetresult.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetbucket import FacetBucket, FacetBucketTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -41,15 +46,21 @@ class FacetResult(BaseModel): r"""For most facets this will be the empty string, meaning the facet is high-level and applies to all documents for the datasource. When non-empty, this is used to group facets together (i.e. group facets for each doctype for a certain datasource)""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["sourceName", "operatorName", "buckets", "hasMoreBuckets", "groupName"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/facetvalue.py b/src/glean/api_client/models/facetvalue.py index fdf378c8..74214e5b 100644 --- a/src/glean/api_client/models/facetvalue.py +++ b/src/glean/api_client/models/facetvalue.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -34,15 +39,21 @@ class FacetValue(BaseModel): r"""Defines how to render an icon""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["stringValue", "integerValue", "displayLabel", "iconConfig"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/favoriteinfo.py b/src/glean/api_client/models/favoriteinfo.py index 17359e01..5ed77ab2 100644 --- a/src/glean/api_client/models/favoriteinfo.py +++ b/src/glean/api_client/models/favoriteinfo.py @@ -3,7 +3,12 @@ from __future__ import annotations from .ugctype import UgcType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -44,13 +49,19 @@ def serialize_ugc_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["ugcType", "id", "count", "favoritedByUser"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedback.py b/src/glean/api_client/models/feedback.py index 1dfc5693..bc94f4ab 100644 --- a/src/glean/api_client/models/feedback.py +++ b/src/glean/api_client/models/feedback.py @@ -13,7 +13,12 @@ from .workflowfeedbackinfo import WorkflowFeedbackInfo, WorkflowFeedbackInfoTypedDict from datetime import datetime from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -225,6 +230,9 @@ class Feedback(BaseModel): r"""The agent ID of the client that sent the feedback event.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -249,11 +257,14 @@ def serialize_model(self, handler): "agentId", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedbackchatexchange.py b/src/glean/api_client/models/feedbackchatexchange.py index 291794c5..f548453d 100644 --- a/src/glean/api_client/models/feedbackchatexchange.py +++ b/src/glean/api_client/models/feedbackchatexchange.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -19,13 +24,19 @@ class ResultDocument(BaseModel): url: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["title", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -70,6 +81,9 @@ class FeedbackChatExchange(BaseModel): response: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -81,11 +95,14 @@ def serialize_model(self, handler): "response", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedbackop.py b/src/glean/api_client/models/feedbackop.py index 44041cb3..c6443424 100644 --- a/src/glean/api_client/models/feedbackop.py +++ b/src/glean/api_client/models/feedbackop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .feedback import Feedback, FeedbackTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -30,13 +35,19 @@ class FeedbackRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["feedbackQueryParameter", "Feedback1"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedentry.py b/src/glean/api_client/models/feedentry.py index ffccc86e..79d12f40 100644 --- a/src/glean/api_client/models/feedentry.py +++ b/src/glean/api_client/models/feedentry.py @@ -21,7 +21,12 @@ from .workflowresult import WorkflowResult, WorkflowResultTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -51,13 +56,19 @@ class UIConfig(BaseModel): r"""UI configurations for each item of the list""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["format", "additionalFlags"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -126,6 +137,7 @@ class JustificationType(str, Enum, metaclass=utils.OpenEnumMeta): PROJECT_FOCUS_BLOCK = "PROJECT_FOCUS_BLOCK" PROJECT_NEXT_STEP = "PROJECT_NEXT_STEP" DEMO_CARD = "DEMO_CARD" + PERSONAL_AGENT_NUX = "PERSONAL_AGENT_NUX" RESOLVE_MEETING_CONFLICT = "RESOLVE_MEETING_CONFLICT" FINDING_MEETING_ROOM = "FINDING_MEETING_ROOM" OOO_PLANNER = "OOO_PLANNER" @@ -249,6 +261,9 @@ def serialize_justification_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -275,11 +290,14 @@ def serialize_model(self, handler): "documentVisitorCount", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedop.py b/src/glean/api_client/models/feedop.py index f3962628..dbb4d6bf 100644 --- a/src/glean/api_client/models/feedop.py +++ b/src/glean/api_client/models/feedop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .feedrequest import FeedRequest, FeedRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class FeedRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedrequest.py b/src/glean/api_client/models/feedrequest.py index 2fe3ed0a..fe18fa86 100644 --- a/src/glean/api_client/models/feedrequest.py +++ b/src/glean/api_client/models/feedrequest.py @@ -4,7 +4,12 @@ from .feedrequestoptions import FeedRequestOptions, FeedRequestOptionsTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -55,6 +60,7 @@ class FeedRequestCategory(str, Enum): PROJECT_FOCUS_BLOCK = "PROJECT_FOCUS_BLOCK" PROJECT_NEXT_STEP = "PROJECT_NEXT_STEP" DEMO_CARD = "DEMO_CARD" + PERSONAL_AGENT_NUX = "PERSONAL_AGENT_NUX" RESOLVE_MEETING_CONFLICT = "RESOLVE_MEETING_CONFLICT" FINDING_MEETING_ROOM = "FINDING_MEETING_ROOM" OOO_PLANNER = "OOO_PLANNER" @@ -99,15 +105,21 @@ class FeedRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["categories", "requestOptions", "timeoutMillis", "sessionInfo"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedrequestoptions.py b/src/glean/api_client/models/feedrequestoptions.py index b0d65380..f9e0d213 100644 --- a/src/glean/api_client/models/feedrequestoptions.py +++ b/src/glean/api_client/models/feedrequestoptions.py @@ -5,7 +5,12 @@ ChatZeroStateSuggestionOptions, ChatZeroStateSuggestionOptionsTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, List, Optional @@ -20,13 +25,19 @@ class CategoryToResultSize(BaseModel): result_size: Annotated[Optional[int], pydantic.Field(alias="resultSize")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["resultSize"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -76,6 +87,9 @@ class FeedRequestOptions(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -85,11 +99,14 @@ def serialize_model(self, handler): "chatZeroStateSuggestionOptions", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedresponse.py b/src/glean/api_client/models/feedresponse.py index 683438c8..9aad69e3 100644 --- a/src/glean/api_client/models/feedresponse.py +++ b/src/glean/api_client/models/feedresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .facetresult import FacetResult, FacetResultTypedDict from .feedresult import FeedResult, FeedResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, List, Optional @@ -51,6 +56,9 @@ class FeedResponse(BaseModel): r"""The time window (in hours) used for generating user mentions.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -61,11 +69,14 @@ def serialize_model(self, handler): "mentionsTimeWindowInHours", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/feedresult.py b/src/glean/api_client/models/feedresult.py index 66006982..358603df 100644 --- a/src/glean/api_client/models/feedresult.py +++ b/src/glean/api_client/models/feedresult.py @@ -4,7 +4,12 @@ from .feedentry import FeedEntry, FeedEntryTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -57,6 +62,7 @@ class FeedResultCategory(str, Enum, metaclass=utils.OpenEnumMeta): PROJECT_FOCUS_BLOCK = "PROJECT_FOCUS_BLOCK" PROJECT_NEXT_STEP = "PROJECT_NEXT_STEP" DEMO_CARD = "DEMO_CARD" + PERSONAL_AGENT_NUX = "PERSONAL_AGENT_NUX" RESOLVE_MEETING_CONFLICT = "RESOLVE_MEETING_CONFLICT" FINDING_MEETING_ROOM = "FINDING_MEETING_ROOM" OOO_PLANNER = "OOO_PLANNER" @@ -132,13 +138,19 @@ def serialize_placement_reason(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["secondaryEntries", "rank", "placementReason"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/followupaction.py b/src/glean/api_client/models/followupaction.py index 5a446215..5eb32709 100644 --- a/src/glean/api_client/models/followupaction.py +++ b/src/glean/api_client/models/followupaction.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, Optional @@ -58,6 +63,9 @@ class FollowupAction(BaseModel): r"""Whether user confirmation is needed before executing this action instance.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -70,11 +78,14 @@ def serialize_model(self, handler): "userConfirmationRequired", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/generatedattachment.py b/src/glean/api_client/models/generatedattachment.py index f431eede..bb3d814c 100644 --- a/src/glean/api_client/models/generatedattachment.py +++ b/src/glean/api_client/models/generatedattachment.py @@ -11,7 +11,12 @@ from .person import Person, PersonTypedDict from .structuredlink import StructuredLink, StructuredLinkTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -62,6 +67,9 @@ def serialize_strategy_name(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -73,11 +81,14 @@ def serialize_model(self, handler): "content", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/generatedattachmentcontent.py b/src/glean/api_client/models/generatedattachmentcontent.py index cc022b56..7ee09daf 100644 --- a/src/glean/api_client/models/generatedattachmentcontent.py +++ b/src/glean/api_client/models/generatedattachmentcontent.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class GeneratedAttachmentContent(BaseModel): r"""The content that has been generated.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["displayHeader", "text"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/generatedqna.py b/src/glean/api_client/models/generatedqna.py index f1fbf635..5e7c7147 100644 --- a/src/glean/api_client/models/generatedqna.py +++ b/src/glean/api_client/models/generatedqna.py @@ -4,7 +4,12 @@ from .followupaction import FollowupAction, FollowupActionTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -87,6 +92,9 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -100,11 +108,14 @@ def serialize_model(self, handler): "trackingToken", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/get_rest_api_v1_tools_listop.py b/src/glean/api_client/models/get_rest_api_v1_tools_listop.py index b5265a60..ffe96326 100644 --- a/src/glean/api_client/models/get_rest_api_v1_tools_listop.py +++ b/src/glean/api_client/models/get_rest_api_v1_tools_listop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -23,13 +28,19 @@ class GetRestAPIV1ToolsListRequest(BaseModel): r"""Optional array of tool names to filter by""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["toolNames"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getagentop.py b/src/glean/api_client/models/getagentop.py index 9cb38383..00864b20 100644 --- a/src/glean/api_client/models/getagentop.py +++ b/src/glean/api_client/models/getagentop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class GetAgentRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getagentschemasop.py b/src/glean/api_client/models/getagentschemasop.py index c381cdae..9a2ee367 100644 --- a/src/glean/api_client/models/getagentschemasop.py +++ b/src/glean/api_client/models/getagentschemasop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class GetAgentSchemasRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getanswererror.py b/src/glean/api_client/models/getanswererror.py index 102fadd9..f5af1a19 100644 --- a/src/glean/api_client/models/getanswererror.py +++ b/src/glean/api_client/models/getanswererror.py @@ -4,7 +4,12 @@ from .person import Person, PersonTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -40,13 +45,19 @@ def serialize_error_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["errorType", "answerAuthor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getanswerop.py b/src/glean/api_client/models/getanswerop.py index 3a649778..6a436c4b 100644 --- a/src/glean/api_client/models/getanswerop.py +++ b/src/glean/api_client/models/getanswerop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getanswerrequest import GetAnswerRequest, GetAnswerRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class GetanswerRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getanswerrequest.py b/src/glean/api_client/models/getanswerrequest.py index 5a1648a1..1ae2db6c 100644 --- a/src/glean/api_client/models/getanswerrequest.py +++ b/src/glean/api_client/models/getanswerrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class GetAnswerRequest(BaseModel): r"""Glean Document ID of the Answer. The Glean Document ID is supported for cases where the Answer ID isn't available. If both are available, using the Answer ID is preferred.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "docId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getanswerresponse.py b/src/glean/api_client/models/getanswerresponse.py index 6bb54cef..2f4c99ed 100644 --- a/src/glean/api_client/models/getanswerresponse.py +++ b/src/glean/api_client/models/getanswerresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .answerresult import AnswerResult, AnswerResultTypedDict from .getanswererror import GetAnswerError, GetAnswerErrorTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class GetAnswerResponse(BaseModel): error: Optional[GetAnswerError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["answerResult", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatapplicationop.py b/src/glean/api_client/models/getchatapplicationop.py index 8431fc2e..d90bc43c 100644 --- a/src/glean/api_client/models/getchatapplicationop.py +++ b/src/glean/api_client/models/getchatapplicationop.py @@ -5,7 +5,12 @@ GetChatApplicationRequest, GetChatApplicationRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -41,13 +46,19 @@ class GetchatapplicationRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatapplicationresponse.py b/src/glean/api_client/models/getchatapplicationresponse.py index c4b38871..f4525575 100644 --- a/src/glean/api_client/models/getchatapplicationresponse.py +++ b/src/glean/api_client/models/getchatapplicationresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Optional from typing_extensions import NotRequired, TypedDict @@ -15,13 +20,19 @@ class GetChatApplicationResponse(BaseModel): application: Optional[Any] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["application"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatfileop.py b/src/glean/api_client/models/getchatfileop.py index 60bbf327..74b965a5 100644 --- a/src/glean/api_client/models/getchatfileop.py +++ b/src/glean/api_client/models/getchatfileop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -35,13 +40,19 @@ class GetChatFileRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["preview"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatfilesop.py b/src/glean/api_client/models/getchatfilesop.py index d0ba2bef..466a19c2 100644 --- a/src/glean/api_client/models/getchatfilesop.py +++ b/src/glean/api_client/models/getchatfilesop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getchatfilesrequest import GetChatFilesRequest, GetChatFilesRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class GetchatfilesRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatfilesresponse.py b/src/glean/api_client/models/getchatfilesresponse.py index c3d8e2e9..df6cb607 100644 --- a/src/glean/api_client/models/getchatfilesresponse.py +++ b/src/glean/api_client/models/getchatfilesresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatfile import ChatFile, ChatFileTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class GetChatFilesResponse(BaseModel): r"""A map of file IDs to ChatFile structs.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["files"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatop.py b/src/glean/api_client/models/getchatop.py index c4155fe3..5be45633 100644 --- a/src/glean/api_client/models/getchatop.py +++ b/src/glean/api_client/models/getchatop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getchatrequest import GetChatRequest, GetChatRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -38,13 +43,19 @@ class GetchatRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getchatresponse.py b/src/glean/api_client/models/getchatresponse.py index 7dfadab7..9c9daadf 100644 --- a/src/glean/api_client/models/getchatresponse.py +++ b/src/glean/api_client/models/getchatresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatresult import ChatResult, ChatResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -19,13 +24,19 @@ class GetChatResponse(BaseModel): ) @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["chatResult"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getcollectionop.py b/src/glean/api_client/models/getcollectionop.py index 92fdcda5..5720a4ac 100644 --- a/src/glean/api_client/models/getcollectionop.py +++ b/src/glean/api_client/models/getcollectionop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getcollectionrequest import GetCollectionRequest, GetCollectionRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class GetcollectionRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getcollectionrequest.py b/src/glean/api_client/models/getcollectionrequest.py index 36d10443..3ca5191b 100644 --- a/src/glean/api_client/models/getcollectionrequest.py +++ b/src/glean/api_client/models/getcollectionrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -37,13 +42,19 @@ class GetCollectionRequest(BaseModel): r"""The datasource allowed in the Collection returned.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["withItems", "withHierarchy", "allowedDatasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getcollectionresponse.py b/src/glean/api_client/models/getcollectionresponse.py index 10123b3a..cffa440e 100644 --- a/src/glean/api_client/models/getcollectionresponse.py +++ b/src/glean/api_client/models/getcollectionresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .collection import Collection, CollectionTypedDict from .collectionerror import CollectionError, CollectionErrorTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -37,15 +42,21 @@ class GetCollectionResponse(BaseModel): r"""Use `collection.trackingToken` instead.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["collection", "rootCollection", "error", "trackingToken"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdlpreportresponse.py b/src/glean/api_client/models/getdlpreportresponse.py index 7af2ec3d..84202f83 100644 --- a/src/glean/api_client/models/getdlpreportresponse.py +++ b/src/glean/api_client/models/getdlpreportresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .dlpreport import DlpReport, DlpReportTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class GetDlpReportResponse(BaseModel): r"""Full policy information that will be used for scans.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["report"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocpermissionsop.py b/src/glean/api_client/models/getdocpermissionsop.py index bc562e41..1129e68f 100644 --- a/src/glean/api_client/models/getdocpermissionsop.py +++ b/src/glean/api_client/models/getdocpermissionsop.py @@ -5,7 +5,12 @@ GetDocPermissionsRequest, GetDocPermissionsRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class GetdocpermissionsRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocpermissionsrequest.py b/src/glean/api_client/models/getdocpermissionsrequest.py index 4c4a4e5b..d5c8c144 100644 --- a/src/glean/api_client/models/getdocpermissionsrequest.py +++ b/src/glean/api_client/models/getdocpermissionsrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -18,13 +23,19 @@ class GetDocPermissionsRequest(BaseModel): r"""The Glean Document ID to retrieve permissions for.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documentId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocpermissionsresponse.py b/src/glean/api_client/models/getdocpermissionsresponse.py index 061e8975..343e2814 100644 --- a/src/glean/api_client/models/getdocpermissionsresponse.py +++ b/src/glean/api_client/models/getdocpermissionsresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -20,13 +25,19 @@ class GetDocPermissionsResponse(BaseModel): r"""A list of emails of users who have access to the document. If the document is visible to all Glean users, a list with only a single value of 'VISIBLE_TO_ALL'.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["allowedUserEmails"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentcountresponse.py b/src/glean/api_client/models/getdocumentcountresponse.py index c3400b20..1bca8560 100644 --- a/src/glean/api_client/models/getdocumentcountresponse.py +++ b/src/glean/api_client/models/getdocumentcountresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -24,13 +29,19 @@ class GetDocumentCountResponse(BaseModel): r"""Number of documents corresponding to the specified custom datasource.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documentCount"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsbyfacetsop.py b/src/glean/api_client/models/getdocumentsbyfacetsop.py index a6bd1531..ad26c205 100644 --- a/src/glean/api_client/models/getdocumentsbyfacetsop.py +++ b/src/glean/api_client/models/getdocumentsbyfacetsop.py @@ -5,7 +5,12 @@ GetDocumentsByFacetsRequest, GetDocumentsByFacetsRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class GetdocumentsbyfacetsRequestRequest(BaseModel): r"""Information about facet conditions for documents to be retrieved.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "GetDocumentsByFacetsRequest"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsbyfacetsrequest.py b/src/glean/api_client/models/getdocumentsbyfacetsrequest.py index fe741831..84a629ed 100644 --- a/src/glean/api_client/models/getdocumentsbyfacetsrequest.py +++ b/src/glean/api_client/models/getdocumentsbyfacetsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetfilterset import FacetFilterSet, FacetFilterSetTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -31,13 +36,19 @@ class GetDocumentsByFacetsRequest(BaseModel): r"""Pagination cursor. A previously received opaque token representing the position in the overall results at which to start.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasourcesFilter", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsbyfacetsresponse.py b/src/glean/api_client/models/getdocumentsbyfacetsresponse.py index e7e0337a..16725989 100644 --- a/src/glean/api_client/models/getdocumentsbyfacetsresponse.py +++ b/src/glean/api_client/models/getdocumentsbyfacetsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .document import Document, DocumentTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -31,13 +36,19 @@ class GetDocumentsByFacetsResponse(BaseModel): r"""Cursor that indicates the start of the next page of results. To be passed in \"more\" requests for this query.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documents", "hasMoreResults", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsop.py b/src/glean/api_client/models/getdocumentsop.py index fd29b3ef..52c0bd8f 100644 --- a/src/glean/api_client/models/getdocumentsop.py +++ b/src/glean/api_client/models/getdocumentsop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getdocumentsrequest import GetDocumentsRequest, GetDocumentsRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class GetdocumentsRequestRequest(BaseModel): r"""Information about documents requested.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "GetDocumentsRequest"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsrequest.py b/src/glean/api_client/models/getdocumentsrequest.py index 8e64be35..148767fe 100644 --- a/src/glean/api_client/models/getdocumentsrequest.py +++ b/src/glean/api_client/models/getdocumentsrequest.py @@ -3,7 +3,12 @@ from __future__ import annotations from .documentspec_union import DocumentSpecUnion, DocumentSpecUnionTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -38,13 +43,19 @@ class GetDocumentsRequest(BaseModel): r"""List of Document fields to return (that aren't returned by default)""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["includeFields"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentsresponse.py b/src/glean/api_client/models/getdocumentsresponse.py index 6448b888..cbe7004c 100644 --- a/src/glean/api_client/models/getdocumentsresponse.py +++ b/src/glean/api_client/models/getdocumentsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentorerror_union import DocumentOrErrorUnion, DocumentOrErrorUnionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class GetDocumentsResponse(BaseModel): r"""The document details or the error if document is not found.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documents"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentstatusresponse.py b/src/glean/api_client/models/getdocumentstatusresponse.py index 5bd4fd92..6a394956 100644 --- a/src/glean/api_client/models/getdocumentstatusresponse.py +++ b/src/glean/api_client/models/getdocumentstatusresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -43,15 +48,21 @@ class GetDocumentStatusResponse(BaseModel): r"""Time of last successful indexing, in epoch seconds""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["uploadStatus", "lastUploadedAt", "indexingStatus", "lastIndexedAt"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocumentvisibilityoverridesresponse.py b/src/glean/api_client/models/getdocumentvisibilityoverridesresponse.py index cd81ecd7..1a15d7b5 100644 --- a/src/glean/api_client/models/getdocumentvisibilityoverridesresponse.py +++ b/src/glean/api_client/models/getdocumentvisibilityoverridesresponse.py @@ -5,7 +5,12 @@ DocumentVisibilityOverride, DocumentVisibilityOverrideTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -23,13 +28,19 @@ class GetDocumentVisibilityOverridesResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["visibilityOverrides"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getdocvisibilityop.py b/src/glean/api_client/models/getdocvisibilityop.py index 198ee640..78a6a704 100644 --- a/src/glean/api_client/models/getdocvisibilityop.py +++ b/src/glean/api_client/models/getdocvisibilityop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -23,13 +28,19 @@ class GetdocvisibilityRequest(BaseModel): r"""List of doc-ids which will have their hide status fetched.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docIds"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getpersonphotoop.py b/src/glean/api_client/models/getpersonphotoop.py index 7d3d9948..5259171f 100644 --- a/src/glean/api_client/models/getpersonphotoop.py +++ b/src/glean/api_client/models/getpersonphotoop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata import httpx from pydantic import model_serializer @@ -33,13 +38,19 @@ class GetPersonPhotoRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["ds"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getpinop.py b/src/glean/api_client/models/getpinop.py index 7c1467b4..fc239da9 100644 --- a/src/glean/api_client/models/getpinop.py +++ b/src/glean/api_client/models/getpinop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getpinrequest import GetPinRequest, GetPinRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class GetpinRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getpinrequest.py b/src/glean/api_client/models/getpinrequest.py index c11fbc5c..6589250e 100644 --- a/src/glean/api_client/models/getpinrequest.py +++ b/src/glean/api_client/models/getpinrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class GetPinRequest(BaseModel): r"""The opaque id of the pin to be fetched.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getpinresponse.py b/src/glean/api_client/models/getpinresponse.py index a4562931..c7032872 100644 --- a/src/glean/api_client/models/getpinresponse.py +++ b/src/glean/api_client/models/getpinresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .pindocument import PinDocument, PinDocumentTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class GetPinResponse(BaseModel): pin: Optional[PinDocument] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["pin"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getpolicyop.py b/src/glean/api_client/models/getpolicyop.py index 95b3502e..f73022d3 100644 --- a/src/glean/api_client/models/getpolicyop.py +++ b/src/glean/api_client/models/getpolicyop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -28,13 +33,19 @@ class GetpolicyRequest(BaseModel): r"""The version of the policy to fetch. Each time a policy is updated, the older version is still stored. If this is left empty, the latest policy is fetched.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getshortcutop.py b/src/glean/api_client/models/getshortcutop.py index 3ca7f668..f371f25f 100644 --- a/src/glean/api_client/models/getshortcutop.py +++ b/src/glean/api_client/models/getshortcutop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .getshortcutrequest import GetShortcutRequest, GetShortcutRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class GetshortcutRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getshortcutresponse.py b/src/glean/api_client/models/getshortcutresponse.py index b20fa741..7096c419 100644 --- a/src/glean/api_client/models/getshortcutresponse.py +++ b/src/glean/api_client/models/getshortcutresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .shortcut import Shortcut, ShortcutTypedDict from .shortcuterror import ShortcutError, ShortcutErrorTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -20,13 +25,19 @@ class GetShortcutResponse(BaseModel): error: Optional[ShortcutError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["shortcut", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/getusercountresponse.py b/src/glean/api_client/models/getusercountresponse.py index 9a042fa5..26a6a779 100644 --- a/src/glean/api_client/models/getusercountresponse.py +++ b/src/glean/api_client/models/getusercountresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -22,13 +27,19 @@ class GetUserCountResponse(BaseModel): r"""Number of users corresponding to the specified custom datasource.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["userCount"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/gleanassistinsightsresponse.py b/src/glean/api_client/models/gleanassistinsightsresponse.py index e6c29553..1b1c0bcc 100644 --- a/src/glean/api_client/models/gleanassistinsightsresponse.py +++ b/src/glean/api_client/models/gleanassistinsightsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .useractivityinsight import UserActivityInsight, UserActivityInsightTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -47,6 +52,9 @@ class GleanAssistInsightsResponse(BaseModel): r"""List of departments applicable for users tab.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -57,11 +65,14 @@ def serialize_model(self, handler): "departments", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/gleandataerror.py b/src/glean/api_client/models/gleandataerror.py index 7672589b..62285724 100644 --- a/src/glean/api_client/models/gleandataerror.py +++ b/src/glean/api_client/models/gleandataerror.py @@ -6,7 +6,12 @@ InvalidOperatorValueError, InvalidOperatorValueErrorTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -52,6 +57,9 @@ class GleanDataError(BaseModel): r"""Indicates the federated search results could not be fetched due to rate limiting.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -62,11 +70,14 @@ def serialize_model(self, handler): "federatedSearchRateLimitError", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/grantpermission.py b/src/glean/api_client/models/grantpermission.py index a1bb6806..84eb7d00 100644 --- a/src/glean/api_client/models/grantpermission.py +++ b/src/glean/api_client/models/grantpermission.py @@ -3,7 +3,12 @@ from __future__ import annotations from .scopetype import ScopeType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -33,13 +38,19 @@ def serialize_scope_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["scopeType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/group.py b/src/glean/api_client/models/group.py index f1b4a7e9..c36dba98 100644 --- a/src/glean/api_client/models/group.py +++ b/src/glean/api_client/models/group.py @@ -3,7 +3,12 @@ from __future__ import annotations from .grouptype import GroupType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -53,13 +58,19 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "datasourceInstance", "provisioningId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/hotword.py b/src/glean/api_client/models/hotword.py index 51dcb030..fd221bc3 100644 --- a/src/glean/api_client/models/hotword.py +++ b/src/glean/api_client/models/hotword.py @@ -2,7 +2,12 @@ from __future__ import annotations from .hotwordproximity import HotwordProximity, HotwordProximityTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -19,13 +24,19 @@ class Hotword(BaseModel): proximity: Optional[HotwordProximity] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["regex", "proximity"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/hotwordproximity.py b/src/glean/api_client/models/hotwordproximity.py index ebc0ed38..1e1c60b6 100644 --- a/src/glean/api_client/models/hotwordproximity.py +++ b/src/glean/api_client/models/hotwordproximity.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -19,13 +24,19 @@ class HotwordProximity(BaseModel): window_after: Annotated[Optional[int], pydantic.Field(alias="windowAfter")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["windowBefore", "windowAfter"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/iconconfig.py b/src/glean/api_client/models/iconconfig.py index b7109f6b..64ede06a 100644 --- a/src/glean/api_client/models/iconconfig.py +++ b/src/glean/api_client/models/iconconfig.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -78,6 +83,9 @@ def serialize_icon_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -91,11 +99,14 @@ def serialize_model(self, handler): "url", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/importagentop.py b/src/glean/api_client/models/importagentop.py index d30f537e..71e0c51c 100644 --- a/src/glean/api_client/models/importagentop.py +++ b/src/glean/api_client/models/importagentop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .importagentrequest import ImportAgentRequest, ImportAgentRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import ( FieldMetadata, PathParamMetadata, @@ -50,13 +55,19 @@ class ImportAgentRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/importagentrequest.py b/src/glean/api_client/models/importagentrequest.py index c88111d7..ff803b47 100644 --- a/src/glean/api_client/models/importagentrequest.py +++ b/src/glean/api_client/models/importagentrequest.py @@ -3,7 +3,12 @@ from __future__ import annotations from .importagentsyncmode import ImportAgentSyncMode from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, MultipartFormMetadata import io import pydantic @@ -36,13 +41,19 @@ class Bundle(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["contentType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -150,6 +161,9 @@ class ImportAgentRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -162,11 +176,14 @@ def serialize_model(self, handler): "isDraft", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/importagentresponse.py b/src/glean/api_client/models/importagentresponse.py index 19b134ef..184d8619 100644 --- a/src/glean/api_client/models/importagentresponse.py +++ b/src/glean/api_client/models/importagentresponse.py @@ -4,7 +4,12 @@ from .importagentstatus import ImportAgentStatus from .workflowresult import WorkflowResult, WorkflowResultTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -35,13 +40,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["workflowResult", "status"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexdocumentrequest.py b/src/glean/api_client/models/indexdocumentrequest.py index e49af0a9..738f90d3 100644 --- a/src/glean/api_client/models/indexdocumentrequest.py +++ b/src/glean/api_client/models/indexdocumentrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentdefinition import DocumentDefinition, DocumentDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -27,13 +32,19 @@ class IndexDocumentRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexdocumentsrequest.py b/src/glean/api_client/models/indexdocumentsrequest.py index df0dc41e..9133661d 100644 --- a/src/glean/api_client/models/indexdocumentsrequest.py +++ b/src/glean/api_client/models/indexdocumentsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentdefinition import DocumentDefinition, DocumentDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -33,13 +38,19 @@ class IndexDocumentsRequest(BaseModel): r"""Optional id parameter to identify and track a batch of documents.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["uploadId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexemployeerequest.py b/src/glean/api_client/models/indexemployeerequest.py index c37c66ac..1676889e 100644 --- a/src/glean/api_client/models/indexemployeerequest.py +++ b/src/glean/api_client/models/indexemployeerequest.py @@ -5,7 +5,12 @@ EmployeeInfoDefinition, EmployeeInfoDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -30,13 +35,19 @@ class IndexEmployeeRequest(BaseModel): r"""Version number for the employee object. If absent or 0 then no version checks are done""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexgrouprequest.py b/src/glean/api_client/models/indexgrouprequest.py index f0b242fd..a3aba2bc 100644 --- a/src/glean/api_client/models/indexgrouprequest.py +++ b/src/glean/api_client/models/indexgrouprequest.py @@ -5,7 +5,12 @@ DatasourceGroupDefinition, DatasourceGroupDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class IndexGroupRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexingshortcut.py b/src/glean/api_client/models/indexingshortcut.py index 82edda46..14e9ed0b 100644 --- a/src/glean/api_client/models/indexingshortcut.py +++ b/src/glean/api_client/models/indexingshortcut.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -58,6 +63,9 @@ class IndexingShortcut(BaseModel): r"""For variable shortcuts, contains the URL template; note, `destinationUrl` contains default URL.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -69,11 +77,14 @@ def serialize_model(self, handler): "urlTemplate", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexmembershiprequest.py b/src/glean/api_client/models/indexmembershiprequest.py index 471ea84b..0cdb28a8 100644 --- a/src/glean/api_client/models/indexmembershiprequest.py +++ b/src/glean/api_client/models/indexmembershiprequest.py @@ -5,7 +5,12 @@ DatasourceMembershipDefinition, DatasourceMembershipDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class IndexMembershipRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexstatus.py b/src/glean/api_client/models/indexstatus.py index 51863783..69258e11 100644 --- a/src/glean/api_client/models/indexstatus.py +++ b/src/glean/api_client/models/indexstatus.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -28,13 +33,19 @@ class IndexStatus(BaseModel): r"""When the document was last indexed""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["lastCrawledTime", "lastIndexedTime"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexteamrequest.py b/src/glean/api_client/models/indexteamrequest.py index e524f951..daad53ac 100644 --- a/src/glean/api_client/models/indexteamrequest.py +++ b/src/glean/api_client/models/indexteamrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .teaminfodefinition import TeamInfoDefinition, TeamInfoDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -27,13 +32,19 @@ class IndexTeamRequest(BaseModel): r"""Version number for the team object. If absent or 0 then no version checks are done""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/indexuserrequest.py b/src/glean/api_client/models/indexuserrequest.py index 7acd43d1..3ea44b1b 100644 --- a/src/glean/api_client/models/indexuserrequest.py +++ b/src/glean/api_client/models/indexuserrequest.py @@ -5,7 +5,12 @@ DatasourceUserDefinition, DatasourceUserDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class IndexUserRequest(BaseModel): r"""Version number for document for optimistic concurrency control. If absent or 0 then no version checks are done.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["version"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/inputoptions.py b/src/glean/api_client/models/inputoptions.py index 3472a2e4..5b803dc6 100644 --- a/src/glean/api_client/models/inputoptions.py +++ b/src/glean/api_client/models/inputoptions.py @@ -4,7 +4,12 @@ from .timerange import TimeRange, TimeRangeTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -109,6 +114,9 @@ def serialize_time_period_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -121,11 +129,14 @@ def serialize_model(self, handler): "subsetDocIdsToScan", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsassistantrequest.py b/src/glean/api_client/models/insightsassistantrequest.py index 806dc671..ac09523c 100644 --- a/src/glean/api_client/models/insightsassistantrequest.py +++ b/src/glean/api_client/models/insightsassistantrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -29,13 +34,19 @@ class InsightsAssistantRequest(BaseModel): day_range: Annotated[Optional[Period], pydantic.Field(alias="dayRange")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["departments", "managerEmails", "dayRange"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightschatsummary.py b/src/glean/api_client/models/insightschatsummary.py index 44b76c5a..ef291b8c 100644 --- a/src/glean/api_client/models/insightschatsummary.py +++ b/src/glean/api_client/models/insightschatsummary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -39,15 +44,21 @@ class InsightsChatSummary(BaseModel): r"""Total number of distinct users who used Chat over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["monthlyActiveUsers", "weeklyActiveUsers", "numChats", "numChatUsers"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsop.py b/src/glean/api_client/models/insightsop.py index c0de2bef..c194163d 100644 --- a/src/glean/api_client/models/insightsop.py +++ b/src/glean/api_client/models/insightsop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .insightsrequest import InsightsRequest, InsightsRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class InsightsRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsoverviewrequest.py b/src/glean/api_client/models/insightsoverviewrequest.py index eda4a606..7a5e1fa6 100644 --- a/src/glean/api_client/models/insightsoverviewrequest.py +++ b/src/glean/api_client/models/insightsoverviewrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -29,13 +34,19 @@ class InsightsOverviewRequest(BaseModel): day_range: Annotated[Optional[Period], pydantic.Field(alias="dayRange")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["departments", "managerEmails", "dayRange"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsoverviewresponse.py b/src/glean/api_client/models/insightsoverviewresponse.py index 27313ce1..e4fb9e0f 100644 --- a/src/glean/api_client/models/insightsoverviewresponse.py +++ b/src/glean/api_client/models/insightsoverviewresponse.py @@ -6,7 +6,12 @@ from .insightssearchsummary import InsightsSearchSummary, InsightsSearchSummaryTypedDict from .labeledcountinfo import LabeledCountInfo, LabeledCountInfoTypedDict from .peruserinsight import PerUserInsight, PerUserInsightTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, List, Optional @@ -235,6 +240,9 @@ class InsightsOverviewResponse(BaseModel): r"""Per-user insights, over the specified time period in the specified departments. All current users in the organization who have signed into Glean at least once are included.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -277,11 +285,14 @@ def serialize_model(self, handler): "perUserInsights", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsrequest.py b/src/glean/api_client/models/insightsrequest.py index 8ec76f9c..aa059e5b 100644 --- a/src/glean/api_client/models/insightsrequest.py +++ b/src/glean/api_client/models/insightsrequest.py @@ -18,7 +18,12 @@ McpBreakdownInsightsRequestTypedDict, ) from .mcpinsightsrequest import McpInsightsRequest, McpInsightsRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -63,6 +68,9 @@ class InsightsRequest(BaseModel): r"""If true, suppresses the generation of per-user Insights in the response. Default is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -74,11 +82,14 @@ def serialize_model(self, handler): "disablePerUserInsights", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightsresponse.py b/src/glean/api_client/models/insightsresponse.py index aa95f0f4..36db7acb 100644 --- a/src/glean/api_client/models/insightsresponse.py +++ b/src/glean/api_client/models/insightsresponse.py @@ -22,7 +22,12 @@ McpBreakdownInsightsResponseTypedDict, ) from .mcpinsightsresponse import McpInsightsResponse, McpInsightsResponseTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -65,6 +70,9 @@ class InsightsResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -76,11 +84,14 @@ def serialize_model(self, handler): "mcpBreakdownResponse", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/insightssearchsummary.py b/src/glean/api_client/models/insightssearchsummary.py index 481ba43c..bc0dc3e6 100644 --- a/src/glean/api_client/models/insightssearchsummary.py +++ b/src/glean/api_client/models/insightssearchsummary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -39,15 +44,21 @@ class InsightsSearchSummary(BaseModel): r"""Total number of distinct users who searched over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["monthlyActiveUsers", "weeklyActiveUsers", "numSearches", "numSearchUsers"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/invalidoperatorvalueerror.py b/src/glean/api_client/models/invalidoperatorvalueerror.py index e9e0ee2b..4c013b71 100644 --- a/src/glean/api_client/models/invalidoperatorvalueerror.py +++ b/src/glean/api_client/models/invalidoperatorvalueerror.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class InvalidOperatorValueError(BaseModel): r"""The invalid operator value.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["key", "value"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/inviteinfo.py b/src/glean/api_client/models/inviteinfo.py index 20044d83..48cea460 100644 --- a/src/glean/api_client/models/inviteinfo.py +++ b/src/glean/api_client/models/inviteinfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -59,15 +64,21 @@ class InviteInfo(BaseModel): r"""The time this person was reminded in ISO format (ISO 8601) if a reminder was sent.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["signUpTime", "invites", "inviter", "inviteTime", "reminderTime"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/labeledcountinfo.py b/src/glean/api_client/models/labeledcountinfo.py index c123fd88..0bc0a2b3 100644 --- a/src/glean/api_client/models/labeledcountinfo.py +++ b/src/glean/api_client/models/labeledcountinfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from .countinfo import CountInfo, CountInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -26,13 +31,19 @@ class LabeledCountInfo(BaseModel): r"""List of data points for counts for a given date period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["countInfo"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/lifecycleevent.py b/src/glean/api_client/models/lifecycleevent.py index d30704e6..bc4960d4 100644 --- a/src/glean/api_client/models/lifecycleevent.py +++ b/src/glean/api_client/models/lifecycleevent.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -42,13 +47,19 @@ def serialize_event(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["event", "timestamp"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listanswersop.py b/src/glean/api_client/models/listanswersop.py index eb99f446..01bcf155 100644 --- a/src/glean/api_client/models/listanswersop.py +++ b/src/glean/api_client/models/listanswersop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .listanswersrequest import ListAnswersRequest, ListAnswersRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class ListanswersRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listanswersrequest.py b/src/glean/api_client/models/listanswersrequest.py index 6868a538..2c31e54f 100644 --- a/src/glean/api_client/models/listanswersrequest.py +++ b/src/glean/api_client/models/listanswersrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -18,13 +23,19 @@ class ListAnswersRequest(BaseModel): r"""The Answer Board Id to list answers on.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["boardId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listchatsop.py b/src/glean/api_client/models/listchatsop.py index cdd71758..e363590a 100644 --- a/src/glean/api_client/models/listchatsop.py +++ b/src/glean/api_client/models/listchatsop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -31,13 +36,19 @@ class ListchatsRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listchatsresponse.py b/src/glean/api_client/models/listchatsresponse.py index 4c33ac6b..ff68c98f 100644 --- a/src/glean/api_client/models/listchatsresponse.py +++ b/src/glean/api_client/models/listchatsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatmetadataresult import ChatMetadataResult, ChatMetadataResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -24,13 +29,19 @@ class ListChatsResponse(BaseModel): r"""An opaque cursor for fetching the next page of results. If empty, there are no more results.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["chatResults", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listcollectionsop.py b/src/glean/api_client/models/listcollectionsop.py index ad00f15c..f612f8b3 100644 --- a/src/glean/api_client/models/listcollectionsop.py +++ b/src/glean/api_client/models/listcollectionsop.py @@ -5,7 +5,12 @@ ListCollectionsRequest, ListCollectionsRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class ListcollectionsRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listcollectionsrequest.py b/src/glean/api_client/models/listcollectionsrequest.py index f956dd2a..5ca0c410 100644 --- a/src/glean/api_client/models/listcollectionsrequest.py +++ b/src/glean/api_client/models/listcollectionsrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -43,15 +48,21 @@ class ListCollectionsRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["query", "includeAudience", "includeRoles", "allowedDatasource"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listdlpfindingsexportsresponse.py b/src/glean/api_client/models/listdlpfindingsexportsresponse.py index 4920345f..1d172533 100644 --- a/src/glean/api_client/models/listdlpfindingsexportsresponse.py +++ b/src/glean/api_client/models/listdlpfindingsexportsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .exportinfo import ExportInfo, ExportInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class ListDlpFindingsExportsResponse(BaseModel): exports: Optional[List[ExportInfo]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["exports"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listdlpreportsresponse.py b/src/glean/api_client/models/listdlpreportsresponse.py index df22a92d..58201d13 100644 --- a/src/glean/api_client/models/listdlpreportsresponse.py +++ b/src/glean/api_client/models/listdlpreportsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .dlpreport import DlpReport, DlpReportTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class ListDlpReportsResponse(BaseModel): reports: Optional[List[DlpReport]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["reports"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listentitiesop.py b/src/glean/api_client/models/listentitiesop.py index c64939c3..949125fc 100644 --- a/src/glean/api_client/models/listentitiesop.py +++ b/src/glean/api_client/models/listentitiesop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .listentitiesrequest import ListEntitiesRequest, ListEntitiesRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class ListentitiesRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listentitiesrequest.py b/src/glean/api_client/models/listentitiesrequest.py index 74911f03..ee0b2e8b 100644 --- a/src/glean/api_client/models/listentitiesrequest.py +++ b/src/glean/api_client/models/listentitiesrequest.py @@ -4,7 +4,12 @@ from .facetfilter import FacetFilter, FacetFilterTypedDict from .sortoptions import SortOptions, SortOptionsTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -98,6 +103,9 @@ class ListEntitiesRequest(BaseModel): r"""The type of request being made.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -113,11 +121,14 @@ def serialize_model(self, handler): "requestType", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listentitiesresponse.py b/src/glean/api_client/models/listentitiesresponse.py index 6f8be48a..81624032 100644 --- a/src/glean/api_client/models/listentitiesresponse.py +++ b/src/glean/api_client/models/listentitiesresponse.py @@ -6,7 +6,12 @@ from .facetresult import FacetResult, FacetResultTypedDict from .person import Person, PersonTypedDict from .team import Team, TeamTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -67,6 +72,9 @@ class ListEntitiesResponse(BaseModel): r"""list of Person attributes that are custom setup by deployment""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -81,11 +89,14 @@ def serialize_model(self, handler): "customFacetNames", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listpinsop.py b/src/glean/api_client/models/listpinsop.py index 147e4bd9..b8a6fa2a 100644 --- a/src/glean/api_client/models/listpinsop.py +++ b/src/glean/api_client/models/listpinsop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -37,13 +42,19 @@ class ListpinsRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listpoliciesop.py b/src/glean/api_client/models/listpoliciesop.py index d0b1cc73..1c4ec286 100644 --- a/src/glean/api_client/models/listpoliciesop.py +++ b/src/glean/api_client/models/listpoliciesop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata import pydantic from pydantic import model_serializer @@ -31,13 +36,19 @@ class ListpoliciesRequest(BaseModel): r"""Filter to return reports with a given frequency.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["autoHide", "frequency"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listshortcutsop.py b/src/glean/api_client/models/listshortcutsop.py index 8b99ab97..8d675495 100644 --- a/src/glean/api_client/models/listshortcutsop.py +++ b/src/glean/api_client/models/listshortcutsop.py @@ -5,7 +5,12 @@ ListShortcutsPaginatedRequest, ListShortcutsPaginatedRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class ListshortcutsRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listshortcutspaginatedrequest.py b/src/glean/api_client/models/listshortcutspaginatedrequest.py index 30b1e2d7..755603da 100644 --- a/src/glean/api_client/models/listshortcutspaginatedrequest.py +++ b/src/glean/api_client/models/listshortcutspaginatedrequest.py @@ -4,7 +4,12 @@ from .facetfilter import FacetFilter, FacetFilterTypedDict from .sortoptions import SortOptions, SortOptionsTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -50,13 +55,19 @@ class ListShortcutsPaginatedRequest(BaseModel): r"""Search query that should be a substring in atleast one of the fields (alias , inputAlias, destinationUrl, description). Empty query does not filter shortcuts.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["includeFields", "cursor", "filters", "sort", "query"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listshortcutspaginatedresponse.py b/src/glean/api_client/models/listshortcutspaginatedresponse.py index d8359a2f..b2799497 100644 --- a/src/glean/api_client/models/listshortcutspaginatedresponse.py +++ b/src/glean/api_client/models/listshortcutspaginatedresponse.py @@ -7,7 +7,12 @@ ShortcutsPaginationMetadata, ShortcutsPaginationMetadataTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -32,13 +37,19 @@ class ListShortcutsPaginatedResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["facetResults"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/listverificationsop.py b/src/glean/api_client/models/listverificationsop.py index 16e9645a..6c442e27 100644 --- a/src/glean/api_client/models/listverificationsop.py +++ b/src/glean/api_client/models/listverificationsop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class ListverificationsRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["count", "locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/manualfeedbackinfo.py b/src/glean/api_client/models/manualfeedbackinfo.py index 5d4bb515..b3627ea7 100644 --- a/src/glean/api_client/models/manualfeedbackinfo.py +++ b/src/glean/api_client/models/manualfeedbackinfo.py @@ -3,7 +3,12 @@ from __future__ import annotations from .feedbackchatexchange import FeedbackChatExchange, FeedbackChatExchangeTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -174,6 +179,9 @@ class ManualFeedbackInfo(BaseModel): r"""The scale of comparison for a rating associated with the feedback. Rating values start from one and go up to the maximum specified by ratingScale. For example, a five-option satisfaction rating will have a ratingScale of 5 and a thumbs-up/thumbs-down rating will have a ratingScale of 2.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -196,11 +204,14 @@ def serialize_model(self, handler): "ratingScale", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/manualfeedbacksidebysideinfo.py b/src/glean/api_client/models/manualfeedbacksidebysideinfo.py index f0f51104..c8a754e2 100644 --- a/src/glean/api_client/models/manualfeedbacksidebysideinfo.py +++ b/src/glean/api_client/models/manualfeedbacksidebysideinfo.py @@ -6,7 +6,12 @@ SideBySideImplementationTypedDict, ) from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -78,6 +83,9 @@ class ManualFeedbackSideBySideInfo(BaseModel): r"""Specific feedback comments for this implementation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -91,11 +99,14 @@ def serialize_model(self, handler): "comments", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpauthmethodbreakdown.py b/src/glean/api_client/models/mcpauthmethodbreakdown.py index fb87c13e..1b763a36 100644 --- a/src/glean/api_client/models/mcpauthmethodbreakdown.py +++ b/src/glean/api_client/models/mcpauthmethodbreakdown.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -35,15 +40,21 @@ class McpAuthMethodBreakdown(BaseModel): r"""Host applications using this authentication method in the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["authMethod", "totalCalls", "activeUsers", "hostApplications"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpbreakdowninsightsrequest.py b/src/glean/api_client/models/mcpbreakdowninsightsrequest.py index 4d3a744d..f6d6a5a3 100644 --- a/src/glean/api_client/models/mcpbreakdowninsightsrequest.py +++ b/src/glean/api_client/models/mcpbreakdowninsightsrequest.py @@ -3,7 +3,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -78,6 +83,9 @@ class McpBreakdownInsightsRequest(BaseModel): r"""Authentication methods to filter by, for example OAUTH_XAA for Cross App Access traffic. Empty array means all authentication methods.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -92,11 +100,14 @@ def serialize_model(self, handler): "authMethods", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpbreakdowninsightsresponse.py b/src/glean/api_client/models/mcpbreakdowninsightsresponse.py index e3f49671..8ee538d7 100644 --- a/src/glean/api_client/models/mcpbreakdowninsightsresponse.py +++ b/src/glean/api_client/models/mcpbreakdowninsightsresponse.py @@ -12,7 +12,12 @@ from .mcpserverbreakdown import McpServerBreakdown, McpServerBreakdownTypedDict from .mcptoolbreakdown import McpToolBreakdown, McpToolBreakdownTypedDict from .mcpuserbreakdown import McpUserBreakdown, McpUserBreakdownTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -51,6 +56,9 @@ class McpBreakdownInsightsResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -61,11 +69,14 @@ def serialize_model(self, handler): "authMethodsBreakdown", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcphostapplicationbreakdown.py b/src/glean/api_client/models/mcphostapplicationbreakdown.py index 687302ac..08a477d5 100644 --- a/src/glean/api_client/models/mcphostapplicationbreakdown.py +++ b/src/glean/api_client/models/mcphostapplicationbreakdown.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class McpHostApplicationBreakdown(BaseModel): r"""Total number of active users from this host application in the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["hostApplication", "totalCalls", "activeUsers"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpinsightsrequest.py b/src/glean/api_client/models/mcpinsightsrequest.py index 270fed0d..a80ad2a5 100644 --- a/src/glean/api_client/models/mcpinsightsrequest.py +++ b/src/glean/api_client/models/mcpinsightsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .period import Period, PeriodTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -36,15 +41,21 @@ class McpInsightsRequest(BaseModel): day_range: Annotated[Optional[Period], pydantic.Field(alias="dayRange")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["departments", "managerIds", "managerEmails", "dayRange"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpinsightsresponse.py b/src/glean/api_client/models/mcpinsightsresponse.py index e4dd8004..af5f5357 100644 --- a/src/glean/api_client/models/mcpinsightsresponse.py +++ b/src/glean/api_client/models/mcpinsightsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .labeledcountinfo import LabeledCountInfo, LabeledCountInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -64,6 +69,9 @@ class McpInsightsResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -77,11 +85,14 @@ def serialize_model(self, handler): "topHostApplicationsActiveUserTimeseries", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpserverbreakdown.py b/src/glean/api_client/models/mcpserverbreakdown.py index aad32563..c562d939 100644 --- a/src/glean/api_client/models/mcpserverbreakdown.py +++ b/src/glean/api_client/models/mcpserverbreakdown.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -35,15 +40,21 @@ class McpServerBreakdown(BaseModel): r"""Host applications using this server in the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["server", "totalCalls", "activeUsers", "hostApplications"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcptoolbreakdown.py b/src/glean/api_client/models/mcptoolbreakdown.py index 5fcb1924..2218ca7c 100644 --- a/src/glean/api_client/models/mcptoolbreakdown.py +++ b/src/glean/api_client/models/mcptoolbreakdown.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -35,13 +40,19 @@ class McpToolBreakdown(BaseModel): r"""Host applications using this tool in the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["tool", "totalCalls", "activeUsers", "hostApplications"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/mcpuserbreakdown.py b/src/glean/api_client/models/mcpuserbreakdown.py index 42a1ac29..0c9cc702 100644 --- a/src/glean/api_client/models/mcpuserbreakdown.py +++ b/src/glean/api_client/models/mcpuserbreakdown.py @@ -2,7 +2,12 @@ from __future__ import annotations from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -46,6 +51,9 @@ class McpUserBreakdown(BaseModel): r"""Authentication methods this user's MCP clients presented in the specified time period, for example OAUTH_XAA for Cross App Access.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -57,11 +65,14 @@ def serialize_model(self, handler): "authMethods", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/meeting.py b/src/glean/api_client/models/meeting.py index c3c75325..65b1244f 100644 --- a/src/glean/api_client/models/meeting.py +++ b/src/glean/api_client/models/meeting.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -69,6 +74,9 @@ class Meeting(BaseModel): r"""The conference provider (e.g., \"Microsoft Teams\", \"Zoom\")""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -86,11 +94,14 @@ def serialize_model(self, handler): "conferenceProvider", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/message.py b/src/glean/api_client/models/message.py index 11d42a8f..5728d587 100644 --- a/src/glean/api_client/models/message.py +++ b/src/glean/api_client/models/message.py @@ -6,10 +6,16 @@ ChatCitationAnnotationTypedDict, ) from .contenttype import ContentType -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) +import pydantic from pydantic import model_serializer from typing import List, Optional -from typing_extensions import NotRequired, TypedDict +from typing_extensions import Annotated, NotRequired, TypedDict class MessageTextBlockTypedDict(TypedDict): @@ -26,13 +32,19 @@ class MessageTextBlock(BaseModel): annotations: Optional[List[ChatCitationAnnotation]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["annotations"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -47,6 +59,8 @@ class MessageTypedDict(TypedDict): r"""The role of the message.""" content: NotRequired[List[MessageTextBlockTypedDict]] r"""The content of the message.""" + message_tracking_token: NotRequired[str] + r"""An opaque token that represents this particular agent message. Populated only on `GLEAN_AI` messages in responses. To record feedback, pass the token of the message being rated (typically the final `GLEAN_AI` message of the run) as the single entry in `trackingTokens` to `/feedback`, with `category: CHAT`.""" class Message(BaseModel): @@ -56,14 +70,25 @@ class Message(BaseModel): content: Optional[List[MessageTextBlock]] = None r"""The content of the message.""" + message_tracking_token: Annotated[ + Optional[str], pydantic.Field(alias="messageTrackingToken") + ] = None + r"""An opaque token that represents this particular agent message. Populated only on `GLEAN_AI` messages in responses. To record feedback, pass the token of the message being rated (typically the final `GLEAN_AI` message of the run) as the single entry in `trackingTokens` to `/feedback`, with `category: CHAT`.""" + @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): - optional_fields = set(["role", "content"]) + optional_fields = set(["role", "content", "messageTrackingToken"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -71,3 +96,9 @@ def serialize_model(self, handler): m[k] = val return m + + +try: + Message.model_rebuild() +except NameError: + pass diff --git a/src/glean/api_client/models/message_input.py b/src/glean/api_client/models/message_input.py index 75d840bf..d919f398 100644 --- a/src/glean/api_client/models/message_input.py +++ b/src/glean/api_client/models/message_input.py @@ -2,7 +2,12 @@ from __future__ import annotations from .contenttype import ContentType -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -34,13 +39,19 @@ class MessageInput(BaseModel): r"""The content of the message.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["role", "content"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/messagesop.py b/src/glean/api_client/models/messagesop.py index 8e1735a0..119cbd0f 100644 --- a/src/glean/api_client/models/messagesop.py +++ b/src/glean/api_client/models/messagesop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .messagesrequest import MessagesRequest, MessagesRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class MessagesRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/messagesrequest.py b/src/glean/api_client/models/messagesrequest.py index 2076bc4f..c016929f 100644 --- a/src/glean/api_client/models/messagesrequest.py +++ b/src/glean/api_client/models/messagesrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -85,6 +90,9 @@ class MessagesRequest(BaseModel): r"""The datasource instance display name from which the document was extracted. This is used for appinstance facet filter for datasources that support multiple instances.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -95,11 +103,14 @@ def serialize_model(self, handler): "datasourceInstanceDisplayName", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/messagesresponse.py b/src/glean/api_client/models/messagesresponse.py index d68228bc..b5372489 100644 --- a/src/glean/api_client/models/messagesresponse.py +++ b/src/glean/api_client/models/messagesresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .searchresponse import SearchResponse, SearchResponseTypedDict from .searchresult import SearchResult, SearchResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class MessagesResponse(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["searchResponse", "rootMessage"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/objectdefinition.py b/src/glean/api_client/models/objectdefinition.py index 65f80f05..0a49d609 100644 --- a/src/glean/api_client/models/objectdefinition.py +++ b/src/glean/api_client/models/objectdefinition.py @@ -5,7 +5,12 @@ from .propertygroup import PropertyGroup, PropertyGroupTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -89,6 +94,9 @@ def serialize_doc_category(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -100,11 +108,14 @@ def serialize_model(self, handler): "summarizable", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/objectpermissions.py b/src/glean/api_client/models/objectpermissions.py index efe9cecc..4b5f8920 100644 --- a/src/glean/api_client/models/objectpermissions.py +++ b/src/glean/api_client/models/objectpermissions.py @@ -2,7 +2,12 @@ from __future__ import annotations from .writepermission import WritePermission, WritePermissionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class ObjectPermissions(BaseModel): r"""Describes the write permissions levels that a user has for a specific feature""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["write"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/operatormetadata.py b/src/glean/api_client/models/operatormetadata.py index 09ba687a..4f529fed 100644 --- a/src/glean/api_client/models/operatormetadata.py +++ b/src/glean/api_client/models/operatormetadata.py @@ -4,7 +4,12 @@ from .operatorscope import OperatorScope, OperatorScopeTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -61,15 +66,21 @@ def serialize_operator_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["isCustom", "operatorType", "helpText", "scopes", "value", "displayValue"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/operatorscope.py b/src/glean/api_client/models/operatorscope.py index ebb5f578..215c815e 100644 --- a/src/glean/api_client/models/operatorscope.py +++ b/src/glean/api_client/models/operatorscope.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -19,13 +24,19 @@ class OperatorScope(BaseModel): doc_type: Annotated[Optional[str], pydantic.Field(alias="docType")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasource", "docType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peopleop.py b/src/glean/api_client/models/peopleop.py index ab286401..e4559654 100644 --- a/src/glean/api_client/models/peopleop.py +++ b/src/glean/api_client/models/peopleop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .peoplerequest import PeopleRequest, PeopleRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class PeopleRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peoplerequest.py b/src/glean/api_client/models/peoplerequest.py index 1ecee9b1..a9beefa8 100644 --- a/src/glean/api_client/models/peoplerequest.py +++ b/src/glean/api_client/models/peoplerequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -77,6 +82,9 @@ class PeopleRequest(BaseModel): r"""A string denoting the search surface from which the endpoint is called.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -89,11 +97,14 @@ def serialize_model(self, handler): "source", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peopleresponse.py b/src/glean/api_client/models/peopleresponse.py index d882d545..f2c30504 100644 --- a/src/glean/api_client/models/peopleresponse.py +++ b/src/glean/api_client/models/peopleresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .person import Person, PersonTypedDict from .relateddocuments import RelatedDocuments, RelatedDocumentsTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -32,13 +37,19 @@ class PeopleResponse(BaseModel): r"""A list of IDs that could not be found.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["results", "relatedDocuments", "errors"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peragentinsight.py b/src/glean/api_client/models/peragentinsight.py index 6b711e39..08fe3493 100644 --- a/src/glean/api_client/models/peragentinsight.py +++ b/src/glean/api_client/models/peragentinsight.py @@ -3,7 +3,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -60,6 +65,9 @@ class PerAgentInsight(BaseModel): owner: Optional[Person] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -74,11 +82,14 @@ def serialize_model(self, handler): "owner", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/period.py b/src/glean/api_client/models/period.py index 5e03da4d..6a6b4067 100644 --- a/src/glean/api_client/models/period.py +++ b/src/glean/api_client/models/period.py @@ -2,7 +2,12 @@ from __future__ import annotations from .timepoint import TimePoint, TimePointTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -42,13 +47,19 @@ class Period(BaseModel): end: Optional[TimePoint] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["minDaysFromNow", "maxDaysFromNow", "start", "end"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/permissions.py b/src/glean/api_client/models/permissions.py index 51f12fd4..ba3cd47d 100644 --- a/src/glean/api_client/models/permissions.py +++ b/src/glean/api_client/models/permissions.py @@ -4,7 +4,12 @@ from .grantpermission import GrantPermission, GrantPermissionTypedDict from .readpermission import ReadPermission, ReadPermissionTypedDict from .writepermission import WritePermission, WritePermissionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, List, Optional @@ -68,6 +73,9 @@ class Permissions(BaseModel): r"""The roleIds of the roles a user has.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -81,11 +89,14 @@ def serialize_model(self, handler): "roles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/permissionsgroupintersectiondefinition.py b/src/glean/api_client/models/permissionsgroupintersectiondefinition.py index 52b20386..f3d3e261 100644 --- a/src/glean/api_client/models/permissionsgroupintersectiondefinition.py +++ b/src/glean/api_client/models/permissionsgroupintersectiondefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -22,13 +27,19 @@ class PermissionsGroupIntersectionDefinition(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["requiredGroups"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/person.py b/src/glean/api_client/models/person.py index be88dd7e..170fb931 100644 --- a/src/glean/api_client/models/person.py +++ b/src/glean/api_client/models/person.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -44,13 +49,19 @@ class Person(BaseModel): metadata: Optional["PersonMetadata"] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["identityOnly", "relatedDocuments", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/personmetadata.py b/src/glean/api_client/models/personmetadata.py index 5290ba80..7d0bcec6 100644 --- a/src/glean/api_client/models/personmetadata.py +++ b/src/glean/api_client/models/personmetadata.py @@ -12,7 +12,12 @@ from datetime import date, datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Dict, List, Optional, TYPE_CHECKING @@ -316,6 +321,9 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -367,11 +375,14 @@ def serialize_model(self, handler): "isOrgRoot", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/personteam.py b/src/glean/api_client/models/personteam.py index f0b080d9..04a9a143 100644 --- a/src/glean/api_client/models/personteam.py +++ b/src/glean/api_client/models/personteam.py @@ -4,7 +4,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -64,15 +69,21 @@ def serialize_relationship(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["id", "name", "externalLink", "relationship", "joinDate"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/persontoteamrelationship.py b/src/glean/api_client/models/persontoteamrelationship.py index e2f30552..800ab414 100644 --- a/src/glean/api_client/models/persontoteamrelationship.py +++ b/src/glean/api_client/models/persontoteamrelationship.py @@ -4,7 +4,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING @@ -64,13 +69,19 @@ def serialize_relationship(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["relationship", "customRelationshipStr", "joinDate"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peruserassistantinsight.py b/src/glean/api_client/models/peruserassistantinsight.py index a24e6f5d..185cc0de 100644 --- a/src/glean/api_client/models/peruserassistantinsight.py +++ b/src/glean/api_client/models/peruserassistantinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -52,6 +57,9 @@ class PerUserAssistantInsight(BaseModel): r"""Total number of days this user was active on the Assistant over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -63,11 +71,14 @@ def serialize_model(self, handler): "numDaysActive", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/peruserinsight.py b/src/glean/api_client/models/peruserinsight.py index 37af149f..6fa9a008 100644 --- a/src/glean/api_client/models/peruserinsight.py +++ b/src/glean/api_client/models/peruserinsight.py @@ -2,7 +2,12 @@ from __future__ import annotations from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -74,6 +79,9 @@ class PerUserInsight(BaseModel): r"""Total number of MCP calls for this user over the specified time period.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -89,11 +97,14 @@ def serialize_model(self, handler): "numMcpCalls", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/pindocument.py b/src/glean/api_client/models/pindocument.py index 7373e05b..34a2ae1c 100644 --- a/src/glean/api_client/models/pindocument.py +++ b/src/glean/api_client/models/pindocument.py @@ -4,7 +4,12 @@ from .facetfilter import FacetFilter, FacetFilterTypedDict from .favoriteinfo import FavoriteInfo, FavoriteInfoTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -62,6 +67,9 @@ class PinDocument(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -75,11 +83,14 @@ def serialize_model(self, handler): "favoriteInfo", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/pinop.py b/src/glean/api_client/models/pinop.py index fb63cdf7..bf943a3d 100644 --- a/src/glean/api_client/models/pinop.py +++ b/src/glean/api_client/models/pinop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .pinrequest import PinRequest, PinRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class PinRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/pinrequest.py b/src/glean/api_client/models/pinrequest.py index 1e291af2..cbf86a5d 100644 --- a/src/glean/api_client/models/pinrequest.py +++ b/src/glean/api_client/models/pinrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .facetfilter import FacetFilter, FacetFilterTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -31,13 +36,19 @@ class PinRequest(BaseModel): r"""The document to be pinned.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["queries", "audienceFilters", "documentId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_admin_agents_listop.py b/src/glean/api_client/models/platform_admin_agents_listop.py index 36b4714e..b97f3023 100644 --- a/src/glean/api_client/models/platform_admin_agents_listop.py +++ b/src/glean/api_client/models/platform_admin_agents_listop.py @@ -5,7 +5,12 @@ PlatformAdminAgentFilter, PlatformAdminAgentFilterTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import List, Optional @@ -20,7 +25,7 @@ class PlatformAdminAgentsListRequestTypedDict(TypedDict): """ filters: NotRequired[List[PlatformAdminAgentFilterTypedDict]] - r"""JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + r"""JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains \"HR\", send [{\"field\":\"name\",\"values\":[\"HR\"]}]. """ @@ -44,18 +49,24 @@ class PlatformAdminAgentsListRequest(BaseModel): Optional[List[PlatformAdminAgentFilter]], FieldMetadata(query=QueryParamMetadata(serialization="json")), ] = None - r"""JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + r"""JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains \"HR\", send [{\"field\":\"name\",\"values\":[\"HR\"]}]. """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor", "filters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_admin_idp_groups_listop.py b/src/glean/api_client/models/platform_admin_idp_groups_listop.py index 5ad05d37..ed2d666b 100644 --- a/src/glean/api_client/models/platform_admin_idp_groups_listop.py +++ b/src/glean/api_client/models/platform_admin_idp_groups_listop.py @@ -5,7 +5,12 @@ PlatformIdpGroupFilter, PlatformIdpGroupFilterTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import List, Optional @@ -20,7 +25,7 @@ class PlatformAdminIdpGroupsListRequestTypedDict(TypedDict): """ filters: NotRequired[List[PlatformIdpGroupFilterTypedDict]] - r"""JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as \"okta\". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + r"""JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. """ @@ -44,18 +49,24 @@ class PlatformAdminIdpGroupsListRequest(BaseModel): Optional[List[PlatformIdpGroupFilter]], FieldMetadata(query=QueryParamMetadata(serialization="json")), ] = None - r"""JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as \"okta\". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + r"""JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor", "filters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_admin_oauth_clients_listop.py b/src/glean/api_client/models/platform_admin_oauth_clients_listop.py index 02a68233..6a17468c 100644 --- a/src/glean/api_client/models/platform_admin_oauth_clients_listop.py +++ b/src/glean/api_client/models/platform_admin_oauth_clients_listop.py @@ -5,7 +5,12 @@ PlatformOAuthClientFilter, PlatformOAuthClientFilterTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import List, Optional @@ -20,7 +25,7 @@ class PlatformAdminOauthClientsListRequestTypedDict(TypedDict): """ filters: NotRequired[List[PlatformOAuthClientFilterTypedDict]] - r"""JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + r"""JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{\"field\":\"is_enabled\",\"values\":[\"true\",\"false\"]}]. To find the Claude Code clients, send [{\"field\":\"supported_app\",\"values\":[\"CLAUDE_CODE\"]}]. """ @@ -44,18 +49,24 @@ class PlatformAdminOauthClientsListRequest(BaseModel): Optional[List[PlatformOAuthClientFilter]], FieldMetadata(query=QueryParamMetadata(serialization="json")), ] = None - r"""JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values \"true\" and \"false\" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{\"field\":\"is_active\",\"values\":[\"true\",\"false\"]}]. + r"""JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{\"field\":\"is_enabled\",\"values\":[\"true\",\"false\"]}]. To find the Claude Code clients, send [{\"field\":\"supported_app\",\"values\":[\"CLAUDE_CODE\"]}]. """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor", "filters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_agents_get_schemasop.py b/src/glean/api_client/models/platform_agents_get_schemasop.py index dbe9a036..f139efc7 100644 --- a/src/glean/api_client/models/platform_agents_get_schemasop.py +++ b/src/glean/api_client/models/platform_agents_get_schemasop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -28,13 +33,19 @@ class PlatformAgentsGetSchemasRequest(BaseModel): r"""Whether to include tool metadata in the response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["include_tools"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_chat_create_streamop.py b/src/glean/api_client/models/platform_chat_create_streamop.py index 10c83a83..ec6e201a 100644 --- a/src/glean/api_client/models/platform_chat_create_streamop.py +++ b/src/glean/api_client/models/platform_chat_create_streamop.py @@ -13,7 +13,12 @@ PlatformChatTextFormat, PlatformChatTextFormatTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import get_discriminator, validate_const import pydantic from pydantic import Discriminator, Tag, model_serializer @@ -80,13 +85,19 @@ class PlatformChatCreateStreamText(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["format"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -143,13 +154,19 @@ class PlatformChatCreateStreamRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["stream", "store", "conversation_id", "text"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_chat_createop.py b/src/glean/api_client/models/platform_chat_createop.py index 1812a496..cb59d9fd 100644 --- a/src/glean/api_client/models/platform_chat_createop.py +++ b/src/glean/api_client/models/platform_chat_createop.py @@ -13,7 +13,12 @@ PlatformChatTextFormat, PlatformChatTextFormatTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import get_discriminator, validate_const import pydantic from pydantic import Discriminator, Tag, model_serializer @@ -80,13 +85,19 @@ class PlatformChatCreateText(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["format"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -143,13 +154,19 @@ class PlatformChatCreateRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["stream", "store", "conversation_id", "text"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_departments_listop.py b/src/glean/api_client/models/platform_departments_listop.py index 6b8e9bec..e61db5ea 100644 --- a/src/glean/api_client/models/platform_departments_listop.py +++ b/src/glean/api_client/models/platform_departments_listop.py @@ -1,10 +1,19 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from .platformdepartmentfilter import ( + PlatformDepartmentFilter, + PlatformDepartmentFilterTypedDict, +) +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer -from typing import Optional +from typing import List, Optional from typing_extensions import Annotated, NotRequired, TypedDict @@ -12,7 +21,13 @@ class PlatformDepartmentsListRequestTypedDict(TypedDict): page_size: NotRequired[int] r"""Maximum number of departments to return. Defaults to 50. Maximum is 100.""" cursor: NotRequired[str] - r"""Opaque pagination cursor from a previous response.""" + r"""Opaque pagination cursor from a previous response. Send the same filters that the previous request used. + + """ + filters: NotRequired[List[PlatformDepartmentFilterTypedDict]] + r"""JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + + """ class PlatformDepartmentsListRequest(BaseModel): @@ -26,16 +41,32 @@ class PlatformDepartmentsListRequest(BaseModel): Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), ] = None - r"""Opaque pagination cursor from a previous response.""" + r"""Opaque pagination cursor from a previous response. Send the same filters that the previous request used. + + """ + + filters: Annotated[ + Optional[List[PlatformDepartmentFilter]], + FieldMetadata(query=QueryParamMetadata(serialization="json")), + ] = None + r"""JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + + """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): - optional_fields = set(["page_size", "cursor"]) + optional_fields = set(["page_size", "cursor", "filters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_search_filtersop.py b/src/glean/api_client/models/platform_search_filtersop.py index 2120898e..53cc0838 100644 --- a/src/glean/api_client/models/platform_search_filtersop.py +++ b/src/glean/api_client/models/platform_search_filtersop.py @@ -5,7 +5,12 @@ PlatformSearchFiltersResponse, PlatformSearchFiltersResponseTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Dict, List, Optional @@ -41,13 +46,19 @@ class PlatformSearchFiltersRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasources", "query"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_skills_list_versionsop.py b/src/glean/api_client/models/platform_skills_list_versionsop.py index b34fd73f..99ff904f 100644 --- a/src/glean/api_client/models/platform_skills_list_versionsop.py +++ b/src/glean/api_client/models/platform_skills_list_versionsop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -36,13 +41,19 @@ class PlatformSkillsListVersionsRequest(BaseModel): r"""Opaque pagination cursor from a previous response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_skills_listop.py b/src/glean/api_client/models/platform_skills_listop.py index 5c21fa77..da1cdf66 100644 --- a/src/glean/api_client/models/platform_skills_listop.py +++ b/src/glean/api_client/models/platform_skills_listop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class PlatformSkillsListRequest(BaseModel): r"""Opaque pagination cursor from a previous response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_skills_preview_source_streamop.py b/src/glean/api_client/models/platform_skills_preview_source_streamop.py index 2ce11df6..8be76711 100644 --- a/src/glean/api_client/models/platform_skills_preview_source_streamop.py +++ b/src/glean/api_client/models/platform_skills_preview_source_streamop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -26,13 +31,19 @@ class PlatformSkillsPreviewSourceStreamRequest(BaseModel): ] = True @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["stream"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_skills_preview_sourceop.py b/src/glean/api_client/models/platform_skills_preview_sourceop.py index f5667276..b2c67314 100644 --- a/src/glean/api_client/models/platform_skills_preview_sourceop.py +++ b/src/glean/api_client/models/platform_skills_preview_sourceop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -26,13 +31,19 @@ class PlatformSkillsPreviewSourceRequest(BaseModel): ] = False @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["stream"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_trigger_presets_events_searchop.py b/src/glean/api_client/models/platform_trigger_presets_events_searchop.py index 79b57ae0..c3d152c8 100644 --- a/src/glean/api_client/models/platform_trigger_presets_events_searchop.py +++ b/src/glean/api_client/models/platform_trigger_presets_events_searchop.py @@ -5,7 +5,12 @@ PlatformTriggerPresetEventSearchRequest, PlatformTriggerPresetEventSearchRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class PlatformTriggerPresetsEventsSearchRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["PlatformTriggerPresetEventSearchRequest"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_trigger_presets_input_values_listop.py b/src/glean/api_client/models/platform_trigger_presets_input_values_listop.py index 6579af39..b0c915ab 100644 --- a/src/glean/api_client/models/platform_trigger_presets_input_values_listop.py +++ b/src/glean/api_client/models/platform_trigger_presets_input_values_listop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -39,13 +44,19 @@ class PlatformTriggerPresetsInputValuesListRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["query"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_trigger_presets_listop.py b/src/glean/api_client/models/platform_trigger_presets_listop.py index 5b040fdc..0c5f11b8 100644 --- a/src/glean/api_client/models/platform_trigger_presets_listop.py +++ b/src/glean/api_client/models/platform_trigger_presets_listop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -37,13 +42,19 @@ class PlatformTriggerPresetsListRequest(BaseModel): r"""Opaque pagination cursor from a previous response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasource", "page_size", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_triggers_events_searchop.py b/src/glean/api_client/models/platform_triggers_events_searchop.py index 6ac07ec2..9e192f9d 100644 --- a/src/glean/api_client/models/platform_triggers_events_searchop.py +++ b/src/glean/api_client/models/platform_triggers_events_searchop.py @@ -5,7 +5,12 @@ PlatformTriggerEventSearchRequest, PlatformTriggerEventSearchRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class PlatformTriggersEventsSearchRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["PlatformTriggerEventSearchRequest"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_triggers_listop.py b/src/glean/api_client/models/platform_triggers_listop.py index 4eb3df40..b4161799 100644 --- a/src/glean/api_client/models/platform_triggers_listop.py +++ b/src/glean/api_client/models/platform_triggers_listop.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class PlatformTriggersListRequest(BaseModel): r"""Opaque pagination cursor from a previous response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_users_getop.py b/src/glean/api_client/models/platform_users_getop.py index 2ab9c826..16116035 100644 --- a/src/glean/api_client/models/platform_users_getop.py +++ b/src/glean/api_client/models/platform_users_getop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .platformuserinclude import PlatformUserInclude -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from pydantic import model_serializer from typing import List, Optional @@ -33,13 +38,19 @@ class PlatformUsersGetRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["include"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platform_users_listop.py b/src/glean/api_client/models/platform_users_listop.py index 0f5bf662..e86201dc 100644 --- a/src/glean/api_client/models/platform_users_listop.py +++ b/src/glean/api_client/models/platform_users_listop.py @@ -3,7 +3,12 @@ from __future__ import annotations from .platformuserfilter import PlatformUserFilter, PlatformUserFilterTypedDict from .platformuserinclude import PlatformUserInclude -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata from pydantic import model_serializer from typing import List, Optional @@ -59,13 +64,19 @@ class PlatformUsersListRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size", "cursor", "filters", "include"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformactionsummary.py b/src/glean/api_client/models/platformactionsummary.py index 66c767a0..f865867e 100644 --- a/src/glean/api_client/models/platformactionsummary.py +++ b/src/glean/api_client/models/platformactionsummary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -47,6 +52,9 @@ class PlatformActionSummary(BaseModel): r"""Kind of knowledge the action accesses or modifies.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -57,11 +65,14 @@ def serialize_model(self, handler): "data_source", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformadminagent.py b/src/glean/api_client/models/platformadminagent.py deleted file mode 100644 index 3e97d474..00000000 --- a/src/glean/api_client/models/platformadminagent.py +++ /dev/null @@ -1,33 +0,0 @@ -"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" - -from __future__ import annotations -from glean.api_client.types import BaseModel -from typing_extensions import TypedDict - - -class PlatformAdminAgentTypedDict(TypedDict): - r"""An agent in the workspace.""" - - agent_id: str - r"""Opaque agent ID. Other Platform APIs, such as usage limits, accept and return this ID. - - """ - display_name: str - r"""The name that Glean shows for the agent.""" - is_active: bool - r"""Whether the agent is active. A deleted agent is inactive.""" - - -class PlatformAdminAgent(BaseModel): - r"""An agent in the workspace.""" - - agent_id: str - r"""Opaque agent ID. Other Platform APIs, such as usage limits, accept and return this ID. - - """ - - display_name: str - r"""The name that Glean shows for the agent.""" - - is_active: bool - r"""Whether the agent is active. A deleted agent is inactive.""" diff --git a/src/glean/api_client/models/platformadminagentfilter.py b/src/glean/api_client/models/platformadminagentfilter.py index 5ee20909..ed7364a7 100644 --- a/src/glean/api_client/models/platformadminagentfilter.py +++ b/src/glean/api_client/models/platformadminagentfilter.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -23,7 +28,9 @@ class PlatformAdminAgentFilterTypedDict(TypedDict): r"""A filter on one agent field.""" field: str - r"""The agent field to filter on. The only supported field is is_active.""" + r"""The agent field to filter on. name matches agents whose name contains the value. description matches agents whose description contains the value. Matching ignores case and surrounding whitespace. Each value is at most 256 characters. + + """ values: List[str] r"""The values to match. An agent matches when any value matches.""" operator: NotRequired[PlatformAdminAgentFilterOperator] @@ -34,7 +41,9 @@ class PlatformAdminAgentFilter(BaseModel): r"""A filter on one agent field.""" field: str - r"""The agent field to filter on. The only supported field is is_active.""" + r"""The agent field to filter on. name matches agents whose name contains the value. description matches agents whose description contains the value. Matching ignores case and surrounding whitespace. Each value is at most 256 characters. + + """ values: List[str] r"""The values to match. An agent matches when any value matches.""" @@ -45,13 +54,19 @@ class PlatformAdminAgentFilter(BaseModel): r"""The only supported operator is EQUALS. Defaults to EQUALS.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["operator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagent.py b/src/glean/api_client/models/platformagent.py index 84a399b6..2e2f3d95 100644 --- a/src/glean/api_client/models/platformagent.py +++ b/src/glean/api_client/models/platformagent.py @@ -5,7 +5,12 @@ PlatformAgentCapabilities, PlatformAgentCapabilitiesTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -39,13 +44,19 @@ class PlatformAgent(BaseModel): r"""Agent metadata.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentcapabilities.py b/src/glean/api_client/models/platformagentcapabilities.py index 099c35b7..e731da28 100644 --- a/src/glean/api_client/models/platformagentcapabilities.py +++ b/src/glean/api_client/models/platformagentcapabilities.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import ConfigDict, model_serializer from typing import Any, Dict, Optional @@ -40,13 +45,19 @@ def additional_properties(self, value): self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["ap.io.messages", "ap.io.streaming"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) serialized.pop(k, serialized.pop(n, None)) diff --git a/src/glean/api_client/models/platformagentrun.py b/src/glean/api_client/models/platformagentrun.py index 26bf4003..6f280998 100644 --- a/src/glean/api_client/models/platformagentrun.py +++ b/src/glean/api_client/models/platformagentrun.py @@ -4,7 +4,12 @@ from .platformagentexecutionstatus import PlatformAgentExecutionStatus from .platformmessage import PlatformMessage, PlatformMessageTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -49,13 +54,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["input", "messages", "metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentruncreaterequest.py b/src/glean/api_client/models/platformagentruncreaterequest.py index 645f523e..4347ec7f 100644 --- a/src/glean/api_client/models/platformagentruncreaterequest.py +++ b/src/glean/api_client/models/platformagentruncreaterequest.py @@ -3,7 +3,12 @@ from __future__ import annotations from .platformmessage_input import PlatformMessageInput, PlatformMessageInputTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -58,15 +63,21 @@ class PlatformAgentRunCreateRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["input", "messages", "metadata", "stream", "execution_mode"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentruntoolapproval.py b/src/glean/api_client/models/platformagentruntoolapproval.py index c51c46ed..bff77014 100644 --- a/src/glean/api_client/models/platformagentruntoolapproval.py +++ b/src/glean/api_client/models/platformagentruntoolapproval.py @@ -3,7 +3,12 @@ from __future__ import annotations from datetime import datetime from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -59,13 +64,19 @@ class PlatformAgentRunToolApproval(BaseModel): r"""Approval deadline, when one is set. Omitted when the approval has no expiration.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["tool_id", "expires_at"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentrunwaitresponse.py b/src/glean/api_client/models/platformagentrunwaitresponse.py index f2454eb0..c94bc078 100644 --- a/src/glean/api_client/models/platformagentrunwaitresponse.py +++ b/src/glean/api_client/models/platformagentrunwaitresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .platformagentrun import PlatformAgentRun, PlatformAgentRunTypedDict from .platformmessage import PlatformMessage, PlatformMessageTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -27,13 +32,19 @@ class PlatformAgentRunWaitResponse(BaseModel): r"""Messages returned by the completed run.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["run", "messages"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentschemasresponse.py b/src/glean/api_client/models/platformagentschemasresponse.py index 9bd08605..1682f005 100644 --- a/src/glean/api_client/models/platformagentschemasresponse.py +++ b/src/glean/api_client/models/platformagentschemasresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .platformactionsummary import PlatformActionSummary, PlatformActionSummaryTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -43,13 +48,19 @@ class PlatformAgentSchemasResponse(BaseModel): r"""Tools that the agent can invoke, when requested.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "tools"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformagentssearchrequest.py b/src/glean/api_client/models/platformagentssearchrequest.py index 0ddc45d2..334ebd45 100644 --- a/src/glean/api_client/models/platformagentssearchrequest.py +++ b/src/glean/api_client/models/platformagentssearchrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class PlatformAgentsSearchRequest(BaseModel): r"""Case-insensitive substring to match against agent names. If omitted or empty, no name filter is applied.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformauthenticationsuggestion.py b/src/glean/api_client/models/platformauthenticationsuggestion.py index 04be56b8..05b88a4a 100644 --- a/src/glean/api_client/models/platformauthenticationsuggestion.py +++ b/src/glean/api_client/models/platformauthenticationsuggestion.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PlatformAuthenticationSuggestion(BaseModel): r"""Human-readable tool name.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["tool_name"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatcitationannotation.py b/src/glean/api_client/models/platformchatcitationannotation.py index 5dd276ba..0bdd5bb3 100644 --- a/src/glean/api_client/models/platformchatcitationannotation.py +++ b/src/glean/api_client/models/platformchatcitationannotation.py @@ -16,6 +16,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -46,14 +48,20 @@ class PlatformChatCitationAnnotation(BaseModel): snippets: OptionalNullable[List[PlatformChatCitationSnippet]] = UNSET @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["start_index", "end_index", "snippets"]) nullable_fields = set(["start_index", "end_index", "snippets"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatcitationsnippet.py b/src/glean/api_client/models/platformchatcitationsnippet.py index c679f40a..56ef906c 100644 --- a/src/glean/api_client/models/platformchatcitationsnippet.py +++ b/src/glean/api_client/models/platformchatcitationsnippet.py @@ -7,6 +7,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing_extensions import NotRequired, TypedDict @@ -23,14 +25,20 @@ class PlatformChatCitationSnippet(BaseModel): page_number: OptionalNullable[int] = UNSET @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_number"]) nullable_fields = set(["page_number"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatcompletedresponse.py b/src/glean/api_client/models/platformchatcompletedresponse.py index 9c0061da..735a7dda 100644 --- a/src/glean/api_client/models/platformchatcompletedresponse.py +++ b/src/glean/api_client/models/platformchatcompletedresponse.py @@ -13,6 +13,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -66,14 +68,20 @@ class PlatformChatCompletedResponse(BaseModel): r"""Present when the interaction was persisted.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["conversation_id"]) nullable_fields = set(["conversation_id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatcustomentitysource.py b/src/glean/api_client/models/platformchatcustomentitysource.py index f2ec133b..5848608d 100644 --- a/src/glean/api_client/models/platformchatcustomentitysource.py +++ b/src/glean/api_client/models/platformchatcustomentitysource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -35,13 +40,19 @@ class PlatformChatCustomEntitySource(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "title", "url", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatdocumentsource.py b/src/glean/api_client/models/platformchatdocumentsource.py index 54714c55..54318f06 100644 --- a/src/glean/api_client/models/platformchatdocumentsource.py +++ b/src/glean/api_client/models/platformchatdocumentsource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional, Union from typing_extensions import NotRequired, TypeAliasType, TypedDict @@ -32,13 +37,19 @@ class PlatformChatDocumentSourceDocument2(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["document_id", "title", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -72,13 +83,19 @@ class PlatformChatDocumentSourceDocument1(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["url", "title", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatfailedresponse.py b/src/glean/api_client/models/platformchatfailedresponse.py index 7c34fe7f..9de899b6 100644 --- a/src/glean/api_client/models/platformchatfailedresponse.py +++ b/src/glean/api_client/models/platformchatfailedresponse.py @@ -17,6 +17,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -73,14 +75,20 @@ class PlatformChatFailedResponse(BaseModel): r"""Present when the interaction was persisted.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["conversation_id"]) nullable_fields = set(["conversation_id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatfilesource.py b/src/glean/api_client/models/platformchatfilesource.py index 228194cb..902ea18b 100644 --- a/src/glean/api_client/models/platformchatfilesource.py +++ b/src/glean/api_client/models/platformchatfilesource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -32,13 +37,19 @@ class PlatformChatFileSource(BaseModel): datasource: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["title", "url", "datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatjsonschemaformat.py b/src/glean/api_client/models/platformchatjsonschemaformat.py index c22174e0..e1051b50 100644 --- a/src/glean/api_client/models/platformchatjsonschemaformat.py +++ b/src/glean/api_client/models/platformchatjsonschemaformat.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Any, Dict, Optional @@ -53,13 +58,19 @@ class PlatformChatJSONSchemaFormat(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "strict"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatoutputtextcontent.py b/src/glean/api_client/models/platformchatoutputtextcontent.py index eb56d9a1..f2f7ad4a 100644 --- a/src/glean/api_client/models/platformchatoutputtextcontent.py +++ b/src/glean/api_client/models/platformchatoutputtextcontent.py @@ -12,6 +12,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List, Optional @@ -53,14 +55,20 @@ class PlatformChatOutputTextContent(BaseModel): annotations: Optional[List[PlatformChatCitationAnnotation]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["structured_output", "annotations"]) nullable_fields = set(["structured_output"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatpersonsource.py b/src/glean/api_client/models/platformchatpersonsource.py index a2e120b1..032a4fd3 100644 --- a/src/glean/api_client/models/platformchatpersonsource.py +++ b/src/glean/api_client/models/platformchatpersonsource.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -29,13 +34,19 @@ class PlatformChatPersonSource(BaseModel): url: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatresponseerror.py b/src/glean/api_client/models/platformchatresponseerror.py index ef73e944..4ef321d6 100644 --- a/src/glean/api_client/models/platformchatresponseerror.py +++ b/src/glean/api_client/models/platformchatresponseerror.py @@ -7,6 +7,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing_extensions import NotRequired, TypedDict @@ -29,14 +31,20 @@ class PlatformChatResponseError(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["code"]) nullable_fields = set(["code"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformchatstreamoutputtextdeltaserversentevent.py b/src/glean/api_client/models/platformchatstreamoutputtextdeltaserversentevent.py index 1d7e6a4c..8d3a3c8f 100644 --- a/src/glean/api_client/models/platformchatstreamoutputtextdeltaserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamoutputtextdeltaserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamOutputTextDelta, PlatformChatStreamOutputTextDeltaTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamOutputTextDeltaServerSentEvent(BaseModel): ] = "RESPONSE_OUTPUT_TEXT_DELTA" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatstreamoutputtextdoneserversentevent.py b/src/glean/api_client/models/platformchatstreamoutputtextdoneserversentevent.py index f56d5aef..391e59a1 100644 --- a/src/glean/api_client/models/platformchatstreamoutputtextdoneserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamoutputtextdoneserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamOutputTextDone, PlatformChatStreamOutputTextDoneTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamOutputTextDoneServerSentEvent(BaseModel): ] = "RESPONSE_OUTPUT_TEXT_DONE" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatstreamprogressserversentevent.py b/src/glean/api_client/models/platformchatstreamprogressserversentevent.py index d6b76035..57eade7a 100644 --- a/src/glean/api_client/models/platformchatstreamprogressserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamprogressserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamProgress, PlatformChatStreamProgressTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamProgressServerSentEvent(BaseModel): ] = "RESPONSE_PROGRESS" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatstreamresponsecompletedserversentevent.py b/src/glean/api_client/models/platformchatstreamresponsecompletedserversentevent.py index 143aa870..30e5a8f6 100644 --- a/src/glean/api_client/models/platformchatstreamresponsecompletedserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamresponsecompletedserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamResponseCompleted, PlatformChatStreamResponseCompletedTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamResponseCompletedServerSentEvent(BaseModel): ] = "RESPONSE_COMPLETED" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatstreamresponsecreatedserversentevent.py b/src/glean/api_client/models/platformchatstreamresponsecreatedserversentevent.py index bc55a9e2..8d447f1c 100644 --- a/src/glean/api_client/models/platformchatstreamresponsecreatedserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamresponsecreatedserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamResponseCreated, PlatformChatStreamResponseCreatedTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamResponseCreatedServerSentEvent(BaseModel): ] = "RESPONSE_CREATED" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformchatstreamresponsefailedserversentevent.py b/src/glean/api_client/models/platformchatstreamresponsefailedserversentevent.py index c4c16ab8..503b4831 100644 --- a/src/glean/api_client/models/platformchatstreamresponsefailedserversentevent.py +++ b/src/glean/api_client/models/platformchatstreamresponsefailedserversentevent.py @@ -5,7 +5,12 @@ PlatformChatStreamResponseFailed, PlatformChatStreamResponseFailedTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -34,13 +39,19 @@ class PlatformChatStreamResponseFailedServerSentEvent(BaseModel): ] = "RESPONSE_FAILED" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformcontentschedulewebhookevent.py b/src/glean/api_client/models/platformcontentschedulewebhookevent.py index 0b1d4cff..69cf6882 100644 --- a/src/glean/api_client/models/platformcontentschedulewebhookevent.py +++ b/src/glean/api_client/models/platformcontentschedulewebhookevent.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -66,13 +71,19 @@ class PlatformContentScheduleWebhookEvent(BaseModel): r"""Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["event_time"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformdepartmentfilter.py b/src/glean/api_client/models/platformdepartmentfilter.py new file mode 100644 index 00000000..d86fb7a4 --- /dev/null +++ b/src/glean/api_client/models/platformdepartmentfilter.py @@ -0,0 +1,76 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from enum import Enum +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) +from pydantic import model_serializer +from typing import List, Optional +from typing_extensions import NotRequired, TypedDict + + +class PlatformDepartmentFilterOperator(str, Enum): + r"""The only supported operator is EQUALS. Defaults to EQUALS.""" + + EQUALS = "EQUALS" + NOT_EQUALS = "NOT_EQUALS" + GT = "GT" + GTE = "GTE" + LT = "LT" + LTE = "LTE" + + +class PlatformDepartmentFilterTypedDict(TypedDict): + r"""A filter on one department field.""" + + field: str + r"""The department field to filter on. The only supported field is name, which matches departments whose display_name contains the value, ignoring case and surrounding whitespace. Each value is at most 256 characters. To find the department with an exact name, such as a department_name from a usage limit response, filter by the name and compare display_name exactly. + + """ + values: List[str] + r"""The values to match. A department matches when any value matches.""" + operator: NotRequired[PlatformDepartmentFilterOperator] + r"""The only supported operator is EQUALS. Defaults to EQUALS.""" + + +class PlatformDepartmentFilter(BaseModel): + r"""A filter on one department field.""" + + field: str + r"""The department field to filter on. The only supported field is name, which matches departments whose display_name contains the value, ignoring case and surrounding whitespace. Each value is at most 256 characters. To find the department with an exact name, such as a department_name from a usage limit response, filter by the name and compare display_name exactly. + + """ + + values: List[str] + r"""The values to match. A department matches when any value matches.""" + + operator: Optional[PlatformDepartmentFilterOperator] = ( + PlatformDepartmentFilterOperator.EQUALS + ) + r"""The only supported operator is EQUALS. Defaults to EQUALS.""" + + @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + + def serialize_model(self, handler): + optional_fields = set(["operator"]) + exclude_none = current_exclude_none() + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue + val = serialized.get(k, serialized.get(n)) + + if val != UNSET_SENTINEL: + if val is not None or k not in optional_fields: + m[k] = val + + return m diff --git a/src/glean/api_client/models/platformdocumentchangewebhookevent.py b/src/glean/api_client/models/platformdocumentchangewebhookevent.py index a1eb453d..7297d66c 100644 --- a/src/glean/api_client/models/platformdocumentchangewebhookevent.py +++ b/src/glean/api_client/models/platformdocumentchangewebhookevent.py @@ -2,9 +2,14 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer -from typing import Optional +from typing import Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -29,9 +34,11 @@ class PlatformDocumentChangeWebhookEventTypedDict(TypedDict): event_time: NotRequired[datetime] r"""Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available.""" content: NotRequired[str] - r"""Email body content when the event is for an email document.""" + r"""Email body content when the event is for an email document, or the message text when the event is for a Slack message.""" content_truncated: NotRequired[bool] r"""Present and true when source content exceeded the delivery size limit.""" + facets: NotRequired[Dict[str, List[str]]] + r"""Facets of a Slack message as the event saw them, keyed as trigger filters key them, for example `from`, `mentions` and `channel`. Person facets carry the person's name. Each key lists up to 50 distinct values. Omitted for other documents and when the event has no facets.""" class PlatformDocumentChangeWebhookEvent(BaseModel): @@ -65,19 +72,28 @@ class PlatformDocumentChangeWebhookEvent(BaseModel): r"""Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available.""" content: Optional[str] = None - r"""Email body content when the event is for an email document.""" + r"""Email body content when the event is for an email document, or the message text when the event is for a Slack message.""" content_truncated: Optional[bool] = None r"""Present and true when source content exceeded the delivery size limit.""" + facets: Optional[Dict[str, List[str]]] = None + r"""Facets of a Slack message as the event saw them, keyed as trigger filters key them, for example `from`, `mentions` and `channel`. Person facets carry the person's name. Each key lists up to 50 distinct values. Omitted for other documents and when the event has no facets.""" + @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): - optional_fields = set(["event_time", "content", "content_truncated"]) + optional_fields = set(["event_time", "content", "content_truncated", "facets"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformdurableagentrun.py b/src/glean/api_client/models/platformdurableagentrun.py index 842b5cb8..029e358a 100644 --- a/src/glean/api_client/models/platformdurableagentrun.py +++ b/src/glean/api_client/models/platformdurableagentrun.py @@ -9,7 +9,12 @@ ) from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -82,13 +87,19 @@ def serialize_state(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["expires_at", "output", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformfilter.py b/src/glean/api_client/models/platformfilter.py index 2243c553..ca289e21 100644 --- a/src/glean/api_client/models/platformfilter.py +++ b/src/glean/api_client/models/platformfilter.py @@ -3,7 +3,12 @@ from __future__ import annotations from .platformfilteroperator import PlatformFilterOperator from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -54,13 +59,19 @@ def serialize_operator(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["operator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformfilterfieldinfo.py b/src/glean/api_client/models/platformfilterfieldinfo.py index 755b03c7..56be0112 100644 --- a/src/glean/api_client/models/platformfilterfieldinfo.py +++ b/src/glean/api_client/models/platformfilterfieldinfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from .platformfilteroperator import PlatformFilterOperator -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -45,13 +50,19 @@ class PlatformFilterFieldInfo(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["values"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformidpgroupfilter.py b/src/glean/api_client/models/platformidpgroupfilter.py index eb97fc85..1b342286 100644 --- a/src/glean/api_client/models/platformidpgroupfilter.py +++ b/src/glean/api_client/models/platformidpgroupfilter.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -23,7 +28,15 @@ class PlatformIdpGroupFilterTypedDict(TypedDict): r"""A filter on one IdP group field.""" field: str - r"""The IdP group field to filter on. The only supported field is provider_instance. + r"""The IdP group field to filter on. + - provider_instance: matches groups from the datasource instance, such as + \"okta\", ignoring case. + + - provider: matches groups from the identity provider, such as \"okta\", ignoring + case. + + - name: matches groups whose display_name contains the value, ignoring case and + surrounding whitespace. Each value is at most 256 characters. """ values: List[str] @@ -36,7 +49,15 @@ class PlatformIdpGroupFilter(BaseModel): r"""A filter on one IdP group field.""" field: str - r"""The IdP group field to filter on. The only supported field is provider_instance. + r"""The IdP group field to filter on. + - provider_instance: matches groups from the datasource instance, such as + \"okta\", ignoring case. + + - provider: matches groups from the identity provider, such as \"okta\", ignoring + case. + + - name: matches groups whose display_name contains the value, ignoring case and + surrounding whitespace. Each value is at most 256 characters. """ @@ -49,13 +70,19 @@ class PlatformIdpGroupFilter(BaseModel): r"""The only supported operator is EQUALS. Defaults to EQUALS.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["operator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformlistadminagentsresponse.py b/src/glean/api_client/models/platformlistadminagentsresponse.py index 7f6dd1b0..547d8961 100644 --- a/src/glean/api_client/models/platformlistadminagentsresponse.py +++ b/src/glean/api_client/models/platformlistadminagentsresponse.py @@ -1,13 +1,15 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from .platformadminagent import PlatformAdminAgent, PlatformAdminAgentTypedDict +from .platformagent import PlatformAgent, PlatformAgentTypedDict from glean.api_client.types import ( BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -17,8 +19,8 @@ class PlatformListAdminAgentsResponseTypedDict(TypedDict): r"""One page of agents.""" - results: List[PlatformAdminAgentTypedDict] - r"""The agents on this page, ordered by display_name and then by agent_id.""" + results: List[PlatformAgentTypedDict] + r"""The agents on this page, ordered by name and then by agent_id.""" has_more: bool r"""Whether more agents are available after this page.""" request_id: str @@ -30,8 +32,8 @@ class PlatformListAdminAgentsResponseTypedDict(TypedDict): class PlatformListAdminAgentsResponse(BaseModel): r"""One page of agents.""" - results: List[PlatformAdminAgent] - r"""The agents on this page, ordered by display_name and then by agent_id.""" + results: List[PlatformAgent] + r"""The agents on this page, ordered by name and then by agent_id.""" has_more: bool r"""Whether more agents are available after this page.""" @@ -43,14 +45,20 @@ class PlatformListAdminAgentsResponse(BaseModel): r"""Opaque cursor for the next page; null or absent when has_more is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["next_cursor"]) nullable_fields = set(["next_cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformlistdepartmentsresponse.py b/src/glean/api_client/models/platformlistdepartmentsresponse.py index 5d5f23e3..e0b71b2b 100644 --- a/src/glean/api_client/models/platformlistdepartmentsresponse.py +++ b/src/glean/api_client/models/platformlistdepartmentsresponse.py @@ -11,6 +11,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -50,14 +52,20 @@ class PlatformListDepartmentsResponse(BaseModel): r"""Opaque cursor for the next page; null or absent when has_more is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["next_cursor"]) nullable_fields = set(["next_cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformlistidpgroupsresponse.py b/src/glean/api_client/models/platformlistidpgroupsresponse.py index 18c3ce90..a5e1e32b 100644 --- a/src/glean/api_client/models/platformlistidpgroupsresponse.py +++ b/src/glean/api_client/models/platformlistidpgroupsresponse.py @@ -8,6 +8,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -47,14 +49,20 @@ class PlatformListIdpGroupsResponse(BaseModel): r"""Opaque cursor for the next page; null or absent when has_more is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["next_cursor"]) nullable_fields = set(["next_cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformlistoauthclientsresponse.py b/src/glean/api_client/models/platformlistoauthclientsresponse.py index d8c490d5..5f239f9d 100644 --- a/src/glean/api_client/models/platformlistoauthclientsresponse.py +++ b/src/glean/api_client/models/platformlistoauthclientsresponse.py @@ -8,6 +8,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -43,14 +45,20 @@ class PlatformListOAuthClientsResponse(BaseModel): r"""Opaque cursor for the next page; null or absent when has_more is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["next_cursor"]) nullable_fields = set(["next_cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformlistusersresponse.py b/src/glean/api_client/models/platformlistusersresponse.py index 97500a84..3227c21a 100644 --- a/src/glean/api_client/models/platformlistusersresponse.py +++ b/src/glean/api_client/models/platformlistusersresponse.py @@ -8,6 +8,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List @@ -43,14 +45,20 @@ class PlatformListUsersResponse(BaseModel): r"""Opaque cursor for the next page; null or absent when has_more is false.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["next_cursor"]) nullable_fields = set(["next_cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformmessagetextblock.py b/src/glean/api_client/models/platformmessagetextblock.py index 1a7cadf4..4904526b 100644 --- a/src/glean/api_client/models/platformmessagetextblock.py +++ b/src/glean/api_client/models/platformmessagetextblock.py @@ -6,7 +6,12 @@ PlatformChatCitationAnnotationTypedDict, ) from .platformcontenttype import PlatformContentType -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -28,13 +33,19 @@ class PlatformMessageTextBlock(BaseModel): annotations: Optional[List[PlatformChatCitationAnnotation]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["annotations"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformoauthclient.py b/src/glean/api_client/models/platformoauthclient.py index 9c807ea9..ccd20aa0 100644 --- a/src/glean/api_client/models/platformoauthclient.py +++ b/src/glean/api_client/models/platformoauthclient.py @@ -11,7 +11,12 @@ from .platformoauthtokenendpointauthmethod import PlatformOAuthTokenEndpointAuthMethod from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -32,8 +37,8 @@ class PlatformOAuthClientTypedDict(TypedDict): r"""The OAuth grant types that the client can use.""" redirect_uris: List[str] r"""The redirect URIs that the client can use.""" - is_active: bool - r"""Whether the client is active. A client that an admin disabled is inactive and cannot authenticate. + is_enabled: bool + r"""Whether the client is enabled. A client that an admin disabled cannot authenticate. """ client_type: NotRequired[PlatformOAuthClientType] @@ -66,8 +71,8 @@ class PlatformOAuthClient(BaseModel): redirect_uris: List[str] r"""The redirect URIs that the client can use.""" - is_active: bool - r"""Whether the client is active. A client that an admin disabled is inactive and cannot authenticate. + is_enabled: bool + r"""Whether the client is enabled. A client that an admin disabled cannot authenticate. """ @@ -102,15 +107,21 @@ def serialize_token_endpoint_auth_method(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["client_type", "token_endpoint_auth_method", "created_at", "ai_gateway"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformoauthclientaigateway.py b/src/glean/api_client/models/platformoauthclientaigateway.py index f5430b9c..43a45793 100644 --- a/src/glean/api_client/models/platformoauthclientaigateway.py +++ b/src/glean/api_client/models/platformoauthclientaigateway.py @@ -1,7 +1,9 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations +from .platformoauthclientsupportedapp import PlatformOAuthClientSupportedApp from glean.api_client.types import BaseModel +from typing import List from typing_extensions import TypedDict @@ -12,6 +14,10 @@ class PlatformOAuthClientAiGatewayTypedDict(TypedDict): r"""The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id. """ + supported_apps: List[PlatformOAuthClientSupportedApp] + r"""The apps that the client is set up for, in alphabetical order. Empty when no app is recorded for the client. + + """ class PlatformOAuthClientAiGateway(BaseModel): @@ -21,3 +27,8 @@ class PlatformOAuthClientAiGateway(BaseModel): r"""The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id. """ + + supported_apps: List[PlatformOAuthClientSupportedApp] + r"""The apps that the client is set up for, in alphabetical order. Empty when no app is recorded for the client. + + """ diff --git a/src/glean/api_client/models/platformoauthclientfilter.py b/src/glean/api_client/models/platformoauthclientfilter.py index ea586d11..321178b7 100644 --- a/src/glean/api_client/models/platformoauthclientfilter.py +++ b/src/glean/api_client/models/platformoauthclientfilter.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -23,7 +28,24 @@ class PlatformOAuthClientFilterTypedDict(TypedDict): r"""A filter on one OAuth client field.""" field: str - r"""The client field to filter on. The only supported field is is_active.""" + r"""The client field to filter on. + - is_enabled: \"true\" matches enabled clients, and \"false\" matches disabled + clients. + + - name: matches clients whose display_name contains the value, ignoring + case and surrounding whitespace. Each value is at most 256 characters. + + - client_id: matches the client with this OAuth client_id. + - usage_client_id: matches the client with this ai_gateway.usage_client_id. + - has_ai_gateway: \"true\" matches clients that can call the Glean LLM + Gateway, which are the clients with ai_gateway. \"false\" matches the + other clients. + + - supported_app: matches clients whose ai_gateway.supported_apps contains + the value, such as CLAUDE_CODE. The values are the OAuthClientSupportedApp + values. + + """ values: List[str] r"""The values to match. A client matches when any value matches.""" operator: NotRequired[PlatformOAuthClientFilterOperator] @@ -34,7 +56,24 @@ class PlatformOAuthClientFilter(BaseModel): r"""A filter on one OAuth client field.""" field: str - r"""The client field to filter on. The only supported field is is_active.""" + r"""The client field to filter on. + - is_enabled: \"true\" matches enabled clients, and \"false\" matches disabled + clients. + + - name: matches clients whose display_name contains the value, ignoring + case and surrounding whitespace. Each value is at most 256 characters. + + - client_id: matches the client with this OAuth client_id. + - usage_client_id: matches the client with this ai_gateway.usage_client_id. + - has_ai_gateway: \"true\" matches clients that can call the Glean LLM + Gateway, which are the clients with ai_gateway. \"false\" matches the + other clients. + + - supported_app: matches clients whose ai_gateway.supported_apps contains + the value, such as CLAUDE_CODE. The values are the OAuthClientSupportedApp + values. + + """ values: List[str] r"""The values to match. A client matches when any value matches.""" @@ -45,13 +84,19 @@ class PlatformOAuthClientFilter(BaseModel): r"""The only supported operator is EQUALS. Defaults to EQUALS.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["operator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformoauthclientsupportedapp.py b/src/glean/api_client/models/platformoauthclientsupportedapp.py new file mode 100644 index 00000000..36fc4ceb --- /dev/null +++ b/src/glean/api_client/models/platformoauthclientsupportedapp.py @@ -0,0 +1,14 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from enum import Enum +from glean.api_client import utils + + +class PlatformOAuthClientSupportedApp(str, Enum, metaclass=utils.OpenEnumMeta): + r"""An app that an LLM Gateway client is set up for.""" + + # Claude Code. + CLAUDE_CODE = "CLAUDE_CODE" + # OpenAI Codex. + CODEX = "CODEX" diff --git a/src/glean/api_client/models/platformpersonreference.py b/src/glean/api_client/models/platformpersonreference.py index 3f687979..ce9abb53 100644 --- a/src/glean/api_client/models/platformpersonreference.py +++ b/src/glean/api_client/models/platformpersonreference.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PlatformPersonReference(BaseModel): r"""Opaque Glean person ID.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformproblemdetail.py b/src/glean/api_client/models/platformproblemdetail.py index 05d4d46e..385b58ff 100644 --- a/src/glean/api_client/models/platformproblemdetail.py +++ b/src/glean/api_client/models/platformproblemdetail.py @@ -7,7 +7,12 @@ PlatformProblemDetailErrorTypedDict, ) from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -71,13 +76,19 @@ def serialize_code(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documentation_url", "errors"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformproblemdetailerror.py b/src/glean/api_client/models/platformproblemdetailerror.py index 336efdc3..403b5f41 100644 --- a/src/glean/api_client/models/platformproblemdetailerror.py +++ b/src/glean/api_client/models/platformproblemdetailerror.py @@ -3,7 +3,12 @@ from __future__ import annotations from .platformproblemdetailcode import PlatformProblemDetailCode from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -42,13 +47,19 @@ def serialize_code(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["code"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformresult.py b/src/glean/api_client/models/platformresult.py index 2cd03e18..2e6a499e 100644 --- a/src/glean/api_client/models/platformresult.py +++ b/src/glean/api_client/models/platformresult.py @@ -12,6 +12,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List, Optional @@ -68,6 +70,9 @@ class PlatformResult(BaseModel): r"""When the result was created.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -80,11 +85,14 @@ def serialize_model(self, handler): ] ) nullable_fields = set(["document_type", "updated_at", "created_at"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformsearchrequest.py b/src/glean/api_client/models/platformsearchrequest.py index 8a3cd9bc..822f5541 100644 --- a/src/glean/api_client/models/platformsearchrequest.py +++ b/src/glean/api_client/models/platformsearchrequest.py @@ -9,6 +9,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) from pydantic import model_serializer from typing import List, Optional @@ -66,16 +68,22 @@ class PlatformSearchRequest(BaseModel): r"""Filter results to those last updated within this range.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["page_size", "cursor", "datasources", "filters", "time_range"] ) nullable_fields = set(["cursor"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/platformsearchresponse.py b/src/glean/api_client/models/platformsearchresponse.py index ff13d204..1c10da17 100644 --- a/src/glean/api_client/models/platformsearchresponse.py +++ b/src/glean/api_client/models/platformsearchresponse.py @@ -3,7 +3,13 @@ from __future__ import annotations from .platformresult import PlatformResult, PlatformResultTypedDict from .platformwarning import PlatformWarning, PlatformWarningTypedDict -from glean.api_client.types import BaseModel, Nullable, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + Nullable, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List from typing_extensions import TypedDict @@ -47,12 +53,18 @@ class PlatformSearchResponse(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskill.py b/src/glean/api_client/models/platformskill.py index d77b1fa2..5085ac0d 100644 --- a/src/glean/api_client/models/platformskill.py +++ b/src/glean/api_client/models/platformskill.py @@ -13,7 +13,12 @@ from .platformskillstatus import PlatformSkillStatus from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -99,13 +104,19 @@ def serialize_origin(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["source_provenance"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillcreaterequest.py b/src/glean/api_client/models/platformskillcreaterequest.py index 51a4dfa4..239a85e1 100644 --- a/src/glean/api_client/models/platformskillcreaterequest.py +++ b/src/glean/api_client/models/platformskillcreaterequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, MultipartFormMetadata import io import pydantic @@ -34,13 +39,19 @@ class PlatformSkillCreateRequestFile(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["contentType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillslistresponse.py b/src/glean/api_client/models/platformskillslistresponse.py index 8d37912a..81b3f72b 100644 --- a/src/glean/api_client/models/platformskillslistresponse.py +++ b/src/glean/api_client/models/platformskillslistresponse.py @@ -2,7 +2,13 @@ from __future__ import annotations from .platformskill import PlatformSkill, PlatformSkillTypedDict -from glean.api_client.types import BaseModel, Nullable, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + Nullable, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List from typing_extensions import TypedDict @@ -33,12 +39,18 @@ class PlatformSkillsListResponse(BaseModel): r"""Platform-generated request ID for support correlation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamerror.py b/src/glean/api_client/models/platformskillsourcepreviewstreamerror.py index 68f225d3..143036e2 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamerror.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamerror.py @@ -7,7 +7,12 @@ ) from .platformproblemdetail import PlatformProblemDetail, PlatformProblemDetailTypedDict from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -49,13 +54,19 @@ class PlatformSkillSourcePreviewStreamError(BaseModel): r"""Present only when `error.code` is `tools_unauthorized`. Names the GitHub action pack to authorize, with the same retry flow as the 422 response.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["authentication_suggestions"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamerrorserversentevent.py b/src/glean/api_client/models/platformskillsourcepreviewstreamerrorserversentevent.py index cd9a68bd..b0564ee6 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamerrorserversentevent.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamerrorserversentevent.py @@ -5,7 +5,12 @@ PlatformSkillSourcePreviewStreamError, PlatformSkillSourcePreviewStreamErrorTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -33,13 +38,19 @@ class PlatformSkillSourcePreviewStreamErrorServerSentEvent(BaseModel): ] = "ERROR" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamprogressserversentevent.py b/src/glean/api_client/models/platformskillsourcepreviewstreamprogressserversentevent.py index 60c2dbed..59c9383e 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamprogressserversentevent.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamprogressserversentevent.py @@ -5,7 +5,12 @@ PlatformSkillSourcePreviewStreamProgress, PlatformSkillSourcePreviewStreamProgressTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -33,13 +38,19 @@ class PlatformSkillSourcePreviewStreamProgressServerSentEvent(BaseModel): ] = "PROGRESS" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamresultserversentevent.py b/src/glean/api_client/models/platformskillsourcepreviewstreamresultserversentevent.py index 0741143e..412bcc67 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamresultserversentevent.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamresultserversentevent.py @@ -5,7 +5,12 @@ PlatformSkillSourcePreviewStreamResult, PlatformSkillSourcePreviewStreamResultTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -33,13 +38,19 @@ class PlatformSkillSourcePreviewStreamResultServerSentEvent(BaseModel): ] = "RESULT" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamscanserversentevent.py b/src/glean/api_client/models/platformskillsourcepreviewstreamscanserversentevent.py index aa588667..6ad8430c 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamscanserversentevent.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamscanserversentevent.py @@ -5,7 +5,12 @@ PlatformSkillSourcePreviewStreamScan, PlatformSkillSourcePreviewStreamScanTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -33,13 +38,19 @@ class PlatformSkillSourcePreviewStreamScanServerSentEvent(BaseModel): ] = "SCAN" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourcepreviewstreamskillserversentevent.py b/src/glean/api_client/models/platformskillsourcepreviewstreamskillserversentevent.py index 6197d06d..df348587 100644 --- a/src/glean/api_client/models/platformskillsourcepreviewstreamskillserversentevent.py +++ b/src/glean/api_client/models/platformskillsourcepreviewstreamskillserversentevent.py @@ -5,7 +5,12 @@ PlatformSkillSourcePreviewStreamSkill, PlatformSkillSourcePreviewStreamSkillTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import validate_const import pydantic from pydantic import model_serializer @@ -33,13 +38,19 @@ class PlatformSkillSourcePreviewStreamSkillServerSentEvent(BaseModel): ] = "SKILL" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillsourceprovenance.py b/src/glean/api_client/models/platformskillsourceprovenance.py index d1352b1f..545d8b9c 100644 --- a/src/glean/api_client/models/platformskillsourceprovenance.py +++ b/src/glean/api_client/models/platformskillsourceprovenance.py @@ -4,7 +4,12 @@ from .platformskillsyncstatus import PlatformSkillSyncStatus from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -54,6 +59,9 @@ def serialize_sync_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -65,11 +73,14 @@ def serialize_model(self, handler): "sync_error", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillvalidationrequest.py b/src/glean/api_client/models/platformskillvalidationrequest.py index d0a3a2b4..deb2b889 100644 --- a/src/glean/api_client/models/platformskillvalidationrequest.py +++ b/src/glean/api_client/models/platformskillvalidationrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, MultipartFormMetadata import io import pydantic @@ -34,13 +39,19 @@ class PlatformSkillValidationRequestFile(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["contentType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillversion.py b/src/glean/api_client/models/platformskillversion.py index 44bae125..bbc7f77d 100644 --- a/src/glean/api_client/models/platformskillversion.py +++ b/src/glean/api_client/models/platformskillversion.py @@ -10,7 +10,12 @@ PlatformSkillSourceProvenanceTypedDict, ) from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -59,13 +64,19 @@ class PlatformSkillVersion(BaseModel): source_provenance: Optional[PlatformSkillSourceProvenance] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["source_provenance"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillversioncreaterequest.py b/src/glean/api_client/models/platformskillversioncreaterequest.py index dc1d6f9e..96c0388b 100644 --- a/src/glean/api_client/models/platformskillversioncreaterequest.py +++ b/src/glean/api_client/models/platformskillversioncreaterequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, MultipartFormMetadata import io import pydantic @@ -34,13 +39,19 @@ class PlatformSkillVersionCreateRequestFile(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["contentType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformskillversionslistresponse.py b/src/glean/api_client/models/platformskillversionslistresponse.py index 37b4b1c8..1c353c90 100644 --- a/src/glean/api_client/models/platformskillversionslistresponse.py +++ b/src/glean/api_client/models/platformskillversionslistresponse.py @@ -2,7 +2,13 @@ from __future__ import annotations from .platformskillversion import PlatformSkillVersion, PlatformSkillVersionTypedDict -from glean.api_client.types import BaseModel, Nullable, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + Nullable, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List from typing_extensions import TypedDict @@ -33,12 +39,18 @@ class PlatformSkillVersionsListResponse(BaseModel): r"""Platform-generated request ID for support correlation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtimerange.py b/src/glean/api_client/models/platformtimerange.py index 0a5acb2a..f8a81a90 100644 --- a/src/glean/api_client/models/platformtimerange.py +++ b/src/glean/api_client/models/platformtimerange.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -27,13 +32,19 @@ class PlatformTimeRange(BaseModel): r"""Exclusive upper bound in ISO 8601 format.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["start", "end"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtrigger.py b/src/glean/api_client/models/platformtrigger.py index c3542359..cb84d6f8 100644 --- a/src/glean/api_client/models/platformtrigger.py +++ b/src/glean/api_client/models/platformtrigger.py @@ -8,7 +8,12 @@ from .platformtriggerstatus import PlatformTriggerStatus from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -66,13 +71,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "inputs"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggercreaterequest.py b/src/glean/api_client/models/platformtriggercreaterequest.py index d70686f2..9ea32785 100644 --- a/src/glean/api_client/models/platformtriggercreaterequest.py +++ b/src/glean/api_client/models/platformtriggercreaterequest.py @@ -5,7 +5,12 @@ PlatformTriggerDelivery, PlatformTriggerDeliveryTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -34,13 +39,19 @@ class PlatformTriggerCreateRequest(BaseModel): r"""Values for the preset's inputs.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "inputs"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerdelivery.py b/src/glean/api_client/models/platformtriggerdelivery.py index 84e4fb28..630ca46e 100644 --- a/src/glean/api_client/models/platformtriggerdelivery.py +++ b/src/glean/api_client/models/platformtriggerdelivery.py @@ -5,7 +5,12 @@ PlatformTriggerAuth, PlatformTriggerAuthTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PlatformTriggerDelivery(BaseModel): r"""Optional caller credential sent as an HTTP auth header on each delivery, in addition to the HMAC signature. Lets the receiving endpoint authenticate the request. On update, omit `auth` to preserve the existing credential; there is no in-place removal — recreate the trigger to remove auth.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["auth"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerdelivery_output.py b/src/glean/api_client/models/platformtriggerdelivery_output.py index 5ba108c1..e27c70bd 100644 --- a/src/glean/api_client/models/platformtriggerdelivery_output.py +++ b/src/glean/api_client/models/platformtriggerdelivery_output.py @@ -5,7 +5,12 @@ PlatformTriggerAuthOutput, PlatformTriggerAuthOutputTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PlatformTriggerDeliveryOutput(BaseModel): r"""Optional caller credential sent as an HTTP auth header on each delivery, in addition to the HMAC signature. Lets the receiving endpoint authenticate the request. On update, omit `auth` to preserve the existing credential; there is no in-place removal — recreate the trigger to remove auth.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["auth"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggereventsearchrequest.py b/src/glean/api_client/models/platformtriggereventsearchrequest.py index a8f990c2..1f856a30 100644 --- a/src/glean/api_client/models/platformtriggereventsearchrequest.py +++ b/src/glean/api_client/models/platformtriggereventsearchrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class PlatformTriggerEventSearchRequest(BaseModel): r"""Maximum number of events to return.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["page_size"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerlistresponse.py b/src/glean/api_client/models/platformtriggerlistresponse.py index 16bdf27f..5596d4e1 100644 --- a/src/glean/api_client/models/platformtriggerlistresponse.py +++ b/src/glean/api_client/models/platformtriggerlistresponse.py @@ -2,7 +2,13 @@ from __future__ import annotations from .platformtrigger import PlatformTrigger, PlatformTriggerTypedDict -from glean.api_client.types import BaseModel, Nullable, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + Nullable, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List from typing_extensions import TypedDict @@ -33,12 +39,18 @@ class PlatformTriggerListResponse(BaseModel): r"""Platform-generated request ID for support correlation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerpreset.py b/src/glean/api_client/models/platformtriggerpreset.py index a7c372a8..3494c020 100644 --- a/src/glean/api_client/models/platformtriggerpreset.py +++ b/src/glean/api_client/models/platformtriggerpreset.py @@ -5,7 +5,12 @@ PlatformTriggerPresetInput, PlatformTriggerPresetInputTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -41,13 +46,19 @@ class PlatformTriggerPreset(BaseModel): r"""Human-readable description of when the preset fires.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerpreseteventsearchrequest.py b/src/glean/api_client/models/platformtriggerpreseteventsearchrequest.py index ac214e06..cfc588ba 100644 --- a/src/glean/api_client/models/platformtriggerpreseteventsearchrequest.py +++ b/src/glean/api_client/models/platformtriggerpreseteventsearchrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PlatformTriggerPresetEventSearchRequest(BaseModel): r"""Maximum number of events to return.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["inputs", "page_size"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerpresetinput.py b/src/glean/api_client/models/platformtriggerpresetinput.py index ebe2f224..eb89f85a 100644 --- a/src/glean/api_client/models/platformtriggerpresetinput.py +++ b/src/glean/api_client/models/platformtriggerpresetinput.py @@ -7,7 +7,12 @@ PlatformTriggerPresetInputValueTypedDict, ) from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -65,13 +70,19 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["values", "is_truncated"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerpresetlistresponse.py b/src/glean/api_client/models/platformtriggerpresetlistresponse.py index 60c4d72b..1be21e48 100644 --- a/src/glean/api_client/models/platformtriggerpresetlistresponse.py +++ b/src/glean/api_client/models/platformtriggerpresetlistresponse.py @@ -5,7 +5,13 @@ PlatformTriggerPresetSummary, PlatformTriggerPresetSummaryTypedDict, ) -from glean.api_client.types import BaseModel, Nullable, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + Nullable, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List from typing_extensions import TypedDict @@ -36,12 +42,18 @@ class PlatformTriggerPresetListResponse(BaseModel): r"""Platform-generated request ID for support correlation.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerpresetsummary.py b/src/glean/api_client/models/platformtriggerpresetsummary.py index 64917154..6c38ca0b 100644 --- a/src/glean/api_client/models/platformtriggerpresetsummary.py +++ b/src/glean/api_client/models/platformtriggerpresetsummary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -32,13 +37,19 @@ class PlatformTriggerPresetSummary(BaseModel): r"""Human-readable description of when the preset fires.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerupdaterequest.py b/src/glean/api_client/models/platformtriggerupdaterequest.py index 7dcbd6a2..3a2a7a03 100644 --- a/src/glean/api_client/models/platformtriggerupdaterequest.py +++ b/src/glean/api_client/models/platformtriggerupdaterequest.py @@ -7,7 +7,12 @@ ) from .platformtriggerstatus import PlatformTriggerStatus from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -49,13 +54,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["status", "description", "inputs", "delivery"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformtriggerwithsecret.py b/src/glean/api_client/models/platformtriggerwithsecret.py index 43b0b789..56b92c94 100644 --- a/src/glean/api_client/models/platformtriggerwithsecret.py +++ b/src/glean/api_client/models/platformtriggerwithsecret.py @@ -8,7 +8,12 @@ from .platformtriggerstatus import PlatformTriggerStatus from datetime import datetime from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Any, Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -71,13 +76,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["description", "inputs"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformuser.py b/src/glean/api_client/models/platformuser.py index cb52c180..90df516a 100644 --- a/src/glean/api_client/models/platformuser.py +++ b/src/glean/api_client/models/platformuser.py @@ -12,7 +12,12 @@ ) from .platformusermanager import PlatformUserManager, PlatformUserManagerTypedDict from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -98,6 +103,9 @@ def serialize_user_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -111,11 +119,14 @@ def serialize_model(self, handler): "datasource_profiles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformuserdatasourceprofile.py b/src/glean/api_client/models/platformuserdatasourceprofile.py index 247c584f..624fb79c 100644 --- a/src/glean/api_client/models/platformuserdatasourceprofile.py +++ b/src/glean/api_client/models/platformuserdatasourceprofile.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -40,13 +45,19 @@ class PlatformUserDatasourceProfile(BaseModel): r"""Web URL of the account's profile.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["account_id", "profile_url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/platformuserfilter.py b/src/glean/api_client/models/platformuserfilter.py index 349411f5..aa5abca5 100644 --- a/src/glean/api_client/models/platformuserfilter.py +++ b/src/glean/api_client/models/platformuserfilter.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -69,13 +74,19 @@ class PlatformUserFilter(BaseModel): r"""The only supported operator is EQUALS. Defaults to EQUALS.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["operator"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/possiblevalue.py b/src/glean/api_client/models/possiblevalue.py index 1881d203..da936808 100644 --- a/src/glean/api_client/models/possiblevalue.py +++ b/src/glean/api_client/models/possiblevalue.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class PossibleValue(BaseModel): r"""User-friendly label associated with the value""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["value", "label"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/processalldocumentsrequest.py b/src/glean/api_client/models/processalldocumentsrequest.py index aa29557c..6acfbcc7 100644 --- a/src/glean/api_client/models/processalldocumentsrequest.py +++ b/src/glean/api_client/models/processalldocumentsrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -21,13 +26,19 @@ class ProcessAllDocumentsRequest(BaseModel): r"""If provided, process documents only for this custom datasource. Otherwise all uploaded documents are processed.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/processallmembershipsrequest.py b/src/glean/api_client/models/processallmembershipsrequest.py index f1bba49d..2def760b 100644 --- a/src/glean/api_client/models/processallmembershipsrequest.py +++ b/src/glean/api_client/models/processallmembershipsrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -21,13 +26,19 @@ class ProcessAllMembershipsRequest(BaseModel): r"""If provided, process group memberships only for this custom datasource. Otherwise all uploaded memberships are processed.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["datasource"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/processinghistoryevent.py b/src/glean/api_client/models/processinghistoryevent.py index 61b4c047..810a0797 100644 --- a/src/glean/api_client/models/processinghistoryevent.py +++ b/src/glean/api_client/models/processinghistoryevent.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -27,13 +32,19 @@ class ProcessingHistoryEvent(BaseModel): r"""The end time of the processing in ISO 8601 format, 'NA' if still in progress""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["startTime", "endTime"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/prompttemplate.py b/src/glean/api_client/models/prompttemplate.py index 90327467..f58473d4 100644 --- a/src/glean/api_client/models/prompttemplate.py +++ b/src/glean/api_client/models/prompttemplate.py @@ -8,7 +8,12 @@ from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict from .person import Person, PersonTypedDict from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -89,6 +94,9 @@ class PromptTemplate(BaseModel): r"""A list of roles for this prompt template explicitly granted.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -106,11 +114,14 @@ def serialize_model(self, handler): "roles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/prompttemplateresult.py b/src/glean/api_client/models/prompttemplateresult.py index efd9ff47..e8cdbcce 100644 --- a/src/glean/api_client/models/prompttemplateresult.py +++ b/src/glean/api_client/models/prompttemplateresult.py @@ -4,7 +4,12 @@ from .countinfo import CountInfo, CountInfoTypedDict from .favoriteinfo import FavoriteInfo, FavoriteInfoTypedDict from .prompttemplate import PromptTemplate, PromptTemplateTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -36,15 +41,21 @@ class PromptTemplateResult(BaseModel): run_count: Annotated[Optional[CountInfo], pydantic.Field(alias="runCount")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["promptTemplate", "trackingToken", "favoriteInfo", "runCount"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/propertydefinition.py b/src/glean/api_client/models/propertydefinition.py index 6ec503a2..6c06b73b 100644 --- a/src/glean/api_client/models/propertydefinition.py +++ b/src/glean/api_client/models/propertydefinition.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -102,6 +107,9 @@ def serialize_ui_options(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -116,11 +124,14 @@ def serialize_model(self, handler): "group", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/propertygroup.py b/src/glean/api_client/models/propertygroup.py index f3ed0cfd..ca1c429c 100644 --- a/src/glean/api_client/models/propertygroup.py +++ b/src/glean/api_client/models/propertygroup.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -27,13 +32,19 @@ class PropertyGroup(BaseModel): r"""The user-friendly group label to display.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "displayLabel"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/querysuggestion.py b/src/glean/api_client/models/querysuggestion.py index 39b6d5e5..fcbb5504 100644 --- a/src/glean/api_client/models/querysuggestion.py +++ b/src/glean/api_client/models/querysuggestion.py @@ -8,7 +8,12 @@ SearchRequestInputDetailsTypedDict, ) from .searchrequestoptions import SearchRequestOptions, SearchRequestOptionsTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -66,6 +71,9 @@ class QuerySuggestion(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -79,11 +87,14 @@ def serialize_model(self, handler): "inputDetails", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/querysuggestionlist.py b/src/glean/api_client/models/querysuggestionlist.py index 8723c878..0cbb0da4 100644 --- a/src/glean/api_client/models/querysuggestionlist.py +++ b/src/glean/api_client/models/querysuggestionlist.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING from typing_extensions import NotRequired, TypedDict @@ -22,13 +27,19 @@ class QuerySuggestionList(BaseModel): person: Optional["Person"] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["suggestions", "person"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/quicklink.py b/src/glean/api_client/models/quicklink.py index 75045a1f..54758e92 100644 --- a/src/glean/api_client/models/quicklink.py +++ b/src/glean/api_client/models/quicklink.py @@ -4,7 +4,12 @@ from .iconconfig import IconConfig, IconConfigTypedDict from enum import Enum from glean.api_client import utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -60,15 +65,21 @@ class Quicklink(BaseModel): r"""The scopes for which this quicklink is applicable""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["name", "shortName", "url", "iconConfig", "id", "scopes"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/reaction.py b/src/glean/api_client/models/reaction.py index 40dd0af4..1a940169 100644 --- a/src/glean/api_client/models/reaction.py +++ b/src/glean/api_client/models/reaction.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -34,13 +39,19 @@ class Reaction(BaseModel): r"""Whether the user in context reacted with this type to the document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["type", "count", "reactors", "reactedByViewer"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/readpermission.py b/src/glean/api_client/models/readpermission.py index b82781fd..11eb5149 100644 --- a/src/glean/api_client/models/readpermission.py +++ b/src/glean/api_client/models/readpermission.py @@ -3,7 +3,12 @@ from __future__ import annotations from .scopetype import ScopeType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -33,13 +38,19 @@ def serialize_scope_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["scopeType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/recommendationsop.py b/src/glean/api_client/models/recommendationsop.py index 02f83b74..3a324b0f 100644 --- a/src/glean/api_client/models/recommendationsop.py +++ b/src/glean/api_client/models/recommendationsop.py @@ -5,7 +5,12 @@ RecommendationsRequest, RecommendationsRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class RecommendationsRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/recommendationsrequest.py b/src/glean/api_client/models/recommendationsrequest.py index 507d92fa..469a3564 100644 --- a/src/glean/api_client/models/recommendationsrequest.py +++ b/src/glean/api_client/models/recommendationsrequest.py @@ -9,7 +9,12 @@ ) from .sessioninfo import SessionInfo, SessionInfoTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -65,6 +70,9 @@ class RecommendationsRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -78,11 +86,14 @@ def serialize_model(self, handler): "requestOptions", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/recommendationsrequestoptions.py b/src/glean/api_client/models/recommendationsrequestoptions.py index 162c9f76..0cf9e799 100644 --- a/src/glean/api_client/models/recommendationsrequestoptions.py +++ b/src/glean/api_client/models/recommendationsrequestoptions.py @@ -4,7 +4,12 @@ from .document import Document, DocumentTypedDict from .facetfilterset import FacetFilterSet, FacetFilterSetTypedDict from .searchresultprominenceenum import SearchResultProminenceEnum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -48,6 +53,9 @@ class RecommendationsRequestOptions(BaseModel): r"""The types of prominence wanted in results returned. Default is any type.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -58,11 +66,14 @@ def serialize_model(self, handler): "resultProminence", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/referencerange.py b/src/glean/api_client/models/referencerange.py index 851c90fa..57583405 100644 --- a/src/glean/api_client/models/referencerange.py +++ b/src/glean/api_client/models/referencerange.py @@ -3,7 +3,12 @@ from __future__ import annotations from .searchresultsnippet import SearchResultSnippet, SearchResultSnippetTypedDict from .textrange import TextRange, TextRangeTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -27,13 +32,19 @@ class ReferenceRange(BaseModel): snippets: Optional[List[SearchResultSnippet]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["textRange", "snippets"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/relateddocuments.py b/src/glean/api_client/models/relateddocuments.py index 81ed4fa9..7ff74c44 100644 --- a/src/glean/api_client/models/relateddocuments.py +++ b/src/glean/api_client/models/relateddocuments.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -83,6 +88,9 @@ def serialize_relation(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -93,11 +101,14 @@ def serialize_model(self, handler): "results", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/relatedobject.py b/src/glean/api_client/models/relatedobject.py index 94a1515c..847e7528 100644 --- a/src/glean/api_client/models/relatedobject.py +++ b/src/glean/api_client/models/relatedobject.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -21,13 +26,19 @@ class RelatedObjectMetadata(BaseModel): r"""Placeholder name of the object, not the relationship.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -52,13 +63,19 @@ class RelatedObject(BaseModel): r"""Some metadata of the object which can be displayed, while not having the actual object.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/relatedobjectedge.py b/src/glean/api_client/models/relatedobjectedge.py index 6a5b0972..3b67a48f 100644 --- a/src/glean/api_client/models/relatedobjectedge.py +++ b/src/glean/api_client/models/relatedobjectedge.py @@ -2,7 +2,12 @@ from __future__ import annotations from .relatedobject import RelatedObject, RelatedObjectTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class RelatedObjectEdge(BaseModel): objects: Optional[List[RelatedObject]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["objects"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/relatedquestion.py b/src/glean/api_client/models/relatedquestion.py index 0bd513ec..1648e1f4 100644 --- a/src/glean/api_client/models/relatedquestion.py +++ b/src/glean/api_client/models/relatedquestion.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING from typing_extensions import NotRequired, TypedDict @@ -30,13 +35,19 @@ class RelatedQuestion(BaseModel): r"""Subsections of the answer string to which some special formatting should be applied (eg. bold)""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["question", "answer", "ranges"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/reminder.py b/src/glean/api_client/models/reminder.py index 8a084dd7..5e74c0b7 100644 --- a/src/glean/api_client/models/reminder.py +++ b/src/glean/api_client/models/reminder.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -37,13 +42,19 @@ class Reminder(BaseModel): r"""An optional free-text reason for the reminder. This is particularly useful when a reminder is used to ask for verification from another user (for example, \"Duplicate\", \"Incomplete\", \"Incorrect\").""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["requestor", "createdAt", "reason"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/reminderrequest.py b/src/glean/api_client/models/reminderrequest.py index 5f4e8c64..0a4d3b83 100644 --- a/src/glean/api_client/models/reminderrequest.py +++ b/src/glean/api_client/models/reminderrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -35,13 +40,19 @@ class ReminderRequest(BaseModel): r"""An optional free-text reason for the reminder. This is particularly useful when a reminder is used to ask for verification from another user (for example, \"Duplicate\", \"Incomplete\", \"Incorrect\").""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["assignee", "remindInDays", "reason"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/reportstatusresponse.py b/src/glean/api_client/models/reportstatusresponse.py index ea27cecb..2715c9ff 100644 --- a/src/glean/api_client/models/reportstatusresponse.py +++ b/src/glean/api_client/models/reportstatusresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -41,13 +46,19 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["status", "startTime"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/restrictionfilters.py b/src/glean/api_client/models/restrictionfilters.py index 2e649d73..b987f26d 100644 --- a/src/glean/api_client/models/restrictionfilters.py +++ b/src/glean/api_client/models/restrictionfilters.py @@ -2,7 +2,12 @@ from __future__ import annotations from .documentspec_union import DocumentSpecUnion, DocumentSpecUnionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -21,13 +26,19 @@ class RestrictionFilters(BaseModel): r"""Specifications for containers that should be used as part of the restriction (include/exclude). Memberships are recursively defined for a subset of datasources (currently: SharePoint, OneDrive, Google Drive, and Confluence). Please contact the Glean team to enable this for more datasources. Recursive memberships do not apply for Collections.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["containerSpecs"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/resultsdescription.py b/src/glean/api_client/models/resultsdescription.py index 7c8140e5..e9e887c1 100644 --- a/src/glean/api_client/models/resultsdescription.py +++ b/src/glean/api_client/models/resultsdescription.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class ResultsDescription(BaseModel): r"""Defines how to render an icon""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["text", "iconConfig"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/resultsresponse.py b/src/glean/api_client/models/resultsresponse.py index b6ea8902..073f936f 100644 --- a/src/glean/api_client/models/resultsresponse.py +++ b/src/glean/api_client/models/resultsresponse.py @@ -6,7 +6,12 @@ from .searchresult import SearchResult, SearchResultTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict from .structuredresult import StructuredResult, StructuredResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -60,6 +65,9 @@ class ResultsResponse(BaseModel): r"""Time in milliseconds the backend took to respond to the request.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -73,11 +81,14 @@ def serialize_model(self, handler): "backendTimeMillis", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/resulttab.py b/src/glean/api_client/models/resulttab.py index 3683f422..4804db56 100644 --- a/src/glean/api_client/models/resulttab.py +++ b/src/glean/api_client/models/resulttab.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -35,13 +40,19 @@ class ResultTab(BaseModel): r"""The datasource instance associated with the tab, if any.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id", "count", "datasource", "datasourceInstance"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/rotatetokenresponse.py b/src/glean/api_client/models/rotatetokenresponse.py index 723b5b9c..072a6e8a 100644 --- a/src/glean/api_client/models/rotatetokenresponse.py +++ b/src/glean/api_client/models/rotatetokenresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -34,13 +39,19 @@ class RotateTokenResponse(BaseModel): r"""Refers to the time period in minutes before which this token needs to be rotated. It is required to rotate the token within the specified `rotationPeriodMinutes` after each `/rotatetoken` call, otherwise the tokens would expire. Note that the token would still expire at `expiresAt` timestamp provided during token creation even if the token is being regularly rotated. `rotationPeriodMinutes` property is inherited from the parent token being rotated""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["rawSecret", "createdAt", "rotationPeriodMinutes"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchagentsrequest.py b/src/glean/api_client/models/searchagentsrequest.py index a66f7d03..4d18f6a1 100644 --- a/src/glean/api_client/models/searchagentsrequest.py +++ b/src/glean/api_client/models/searchagentsrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class SearchAgentsRequest(BaseModel): r"""Filters on the name of the agent. The keyword search is case-insensitive. If search string is ommited or empty, acts as no filter.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchagentsresponse.py b/src/glean/api_client/models/searchagentsresponse.py index 9e6b9852..5fa3344f 100644 --- a/src/glean/api_client/models/searchagentsresponse.py +++ b/src/glean/api_client/models/searchagentsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .agent import Agent, AgentTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class SearchAgentsResponse(BaseModel): agents: Optional[List[Agent]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["agents"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchop.py b/src/glean/api_client/models/searchop.py index d1dd1a5c..93594d83 100644 --- a/src/glean/api_client/models/searchop.py +++ b/src/glean/api_client/models/searchop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .searchrequest import SearchRequest, SearchRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class SearchRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchproviderinfo.py b/src/glean/api_client/models/searchproviderinfo.py index 84921983..6ca6a285 100644 --- a/src/glean/api_client/models/searchproviderinfo.py +++ b/src/glean/api_client/models/searchproviderinfo.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class SearchProviderInfo(BaseModel): r"""URL template that can be used to perform the suggested search by replacing the {query} placeholder with the query suggestion.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "logoUrl", "searchLinkUrlTemplate"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchrequest.py b/src/glean/api_client/models/searchrequest.py index 535df875..91653376 100644 --- a/src/glean/api_client/models/searchrequest.py +++ b/src/glean/api_client/models/searchrequest.py @@ -9,7 +9,12 @@ from .searchrequestoptions import SearchRequestOptions, SearchRequestOptionsTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -96,6 +101,9 @@ class SearchRequest(BaseModel): r"""Whether or not to disable spellcheck.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -113,11 +121,14 @@ def serialize_model(self, handler): "disableSpellcheck", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchrequestinputdetails.py b/src/glean/api_client/models/searchrequestinputdetails.py index 900e4ff2..58ca448e 100644 --- a/src/glean/api_client/models/searchrequestinputdetails.py +++ b/src/glean/api_client/models/searchrequestinputdetails.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -20,13 +25,19 @@ class SearchRequestInputDetails(BaseModel): r"""Whether the associated query was at least partially copy-pasted. If subsequent requests are issued after a copy-pasted query is constructed (e.g. with facet modifications), this bit should continue to be set for those requests.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["hasCopyPaste"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchrequestoptions.py b/src/glean/api_client/models/searchrequestoptions.py index f5006c08..2bfbe7bd 100644 --- a/src/glean/api_client/models/searchrequestoptions.py +++ b/src/glean/api_client/models/searchrequestoptions.py @@ -8,7 +8,12 @@ from .restrictionfilters import RestrictionFilters, RestrictionFiltersTypedDict from enum import Enum from glean.api_client import utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -142,6 +147,9 @@ class SearchRequestOptions(BaseModel): exclusions: Optional[RestrictionFilters] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -163,11 +171,14 @@ def serialize_model(self, handler): "exclusions", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchresponse.py b/src/glean/api_client/models/searchresponse.py index 0135246b..a71e3e2d 100644 --- a/src/glean/api_client/models/searchresponse.py +++ b/src/glean/api_client/models/searchresponse.py @@ -14,7 +14,12 @@ from .searchresult import SearchResult, SearchResultTypedDict from .sessioninfo import SessionInfo, SessionInfoTypedDict from .structuredresult import StructuredResult, StructuredResultTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -121,6 +126,9 @@ class SearchResponse(BaseModel): r"""Whether more results are available. Use cursor to retrieve them.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -143,11 +151,14 @@ def serialize_model(self, handler): "hasMoreResults", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchresponsemetadata.py b/src/glean/api_client/models/searchresponsemetadata.py index 0d4c2a38..54e6544f 100644 --- a/src/glean/api_client/models/searchresponsemetadata.py +++ b/src/glean/api_client/models/searchresponsemetadata.py @@ -5,7 +5,12 @@ from .querysuggestionlist import QuerySuggestionList, QuerySuggestionListTypedDict from .searchwarning import SearchWarning, SearchWarningTypedDict from .textrange import TextRange, TextRangeTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -103,6 +108,9 @@ class SearchResponseMetadata(BaseModel): r"""Whether the query was modified to remove quotes""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -121,11 +129,14 @@ def serialize_model(self, handler): "isNoQuotesSuggestion", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchresult.py b/src/glean/api_client/models/searchresult.py index 9bcd8639..1a32857d 100644 --- a/src/glean/api_client/models/searchresult.py +++ b/src/glean/api_client/models/searchresult.py @@ -4,7 +4,12 @@ from .clustertypeenum import ClusterTypeEnum from .searchresultprominenceenum import SearchResultProminenceEnum from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -169,6 +174,9 @@ def serialize_prominence(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -194,11 +202,14 @@ def serialize_model(self, handler): "pins", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchresultsnippet.py b/src/glean/api_client/models/searchresultsnippet.py index 949ba65d..025f2c8d 100644 --- a/src/glean/api_client/models/searchresultsnippet.py +++ b/src/glean/api_client/models/searchresultsnippet.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -53,15 +58,21 @@ class SearchResultSnippet(BaseModel): r"""A matching snippet from the document. Query term matches are marked by the unicode characters uE006 and uE007. Use 'text' field instead.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["mimeType", "text", "snippetTextOrdering", "ranges", "url", "snippet"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/searchwarning.py b/src/glean/api_client/models/searchwarning.py index 79a0826d..443d8904 100644 --- a/src/glean/api_client/models/searchwarning.py +++ b/src/glean/api_client/models/searchwarning.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -62,13 +67,19 @@ def serialize_warning_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["lastUsedTerm", "quotesIgnoredQuery", "ignoredTerms"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/security.py b/src/glean/api_client/models/security.py index c248ffd0..3d52aec9 100644 --- a/src/glean/api_client/models/security.py +++ b/src/glean/api_client/models/security.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, SecurityMetadata from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class Security(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["APIToken"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/seenfeedbackinfo.py b/src/glean/api_client/models/seenfeedbackinfo.py index a5ebcfaa..94a81462 100644 --- a/src/glean/api_client/models/seenfeedbackinfo.py +++ b/src/glean/api_client/models/seenfeedbackinfo.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -18,13 +23,19 @@ class SeenFeedbackInfo(BaseModel): r"""The confidence of the user seeing the object is high because they explicitly interacted with it e.g. answer impression in SERP with additional user interaction.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isExplicit"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sensitivecontentoptions.py b/src/glean/api_client/models/sensitivecontentoptions.py index 10775067..9cfb7066 100644 --- a/src/glean/api_client/models/sensitivecontentoptions.py +++ b/src/glean/api_client/models/sensitivecontentoptions.py @@ -7,7 +7,12 @@ ) from .sensitiveexpression import SensitiveExpression, SensitiveExpressionTypedDict from .sensitiveinfotype import SensitiveInfoType, SensitiveInfoTypeTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -64,6 +69,9 @@ class SensitiveContentOptions(BaseModel): r"""list of custom sensitive expressions to consider as sensitive content""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -73,11 +81,14 @@ def serialize_model(self, handler): "customSensitiveExpressions", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sensitiveexpression.py b/src/glean/api_client/models/sensitiveexpression.py index 4f4970c3..71d2f629 100644 --- a/src/glean/api_client/models/sensitiveexpression.py +++ b/src/glean/api_client/models/sensitiveexpression.py @@ -2,7 +2,12 @@ from __future__ import annotations from .hotword import Hotword, HotwordTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -23,13 +28,19 @@ class SensitiveExpression(BaseModel): r"""Zero to three proximate regular expressions necessary to consider an expression as sensitive content.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["expression", "hotwords"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sensitiveinfotype.py b/src/glean/api_client/models/sensitiveinfotype.py index 4d362e73..a4fdec05 100644 --- a/src/glean/api_client/models/sensitiveinfotype.py +++ b/src/glean/api_client/models/sensitiveinfotype.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -49,13 +54,19 @@ def serialize_likelihood_threshold(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["likelihoodThreshold", "infoType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/servertoolrequest.py b/src/glean/api_client/models/servertoolrequest.py index c88abbe5..26d36e38 100644 --- a/src/glean/api_client/models/servertoolrequest.py +++ b/src/glean/api_client/models/servertoolrequest.py @@ -4,7 +4,12 @@ from .actionpreview import ActionPreview, ActionPreviewTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -80,15 +85,21 @@ def serialize_request_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["toolDisplayName", "serverId", "toolCta", "actionPreview"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/servertoolresponse.py b/src/glean/api_client/models/servertoolresponse.py index 8af507a2..785491e6 100644 --- a/src/glean/api_client/models/servertoolresponse.py +++ b/src/glean/api_client/models/servertoolresponse.py @@ -4,7 +4,12 @@ from .authcontext import AuthContext, AuthContextTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -135,13 +140,19 @@ def serialize_grant_scope(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isGranted", "grantScope", "authContext"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sessioninfo.py b/src/glean/api_client/models/sessioninfo.py index 0a0ab521..a09c9198 100644 --- a/src/glean/api_client/models/sessioninfo.py +++ b/src/glean/api_client/models/sessioninfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -36,15 +41,21 @@ class SessionInfo(BaseModel): r"""The last query seen by the server.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["sessionTrackingToken", "tabId", "lastSeen", "lastQuery"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/share.py b/src/glean/api_client/models/share.py index 3356d1fb..d52ccfb4 100644 --- a/src/glean/api_client/models/share.py +++ b/src/glean/api_client/models/share.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -34,13 +39,19 @@ class Share(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["sharer", "sharingDocument"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sharingoptions.py b/src/glean/api_client/models/sharingoptions.py index 09336c16..4491efbc 100644 --- a/src/glean/api_client/models/sharingoptions.py +++ b/src/glean/api_client/models/sharingoptions.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -72,6 +77,9 @@ class SharingOptions(BaseModel): r"""Any one of the specified users can access the document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -85,11 +93,14 @@ def serialize_model(self, handler): "userIds", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/shortcut.py b/src/glean/api_client/models/shortcut.py index 6038fd52..f53e41fe 100644 --- a/src/glean/api_client/models/shortcut.py +++ b/src/glean/api_client/models/shortcut.py @@ -4,7 +4,12 @@ from .favoriteinfo import FavoriteInfo, FavoriteInfoTypedDict from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -147,6 +152,9 @@ class Shortcut(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -174,11 +182,14 @@ def serialize_model(self, handler): "favoriteInfo", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/shortcuterror.py b/src/glean/api_client/models/shortcuterror.py index b4922a4c..00ef9df7 100644 --- a/src/glean/api_client/models/shortcuterror.py +++ b/src/glean/api_client/models/shortcuterror.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -36,13 +41,19 @@ def serialize_error_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["errorType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/shortcutmutableproperties.py b/src/glean/api_client/models/shortcutmutableproperties.py index a70757ea..55126681 100644 --- a/src/glean/api_client/models/shortcutmutableproperties.py +++ b/src/glean/api_client/models/shortcutmutableproperties.py @@ -2,7 +2,12 @@ from __future__ import annotations from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -62,6 +67,9 @@ class ShortcutMutableProperties(BaseModel): r"""A list of user roles removed for the Shortcut.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -75,11 +83,14 @@ def serialize_model(self, handler): "removedRoles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/shortcutspaginationmetadata.py b/src/glean/api_client/models/shortcutspaginationmetadata.py index dd14f76d..789dbe98 100644 --- a/src/glean/api_client/models/shortcutspaginationmetadata.py +++ b/src/glean/api_client/models/shortcutspaginationmetadata.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -26,13 +31,19 @@ class ShortcutsPaginationMetadata(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["cursor", "hasNextPage", "totalItemCount"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sidebysideimplementation.py b/src/glean/api_client/models/sidebysideimplementation.py index 2df5ff06..3952025d 100644 --- a/src/glean/api_client/models/sidebysideimplementation.py +++ b/src/glean/api_client/models/sidebysideimplementation.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Dict, Optional @@ -32,13 +37,19 @@ class ResponseMetadata(BaseModel): r"""The specific model version used.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["latencyMs", "tokenCount", "modelUsed"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -86,6 +97,9 @@ class SideBySideImplementation(BaseModel): r"""Metadata about the response (e.g., latency, token count).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -96,11 +110,14 @@ def serialize_model(self, handler): "responseMetadata", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/socialnetwork.py b/src/glean/api_client/models/socialnetwork.py index 3a736be5..41e4212c 100644 --- a/src/glean/api_client/models/socialnetwork.py +++ b/src/glean/api_client/models/socialnetwork.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class SocialNetwork(BaseModel): r"""URL of the icon to display for this social network, when available.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["profileName", "iconUrl"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/socialnetworkdefinition.py b/src/glean/api_client/models/socialnetworkdefinition.py index be8259cd..f8be92dc 100644 --- a/src/glean/api_client/models/socialnetworkdefinition.py +++ b/src/glean/api_client/models/socialnetworkdefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class SocialNetworkDefinition(BaseModel): r"""Link to profile.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "profileName", "profileUrl"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/sortoptions.py b/src/glean/api_client/models/sortoptions.py index b47e3975..675ae4db 100644 --- a/src/glean/api_client/models/sortoptions.py +++ b/src/glean/api_client/models/sortoptions.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -25,13 +30,19 @@ class SortOptions(BaseModel): sort_by: Annotated[Optional[str], pydantic.Field(alias="sortBy")] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["orderBy", "sortBy"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/structuredlink.py b/src/glean/api_client/models/structuredlink.py index 64e4e5b9..e1b788d5 100644 --- a/src/glean/api_client/models/structuredlink.py +++ b/src/glean/api_client/models/structuredlink.py @@ -2,7 +2,12 @@ from __future__ import annotations from .iconconfig import IconConfig, IconConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -35,13 +40,19 @@ class StructuredLink(BaseModel): r"""Defines how to render an icon""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["name", "url", "iconConfig"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/structuredlocation.py b/src/glean/api_client/models/structuredlocation.py index 8fc2a7f5..d73bdb42 100644 --- a/src/glean/api_client/models/structuredlocation.py +++ b/src/glean/api_client/models/structuredlocation.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -62,6 +67,9 @@ class StructuredLocation(BaseModel): r"""Alpha-2 or Alpha-3 ISO 3166 country code, e.g. US or USA.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -76,11 +84,14 @@ def serialize_model(self, handler): "countryCode", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/structuredresult.py b/src/glean/api_client/models/structuredresult.py index ead2bdf1..742283da 100644 --- a/src/glean/api_client/models/structuredresult.py +++ b/src/glean/api_client/models/structuredresult.py @@ -5,7 +5,12 @@ from .disambiguation import Disambiguation, DisambiguationTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional, TYPE_CHECKING @@ -172,6 +177,9 @@ def serialize_source(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -199,11 +207,14 @@ def serialize_model(self, handler): "source", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/structuredtext.py b/src/glean/api_client/models/structuredtext.py index dcf058b2..da2f3e00 100644 --- a/src/glean/api_client/models/structuredtext.py +++ b/src/glean/api_client/models/structuredtext.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -26,13 +31,19 @@ class StructuredText(BaseModel): r"""An array of objects each of which contains either a string or a link which optionally corresponds to a document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["structuredList"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/structuredtextitem.py b/src/glean/api_client/models/structuredtextitem.py index 6eeb60a0..322c7695 100644 --- a/src/glean/api_client/models/structuredtextitem.py +++ b/src/glean/api_client/models/structuredtextitem.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional, TYPE_CHECKING @@ -33,13 +38,19 @@ class StructuredTextItem(BaseModel): r"""A single object that can support any object in the work graph. Only a single object will be populated.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["link", "document", "text", "structuredResult"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/successresponse.py b/src/glean/api_client/models/successresponse.py index c48ec864..b4b1034a 100644 --- a/src/glean/api_client/models/successresponse.py +++ b/src/glean/api_client/models/successresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -21,13 +26,19 @@ class SuccessResponse(BaseModel): r"""Indicates if the operation was successful""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["success"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/summarizeop.py b/src/glean/api_client/models/summarizeop.py index 1211d870..e4f93aed 100644 --- a/src/glean/api_client/models/summarizeop.py +++ b/src/glean/api_client/models/summarizeop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .summarizerequest import SummarizeRequest, SummarizeRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class SummarizeRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/summarizerequest.py b/src/glean/api_client/models/summarizerequest.py index 2ee5dfa9..efe2297b 100644 --- a/src/glean/api_client/models/summarizerequest.py +++ b/src/glean/api_client/models/summarizerequest.py @@ -3,7 +3,12 @@ from __future__ import annotations from .documentspec_union import DocumentSpecUnion, DocumentSpecUnionTypedDict from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -50,15 +55,21 @@ class SummarizeRequest(BaseModel): r"""An opaque token that represents this particular result. To be used for /feedback reporting.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["timestamp", "query", "preferredSummaryLength", "trackingToken"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/summarizeresponse.py b/src/glean/api_client/models/summarizeresponse.py index ca5dc1b6..04e75ead 100644 --- a/src/glean/api_client/models/summarizeresponse.py +++ b/src/glean/api_client/models/summarizeresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .summary import Summary, SummaryTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -17,13 +22,19 @@ class Error(BaseModel): message: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["message"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: @@ -51,13 +62,19 @@ class SummarizeResponse(BaseModel): r"""An opaque token that represents this summary in this particular query. To be used for /feedback reporting.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["error", "summary", "trackingToken"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/summary.py b/src/glean/api_client/models/summary.py index 35573db7..6199b003 100644 --- a/src/glean/api_client/models/summary.py +++ b/src/glean/api_client/models/summary.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -23,13 +28,19 @@ class Summary(BaseModel): r"""Follow-up prompts based on the summarized doc""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["text", "followUpPrompts"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/team.py b/src/glean/api_client/models/team.py index 7fa4e162..5f668efd 100644 --- a/src/glean/api_client/models/team.py +++ b/src/glean/api_client/models/team.py @@ -8,7 +8,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Dict, List, Optional, TYPE_CHECKING @@ -157,6 +162,9 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -181,11 +189,14 @@ def serialize_model(self, handler): "loggingId", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/teamemail.py b/src/glean/api_client/models/teamemail.py index 73f5b4cd..f05c3357 100644 --- a/src/glean/api_client/models/teamemail.py +++ b/src/glean/api_client/models/teamemail.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class TeamEmail(BaseModel): r"""An enum of `PRIMARY`, `SECONDARY`, `ONCALL`, `OTHER`""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["type"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/teaminfodefinition.py b/src/glean/api_client/models/teaminfodefinition.py index d5e57583..e9bd9784 100644 --- a/src/glean/api_client/models/teaminfodefinition.py +++ b/src/glean/api_client/models/teaminfodefinition.py @@ -8,7 +8,12 @@ from .datasourceprofile import DatasourceProfile, DatasourceProfileTypedDict from .teamemail import TeamEmail, TeamEmailTypedDict from .teammember import TeamMember, TeamMemberTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -88,6 +93,9 @@ class TeamInfoDefinition(BaseModel): r"""List of additional fields with more information about the team.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -101,11 +109,14 @@ def serialize_model(self, handler): "additionalFields", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/teammember.py b/src/glean/api_client/models/teammember.py index 9b534f8c..bf81737d 100644 --- a/src/glean/api_client/models/teammember.py +++ b/src/glean/api_client/models/teammember.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import date -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -32,13 +37,19 @@ class TeamMember(BaseModel): r"""The member's start date""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["relationship", "join_date"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/textrange.py b/src/glean/api_client/models/textrange.py index 9cd52eba..5ee9232a 100644 --- a/src/glean/api_client/models/textrange.py +++ b/src/glean/api_client/models/textrange.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING @@ -59,13 +64,19 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["endIndex", "type", "url", "document"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/thumbnail.py b/src/glean/api_client/models/thumbnail.py index decf9c1f..2e1fb5df 100644 --- a/src/glean/api_client/models/thumbnail.py +++ b/src/glean/api_client/models/thumbnail.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class Thumbnail(BaseModel): r"""Thumbnail URL. This can be user provided image and/or from downloaded images hosted by Glean.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["photoId", "url"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/timepoint.py b/src/glean/api_client/models/timepoint.py index 64b09fea..2c4fa3c0 100644 --- a/src/glean/api_client/models/timepoint.py +++ b/src/glean/api_client/models/timepoint.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class TimePoint(BaseModel): r"""Number of days in the past, relative to the current date.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["epochSeconds", "daysFromNow"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/timerange.py b/src/glean/api_client/models/timerange.py index 7ac2cf3c..4d1c04aa 100644 --- a/src/glean/api_client/models/timerange.py +++ b/src/glean/api_client/models/timerange.py @@ -2,7 +2,12 @@ from __future__ import annotations from datetime import datetime -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -31,13 +36,19 @@ class TimeRange(BaseModel): r"""The number of days to look back from the current time, applicable for the LAST_N_DAYS type.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["startTime", "endTime", "lastNDaysValue"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/timerangefilter.py b/src/glean/api_client/models/timerangefilter.py index b8ad3178..2d83d0be 100644 --- a/src/glean/api_client/models/timerangefilter.py +++ b/src/glean/api_client/models/timerangefilter.py @@ -4,7 +4,12 @@ from .timerange import TimeRange, TimeRangeTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -47,13 +52,19 @@ def serialize_time_period_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["timePeriodType", "customTimeRange"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/tool.py b/src/glean/api_client/models/tool.py index 86839d1b..80b8c2a9 100644 --- a/src/glean/api_client/models/tool.py +++ b/src/glean/api_client/models/tool.py @@ -4,7 +4,12 @@ from .toolparameter import ToolParameter, ToolParameterTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Dict, Optional @@ -57,15 +62,21 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["type", "name", "displayName", "description", "parameters"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolannotations.py b/src/glean/api_client/models/toolannotations.py index fa00357c..0e694545 100644 --- a/src/glean/api_client/models/toolannotations.py +++ b/src/glean/api_client/models/toolannotations.py @@ -7,6 +7,8 @@ OptionalNullable, UNSET, UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, ) import pydantic from pydantic import model_serializer @@ -98,6 +100,9 @@ class ToolAnnotations(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -109,11 +114,14 @@ def serialize_model(self, handler): ] ) nullable_fields = set(["destructiveHint", "openWorldHint"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) is_nullable_and_explicitly_set = ( k in nullable_fields diff --git a/src/glean/api_client/models/tooldefinition.py b/src/glean/api_client/models/tooldefinition.py index 805617b1..995cf32b 100644 --- a/src/glean/api_client/models/tooldefinition.py +++ b/src/glean/api_client/models/tooldefinition.py @@ -2,7 +2,12 @@ from __future__ import annotations from .toolannotations import ToolAnnotations, ToolAnnotationsTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Any, Dict, Optional @@ -60,15 +65,21 @@ class ToolDefinition(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["displayName", "description", "inputSchema", "annotations"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/tooldefinitionsresponse.py b/src/glean/api_client/models/tooldefinitionsresponse.py index a0fa1e09..25fd7861 100644 --- a/src/glean/api_client/models/tooldefinitionsresponse.py +++ b/src/glean/api_client/models/tooldefinitionsresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .tooldefinition import ToolDefinition, ToolDefinitionTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -24,13 +29,19 @@ class ToolDefinitionsResponse(BaseModel): r"""Requested names that do not exist on this server.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["notFound"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolinfo.py b/src/glean/api_client/models/toolinfo.py index 9bbfdf32..4eef4556 100644 --- a/src/glean/api_client/models/toolinfo.py +++ b/src/glean/api_client/models/toolinfo.py @@ -3,7 +3,12 @@ from __future__ import annotations from .toolmetadata import ToolMetadata, ToolMetadataTypedDict from .writeactionparameter import WriteActionParameter, WriteActionParameterTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Dict, Optional from typing_extensions import NotRequired, TypedDict @@ -24,13 +29,19 @@ class ToolInfo(BaseModel): r"""Parameters supported by the tool.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["metadata", "parameters"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolmetadata.py b/src/glean/api_client/models/toolmetadata.py index d7928cf2..9922b38f 100644 --- a/src/glean/api_client/models/toolmetadata.py +++ b/src/glean/api_client/models/toolmetadata.py @@ -7,7 +7,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -261,6 +266,9 @@ def serialize_auth_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -281,11 +289,14 @@ def serialize_model(self, handler): "isSetupFinished", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolparameter.py b/src/glean/api_client/models/toolparameter.py index 2e00547d..357c5328 100644 --- a/src/glean/api_client/models/toolparameter.py +++ b/src/glean/api_client/models/toolparameter.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Dict, List, Optional @@ -69,6 +74,9 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -81,11 +89,14 @@ def serialize_model(self, handler): "properties", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolscallparameter.py b/src/glean/api_client/models/toolscallparameter.py index 43b68c3e..398e96c5 100644 --- a/src/glean/api_client/models/toolscallparameter.py +++ b/src/glean/api_client/models/toolscallparameter.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Dict, List, Optional from typing_extensions import NotRequired, TypedDict @@ -32,13 +37,19 @@ class ToolsCallParameter(BaseModel): r"""The value of the parameter (for object types)""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["items", "properties"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolscallresponse.py b/src/glean/api_client/models/toolscallresponse.py index 9949402b..54efccff 100644 --- a/src/glean/api_client/models/toolscallresponse.py +++ b/src/glean/api_client/models/toolscallresponse.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Any, Dict, Optional @@ -25,13 +30,19 @@ class ToolsCallResponse(BaseModel): r"""The error message if applicable""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["rawResponse", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolserverauthstatusresponse.py b/src/glean/api_client/models/toolserverauthstatusresponse.py index 8af7af9c..e89164b9 100644 --- a/src/glean/api_client/models/toolserverauthstatusresponse.py +++ b/src/glean/api_client/models/toolserverauthstatusresponse.py @@ -4,7 +4,12 @@ from .actionauthtype import ActionAuthType from .toolserverauthstatus import ToolServerAuthStatus from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -69,13 +74,19 @@ def serialize_auth_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["displayName", "logoUrl", "description"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolsets.py b/src/glean/api_client/models/toolsets.py index c1ecb2c2..1275114f 100644 --- a/src/glean/api_client/models/toolsets.py +++ b/src/glean/api_client/models/toolsets.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -31,13 +36,19 @@ class ToolSets(BaseModel): r"""Whether the agent is allowed to search internal company resources (default: true).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["enableWebSearch", "enableCompanyTools"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/toolslistresponse.py b/src/glean/api_client/models/toolslistresponse.py index 8b5a32cc..f03b99a7 100644 --- a/src/glean/api_client/models/toolslistresponse.py +++ b/src/glean/api_client/models/toolslistresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .tool import Tool, ToolTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -16,13 +21,19 @@ class ToolsListResponse(BaseModel): tools: Optional[List[Tool]] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["tools"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/unauthorizeddatasourceinstance.py b/src/glean/api_client/models/unauthorizeddatasourceinstance.py index 526f7724..b8995b71 100644 --- a/src/glean/api_client/models/unauthorizeddatasourceinstance.py +++ b/src/glean/api_client/models/unauthorizeddatasourceinstance.py @@ -3,7 +3,12 @@ from __future__ import annotations from .authstatus import AuthStatus from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -62,15 +67,21 @@ def serialize_auth_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["datasourceInstance", "displayName", "authStatus", "authUrlRelativePath"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/unpin.py b/src/glean/api_client/models/unpin.py index 406ddefe..2a99e195 100644 --- a/src/glean/api_client/models/unpin.py +++ b/src/glean/api_client/models/unpin.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class Unpin(BaseModel): r"""The opaque id of the pin to be unpinned.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/unpinop.py b/src/glean/api_client/models/unpinop.py index 788b1fdb..c13ce094 100644 --- a/src/glean/api_client/models/unpinop.py +++ b/src/glean/api_client/models/unpinop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .unpin import Unpin, UnpinTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -29,13 +34,19 @@ class UnpinRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updateannouncementop.py b/src/glean/api_client/models/updateannouncementop.py index 8ccce4d0..012a2365 100644 --- a/src/glean/api_client/models/updateannouncementop.py +++ b/src/glean/api_client/models/updateannouncementop.py @@ -5,7 +5,12 @@ UpdateAnnouncementRequest, UpdateAnnouncementRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -33,13 +38,19 @@ class UpdateannouncementRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updateannouncementrequest.py b/src/glean/api_client/models/updateannouncementrequest.py index 04efd103..a0ceb74f 100644 --- a/src/glean/api_client/models/updateannouncementrequest.py +++ b/src/glean/api_client/models/updateannouncementrequest.py @@ -6,7 +6,12 @@ from .thumbnail import Thumbnail, ThumbnailTypedDict from datetime import datetime from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -111,6 +116,9 @@ class UpdateAnnouncementRequest(BaseModel): r"""URL for viewing the announcement. It will be set to document URL for announcements from other datasources e.g. simpplr. Can only be written when channel=\"SOCIAL_FEED\".""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -127,11 +135,14 @@ def serialize_model(self, handler): "viewUrl", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedlpconfigrequest.py b/src/glean/api_client/models/updatedlpconfigrequest.py index dfa51ced..fd6690c2 100644 --- a/src/glean/api_client/models/updatedlpconfigrequest.py +++ b/src/glean/api_client/models/updatedlpconfigrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .dlpconfig import DlpConfig, DlpConfigTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -23,13 +28,19 @@ class UpdateDlpConfigRequest(BaseModel): r"""Only \"ONCE\" is supported for reports.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["config", "frequency"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedlpconfigresponse.py b/src/glean/api_client/models/updatedlpconfigresponse.py index 216e80d9..8c9d493c 100644 --- a/src/glean/api_client/models/updatedlpconfigresponse.py +++ b/src/glean/api_client/models/updatedlpconfigresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .dlpsimpleresult import DlpSimpleResult from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -32,13 +37,19 @@ def serialize_result(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["result", "reportId"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedlpreportrequest.py b/src/glean/api_client/models/updatedlpreportrequest.py index 8fdd3dd1..877140c6 100644 --- a/src/glean/api_client/models/updatedlpreportrequest.py +++ b/src/glean/api_client/models/updatedlpreportrequest.py @@ -5,7 +5,12 @@ from .dlpfrequency import DlpFrequency from .dlpreportstatus import DlpReportStatus from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -62,15 +67,21 @@ def serialize_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["config", "frequency", "status", "autoHideDocs", "reportName"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedlpreportresponse.py b/src/glean/api_client/models/updatedlpreportresponse.py index ecb9e43f..5f2b4e5e 100644 --- a/src/glean/api_client/models/updatedlpreportresponse.py +++ b/src/glean/api_client/models/updatedlpreportresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .dlpsimpleresult import DlpSimpleResult from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ def serialize_result(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["result"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedocumentvisibilityoverridesrequest.py b/src/glean/api_client/models/updatedocumentvisibilityoverridesrequest.py index 94e18dac..cdf5e548 100644 --- a/src/glean/api_client/models/updatedocumentvisibilityoverridesrequest.py +++ b/src/glean/api_client/models/updatedocumentvisibilityoverridesrequest.py @@ -5,7 +5,12 @@ DocumentVisibilityOverride, DocumentVisibilityOverrideTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -23,13 +28,19 @@ class UpdateDocumentVisibilityOverridesRequest(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["visibilityOverrides"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatedocumentvisibilityoverridesresponse.py b/src/glean/api_client/models/updatedocumentvisibilityoverridesresponse.py index 48078741..23958108 100644 --- a/src/glean/api_client/models/updatedocumentvisibilityoverridesresponse.py +++ b/src/glean/api_client/models/updatedocumentvisibilityoverridesresponse.py @@ -5,7 +5,12 @@ DocumentVisibilityUpdateResult, DocumentVisibilityUpdateResultTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -21,13 +26,19 @@ class UpdateDocumentVisibilityOverridesResponse(BaseModel): r"""The documents and whether their visibility was successfully updated.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["results"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updatepermissionsrequest.py b/src/glean/api_client/models/updatepermissionsrequest.py index 0c622986..8431ec20 100644 --- a/src/glean/api_client/models/updatepermissionsrequest.py +++ b/src/glean/api_client/models/updatepermissionsrequest.py @@ -5,7 +5,12 @@ DocumentPermissionsDefinition, DocumentPermissionsDefinitionTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -48,13 +53,19 @@ class UpdatePermissionsRequest(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["objectType", "id", "viewURL"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updateshortcutop.py b/src/glean/api_client/models/updateshortcutop.py index f047f8ac..60f7fe13 100644 --- a/src/glean/api_client/models/updateshortcutop.py +++ b/src/glean/api_client/models/updateshortcutop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .updateshortcutrequest import UpdateShortcutRequest, UpdateShortcutRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class UpdateshortcutRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updateshortcutrequest.py b/src/glean/api_client/models/updateshortcutrequest.py index 4b89b63a..6bb63fe0 100644 --- a/src/glean/api_client/models/updateshortcutrequest.py +++ b/src/glean/api_client/models/updateshortcutrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .userrolespecification import UserRoleSpecification, UserRoleSpecificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -67,6 +72,9 @@ class UpdateShortcutRequest(BaseModel): r"""A list of user roles removed for the Shortcut.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -80,11 +88,14 @@ def serialize_model(self, handler): "removedRoles", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/updateshortcutresponse.py b/src/glean/api_client/models/updateshortcutresponse.py index 9c51a9a4..765772e2 100644 --- a/src/glean/api_client/models/updateshortcutresponse.py +++ b/src/glean/api_client/models/updateshortcutresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .shortcut import Shortcut, ShortcutTypedDict from .shortcuterror import ShortcutError, ShortcutErrorTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -20,13 +25,19 @@ class UpdateShortcutResponse(BaseModel): error: Optional[ShortcutError] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["shortcut", "error"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/uploadchatfilesop.py b/src/glean/api_client/models/uploadchatfilesop.py index 4aafc910..eee3c432 100644 --- a/src/glean/api_client/models/uploadchatfilesop.py +++ b/src/glean/api_client/models/uploadchatfilesop.py @@ -5,7 +5,12 @@ UploadChatFilesRequest, UploadChatFilesRequestTypedDict, ) -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata import pydantic from pydantic import model_serializer @@ -41,13 +46,19 @@ class UploadchatfilesRequestRequest(BaseModel): r"""The offset of the client's timezone in minutes from UTC. e.g. PDT is -420 because it's 7 hours behind UTC.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale", "timezoneOffset"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/uploadchatfilesrequest.py b/src/glean/api_client/models/uploadchatfilesrequest.py index 23c3ccd7..08d3b2b7 100644 --- a/src/glean/api_client/models/uploadchatfilesrequest.py +++ b/src/glean/api_client/models/uploadchatfilesrequest.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, MultipartFormMetadata import io import pydantic @@ -34,13 +39,19 @@ class UploadChatFilesRequestFile(BaseModel): ] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["contentType"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/uploadchatfilesresponse.py b/src/glean/api_client/models/uploadchatfilesresponse.py index a707d722..0878b0e8 100644 --- a/src/glean/api_client/models/uploadchatfilesresponse.py +++ b/src/glean/api_client/models/uploadchatfilesresponse.py @@ -2,7 +2,12 @@ from __future__ import annotations from .chatfile import ChatFile, ChatFileTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class UploadChatFilesResponse(BaseModel): r"""Files uploaded for chat.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["files"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/uploadshortcutsrequest.py b/src/glean/api_client/models/uploadshortcutsrequest.py index e73b9c17..d1112d33 100644 --- a/src/glean/api_client/models/uploadshortcutsrequest.py +++ b/src/glean/api_client/models/uploadshortcutsrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from .indexingshortcut import IndexingShortcut, IndexingShortcutTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional @@ -45,13 +50,19 @@ class UploadShortcutsRequest(BaseModel): r"""Flag to discard previous upload attempts and start from scratch. Must be specified with isFirstPage=true""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isFirstPage", "isLastPage", "forceRestartUpload"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/user.py b/src/glean/api_client/models/user.py index 3a8ab795..d5382806 100644 --- a/src/glean/api_client/models/user.py +++ b/src/glean/api_client/models/user.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -23,13 +28,19 @@ class User(BaseModel): r"""An opaque user ID for the authenticated user (ignores actas).""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["userID", "origID"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/useractivity.py b/src/glean/api_client/models/useractivity.py index 17d6333e..57d03b1e 100644 --- a/src/glean/api_client/models/useractivity.py +++ b/src/glean/api_client/models/useractivity.py @@ -5,7 +5,12 @@ from .person import Person, PersonTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -63,13 +68,19 @@ def serialize_action(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["actor", "timestamp", "action", "aggregateVisitCount"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/useractivityinsight.py b/src/glean/api_client/models/useractivityinsight.py index 692a1035..cc94be3f 100644 --- a/src/glean/api_client/models/useractivityinsight.py +++ b/src/glean/api_client/models/useractivityinsight.py @@ -5,7 +5,12 @@ from .person import Person, PersonTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -58,15 +63,21 @@ def serialize_activity(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( ["lastActivityTimestamp", "activityCount", "activeDayCount"] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/usergeneratedcontentid.py b/src/glean/api_client/models/usergeneratedcontentid.py index cd30606c..6d0527a1 100644 --- a/src/glean/api_client/models/usergeneratedcontentid.py +++ b/src/glean/api_client/models/usergeneratedcontentid.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -17,13 +22,19 @@ class UserGeneratedContentID(BaseModel): r"""The opaque id of the user generated content.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["id"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/userreferencedefinition.py b/src/glean/api_client/models/userreferencedefinition.py index ae7ab296..fb807611 100644 --- a/src/glean/api_client/models/userreferencedefinition.py +++ b/src/glean/api_client/models/userreferencedefinition.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class UserReferenceDefinition(BaseModel): name: Optional[str] = None @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["email", "datasourceUserId", "name"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/userrolespecification.py b/src/glean/api_client/models/userrolespecification.py index 485de693..d7009f5c 100644 --- a/src/glean/api_client/models/userrolespecification.py +++ b/src/glean/api_client/models/userrolespecification.py @@ -5,7 +5,12 @@ from .group import Group, GroupTypedDict from .userrole import UserRole from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING @@ -45,13 +50,19 @@ def serialize_role(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["sourceDocumentSpec", "person", "group"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/userstatusresponse.py b/src/glean/api_client/models/userstatusresponse.py index 0ee6f353..fdaa5ca8 100644 --- a/src/glean/api_client/models/userstatusresponse.py +++ b/src/glean/api_client/models/userstatusresponse.py @@ -3,7 +3,12 @@ from __future__ import annotations from .uploadstatusenum import UploadStatusEnum from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -49,13 +54,19 @@ def serialize_upload_status(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["isActiveUser", "uploadStatus", "lastUploadedAt"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/userviewinfo.py b/src/glean/api_client/models/userviewinfo.py index 9dfde209..ac4ed314 100644 --- a/src/glean/api_client/models/userviewinfo.py +++ b/src/glean/api_client/models/userviewinfo.py @@ -1,7 +1,12 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -28,13 +33,19 @@ class UserViewInfo(BaseModel): r"""URL of associated document.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["docId", "docTitle", "docUrl"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/verification.py b/src/glean/api_client/models/verification.py index 014203d0..76e1e238 100644 --- a/src/glean/api_client/models/verification.py +++ b/src/glean/api_client/models/verification.py @@ -3,7 +3,12 @@ from __future__ import annotations from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import field_serializer, model_serializer from typing import Optional, TYPE_CHECKING from typing_extensions import NotRequired, TypedDict @@ -45,13 +50,19 @@ def serialize_state(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["metadata"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/verificationfeed.py b/src/glean/api_client/models/verificationfeed.py index 46752ed8..bb78d003 100644 --- a/src/glean/api_client/models/verificationfeed.py +++ b/src/glean/api_client/models/verificationfeed.py @@ -2,7 +2,12 @@ from __future__ import annotations from .verification import Verification, VerificationTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import List, Optional from typing_extensions import NotRequired, TypedDict @@ -18,13 +23,19 @@ class VerificationFeed(BaseModel): r"""List of document infos that include verification related information for them.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["documents"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/verificationmetadata.py b/src/glean/api_client/models/verificationmetadata.py index a04d6ea3..1246e835 100644 --- a/src/glean/api_client/models/verificationmetadata.py +++ b/src/glean/api_client/models/verificationmetadata.py @@ -2,7 +2,12 @@ from __future__ import annotations from .countinfo import CountInfo, CountInfoTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import List, Optional, TYPE_CHECKING @@ -63,6 +68,9 @@ class VerificationMetadata(BaseModel): r"""List of potential verifiers for the document e.g. old verifiers and/or users with view/edit permissions.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -76,11 +84,14 @@ def serialize_model(self, handler): "candidateVerifiers", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/verifyop.py b/src/glean/api_client/models/verifyop.py index c4c3e681..2544c6da 100644 --- a/src/glean/api_client/models/verifyop.py +++ b/src/glean/api_client/models/verifyop.py @@ -2,7 +2,12 @@ from __future__ import annotations from .verifyrequest import VerifyRequest, VerifyRequestTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from glean.api_client.utils import FieldMetadata, QueryParamMetadata, RequestMetadata from pydantic import model_serializer from typing import Optional @@ -30,13 +35,19 @@ class VerifyRequestRequest(BaseModel): r"""The client's preferred locale in rfc5646 format (e.g. `en`, `ja`, `pt-BR`). If omitted, the `Accept-Language` will be used. If not present or not supported, defaults to the closest match or `en`.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["locale"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/verifyrequest.py b/src/glean/api_client/models/verifyrequest.py index 7c93b46f..ffcb7f72 100644 --- a/src/glean/api_client/models/verifyrequest.py +++ b/src/glean/api_client/models/verifyrequest.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -32,13 +37,19 @@ class VerifyRequest(BaseModel): r"""The verification action requested.""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["action"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/viewerinfo.py b/src/glean/api_client/models/viewerinfo.py index a974e0a3..4bd3314b 100644 --- a/src/glean/api_client/models/viewerinfo.py +++ b/src/glean/api_client/models/viewerinfo.py @@ -4,7 +4,12 @@ from datetime import datetime from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -51,13 +56,19 @@ def serialize_role(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["role", "lastViewedTime"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/workflow.py b/src/glean/api_client/models/workflow.py index 063e8acf..4a790182 100644 --- a/src/glean/api_client/models/workflow.py +++ b/src/glean/api_client/models/workflow.py @@ -3,7 +3,12 @@ from __future__ import annotations from .objectpermissions import ObjectPermissions, ObjectPermissionsTypedDict from .person import Person, PersonTypedDict -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import model_serializer from typing import Optional @@ -90,6 +95,9 @@ class Workflow(BaseModel): """ @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -108,11 +116,14 @@ def serialize_model(self, handler): "webhookUrl", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/workflowfeedbackinfo.py b/src/glean/api_client/models/workflowfeedbackinfo.py index a0d06dbc..16d1d80d 100644 --- a/src/glean/api_client/models/workflowfeedbackinfo.py +++ b/src/glean/api_client/models/workflowfeedbackinfo.py @@ -2,7 +2,12 @@ from __future__ import annotations from enum import Enum -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -26,13 +31,19 @@ class WorkflowFeedbackInfo(BaseModel): r"""Where the feedback of the workflow originated from""" @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["source"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/writeactionparameter.py b/src/glean/api_client/models/writeactionparameter.py index 65b3d94c..1ce448c7 100644 --- a/src/glean/api_client/models/writeactionparameter.py +++ b/src/glean/api_client/models/writeactionparameter.py @@ -4,7 +4,12 @@ from .possiblevalue import PossibleValue, PossibleValueTypedDict from enum import Enum from glean.api_client import models, utils -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import List, Optional @@ -66,6 +71,9 @@ def serialize_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set( [ @@ -77,11 +85,14 @@ def serialize_model(self, handler): "possibleValues", ] ) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/models/writepermission.py b/src/glean/api_client/models/writepermission.py index 85e816dc..ab4f0283 100644 --- a/src/glean/api_client/models/writepermission.py +++ b/src/glean/api_client/models/writepermission.py @@ -3,7 +3,12 @@ from __future__ import annotations from .scopetype import ScopeType from glean.api_client import models -from glean.api_client.types import BaseModel, UNSET_SENTINEL +from glean.api_client.types import ( + BaseModel, + UNSET_SENTINEL, + current_exclude_none, + serialize_with_info, +) import pydantic from pydantic import field_serializer, model_serializer from typing import Optional @@ -48,13 +53,19 @@ def serialize_scope_type(self, value): return value @model_serializer(mode="wrap") + def _serialize_model_with_info(self, handler, info): + return serialize_with_info(self.serialize_model, handler, info) + def serialize_model(self, handler): optional_fields = set(["scopeType", "create", "update", "delete"]) + exclude_none = current_exclude_none() serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): - k = f.alias or n + k = f.alias if f.alias is not None else n + if k not in serialized and n not in serialized and exclude_none is False: + continue val = serialized.get(k, serialized.get(n)) if val != UNSET_SENTINEL: diff --git a/src/glean/api_client/types/__init__.py b/src/glean/api_client/types/__init__.py index faa26813..3a43a78a 100644 --- a/src/glean/api_client/types/__init__.py +++ b/src/glean/api_client/types/__init__.py @@ -3,22 +3,26 @@ from .base64fileinput import Base64EncodedString, Base64FileInput from .basemodel import ( BaseModel, + current_exclude_none, Nullable, OptionalNullable, UnrecognizedInt, UnrecognizedStr, UNSET, UNSET_SENTINEL, + serialize_with_info, ) __all__ = [ "Base64EncodedString", "Base64FileInput", "BaseModel", + "current_exclude_none", "Nullable", "OptionalNullable", "UnrecognizedInt", "UnrecognizedStr", "UNSET", "UNSET_SENTINEL", + "serialize_with_info", ] diff --git a/src/glean/api_client/types/basemodel.py b/src/glean/api_client/types/basemodel.py index a9a640a1..e4ae50e2 100644 --- a/src/glean/api_client/types/basemodel.py +++ b/src/glean/api_client/types/basemodel.py @@ -1,9 +1,10 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" +from contextvars import ContextVar from pydantic import ConfigDict, model_serializer from pydantic import BaseModel as PydanticBaseModel -from pydantic_core import core_schema -from typing import TYPE_CHECKING, Any, Literal, Optional, TypeVar, Union +from pydantic_core import PydanticSerializationUnexpectedValue, core_schema +from typing import TYPE_CHECKING, Any, Callable, Literal, Optional, Type, TypeVar, Union from typing_extensions import TypeAliasType, TypeAlias @@ -37,6 +38,36 @@ def __bool__(self) -> Literal[False]: ) +_exclude_none: ContextVar[Optional[bool]] = ContextVar("exclude_none", default=None) + + +def serialize_with_info( + serialize: Callable[[Any], Any], handler: Any, info: core_schema.SerializationInfo +) -> Any: + token = _exclude_none.set(info.exclude_none) + try: + return serialize(handler) + finally: + _exclude_none.reset(token) + + +def current_exclude_none() -> Optional[bool]: + """Return the exclude_none option of the enclosing serialize_with_info call, or None outside of one.""" + return _exclude_none.get() + + +def _unrecognized_serialization(cls: Type[Union[str, int]]) -> core_schema.PlainSerializerFunctionSerSchema: + def serialize(value: Any, info: core_schema.SerializationInfo) -> Any: + # Decline other values so union serialization tries the remaining members + if not isinstance(value, cls): + raise PydanticSerializationUnexpectedValue(f"Expected {cls.__name__}") + if not info.mode_is_json(): + return value + return str(value) if isinstance(value, str) else int(value) + + return core_schema.plain_serializer_function_ser_schema(serialize, info_arg=True) + + class UnrecognizedStr(str): @classmethod def __get_pydantic_core_schema__(cls, _source_type: Any, _handler: Any) -> core_schema.CoreSchema: @@ -56,6 +87,7 @@ def validate_lax(v: Any) -> 'UnrecognizedStr': core_schema.no_info_plain_validator_function(validate_lax) ]), strict_schema=core_schema.none_schema(), # Always fails in strict mode + serialization=_unrecognized_serialization(cls), ) @@ -74,4 +106,5 @@ def validate_lax(v: Any) -> 'UnrecognizedInt': core_schema.no_info_plain_validator_function(validate_lax) ]), strict_schema=core_schema.none_schema(), # Always fails in strict mode + serialization=_unrecognized_serialization(cls), ) diff --git a/src/glean/api_client/utils/security.py b/src/glean/api_client/utils/security.py index 4a272f16..4d692917 100644 --- a/src/glean/api_client/utils/security.py +++ b/src/glean/api_client/utils/security.py @@ -157,6 +157,9 @@ def _parse_security_scheme_value( scheme_type = scheme_metadata.scheme_type sub_type = scheme_metadata.sub_type + if value == "": + return + header_name = security_metadata.get_field_name(field_name) if scheme_type == "apiKey": diff --git a/tests/mockserver/internal/handler/pathgetapiadminagents.go b/tests/mockserver/internal/handler/pathgetapiadminagents.go index ba8311c3..280f1473 100644 --- a/tests/mockserver/internal/handler/pathgetapiadminagents.go +++ b/tests/mockserver/internal/handler/pathgetapiadminagents.go @@ -46,7 +46,7 @@ func testPlatformAdminAgentsListPlatformAdminAgentsList0(w http.ResponseWriter, return } var respBody *components.PlatformListAdminAgentsResponse = &components.PlatformListAdminAgentsResponse{ - Results: []components.PlatformAdminAgent{}, + Results: []components.PlatformAgent{}, HasMore: true, RequestID: "", } diff --git a/tests/mockserver/internal/handler/pathgetapiadminoauthclientsclientid.go b/tests/mockserver/internal/handler/pathgetapiadminoauthclientsclientid.go index 3d4cee4a..f4abe7f8 100644 --- a/tests/mockserver/internal/handler/pathgetapiadminoauthclientsclientid.go +++ b/tests/mockserver/internal/handler/pathgetapiadminoauthclientsclientid.go @@ -54,7 +54,7 @@ func testPlatformAdminOauthClientsGetPlatformAdminOauthClientsGet0(w http.Respon RedirectUris: []string{ "", }, - IsActive: false, + IsEnabled: true, }, RequestID: "", } diff --git a/tests/mockserver/internal/sdk/models/components/feedentry.go b/tests/mockserver/internal/sdk/models/components/feedentry.go index 96ae65e3..49e0b392 100644 --- a/tests/mockserver/internal/sdk/models/components/feedentry.go +++ b/tests/mockserver/internal/sdk/models/components/feedentry.go @@ -112,6 +112,7 @@ const ( JustificationTypeProjectFocusBlock JustificationType = "PROJECT_FOCUS_BLOCK" JustificationTypeProjectNextStep JustificationType = "PROJECT_NEXT_STEP" JustificationTypeDemoCard JustificationType = "DEMO_CARD" + JustificationTypePersonalAgentNux JustificationType = "PERSONAL_AGENT_NUX" JustificationTypeResolveMeetingConflict JustificationType = "RESOLVE_MEETING_CONFLICT" JustificationTypeFindingMeetingRoom JustificationType = "FINDING_MEETING_ROOM" JustificationTypeOooPlanner JustificationType = "OOO_PLANNER" @@ -250,6 +251,8 @@ func (e *JustificationType) UnmarshalJSON(data []byte) error { fallthrough case "DEMO_CARD": fallthrough + case "PERSONAL_AGENT_NUX": + fallthrough case "RESOLVE_MEETING_CONFLICT": fallthrough case "FINDING_MEETING_ROOM": diff --git a/tests/mockserver/internal/sdk/models/components/feedrequest.go b/tests/mockserver/internal/sdk/models/components/feedrequest.go index b4d41d55..e136164f 100644 --- a/tests/mockserver/internal/sdk/models/components/feedrequest.go +++ b/tests/mockserver/internal/sdk/models/components/feedrequest.go @@ -53,6 +53,7 @@ const ( FeedRequestCategoryProjectFocusBlock FeedRequestCategory = "PROJECT_FOCUS_BLOCK" FeedRequestCategoryProjectNextStep FeedRequestCategory = "PROJECT_NEXT_STEP" FeedRequestCategoryDemoCard FeedRequestCategory = "DEMO_CARD" + FeedRequestCategoryPersonalAgentNux FeedRequestCategory = "PERSONAL_AGENT_NUX" FeedRequestCategoryResolveMeetingConflict FeedRequestCategory = "RESOLVE_MEETING_CONFLICT" FeedRequestCategoryFindingMeetingRoom FeedRequestCategory = "FINDING_MEETING_ROOM" FeedRequestCategoryOooPlanner FeedRequestCategory = "OOO_PLANNER" @@ -165,6 +166,8 @@ func (e *FeedRequestCategory) UnmarshalJSON(data []byte) error { fallthrough case "DEMO_CARD": fallthrough + case "PERSONAL_AGENT_NUX": + fallthrough case "RESOLVE_MEETING_CONFLICT": fallthrough case "FINDING_MEETING_ROOM": diff --git a/tests/mockserver/internal/sdk/models/components/feedresult.go b/tests/mockserver/internal/sdk/models/components/feedresult.go index 26bf077c..75e05c28 100644 --- a/tests/mockserver/internal/sdk/models/components/feedresult.go +++ b/tests/mockserver/internal/sdk/models/components/feedresult.go @@ -54,6 +54,7 @@ const ( FeedResultCategoryProjectFocusBlock FeedResultCategory = "PROJECT_FOCUS_BLOCK" FeedResultCategoryProjectNextStep FeedResultCategory = "PROJECT_NEXT_STEP" FeedResultCategoryDemoCard FeedResultCategory = "DEMO_CARD" + FeedResultCategoryPersonalAgentNux FeedResultCategory = "PERSONAL_AGENT_NUX" FeedResultCategoryResolveMeetingConflict FeedResultCategory = "RESOLVE_MEETING_CONFLICT" FeedResultCategoryFindingMeetingRoom FeedResultCategory = "FINDING_MEETING_ROOM" FeedResultCategoryOooPlanner FeedResultCategory = "OOO_PLANNER" @@ -166,6 +167,8 @@ func (e *FeedResultCategory) UnmarshalJSON(data []byte) error { fallthrough case "DEMO_CARD": fallthrough + case "PERSONAL_AGENT_NUX": + fallthrough case "RESOLVE_MEETING_CONFLICT": fallthrough case "FINDING_MEETING_ROOM": diff --git a/tests/mockserver/internal/sdk/models/components/message.go b/tests/mockserver/internal/sdk/models/components/message.go index 1a80d9f4..c48ba6d9 100644 --- a/tests/mockserver/internal/sdk/models/components/message.go +++ b/tests/mockserver/internal/sdk/models/components/message.go @@ -34,6 +34,8 @@ type Message struct { Role *string `json:"role,omitempty"` // The content of the message. Content []MessageTextBlock `json:"content,omitempty"` + // An opaque token that represents this particular agent message. Populated only on `GLEAN_AI` messages in responses. To record feedback, pass the token of the message being rated (typically the final `GLEAN_AI` message of the run) as the single entry in `trackingTokens` to `/feedback`, with `category: CHAT`. + MessageTrackingToken *string `json:"messageTrackingToken,omitempty"` } func (o *Message) GetRole() *string { @@ -49,3 +51,10 @@ func (o *Message) GetContent() []MessageTextBlock { } return o.Content } + +func (o *Message) GetMessageTrackingToken() *string { + if o == nil { + return nil + } + return o.MessageTrackingToken +} diff --git a/tests/mockserver/internal/sdk/models/components/platformadminagent.go b/tests/mockserver/internal/sdk/models/components/platformadminagent.go deleted file mode 100644 index 4bbce897..00000000 --- a/tests/mockserver/internal/sdk/models/components/platformadminagent.go +++ /dev/null @@ -1,35 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// PlatformAdminAgent - An agent in the workspace. -type PlatformAdminAgent struct { - // Opaque agent ID. Other Platform APIs, such as usage limits, accept and return this ID. - // - AgentID string `json:"agent_id"` - // The name that Glean shows for the agent. - DisplayName string `json:"display_name"` - // Whether the agent is active. A deleted agent is inactive. - IsActive bool `json:"is_active"` -} - -func (o *PlatformAdminAgent) GetAgentID() string { - if o == nil { - return "" - } - return o.AgentID -} - -func (o *PlatformAdminAgent) GetDisplayName() string { - if o == nil { - return "" - } - return o.DisplayName -} - -func (o *PlatformAdminAgent) GetIsActive() bool { - if o == nil { - return false - } - return o.IsActive -} diff --git a/tests/mockserver/internal/sdk/models/components/platformadminagentfilter.go b/tests/mockserver/internal/sdk/models/components/platformadminagentfilter.go index 28142855..1bdc67b3 100644 --- a/tests/mockserver/internal/sdk/models/components/platformadminagentfilter.go +++ b/tests/mockserver/internal/sdk/models/components/platformadminagentfilter.go @@ -49,7 +49,8 @@ func (e *PlatformAdminAgentFilterOperator) UnmarshalJSON(data []byte) error { // PlatformAdminAgentFilter - A filter on one agent field. type PlatformAdminAgentFilter struct { - // The agent field to filter on. The only supported field is is_active. + // The agent field to filter on. name matches agents whose name contains the value. description matches agents whose description contains the value. Matching ignores case and surrounding whitespace. Each value is at most 256 characters. + // Field string `json:"field"` // The values to match. An agent matches when any value matches. Values []string `json:"values"` diff --git a/tests/mockserver/internal/sdk/models/components/platformdepartmentfilter.go b/tests/mockserver/internal/sdk/models/components/platformdepartmentfilter.go new file mode 100644 index 00000000..3682e943 --- /dev/null +++ b/tests/mockserver/internal/sdk/models/components/platformdepartmentfilter.go @@ -0,0 +1,91 @@ +// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +package components + +import ( + "encoding/json" + "fmt" + "mockserver/internal/sdk/utils" +) + +// PlatformDepartmentFilterOperator - The only supported operator is EQUALS. Defaults to EQUALS. +type PlatformDepartmentFilterOperator string + +const ( + PlatformDepartmentFilterOperatorEquals PlatformDepartmentFilterOperator = "EQUALS" + PlatformDepartmentFilterOperatorNotEquals PlatformDepartmentFilterOperator = "NOT_EQUALS" + PlatformDepartmentFilterOperatorGt PlatformDepartmentFilterOperator = "GT" + PlatformDepartmentFilterOperatorGte PlatformDepartmentFilterOperator = "GTE" + PlatformDepartmentFilterOperatorLt PlatformDepartmentFilterOperator = "LT" + PlatformDepartmentFilterOperatorLte PlatformDepartmentFilterOperator = "LTE" +) + +func (e PlatformDepartmentFilterOperator) ToPointer() *PlatformDepartmentFilterOperator { + return &e +} +func (e *PlatformDepartmentFilterOperator) UnmarshalJSON(data []byte) error { + var v string + if err := json.Unmarshal(data, &v); err != nil { + return err + } + switch v { + case "EQUALS": + fallthrough + case "NOT_EQUALS": + fallthrough + case "GT": + fallthrough + case "GTE": + fallthrough + case "LT": + fallthrough + case "LTE": + *e = PlatformDepartmentFilterOperator(v) + return nil + default: + return fmt.Errorf("invalid value for PlatformDepartmentFilterOperator: %v", v) + } +} + +// PlatformDepartmentFilter - A filter on one department field. +type PlatformDepartmentFilter struct { + // The department field to filter on. The only supported field is name, which matches departments whose display_name contains the value, ignoring case and surrounding whitespace. Each value is at most 256 characters. To find the department with an exact name, such as a department_name from a usage limit response, filter by the name and compare display_name exactly. + // + Field string `json:"field"` + // The values to match. A department matches when any value matches. + Values []string `json:"values"` + // The only supported operator is EQUALS. Defaults to EQUALS. + Operator *PlatformDepartmentFilterOperator `default:"EQUALS" json:"operator"` +} + +func (p PlatformDepartmentFilter) MarshalJSON() ([]byte, error) { + return utils.MarshalJSON(p, "", false) +} + +func (p *PlatformDepartmentFilter) UnmarshalJSON(data []byte) error { + if err := utils.UnmarshalJSON(data, &p, "", false, []string{"field", "values"}); err != nil { + return err + } + return nil +} + +func (o *PlatformDepartmentFilter) GetField() string { + if o == nil { + return "" + } + return o.Field +} + +func (o *PlatformDepartmentFilter) GetValues() []string { + if o == nil { + return []string{} + } + return o.Values +} + +func (o *PlatformDepartmentFilter) GetOperator() *PlatformDepartmentFilterOperator { + if o == nil { + return nil + } + return o.Operator +} diff --git a/tests/mockserver/internal/sdk/models/components/platformdocumentchangewebhookevent.go b/tests/mockserver/internal/sdk/models/components/platformdocumentchangewebhookevent.go index 790da9be..3c4a688a 100644 --- a/tests/mockserver/internal/sdk/models/components/platformdocumentchangewebhookevent.go +++ b/tests/mockserver/internal/sdk/models/components/platformdocumentchangewebhookevent.go @@ -27,10 +27,12 @@ type PlatformDocumentChangeWebhookEvent struct { Title string `json:"title"` // Relevant event time. Document changes use the source-observed time when available and otherwise the document ingestion time; content schedules use the scheduled time. Omitted when no timestamp is available. EventTime *time.Time `json:"event_time,omitempty"` - // Email body content when the event is for an email document. + // Email body content when the event is for an email document, or the message text when the event is for a Slack message. Content *string `json:"content,omitempty"` // Present and true when source content exceeded the delivery size limit. ContentTruncated *bool `json:"content_truncated,omitempty"` + // Facets of a Slack message as the event saw them, keyed as trigger filters key them, for example `from`, `mentions` and `channel`. Person facets carry the person's name. Each key lists up to 50 distinct values. Omitted for other documents and when the event has no facets. + Facets map[string][]string `json:"facets,omitempty"` } func (p PlatformDocumentChangeWebhookEvent) MarshalJSON() ([]byte, error) { @@ -127,3 +129,10 @@ func (o *PlatformDocumentChangeWebhookEvent) GetContentTruncated() *bool { } return o.ContentTruncated } + +func (o *PlatformDocumentChangeWebhookEvent) GetFacets() map[string][]string { + if o == nil { + return nil + } + return o.Facets +} diff --git a/tests/mockserver/internal/sdk/models/components/platformidpgroupfilter.go b/tests/mockserver/internal/sdk/models/components/platformidpgroupfilter.go index 8e13791a..22ec277c 100644 --- a/tests/mockserver/internal/sdk/models/components/platformidpgroupfilter.go +++ b/tests/mockserver/internal/sdk/models/components/platformidpgroupfilter.go @@ -49,7 +49,15 @@ func (e *PlatformIdpGroupFilterOperator) UnmarshalJSON(data []byte) error { // PlatformIdpGroupFilter - A filter on one IdP group field. type PlatformIdpGroupFilter struct { - // The IdP group field to filter on. The only supported field is provider_instance. + // The IdP group field to filter on. + // - provider_instance: matches groups from the datasource instance, such as + // "okta", ignoring case. + // + // - provider: matches groups from the identity provider, such as "okta", ignoring + // case. + // + // - name: matches groups whose display_name contains the value, ignoring case and + // surrounding whitespace. Each value is at most 256 characters. // Field string `json:"field"` // The values to match. An IdP group matches when any value matches. diff --git a/tests/mockserver/internal/sdk/models/components/platformlistadminagentsresponse.go b/tests/mockserver/internal/sdk/models/components/platformlistadminagentsresponse.go index 76987e77..ea7638e0 100644 --- a/tests/mockserver/internal/sdk/models/components/platformlistadminagentsresponse.go +++ b/tests/mockserver/internal/sdk/models/components/platformlistadminagentsresponse.go @@ -8,8 +8,8 @@ import ( // PlatformListAdminAgentsResponse - One page of agents. type PlatformListAdminAgentsResponse struct { - // The agents on this page, ordered by display_name and then by agent_id. - Results []PlatformAdminAgent `json:"results"` + // The agents on this page, ordered by name and then by agent_id. + Results []PlatformAgent `json:"results"` // Whether more agents are available after this page. HasMore bool `json:"has_more"` // Opaque cursor for the next page; null or absent when has_more is false. @@ -18,9 +18,9 @@ type PlatformListAdminAgentsResponse struct { RequestID string `json:"request_id"` } -func (o *PlatformListAdminAgentsResponse) GetResults() []PlatformAdminAgent { +func (o *PlatformListAdminAgentsResponse) GetResults() []PlatformAgent { if o == nil { - return []PlatformAdminAgent{} + return []PlatformAgent{} } return o.Results } diff --git a/tests/mockserver/internal/sdk/models/components/platformoauthclient.go b/tests/mockserver/internal/sdk/models/components/platformoauthclient.go index 119260cc..f630e0b3 100644 --- a/tests/mockserver/internal/sdk/models/components/platformoauthclient.go +++ b/tests/mockserver/internal/sdk/models/components/platformoauthclient.go @@ -24,9 +24,9 @@ type PlatformOAuthClient struct { TokenEndpointAuthMethod *PlatformOAuthTokenEndpointAuthMethod `json:"token_endpoint_auth_method,omitempty"` // The redirect URIs that the client can use. RedirectUris []string `json:"redirect_uris"` - // Whether the client is active. A client that an admin disabled is inactive and cannot authenticate. + // Whether the client is enabled. A client that an admin disabled cannot authenticate. // - IsActive bool `json:"is_active"` + IsEnabled bool `json:"is_enabled"` // When the client was created. Absent when it is not known. CreatedAt *time.Time `json:"created_at,omitempty"` // LLM Gateway details of an OAuth client. @@ -38,7 +38,7 @@ func (p PlatformOAuthClient) MarshalJSON() ([]byte, error) { } func (p *PlatformOAuthClient) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &p, "", false, []string{"client_id", "display_name", "registration_type", "grant_types", "redirect_uris", "is_active"}); err != nil { + if err := utils.UnmarshalJSON(data, &p, "", false, []string{"client_id", "display_name", "registration_type", "grant_types", "redirect_uris", "is_enabled"}); err != nil { return err } return nil @@ -93,11 +93,11 @@ func (o *PlatformOAuthClient) GetRedirectUris() []string { return o.RedirectUris } -func (o *PlatformOAuthClient) GetIsActive() bool { +func (o *PlatformOAuthClient) GetIsEnabled() bool { if o == nil { return false } - return o.IsActive + return o.IsEnabled } func (o *PlatformOAuthClient) GetCreatedAt() *time.Time { diff --git a/tests/mockserver/internal/sdk/models/components/platformoauthclientaigateway.go b/tests/mockserver/internal/sdk/models/components/platformoauthclientaigateway.go index 263cde38..cfe90273 100644 --- a/tests/mockserver/internal/sdk/models/components/platformoauthclientaigateway.go +++ b/tests/mockserver/internal/sdk/models/components/platformoauthclientaigateway.go @@ -7,6 +7,9 @@ type PlatformOAuthClientAiGateway struct { // The spend-client ID that usage records and usage limits use for this client. Send it as the client_id of a usage limit. It is an opaque, case-sensitive string; do not build it from client_id. // UsageClientID string `json:"usage_client_id"` + // The apps that the client is set up for, in alphabetical order. Empty when no app is recorded for the client. + // + SupportedApps []PlatformOAuthClientSupportedApp `json:"supported_apps"` } func (o *PlatformOAuthClientAiGateway) GetUsageClientID() string { @@ -15,3 +18,10 @@ func (o *PlatformOAuthClientAiGateway) GetUsageClientID() string { } return o.UsageClientID } + +func (o *PlatformOAuthClientAiGateway) GetSupportedApps() []PlatformOAuthClientSupportedApp { + if o == nil { + return []PlatformOAuthClientSupportedApp{} + } + return o.SupportedApps +} diff --git a/tests/mockserver/internal/sdk/models/components/platformoauthclientfilter.go b/tests/mockserver/internal/sdk/models/components/platformoauthclientfilter.go index 1c05df1d..f202d5ff 100644 --- a/tests/mockserver/internal/sdk/models/components/platformoauthclientfilter.go +++ b/tests/mockserver/internal/sdk/models/components/platformoauthclientfilter.go @@ -49,7 +49,23 @@ func (e *PlatformOAuthClientFilterOperator) UnmarshalJSON(data []byte) error { // PlatformOAuthClientFilter - A filter on one OAuth client field. type PlatformOAuthClientFilter struct { - // The client field to filter on. The only supported field is is_active. + // The client field to filter on. + // - is_enabled: "true" matches enabled clients, and "false" matches disabled + // clients. + // + // - name: matches clients whose display_name contains the value, ignoring + // case and surrounding whitespace. Each value is at most 256 characters. + // + // - client_id: matches the client with this OAuth client_id. + // - usage_client_id: matches the client with this ai_gateway.usage_client_id. + // - has_ai_gateway: "true" matches clients that can call the Glean LLM + // Gateway, which are the clients with ai_gateway. "false" matches the + // other clients. + // + // - supported_app: matches clients whose ai_gateway.supported_apps contains + // the value, such as CLAUDE_CODE. The values are the OAuthClientSupportedApp + // values. + // Field string `json:"field"` // The values to match. A client matches when any value matches. Values []string `json:"values"` diff --git a/tests/mockserver/internal/sdk/models/components/platformoauthclientsupportedapp.go b/tests/mockserver/internal/sdk/models/components/platformoauthclientsupportedapp.go new file mode 100644 index 00000000..1bcc8b7c --- /dev/null +++ b/tests/mockserver/internal/sdk/models/components/platformoauthclientsupportedapp.go @@ -0,0 +1,35 @@ +// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + +package components + +import ( + "encoding/json" + "fmt" +) + +// PlatformOAuthClientSupportedApp - An app that an LLM Gateway client is set up for. +type PlatformOAuthClientSupportedApp string + +const ( + PlatformOAuthClientSupportedAppClaudeCode PlatformOAuthClientSupportedApp = "CLAUDE_CODE" + PlatformOAuthClientSupportedAppCodex PlatformOAuthClientSupportedApp = "CODEX" +) + +func (e PlatformOAuthClientSupportedApp) ToPointer() *PlatformOAuthClientSupportedApp { + return &e +} +func (e *PlatformOAuthClientSupportedApp) UnmarshalJSON(data []byte) error { + var v string + if err := json.Unmarshal(data, &v); err != nil { + return err + } + switch v { + case "CLAUDE_CODE": + fallthrough + case "CODEX": + *e = PlatformOAuthClientSupportedApp(v) + return nil + default: + return fmt.Errorf("invalid value for PlatformOAuthClientSupportedApp: %v", v) + } +} diff --git a/tests/mockserver/internal/sdk/models/operations/platformadminagentslist.go b/tests/mockserver/internal/sdk/models/operations/platformadminagentslist.go index d7d5f972..d2af3528 100644 --- a/tests/mockserver/internal/sdk/models/operations/platformadminagentslist.go +++ b/tests/mockserver/internal/sdk/models/operations/platformadminagentslist.go @@ -13,7 +13,7 @@ type PlatformAdminAgentsListRequest struct { // Opaque pagination cursor from a previous response. Send the same filters that the previous request used. // Cursor *string `queryParam:"style=form,explode=true,name=cursor"` - // JSON-encoded filters that choose which agents are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active agents are returned. To return active and deleted agents, send [{"field":"is_active","values":["true","false"]}]. + // JSON-encoded filters that choose which agents are returned. The supported fields are name and description, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together, and each field can appear in only one filter. For example, to return agents whose name contains "HR", send [{"field":"name","values":["HR"]}]. // Filters []components.PlatformAdminAgentFilter `queryParam:"serialization=json,name=filters"` } diff --git a/tests/mockserver/internal/sdk/models/operations/platformadminidpgroupslist.go b/tests/mockserver/internal/sdk/models/operations/platformadminidpgroupslist.go index 4db8923f..82eedbfa 100644 --- a/tests/mockserver/internal/sdk/models/operations/platformadminidpgroupslist.go +++ b/tests/mockserver/internal/sdk/models/operations/platformadminidpgroupslist.go @@ -13,7 +13,7 @@ type PlatformAdminIdpGroupsListRequest struct { // Opaque pagination cursor from a previous response. Send the same filters that the previous request used. // Cursor *string `queryParam:"style=form,explode=true,name=cursor"` - // JSON-encoded filters that choose which IdP groups are returned. The only supported field is provider_instance, with datasource instance names such as "okta". provider_instance values match without case. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. + // JSON-encoded filters that choose which IdP groups are returned. The supported fields are provider_instance, provider, and name. The only supported operator is EQUALS. Multiple values OR within a filter. Multiple filters AND together. The name field may appear in only one filter. A value that matches no IdP group returns no IdP groups rather than an error. // Filters []components.PlatformIdpGroupFilter `queryParam:"serialization=json,name=filters"` } diff --git a/tests/mockserver/internal/sdk/models/operations/platformadminoauthclientslist.go b/tests/mockserver/internal/sdk/models/operations/platformadminoauthclientslist.go index 97201a83..b0aa3151 100644 --- a/tests/mockserver/internal/sdk/models/operations/platformadminoauthclientslist.go +++ b/tests/mockserver/internal/sdk/models/operations/platformadminoauthclientslist.go @@ -13,7 +13,7 @@ type PlatformAdminOauthClientsListRequest struct { // Opaque pagination cursor from a previous response. Send the same filters that the previous request used. // Cursor *string `queryParam:"style=form,explode=true,name=cursor"` - // JSON-encoded filters that choose which clients are returned. The only supported field is is_active, with the values "true" and "false" and the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Without an is_active filter, only active clients are returned. To return active and inactive clients, send [{"field":"is_active","values":["true","false"]}]. + // JSON-encoded filters that choose which clients are returned. The supported fields are is_enabled, name, client_id, usage_client_id, has_ai_gateway, and supported_app, with the operator EQUALS. Multiple values OR within a filter. Multiple filters AND together. Each field can appear in only one filter. Without an is_enabled filter, only enabled clients are returned. To return enabled and disabled clients, send [{"field":"is_enabled","values":["true","false"]}]. To find the Claude Code clients, send [{"field":"supported_app","values":["CLAUDE_CODE"]}]. // Filters []components.PlatformOAuthClientFilter `queryParam:"serialization=json,name=filters"` } diff --git a/tests/mockserver/internal/sdk/models/operations/platformdepartmentslist.go b/tests/mockserver/internal/sdk/models/operations/platformdepartmentslist.go index cbcb58c4..172b0268 100644 --- a/tests/mockserver/internal/sdk/models/operations/platformdepartmentslist.go +++ b/tests/mockserver/internal/sdk/models/operations/platformdepartmentslist.go @@ -10,8 +10,12 @@ import ( type PlatformDepartmentsListRequest struct { // Maximum number of departments to return. Defaults to 50. Maximum is 100. PageSize *int64 `default:"50" queryParam:"style=form,explode=true,name=page_size"` - // Opaque pagination cursor from a previous response. + // Opaque pagination cursor from a previous response. Send the same filters that the previous request used. + // Cursor *string `queryParam:"style=form,explode=true,name=cursor"` + // JSON-encoded filters that choose which departments are returned. The only supported field is name, with the operator EQUALS. Multiple values OR within a filter. The field may appear in only one filter. A value that matches no department returns no departments rather than an error. + // + Filters []components.PlatformDepartmentFilter `queryParam:"serialization=json,name=filters"` } func (p PlatformDepartmentsListRequest) MarshalJSON() ([]byte, error) { @@ -39,6 +43,13 @@ func (o *PlatformDepartmentsListRequest) GetCursor() *string { return o.Cursor } +func (o *PlatformDepartmentsListRequest) GetFilters() []components.PlatformDepartmentFilter { + if o == nil { + return nil + } + return o.Filters +} + type PlatformDepartmentsListResponse struct { HTTPMeta components.HTTPMetadata `json:"-"` // Successful response. diff --git a/tests/test_messages.py b/tests/test_messages.py index dfdc1864..132005ec 100644 --- a/tests/test_messages.py +++ b/tests/test_messages.py @@ -18,7 +18,7 @@ def test_messages_messages(): res = glean.client.messages.retrieve( id_type=models.IDType.CONVERSATION_ID, id="", - datasource=models.Datasource.SLACKENTGRID, + datasource=models.Datasource.FACEBOOKWORKPLACE, timestamp_millis=558834, ) assert res is not None diff --git a/tests/test_summarize.py b/tests/test_summarize.py index 63b4eb85..fd2baddb 100644 --- a/tests/test_summarize.py +++ b/tests/test_summarize.py @@ -18,7 +18,7 @@ def test_summarize_summarize(): res = glean.client.documents.summarize( document_specs=[ { - "url": "https://dim-glider.com/", + "url": "https://judicious-squid.info", }, { "id": "",