diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock
index 19689aa..c995859 100644
--- a/.speakeasy/gen.lock
+++ b/.speakeasy/gen.lock
@@ -1,25 +1,25 @@
lockVersion: 2.0.0
id: 5ca2c9b7-aea6-4a23-a631-998fcc6c18a8
management:
- docChecksum: af783375874560e279e961f29910ef46
- docVersion: 1.0.59
- speakeasyVersion: 1.682.0
- generationVersion: 2.791.1
- releaseVersion: 0.12.1
- configChecksum: 08d7b8fe958bf4dc56eab9cbd8f0b73d
+ docChecksum: 205fabb51f357e82a0f2cdc9f84a7136
+ docVersion: 1.0.63
+ speakeasyVersion: 1.686.0
+ generationVersion: 2.796.1
+ releaseVersion: 0.12.2
+ configChecksum: 6491b6d6f9a56ab147a09a40dc3a6980
repoURL: https://github.com/censys/censys-sdk-python.git
installationURL: https://github.com/censys/censys-sdk-python.git
published: true
persistentEdits:
- generation_id: 5772c516-a57d-4ed9-9816-02cd0c2320b1
- pristine_commit_hash: 3e42f01e83b4de44cbabfaf482c01462c31ab1f7
- pristine_tree_hash: 1d500941ffcbb80c39c7f641b43cb299a4ee95be
+ generation_id: 93559ac1-18bd-4120-ba76-61fcf0253f07
+ pristine_commit_hash: 01c402cefc55ab2f1a8250fa83c4f5f9c57a536f
+ pristine_tree_hash: 80cdd0f41e0826ae705684fb1c88b88fa8874706
features:
python:
acceptHeaders: 3.0.0
additionalDependencies: 1.0.0
constsAndDefaults: 1.0.5
- core: 5.23.16
+ core: 5.23.18
defaultEnabledRetries: 0.2.0
downloadStreams: 1.0.1
enumUnions: 0.1.0
@@ -34,11 +34,11 @@ features:
ignores: 3.0.1
methodArguments: 1.0.2
nameOverrides: 3.0.1
- nullables: 1.0.1
+ nullables: 1.0.2
responseFormat: 1.0.1
retries: 3.0.3
- sdkHooks: 1.2.0
- unions: 3.1.1
+ sdkHooks: 1.2.1
+ unions: 3.1.2
trackedFiles:
.gitattributes:
id: 24139dae6567
@@ -768,6 +768,10 @@ trackedFiles:
id: f5f6f14c319d
last_write_checksum: sha1:db73108b963d7eeb39716c45dddf8caaefc77212
pristine_git_object: 8b789973738d3a19b2dac344572cd2a59facd0d5
+ docs/models/hajime.md:
+ id: 9fa4f21e634d
+ last_write_checksum: sha1:1e5645a99d860bf8dfe115214c5f00412437985c
+ pristine_git_object: c94486beff34bf9e7c194b667c91fdd4dba9b6a4
docs/models/hidvertx.md:
id: f75e3f576356
last_write_checksum: sha1:e5e1914225810d67a2c7aa0320b8a509f10e904b
@@ -2002,8 +2006,8 @@ trackedFiles:
pristine_git_object: e6f00cc1cb14bfc9139ac98eae6022b582da1895
docs/models/service.md:
id: d38041323049
- last_write_checksum: sha1:021ea9d9347a219167b2282dd89e6df0fd2226fa
- pristine_git_object: 35be8e01e0ce453fdd0041052f46b23042e67842
+ last_write_checksum: sha1:2a1b04d9cdcc175313a7b2e9262ab66678ed6cc2
+ pristine_git_object: 9416ec5689555eca9b14d7e8e46e665f4b96467a
docs/models/serviceid.md:
id: 78670c733096
last_write_checksum: sha1:4388c75f08f99206fc758d5d47396f1a13fd37e1
@@ -2014,8 +2018,8 @@ trackedFiles:
pristine_git_object: d4efd3a1544fbdb6abab868b5d03cc03deceddb4
docs/models/servicescan.md:
id: 5079b5eb4109
- last_write_checksum: sha1:cf749122bfa377b8f30b4aef1bcab8b1554c4bc4
- pristine_git_object: c0fd7b3731b16bcd95247d3a6480adc93d2589d6
+ last_write_checksum: sha1:63b174aea6f7c4a35acf1370eae405b31821567b
+ pristine_git_object: 0c000a9bdcb278e44e348ecc6e19b18ff3ff1efb
docs/models/servicescanned.md:
id: 8783aac64d52
last_write_checksum: sha1:95fa8c18ec2267c5969827ee2576a45c793fc904
@@ -2882,8 +2886,8 @@ trackedFiles:
pristine_git_object: 55e2d35ebcb5cc61f4613ecfc42cf7535a58745b
docs/sdks/collections/README.md:
id: 7985e64efccf
- last_write_checksum: sha1:137fb7f620ea7bfc06d827349e083626c94909e3
- pristine_git_object: 7cccc15cad1c48f3edbda98263fa554267f9ce3e
+ last_write_checksum: sha1:a475df9b5d470aa83fe95a7c2edd37a309ca5005
+ pristine_git_object: f620a9fb9e9b80c94a76ddeade7fcce27964ba53
docs/sdks/globaldata/README.md:
id: 0c68886632e6
last_write_checksum: sha1:c8f777dc327fd79a72022cd627f5314e59f31e5c
@@ -2906,8 +2910,8 @@ trackedFiles:
pristine_git_object: 451f601a6382e06ed064d9e37bb0d2581bd472e9
pyproject.toml:
id: 5d07e7d72637
- last_write_checksum: sha1:0bb56872caa90099ad12f07010b3bdf0d0fbce04
- pristine_git_object: 09157cde8c5274bc509474b055efe14ec31c0b45
+ last_write_checksum: sha1:8d16bad0e751c64e3017ab12e3744bad3d306d3f
+ pristine_git_object: 4a0c21160413270e6ce477b353b2029f1500d24c
scripts/prepare_readme.py:
id: e0c5957a6035
last_write_checksum: sha1:10d6ae008b24c68e99d7e8ba9c2e747070685ead
@@ -2934,20 +2938,20 @@ trackedFiles:
pristine_git_object: 352d3691d91c2d0ba0f05b48b56d4df5ce520098
src/censys_platform/_version.py:
id: d2dc39704c23
- last_write_checksum: sha1:c28de111411fa765176b607c1602139d1f626eae
- pristine_git_object: a170f7d955d2a03c44c5dcb75714ca939526885e
+ last_write_checksum: sha1:52105ec42b8e9b5c72a86113da20ff767429c7b6
+ pristine_git_object: 6e72bcd4055f7b2f399bd3b80ff6831e48ab3a85
src/censys_platform/account_management.py:
id: 09993862b047
last_write_checksum: sha1:f1cc6965fa5daa0bf162ef2c0cdc5c9b0d00642f
pristine_git_object: 192753c0f03535e74d7dc40656a6ef98a3b6f2b7
src/censys_platform/basesdk.py:
id: a49fe6a31a15
- last_write_checksum: sha1:078ca229261c38b6bd8f8ba01826247578fd588f
- pristine_git_object: c5f5d88e7172a936f9da45bbfb461fc72084506b
+ last_write_checksum: sha1:04e5f0a1e4b6a7db86eec781a31edb2dc9a61ba5
+ pristine_git_object: aecdb5ca70b7d3674d45c29152c032e5feaf638d
src/censys_platform/collections.py:
id: e6d640c28668
- last_write_checksum: sha1:5de97a942cd6974212dc668379613edabc5dcfe3
- pristine_git_object: f8f5aba6e1727a04e658ed361a39b10f8e6fa566
+ last_write_checksum: sha1:a7086e51da9b5565c486d9397ed5c57ab364dd53
+ pristine_git_object: 23beebdc9f77f5117316ee6e58376851aac943c1
src/censys_platform/global_data.py:
id: 0eedbf9a2038
last_write_checksum: sha1:3b8c58bd5d8d1cf50b1d4d6054efe28816408832
@@ -2958,1692 +2962,1696 @@ trackedFiles:
pristine_git_object: 89560b566073785535643e694c112bedbd3db13d
src/censys_platform/models/__init__.py:
id: 4c65ae1e4fed
- last_write_checksum: sha1:f67ffa65086c6ed21bae318a0fe720587d91bdf5
- pristine_git_object: 3219d2155158654be8a64708ce572759f9edb009
+ last_write_checksum: sha1:4b3acadc6f5df39af6d7014ff5b3eb49fcfd0bf8
+ pristine_git_object: 25d9747db4f3ce3effee40a034ef14cbfda9f8a9
src/censys_platform/models/activemq.py:
id: c852b87bc559
- last_write_checksum: sha1:ea4bcd2277ebf843759f611fc7d192caef23e86c
- pristine_git_object: 1fc0c9521b6a32832a90b693d3428c276a69e46c
+ last_write_checksum: sha1:5d8f5fbd113473e04d2d5824f960aebd03c6e892
+ pristine_git_object: ee70d786308cf51c1cd81a78dbb3a795ab781c93
src/censys_platform/models/alternativequery.py:
id: fa781a546da9
- last_write_checksum: sha1:e9aaed98ca1eec6fbf263002c375e6f0d7a8cef0
- pristine_git_object: a3df8d3f1c20f0fed8bffcd4410e3d39e17a570d
+ last_write_checksum: sha1:4785eb1fc1133d65f82c655db113e012b65caa44
+ pristine_git_object: 01b811c57fc98558e10ea4b897b6d28ce066e32d
src/censys_platform/models/amqp.py:
id: 9e019f90c724
- last_write_checksum: sha1:dcd1ac12bbfb79c622103f63358f54d65ddecc83
- pristine_git_object: 913a7f393b8e2eb0ed3864320310272db6894c20
+ last_write_checksum: sha1:08a414f88d796153324c688366fcbe2bc09547e7
+ pristine_git_object: 6b26132893dac142339f6a7c928ae27fa0d56497
src/censys_platform/models/amqp_protocol.py:
id: 5c7d5d77cf23
- last_write_checksum: sha1:19e771708cfaf05dfd8368136163fcd053242501
- pristine_git_object: 3b02d7449cebdfa3fddb748cf2d8303a3140c09d
+ last_write_checksum: sha1:2fa6a38ebb0d6bfdb4bfc10cb3021ad7c640b929
+ pristine_git_object: d087bb29ceb6166c0fa5184b3b3dec556fd093a1
src/censys_platform/models/amqp_version.py:
id: 4b478cc8031e
- last_write_checksum: sha1:a768641c277ff1e766713d716ebcb2d48876654b
- pristine_git_object: aa93d94f63f2b51ea9b3eb43d36890c2ac0400da
+ last_write_checksum: sha1:36413f130682732edfbb3a22beb1db952565d944
+ pristine_git_object: 3a7b74422072e00563316bed1153aa935c7007db
src/censys_platform/models/analyticscapabilities.py:
id: 9f0b2d00b124
- last_write_checksum: sha1:e3de7f297d6ccaf6cea153cb92a3fa52d8bb3f32
- pristine_git_object: a7c613ed9976e92b502daead5be5e4f7576913a8
+ last_write_checksum: sha1:c9fee42b6d9a66c091b9e55646d58d57a12a26b8
+ pristine_git_object: 9a46cdeb3d854b2f5a062f17e385463e0e03c743
src/censys_platform/models/anyconnect.py:
id: c2f70eef6aae
- last_write_checksum: sha1:1050e25853e787b7d7c415f76f2e0b407d635ee1
- pristine_git_object: 38466c5bf5e99778842c9b6f67cec0dce996161d
+ last_write_checksum: sha1:9a98fdaf4f8932a60c89d566f5c5fffeb3e29216
+ pristine_git_object: 29b6f35448cbb938a8f6db8afd7581aa3cd1c7ce
src/censys_platform/models/assetcertificatelistinputbody.py:
id: 1cf737523db8
- last_write_checksum: sha1:d6ea4510b6e074012fefc6822b07cb87b134013a
- pristine_git_object: 159e1fe1bf35516a5f9de9ffe5a08d2b8182e04d
+ last_write_checksum: sha1:a78add63f5691a827ea17d1ceb37926419d3d24c
+ pristine_git_object: cf87507be27a8f4a77ed7848b1c9fb6b32e94850
src/censys_platform/models/assethostlistinputbody.py:
id: 5eafeba471f9
- last_write_checksum: sha1:b59155f62896aa8413b80108daa4642b6689ef8b
- pristine_git_object: dcac29966b845255abaaf7b29497025ad5ec5747
+ last_write_checksum: sha1:a0280289cd4a63dfe50489dfb9ce1eb1fc575f4d
+ pristine_git_object: 7162c0dff4ee5da2ef3e313dd53cc304baaa92e0
src/censys_platform/models/assetwebpropertylistinputbody.py:
id: f2883df45e42
- last_write_checksum: sha1:6030c28fa4c5089cc7ea5a8cd685a2ed10a4e019
- pristine_git_object: f35093fc27a6d653a38c9a7c43589008cc016935
+ last_write_checksum: sha1:e93e0963f19ec68d83a3375d8f7d13d469c4526d
+ pristine_git_object: fcf17c42ac50b5a57bd255ce8df83807be02b462
src/censys_platform/models/asteriskmanagerinterface.py:
id: 4af28353e798
- last_write_checksum: sha1:8893176abce7c8553ca87858b6f4b5dfc4f91d2c
- pristine_git_object: b33f779dbd77ee97d1cd50d4ab3f44841f05e62d
+ last_write_checksum: sha1:07cb0c35e35cf0f846862d3625ac52008e9cf644
+ pristine_git_object: 1b85f9395a692c9142ab40d9d654c36389c21304
src/censys_platform/models/attribute.py:
id: 4cfb472595bf
- last_write_checksum: sha1:8a92e1d55def5f9a3def60b4451829d270d89f0a
- pristine_git_object: c89d38740c9de68ff3e3dc42bf8989a869e47f93
+ last_write_checksum: sha1:c0100c14faaef335da3d74bb5ba893a58178fbd8
+ pristine_git_object: 18a0f47f6911a8b24bc82336b67b0466ac2878d2
src/censys_platform/models/auth.py:
id: 55cb26736ab0
- last_write_checksum: sha1:041b2173f982184a18680f6588902fbac7f6c603
- pristine_git_object: efa818e00232e3fa3c93a87cd8e285847bfc2509
+ last_write_checksum: sha1:443dd8bc8e19ddc60e52a537254a091ad1e5b26b
+ pristine_git_object: 8a21a9e74c959b373478f75874004fe90df7453e
src/censys_platform/models/authenticationerror.py:
id: 60993cf6765a
last_write_checksum: sha1:ead4a9d3ed7395e7d64d444909db77d819aad6b1
pristine_git_object: 318aaba03392eaf14c276a143e8b5e6bd49eb7e9
src/censys_platform/models/authenticationerrordetail.py:
id: 6b41bac7af27
- last_write_checksum: sha1:44c59f6729dfabdd0b75b7b583f128e7f2854fc8
- pristine_git_object: 30a4d5feb7412bc7816ce4059b61fd1abddc07dc
+ last_write_checksum: sha1:d2699f5ce565ffdee4090c04f1b8cb9cf8f956b2
+ pristine_git_object: d2f30452cf34fe641847a2e7555f7bb4aaaf6956
src/censys_platform/models/authorityinfoaccess.py:
id: 1b392a528642
- last_write_checksum: sha1:89101ef365f21d12bc03372e6131dd976b89bd23
- pristine_git_object: 77912c8d75b89aacda81fdef02a5495da5ab5326
+ last_write_checksum: sha1:4e05527534b798a41692d644c513b19a99008be7
+ pristine_git_object: 00f97c7c318b03bc7a2e5dd44fe3a747a718d05e
src/censys_platform/models/autonomoussystem.py:
id: 7a5dfdc75feb
- last_write_checksum: sha1:aa9d52e78a7f7984a68f9249c6ae947b988f06ec
- pristine_git_object: 648e0957d4b589134e52cad1a8768d5e5cec4d53
+ last_write_checksum: sha1:70afd29272a60fdadd7ec04cf0135a47797edb54
+ pristine_git_object: 47d3f1e486b6d129d6fdefd52698ae7b2a062ffa
src/censys_platform/models/autoreplenishconfig.py:
id: 04598b096ec7
- last_write_checksum: sha1:6d4a93878fbb99428dc201114ce09e16160099b7
- pristine_git_object: bf87f1c522000f9daac188387bb1a69f4f25da1c
+ last_write_checksum: sha1:85f8be14d3d4609f3c2ba22fba831b225c7c2c66
+ pristine_git_object: bb7a62e562f27fe6d849d88c58425096155734fa
src/censys_platform/models/bacnet.py:
id: 697d6b683549
- last_write_checksum: sha1:f155bf059e66484025091b1711b7b543f636a73d
- pristine_git_object: 17eb4e5fd64ff77d3e1506a773663e892d70281d
+ last_write_checksum: sha1:214b567b9fd6c6bbce0e269e23c34323036a43ae
+ pristine_git_object: 354b06cd2fd60fbf73939dca6730ddc449862fdd
src/censys_platform/models/basicconstraints.py:
id: aafbc2e6c45b
- last_write_checksum: sha1:c383693d50aee0564b41a38b6305638161290164
- pristine_git_object: 53afcc5ffa6ddc160c94e84262cf28ae4c840a4f
+ last_write_checksum: sha1:f529c9c9dec4a6e16975ce366083cc2af9a1da23
+ pristine_git_object: 38bb6230497fe2acb14d66ef7431a3d8516757d5
src/censys_platform/models/cabforganizationid.py:
id: 20317e7fed90
- last_write_checksum: sha1:750f7a3cf2b725053481fa0833f4a3e4eb9a8b01
- pristine_git_object: 10512f0510257caf78aa76de5f913c189085ea88
+ last_write_checksum: sha1:4a684dce247432d3f3fb9d3e256b22e052fa108e
+ pristine_git_object: 78216dc0b98d1a091baf4a4f328125278ccf9d95
src/censys_platform/models/capabilities.py:
id: aa779b6ae851
- last_write_checksum: sha1:fece368b678e131597bc47eaf564d88db0363b66
- pristine_git_object: fbbead9dec9ea66fa82fbaa0766c26802a1be265
+ last_write_checksum: sha1:d3c811c52a73f1fead288139a849ba4b2017025c
+ pristine_git_object: 97fca1e64af3437da5a8ad8d5f34692a76117cfc
src/censys_platform/models/certificate.py:
id: 291c652ad33b
- last_write_checksum: sha1:66878e47746703b436cafd92aec3acb6b1e20382
- pristine_git_object: a609b225996de690181f3fa94e2cdf852abf5714
+ last_write_checksum: sha1:ab1134ce762404a9b073d469cf865e5ec9475794
+ pristine_git_object: d7a6d234a708184652f90f09e6021e810c1440b1
src/censys_platform/models/certificate_parsed.py:
id: 8d2443039e43
- last_write_checksum: sha1:8abad107bb2b06d3c245fcc2b243c8a8d6cffc81
- pristine_git_object: 8a10639bdb856a3971c638cb7647dc56db2fcffb
+ last_write_checksum: sha1:a185d095b80c9e66dcd5319083c1b4d279d70431
+ pristine_git_object: 8873e66c9b81b1f00e91a59ecbaa5c7816cda1f5
src/censys_platform/models/certificateasset.py:
id: 76ecf26b5860
last_write_checksum: sha1:2527bb128819a5c82ddfd6d41f4cd810bb42949f
pristine_git_object: df7ef456ab7f55b911fb598c12420499c2068e08
src/censys_platform/models/certificateextensions.py:
id: b38dd9204117
- last_write_checksum: sha1:daea317e48891524d9222a3d3696f393203e1084
- pristine_git_object: d35d964d860fddba03ec4379ec1fa94b84ea6a50
+ last_write_checksum: sha1:f4f56ee646b3b5b2ff93b0da9f8476c75e419232
+ pristine_git_object: fa987a0dc16ba087753caf5aea1624890a30656a
src/censys_platform/models/certificatepolicy.py:
id: c4a17a74d1e5
- last_write_checksum: sha1:7e8a978eb358f25a63aa72b34f172edd46ca7a2b
- pristine_git_object: 4cf7b42427c92f566ac8f37d4f1dbbc230f9da81
+ last_write_checksum: sha1:30114da3bcfbeae6062a5a1ac26ef73db9ad08e4
+ pristine_git_object: 614f024fcf7886d947efc583d1c1a00425aecf0e
src/censys_platform/models/certificaterevocation.py:
id: 8ac967fed166
- last_write_checksum: sha1:599211e4fcd9622265a167fd3356bd3ea39c32e3
- pristine_git_object: 282a72c8de6b9604b8d4ef98b1aaa2ed6f2970fc
+ last_write_checksum: sha1:899929aec243f4eb6558e380bd95ce23be2e1916
+ pristine_git_object: 561eaa04d39d46ec29621cc7971ea75da997abdc
src/censys_platform/models/certificaterevocation_revocationinfo.py:
id: 93260fb10092
- last_write_checksum: sha1:b23d33452d38fcf7198e7b585536a2cc41ff3804
- pristine_git_object: a7e4d88521cef8c10c3f65c3540dd657dd2a3281
+ last_write_checksum: sha1:b2936c6e83b7443725acb3f5aa3581d3633c10f2
+ pristine_git_object: c20d8a89c6daf4e0f09a1af97c8fb166b4ee8623
src/censys_platform/models/checkpointtopology.py:
id: 78362122db98
- last_write_checksum: sha1:14aa2d8014bb43e04f4be9a99d9cdb1424cf9dda
- pristine_git_object: 5da6e65b00ad974b7daaeef51b16318370c0797b
+ last_write_checksum: sha1:bb77c70012ca8ecb8c6e166ec047a0006c5aaa0a
+ pristine_git_object: 775fdea7911ad6bc326104a965d31189c34f5d40
src/censys_platform/models/chromecast.py:
id: 32bd71f92e5f
- last_write_checksum: sha1:c0973eeb5a67615ae2af6f3feda72dd8531e1141
- pristine_git_object: 98cda179d50f7c01452dbe46dc4a5eab043925cd
+ last_write_checksum: sha1:b98a0581e4ee0c84e98f1a0ebbda11a5ead952bb
+ pristine_git_object: 2a0718bcd31030f0a42d53d3de063a05c0903aad
src/censys_platform/models/chromecast_application.py:
id: eb1e184ffec3
- last_write_checksum: sha1:d0afe04e2d0b89f2a3e156f1e361839b3124e2ba
- pristine_git_object: 740e702b91e1a66343f3c69a9cc2d15d7f54cb9f
+ last_write_checksum: sha1:938262c2a1e213e95e607c491d6d29906d84eafd
+ pristine_git_object: 93a77c32abe77aa4581d8a2364e7ad84097e9f10
src/censys_platform/models/chromecast_namespace.py:
id: c0f150ab889d
- last_write_checksum: sha1:b84e6c165fab47f454933a916260e2f7bd3b61c3
- pristine_git_object: db947ad5eb99119bf6b6aa83e36759b424fe2aba
+ last_write_checksum: sha1:34162f8b10bc8c6dbb8aaa22185227b6589da6bd
+ pristine_git_object: f0c3670c22449ff04aa4cbe4bb6043e02d0b503a
src/censys_platform/models/chromecast_volume.py:
id: 5ec6e09d843e
- last_write_checksum: sha1:0fe889f83b3606af3f9661f1c0cdcf569c5ac9f2
- pristine_git_object: 40297b3523bdc78f8435553b9515605c934351f8
+ last_write_checksum: sha1:aae112efba04bea2899b3b37144b35c66e714445
+ pristine_git_object: db1510aa7f7d5b7325f7c75077693e913c482281
src/censys_platform/models/chromedevtools.py:
id: 615e061d8c26
- last_write_checksum: sha1:ffbf23b0f2264bba5a5d7f54c238fae540ca7e7a
- pristine_git_object: c3fd00bd7eae4ce7eca0e992633656046f3c7aac
+ last_write_checksum: sha1:2f64f9848455d0dcd0e44290e99e3866c78a969c
+ pristine_git_object: e21e592d5984f5f9885570459931f4ca9a2f2cb1
src/censys_platform/models/chromedevtools_target.py:
id: b5b2481444f6
- last_write_checksum: sha1:e84b57bc93d5420617214e8049afc746b3ed46cb
- pristine_git_object: d1ad4bb571f22518394ecf75d5f7288b98994967
+ last_write_checksum: sha1:abe45cb9f07dc1dc5fcfd76ad1cb70404950bd5e
+ pristine_git_object: 8acdb8f4c9978ab3e698dcc2298fb5561e3d8a1b
src/censys_platform/models/ciscoipsla.py:
id: 50fb6bc3d113
- last_write_checksum: sha1:cd7a3e602ef660a94b80b6f9a193e5d317302638
- pristine_git_object: da4105edb7b5df1a92a6dda5e54092d3a44e1fba
+ last_write_checksum: sha1:49cbb6f1949800afdba1f890c772273c10e82896
+ pristine_git_object: e53d08f68022ae2215fe88aac2bf1f9f3b7b5230
src/censys_platform/models/ciscoipsla_handshake.py:
id: 0fc5aa2a504c
- last_write_checksum: sha1:051f6899a197703298da5c89c53532e90fc47ba2
- pristine_git_object: f946a1e2b0754f572cebc66637bf71391c8909c3
+ last_write_checksum: sha1:f956e00af8164929cfefd1aefb0b4666e1608ac0
+ pristine_git_object: 18f544382c23138ac219ac67b8ce0bafd55c7168
src/censys_platform/models/ciscoipsla_handshake_header.py:
id: fe4b6a0403fc
- last_write_checksum: sha1:354fca0bf66cd1319c63913514d7e659745e02ea
- pristine_git_object: c151f993ec9d7cd93430c2c30d79d49e954eb5d2
+ last_write_checksum: sha1:5dc7e1fd734eb1aabf6f1e32628a110bce534cd4
+ pristine_git_object: 7f44de7e9c1fcdf5d3bc479d2267a0164f0ee0eb
src/censys_platform/models/ciscoipsla_handshake_message.py:
id: 10fd9a918ea3
- last_write_checksum: sha1:e1abce79782d06f0f3a836a0e99f2b1c6ba63dca
- pristine_git_object: f165ff944f7940a1741a133f08c3cc04eb1b11b2
+ last_write_checksum: sha1:c9d04a1328236952a5adee3e844747f26ac16e0d
+ pristine_git_object: b1cd59f8a28b49a30f64e4d9ed6b9938489bbcc5
src/censys_platform/models/ciscoipsla_measureresponse.py:
id: 2171ffb94e91
- last_write_checksum: sha1:ecd8d806a82fd72137c749b21dad0a77b5ab6054
- pristine_git_object: da136a855cfcb62b1315bc8b9e293f32c1590348
+ last_write_checksum: sha1:719b75bb2e858d82f3dcf26ae8e512c6555e88e1
+ pristine_git_object: 8ecbbaa87947cf8f802b8f20d1a3646f78b031bf
src/censys_platform/models/cmore.py:
id: e2a00b9c7132
last_write_checksum: sha1:95f23da7a621b81c2dc081f10cbb7ea162ecff15
pristine_git_object: 71c385853f6b57f20976a820935838b9ffa5624c
src/censys_platform/models/coap.py:
id: 0816f464ee80
- last_write_checksum: sha1:7e209d7070c876e8b08ec4305134ad413dc4e1a3
- pristine_git_object: e2f659b8fdbe0a13f2ddd6b2ec69b11c01449022
+ last_write_checksum: sha1:76951bf7ed41333d668aa2b438162181e25de9c8
+ pristine_git_object: 3c3cf89f4baa4c1775bcf04919cb35ecde6b7d05
src/censys_platform/models/cobaltstrike.py:
id: 14fcee0508e9
- last_write_checksum: sha1:89739cd4da308728aa32001460e49af90e62180b
- pristine_git_object: 7db13481b9493d181cbc38c8e09e8ed8cd0ca99e
+ last_write_checksum: sha1:e454b07dc144a46d4295319c8e53172eab4f10fd
+ pristine_git_object: cc887535af113b99669d0587062f6e835853cf0a
src/censys_platform/models/cobaltstrike_config.py:
id: 9cfae44b878a
- last_write_checksum: sha1:52f9c47d6327f929231f7033bafba407a54f832d
- pristine_git_object: 96df2cca25876e83d3f4795179134e553522e0c3
+ last_write_checksum: sha1:cbbf910d6460cd58b6682d420f8456ba5d494473
+ pristine_git_object: cf9e01f1ed86cf4a426581c9b8f6c23165c4b75f
src/censys_platform/models/cobaltstrike_httpconfig.py:
id: 417ac3f1feac
- last_write_checksum: sha1:09a4cf66b771be73e48bfd9ad24c1b56b4684837
- pristine_git_object: 2757bb26d86b11213a249202d2d32e8ad1233157
+ last_write_checksum: sha1:7134848a52db47ad03b80ab6a7b286e9894568d2
+ pristine_git_object: ae1a8b51044cb57c9eb628f2295926438ee8f566
src/censys_platform/models/cobaltstrike_postex.py:
id: bcdbfe93541b
- last_write_checksum: sha1:fc7430f43f0a77c2c909863b6234333ac98207f1
- pristine_git_object: 94cde111f269b6ea1a271095d5adfe02b7f3befe
+ last_write_checksum: sha1:0c294e19f3a17676659011cd602bc4b46ed11a78
+ pristine_git_object: 8f0d546ab03a71a0204907e244f3e5914f0f116a
src/censys_platform/models/collection.py:
id: 85cf87546205
- last_write_checksum: sha1:737e271d53a5b52565324bcc055fe46a02516777
- pristine_git_object: 85884ded75ccd423f0e7d4328317ee9359a5c6a4
+ last_write_checksum: sha1:0f4a84d380466b605c5a82c7a55c80c9e0867d0f
+ pristine_git_object: 4758082366cc7b5ebaab6ab670cf8dba0c1a2f8f
src/censys_platform/models/collectionevent.py:
id: 8e4536c271ed
- last_write_checksum: sha1:d1dd71b4e866152f0fe55a697b495f16202d1097
- pristine_git_object: 94433395cbd935ecf403205e35c087474aeff5b0
+ last_write_checksum: sha1:06ec7c046040851935ca7da1ef1a62772aee086c
+ pristine_git_object: 27dac43d0bfb961fcde543886cf5c79539171af2
src/censys_platform/models/collectioneventsresponse.py:
id: 81e78a52f15b
- last_write_checksum: sha1:fcb869c02b9f11036594366063c13e0336a03515
- pristine_git_object: 5ae24b35944679d1ed992a6fb6f77f79be3ee712
+ last_write_checksum: sha1:60c8cde7621104e2476bd1216778ec26f5fd4291
+ pristine_git_object: 60ed7722e8dec5a62ab179ea357a37790d0eea46
src/censys_platform/models/connection.py:
id: a769cc2a930e
- last_write_checksum: sha1:d077fd59af157df3e3e450de89d852d0f27a6496
- pristine_git_object: 70fc5043118bcbd375ed3843630ee11062fb311b
+ last_write_checksum: sha1:45b7672344d117cb4e69ad4d9994011b76d14ab7
+ pristine_git_object: 407c2b07076204fa0ca16cb0ff0d17d46f9786c9
src/censys_platform/models/contact.py:
id: 53213e2e0305
- last_write_checksum: sha1:f54268a6135eabd29c911aa7a81233c0544bb840
- pristine_git_object: ea4f85404f4dad2b405d11667812f127713c23b1
+ last_write_checksum: sha1:68fbc2080ddb9728cc76c85bb87fd3d6e5d5d7ee
+ pristine_git_object: 4cb60c7b18c9f6a453765449b82b12f0b68e7b47
src/censys_platform/models/convertqueryerror.py:
id: 88bde6047c99
last_write_checksum: sha1:3e20a40ab56cdc4624caddd2055855f30503e09e
pristine_git_object: aa2569a1fbdeb4f3ee42c9a7551c5c276732f06e
src/censys_platform/models/coordinates.py:
id: c22d76d1c9c0
- last_write_checksum: sha1:7650ee8fb97d6ccd388fd0c351aea461e629ff23
- pristine_git_object: ec2b047ae450708e6b266ade41a9a750416facd6
+ last_write_checksum: sha1:eb4334bfda1dcca1681109eeaa77fffc5b5cd5b4
+ pristine_git_object: d82d2497a200837cbbbb218bc1554a7547b547a9
src/censys_platform/models/countcondition.py:
id: 8aaf047f8658
- last_write_checksum: sha1:83cf39183d10cbf9b4fea2ec2753f888fe9ac39c
- pristine_git_object: 4374e33beed50ac0fcebbc6ff2fa8a1980fd0a76
+ last_write_checksum: sha1:adb9ade4e3ffc62154918473a29d1340ae9b1036
+ pristine_git_object: b6ff96c31dfe7d454881aa3e0fd544b1110e3675
src/censys_platform/models/cpe.py:
id: 97675ddeaf63
- last_write_checksum: sha1:24abc97b14bc031c680a5442720a0f3bbf0ff04f
- pristine_git_object: 4be8bcc121f8933f97076423705791ec8949a523
+ last_write_checksum: sha1:a5ae179ceada172e65d422ccf62d1bb410c5e386
+ pristine_git_object: 5759626567b41ef01492b02ac0cc792c4d9990e1
src/censys_platform/models/cpe_lifecycle.py:
id: fbc498a54166
- last_write_checksum: sha1:98101353b09fc5ddcd5552ab22ecca6c778163e4
- pristine_git_object: 69e586521a1efb00a38583c3569aaf1435ca51da
+ last_write_checksum: sha1:2353310ee568d8b69a1504e897a274809d482566
+ pristine_git_object: 954612f4f31c2727db1e3b3fe04b7c26c9ba7f15
src/censys_platform/models/creditexpiration.py:
id: c19168102b97
- last_write_checksum: sha1:f15a06598528c982c22cc3e337d719e37ac75508
- pristine_git_object: f7fdb8e038947d985bb47c23d5fbd38432cc7305
+ last_write_checksum: sha1:eec393d7a67d8ab8d04eb25063939eccceae8c6d
+ pristine_git_object: 5d0008119899e89aedf930fd348b2d33cd9d1282
src/censys_platform/models/creditusagereport.py:
id: 30edd208be3c
last_write_checksum: sha1:9339670b89cf93b028f099cd8d2fbf556ff1131c
pristine_git_object: 14a4842a8c5e9734c09837ea23cf530591a53262
src/censys_platform/models/crestroncp3.py:
id: 38ed3d88a488
- last_write_checksum: sha1:b0b78499e454291049ee62bce44e48e252f45513
- pristine_git_object: 75d44e45fda05e155f9f73422cd8b01a1814a48e
+ last_write_checksum: sha1:31c4ca84af319b7854f199dbf271498435047b25
+ pristine_git_object: fdb34d707ee239041f3f9ea11ebd313733453bc1
src/censys_platform/models/crestrondinap2.py:
id: de518ebc257e
- last_write_checksum: sha1:b9057a951db27371464e89c5b14ef326f709ecb1
- pristine_git_object: 559f4ac858336110fd607931f717577a10a20da0
+ last_write_checksum: sha1:74fcdda993a14b34f92715646c61f379d215ab82
+ pristine_git_object: dcd5fd132811b534e20ad1c6e8eb65ad446aeb88
src/censys_platform/models/crudcreateinputbody.py:
id: 815e4cccc2fd
- last_write_checksum: sha1:a1be5b1b29a51390dc6eaaf82cc8ae4dcf40b72f
- pristine_git_object: 37856b9e92237ac94980a33b73c0a363c16f3db8
+ last_write_checksum: sha1:1badbdb12bb511c3d572f4657957bff513cde113
+ pristine_git_object: 641cdde6bee567b7beb826ed4314918f40f0b51d
src/censys_platform/models/crudupdateinputbody.py:
id: 7632b4eff20b
- last_write_checksum: sha1:3fbfa9cbb77868903d64ff727e90a70091f297e4
- pristine_git_object: 172165b961462b6bed9f50b8a27b6bae285c1da9
+ last_write_checksum: sha1:50503eadfe20a05f214751f0fce02509e0c94b68
+ pristine_git_object: fce675f9e9e911f2b6e43ea4367d739396c524ee
src/censys_platform/models/cryptsetup.py:
id: e25d5d934655
- last_write_checksum: sha1:503cd741780603518e7977c55cdb7fc4faffe8d3
- pristine_git_object: e2cd06dbf9733e415ac78eabc02aa6bd3f9494f5
+ last_write_checksum: sha1:076cdc34080ef43f53e1cf0336b6bdccb8566b86
+ pristine_git_object: 20f0bf9627ddc6f27fba1c57df6dfa2492ed5f59
src/censys_platform/models/ct.py:
id: 6f5a743b744e
- last_write_checksum: sha1:236d578104f89ccc1dd2173f1274f38951bef2d7
- pristine_git_object: 41dc1757ce217858473416a1091f9c1eac4228dd
+ last_write_checksum: sha1:73d2f2b4a95271645cb749e6c52ff53ce948ad9c
+ pristine_git_object: 065c215d68715b2cfb1da37f2a737ac4086141a5
src/censys_platform/models/ct_record.py:
id: eb145bb430b9
- last_write_checksum: sha1:fd68f206ffa8e5606ace778f66707e6df4e3f5a0
- pristine_git_object: f0acddd23880527863f17f16fa71a98d33b45257
+ last_write_checksum: sha1:4d4a3a92ee941b030021a9ca27099f59f8c0ec41
+ pristine_git_object: 8682504e1347d560202300dae41f1dc819d502b7
src/censys_platform/models/cvss.py:
id: 84fe222e71a9
- last_write_checksum: sha1:8193b277156ff0b6e5827226c6cc6ab9363a5cfb
- pristine_git_object: 4a07eb9e223a86f0fa16574f4c19db4065f3fc3c
+ last_write_checksum: sha1:979b6c427e57853e7d3579015a577b8c705d19ea
+ pristine_git_object: a8869db959443e187b55064f5d7f79c0aefd2696
src/censys_platform/models/cvss_components.py:
id: 8aa73fb4d166
- last_write_checksum: sha1:305ed2f6d44290c9a6a169db2da8b1ec52f48356
- pristine_git_object: 8f5f532a06a4f22fb7a4e37555cfd377d7c73504
+ last_write_checksum: sha1:3cb78be5db8e526bfbcc94b07af54370e877d51a
+ pristine_git_object: 668ffcba1901cf7a2cc44efd927530214769c9bf
src/censys_platform/models/cvssv4.py:
id: e272ae4721c6
- last_write_checksum: sha1:361d4d9b5fa39e542d3634ec69aa8c5f4e481a88
- pristine_git_object: 2cddd6916a76ac3d8fc5757c8be65368b1711ca8
+ last_write_checksum: sha1:6e7391960fe897b16f11ee96506a4b1abf9be000
+ pristine_git_object: 4d9c05a5212df6a585484f0783fb24abf7768838
src/censys_platform/models/cvssv4_components.py:
id: dbb995326704
- last_write_checksum: sha1:d195fc70e21a9336ab02d1df0781281ea0886351
- pristine_git_object: 9746795dceb7ab78a437dbac728751600c26cd88
+ last_write_checksum: sha1:e1f5a6fe87c58b9f2ffde48f5a26bb83cf8750aa
+ pristine_git_object: a9e301ceb0a5c21602e5ca993f7c7e0e86931d55
src/censys_platform/models/cwe.py:
id: e887e5a31976
- last_write_checksum: sha1:4002526113f8dfba452d58f4161891e20511cf7d
- pristine_git_object: 4fe7adc5e70ca5027c5748d0e3e714f00b58a11a
+ last_write_checksum: sha1:3e49bffd4761919c406c93f470ffaef51a1213df
+ pristine_git_object: 0489f355d45ebf628dd0ea98d0af409632015021
src/censys_platform/models/cwmp.py:
id: edf01a4beb75
- last_write_checksum: sha1:3b6fb57ae45dd52433d1f15d116feb7ff2276fc0
- pristine_git_object: ad62479fe43ab3bd43cf03952c7e5e29c98766d8
+ last_write_checksum: sha1:b2c28db70fe1ea79e466e6369ac920d39f449b78
+ pristine_git_object: 58277666bf75de46423cf85fb4d379da8f0d4562
src/censys_platform/models/darkcomet.py:
id: 37f36ae0bdbb
- last_write_checksum: sha1:6ef135484c729132b89493ccb53147d0dd1f8ccd
- pristine_git_object: f1b40565115be425ccef52e9d88dcab6a22fa6fe
+ last_write_checksum: sha1:5049965f6c4c986c0201e7348ac77dace74a1f87
+ pristine_git_object: 81c490451d5d6f50732fab9e1b9613eef993a68a
src/censys_platform/models/darkgate.py:
id: 74dbf396ce61
- last_write_checksum: sha1:de12845dfbe86aaeb24aab1095a078f27d66cb14
- pristine_git_object: 89e49455bfa52a56f9a53e56ee88f75ca67867ec
+ last_write_checksum: sha1:9cf9c9dfa5a7b10734d8d6f8a132bdd5fe79414d
+ pristine_git_object: 9fba2246c07a7ea8978ef1fa66d9be5d12b102b3
src/censys_platform/models/darkgate_file.py:
id: 69f5d6eee0e6
- last_write_checksum: sha1:7a7121b9cfb6bb7d19886e29834654e076624643
- pristine_git_object: ffdb49b3554ca224cc0ef915c3943e0bdadb7c6f
+ last_write_checksum: sha1:2d27c7c352c3c9e0405a8d9f18dd55aec51423a0
+ pristine_git_object: 14ffd02dad740c58e138440385931a2bb50ab538
src/censys_platform/models/dcerpc.py:
id: 76a565954ebc
- last_write_checksum: sha1:90c5b89f9d810a7c1dd8377e8fd23fd0821a5523
- pristine_git_object: c99a852ddb9f33281181e8938b3458b5fb69a729
+ last_write_checksum: sha1:39f360a9d4dce76a7f7348cb3c819da35caab441
+ pristine_git_object: 916c1d555edb95872f975bee25878ef62ac3c3d2
src/censys_platform/models/dcerpc_endpoint.py:
id: 30b87f3e3fab
- last_write_checksum: sha1:4ee68ca083069fb96948488f0bc8d154675051c5
- pristine_git_object: 3c816b2b9c37b9e66286a1ec8d682072ab145794
+ last_write_checksum: sha1:1300fffb1c2cde92a266c609cf12f293c76c2c66
+ pristine_git_object: cd3a3621801121b42174794e22c8616631a27fb5
src/censys_platform/models/desktopinfo.py:
id: 3e6e9d12a3b0
- last_write_checksum: sha1:f5cb312b5144e152a9a00ec988164abefd8337d5
- pristine_git_object: 89b1b01f762df009a03f0ff583114881c635166f
+ last_write_checksum: sha1:3217b6bbc2165b32698dd601dae395108e612994
+ pristine_git_object: be5e59c96ef6b1d9ff3e0c4046e43f44ecb45a7d
src/censys_platform/models/devicecapabilities.py:
id: f56c907f3abb
- last_write_checksum: sha1:c8d1ac4894d27a1b4975b58035fe2caf3988fdf0
- pristine_git_object: ac450d3cc128ceefb453aece2f988965d5266636
+ last_write_checksum: sha1:575e7cf75a45c35b625c0c7be20059e108bf4c77
+ pristine_git_object: 3a2d02cc095e425cff197e88fd42ac20843d667a
src/censys_platform/models/deviceiocapabilities.py:
id: 596dab67a0a1
- last_write_checksum: sha1:6f28b12ecf09cdaf3c68cab674f2f6cf5c172097
- pristine_git_object: f9b0ef68b327a479bf6fa2abf679eaad94c5c508
+ last_write_checksum: sha1:df7384520599a3234d611298d028c1c55d23d9f5
+ pristine_git_object: 7d59008de61db7201b238d21fcf53fc640b8c03e
src/censys_platform/models/dhcpdiscover.py:
id: 86d22b5fddf4
- last_write_checksum: sha1:4bb4e7d669d999c4f5bf3f4fea28d6ffe98e400b
- pristine_git_object: ce4d00b448d525391aae9e478768c07ad4e1a6b1
+ last_write_checksum: sha1:9edf6dc17869a47228835f4fd383a2a8b136349b
+ pristine_git_object: 81a858cb0f89bacb5069ff415db736ddbb82c38d
src/censys_platform/models/dhcpdiscover_deviceinfo.py:
id: d2492a44601d
- last_write_checksum: sha1:bbba166e4c3fb7c0136224fd1798f2b11a31aca7
- pristine_git_object: ba1b2c1bb18933bc678b8365c81958b654f5b5fd
+ last_write_checksum: sha1:d0ab1912580fd6374ca53fe8eec94f55950d3b28
+ pristine_git_object: 106064faa5a22391fc97f373d86f0060bba2a3e6
src/censys_platform/models/dhcpdiscover_ipaddress.py:
id: fba7dd258b78
- last_write_checksum: sha1:e72d4d201c9c54a620ae9a2d5389374606157e8b
- pristine_git_object: a1112be281e53de006e9121d307d378b42005c16
+ last_write_checksum: sha1:cc339831e9a291eac60bd11ffbc987e6eecb6a16
+ pristine_git_object: 026c522e273544f6cf909b2768aae78b8e3cf393
src/censys_platform/models/dhcpdiscover_responseparams.py:
id: 495ded855af6
- last_write_checksum: sha1:d8ee7a524ba183b679594e8142642f599cffd1b8
- pristine_git_object: 46e37a84bfb33338a65ece4caf37f98c3d3bebd2
+ last_write_checksum: sha1:94fb2e99b3b065d85e99278a55dea31eba460826
+ pristine_git_object: 54e31e34b79185e64928a2388a76c909c0e6b01a
src/censys_platform/models/distinguishedname.py:
id: 5715b88360b8
- last_write_checksum: sha1:8f8f702bc584d3bc3e9f296178e44f1c241286ec
- pristine_git_object: 6cf20edc784eded82b0803db2773cd7099b75a5b
+ last_write_checksum: sha1:71dc257723d74ca69ccc222882aeecc86e9d011a
+ pristine_git_object: 378124b1f86b585ec0e8805ebb9e7fc19b236c8b
src/censys_platform/models/dnp3.py:
id: a8ad1070471d
last_write_checksum: sha1:27da87c0e88d2e224ac1c06e03e6f78e6fcb1352
pristine_git_object: 5f9ca61f73caa14345533e3767fc97519a2d34ff
src/censys_platform/models/dns.py:
id: c9f1645ee012
- last_write_checksum: sha1:736dd27dc981478721b4ec6e5b07bfcd3910db90
- pristine_git_object: a224ed214fe3fa183f5c7d675605ca64c85a198d
+ last_write_checksum: sha1:8d51f88157518c7871f7c6dd9a584f853f14a782
+ pristine_git_object: 7f83a034dfd30513b07a99cc2afdcffc6bcdc67e
src/censys_platform/models/dns_edns.py:
id: 887a28d2d0ed
- last_write_checksum: sha1:e50e2d21d7af1398fb3f00b117ca60419ec41d7a
- pristine_git_object: cf94cfcc42517109c95704af426c6422399d4049
+ last_write_checksum: sha1:fc4d86b65c59effb855082145484e5e88256d50e
+ pristine_git_object: 0fbcfe01d2ed693b14a3780bcf5867f2daca5a18
src/censys_platform/models/dns_resourcerecord.py:
id: dc6d47644d43
- last_write_checksum: sha1:b47c6e6724c48b0e12b2307dac2b0c5d662dd1dc
- pristine_git_object: 5b62c9d655b9455bde7df5ee096bd7f373453e26
+ last_write_checksum: sha1:3d341a8e15174a0641595f84755bef7ecfb4ac07
+ pristine_git_object: ace271bbbabf192e83c6eca3bd45cae3e92b1431
src/censys_platform/models/dsacryptographickey.py:
id: 3c7788304b89
- last_write_checksum: sha1:baa98737124f6daf2cb088beba10c7de534988dd
- pristine_git_object: e4cfe0feac4d5bb03ace20372d137e132d9ac7dd
+ last_write_checksum: sha1:cfe3de15e14dd5c048400e32dc15b251913391d0
+ pristine_git_object: b009bca34eb091d9b054cc1b49b916228a076be5
src/censys_platform/models/dsapublickey.py:
id: 6eb274cfbfdf
- last_write_checksum: sha1:13eba3c31e91f7af6d2758a6bddb025c6704684d
- pristine_git_object: 874943e8ef537f7421ef8cbff0f75f2a78c3dc2a
+ last_write_checksum: sha1:f72e8613a0e7bdc6e2f148947475f4b724cffc29
+ pristine_git_object: dbf16e3eb8437aa7da6f0ca6d1a00164293a1f0a
src/censys_platform/models/dtls.py:
id: 734959c41bdd
last_write_checksum: sha1:5766516551209fd39d900db80f5c95a2a6e95a09
pristine_git_object: ccefd4f21de71ff723c646e47d5ed1fb11f4d0e4
src/censys_platform/models/dvrip.py:
id: 3d621a9fcd62
- last_write_checksum: sha1:f109a8abfce68bf86fb01e94bce52d6d1edbf706
- pristine_git_object: f9f08bd7204d8449e123b71de15e5174cb7bd39d
+ last_write_checksum: sha1:bbb129a0be46ddce6ae56e399b4315b9419fbfd7
+ pristine_git_object: 72bc2da3a21b70a4f412f487fd24893b7783bfda
src/censys_platform/models/dvrip_partitioncapability.py:
id: c5742dd393cb
- last_write_checksum: sha1:41d91f5f673d5c999551e5e3ba68af4cf175aaa1
- pristine_git_object: 955288c2ed347d3c8411cc18981cad2eeaa5ee45
+ last_write_checksum: sha1:352e6d188dc84f03ea603681323e9561c9c35470
+ pristine_git_object: 1095f5a2184786eb499f3f1dd5b8621782cfac60
src/censys_platform/models/ecdsacryptographickey.py:
id: e5c034c428fa
- last_write_checksum: sha1:a96a5cdaba3cc9ae2866268b8df941f52e6d3ded
- pristine_git_object: db67ae6cc9ae32ffa147dbc41de744701824ee0c
+ last_write_checksum: sha1:514bbe88d0e112a64e289bf578afea99e87c7425
+ pristine_git_object: 980fe8848f11d9a04ec4d17cb69abc6228a92225
src/censys_platform/models/ecdsapublickey.py:
id: ac63f4e35daa
- last_write_checksum: sha1:da9de1876391b97e1b00b0fd6fb3437ef44864f4
- pristine_git_object: 59ced6785d489860ac7c8ba5c7d883211d91d4c9
+ last_write_checksum: sha1:1917fd33c8475e876cf6c91c29894ce9f2228fef
+ pristine_git_object: 9559afe0f49ec5dfb4a3d5e796e2d6775b0213ee
src/censys_platform/models/ed25519cryptographickey.py:
id: 83c3725f2e73
- last_write_checksum: sha1:2e94952fe95521075c657da0c839bcc5ce29dab6
- pristine_git_object: 22fe75aa25dae497f03af28d507cb287f141afd4
+ last_write_checksum: sha1:2237bb12800263cbfd2d0961f4df88fc03d88e0f
+ pristine_git_object: 75e2a3af22468f79559aa3a5937e9bd514df2db3
src/censys_platform/models/edipartyname.py:
id: c9b693965b6e
- last_write_checksum: sha1:5555af7f4194a114d82190faae28616f46842472
- pristine_git_object: c0963e8e523b93ff9530e90240aa81f5c2d8b30a
+ last_write_checksum: sha1:9d58fdc97af154eac5b7d335a0f27503bb532e17
+ pristine_git_object: a8bfc58315ec9f6d0f5ba467d18418d5ec583c03
src/censys_platform/models/eip.py:
id: 4742ec836cae
- last_write_checksum: sha1:0098093f90db6ba8bcd75f033809c0a659c598a9
- pristine_git_object: cd2c15b191263fe7db5830bba66f1e721f831a24
+ last_write_checksum: sha1:393a0d7d124d1c0c26d22a5f90a51e6d1b59155b
+ pristine_git_object: 37c7f8d57a4a4b738d38e4c64806e40bbf426eae
src/censys_platform/models/eip_identity.py:
id: 62bdb2470d20
- last_write_checksum: sha1:54067a8fba73abfd411335d48c4a9432d0e2caec
- pristine_git_object: e3bd12dc665aacab906e35076eff32196c4710ec
+ last_write_checksum: sha1:3fcaf10e83e44b7349d157a31a03ac138f8b8d2e
+ pristine_git_object: ebe1e06eb7c7438dbfaf2251550c28e82b5d34ca
src/censys_platform/models/eip_interface.py:
id: 175bdf29cecc
- last_write_checksum: sha1:73cf91462227928fbc73e93aadce53c4f16239dd
- pristine_git_object: ffb6cf200e278f4bc4fd2e362f5469ee53d4a175
+ last_write_checksum: sha1:319f14487448faf233ecdb3dbbf6153a87edf544
+ pristine_git_object: 347559e5a815342893a470b4fd728f49d5695d50
src/censys_platform/models/eip_service.py:
id: ed1cd6784cb6
- last_write_checksum: sha1:85c89ed3fb54ee60687bb32543e3a527dbcd0356
- pristine_git_object: 0cd44eda62e5dfa8ba9525a08ca1ea03d370f06b
+ last_write_checksum: sha1:4ecf388eda674ebc9f448892b27eb45367430593
+ pristine_git_object: 37565da2b014281f9bfb434ad6ca716f6e4d00fe
src/censys_platform/models/elasticsearch.py:
id: cabc9f06718b
- last_write_checksum: sha1:27b11f08b2511d2b8eca652e968dc35f61aa7233
- pristine_git_object: 4072eb35b092a5869a7bbe11a80554c1dc1ea576
+ last_write_checksum: sha1:dcf2575bf14a8d51505075e13ea04f18d7c65ebb
+ pristine_git_object: acd523542c15ef04aeda48328947d805ffe94e93
src/censys_platform/models/elasticsearch_errormessage.py:
id: 074ddb7ea9a9
- last_write_checksum: sha1:155977bc86361e53be1bc29962238823d4b49ba2
- pristine_git_object: 370315266421958e139079a45290e3d11c48574a
+ last_write_checksum: sha1:075427f200b26ea04729120700e6dba90f0f11be
+ pristine_git_object: 9adb852a7c6969885ff8f5b6011ecff779e8d2d1
src/censys_platform/models/elasticsearch_resultsnodeinfo.py:
id: 0983179878aa
- last_write_checksum: sha1:bc492e73256ec7ba879cd91bf6f4fe9ba0537a61
- pristine_git_object: ffa3a6c08437b91254c693fd70fc0524a17575b1
+ last_write_checksum: sha1:61f11fc79efbeca906b761fe0e9f0d9dab0ba50d
+ pristine_git_object: 383bc71cff2fbf0e607064327fd6a17a06fc3339
src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo.py:
id: 7f363fe938f6
- last_write_checksum: sha1:5a5aa3c7728a8441cc88ed90f9045f9ba3a11c16
- pristine_git_object: 7f3be1230a2d566c1f9a070b7ce45d88d5cc9b18
+ last_write_checksum: sha1:2bbf15cdf30008b09fcf968c0c7d5ad8e2f942f9
+ pristine_git_object: 2b341a85c93cdd0b4ef6bed65e41d11ac205dab2
src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem.py:
id: ed88c74532a2
- last_write_checksum: sha1:3014148ee4e1ab6b7b6a389c384ac623b1d776af
- pristine_git_object: 979dabaf25cd9d18a2e5465368fe8e990d23b777
+ last_write_checksum: sha1:55bbe23e63a34db914205968ef4f6fe3ecd76eb4
+ pristine_git_object: 967110b05c6c1c48cf7e188934b024406ea939a7
src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices.py:
id: f96ae58e3fef
- last_write_checksum: sha1:c698de16ae0bb319402e22720879f958744f1e2d
- pristine_git_object: 22b234efc023aa97e1cd0e3ad8e430d9afef104d
+ last_write_checksum: sha1:2b0d467d68530d8e870847a2fc82183a4459db63
+ pristine_git_object: 35298e4849f0d2e22bf80551d22e27322aa66e31
src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_docs.py:
id: 5dcf2ab72e93
- last_write_checksum: sha1:98826983043e4c200d79d92312957e8ee4725025
- pristine_git_object: 859fd25989fca33393a89cc8a0fe10f6c2e678d2
+ last_write_checksum: sha1:10425e4b78ac73030cdf2a86ccd925759b68cb42
+ pristine_git_object: 477603d86a870b4196846715ae075c8f2ac52e48
src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_store.py:
id: 5a02ff15052e
- last_write_checksum: sha1:83e25c21927b6fb08208f32864b588e54cc9e9ba
- pristine_git_object: ef3bf61839d7716e6e4f15e6ab703ba091a15f0b
+ last_write_checksum: sha1:c6a070c1938fc7412f09f2bc28665231cf7920fa
+ pristine_git_object: 488a9e9ebeaef3b798fda9bd081e089b68db85a1
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes.py:
id: 412ccaca43a8
- last_write_checksum: sha1:6e9fb3b163e32307693a034cf776c9cd0052f6a9
- pristine_git_object: cff949ed0f5affac6ff0bde912d7a8f78fc172f8
+ last_write_checksum: sha1:bc2a980d1ce06c5b28980f270b78ecebbc9942ef
+ pristine_git_object: 799f639ab4386d65f836b4558e632c55681d047a
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata.py:
id: 924d1c2b7758
- last_write_checksum: sha1:815168635e0db436083dc2982f8cf8813e4d6731
- pristine_git_object: 42e474b760c35d4c3f88792f30b851efae20b268
+ last_write_checksum: sha1:34d3f25341b55b9443c9f53c85e5cc51f18a9e06
+ pristine_git_object: 8220e99baf64fcf6f532173bb1e2b5afdd16bfe5
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_jvm.py:
id: f6f0037f8c02
- last_write_checksum: sha1:4b7c4fb6711998c70f9b835b786f05165b103c3b
- pristine_git_object: 1923a9781cfcbbd719dfb23b2e2ead4be40978d7
+ last_write_checksum: sha1:df17f91e6695749c33c4778381692438320748d4
+ pristine_git_object: 3826359abcafd53338822f9d5c0a4e1eaf05734d
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_modules.py:
id: f42e9e998fc9
- last_write_checksum: sha1:555f63ca0904fb5fee76758549f80019eaeae584
- pristine_git_object: e6a21c1a7ec8b7d274aabd30233f12b894960a5e
+ last_write_checksum: sha1:a2b7ba3437ec18a1de72e06b9af84576ff59bcf5
+ pristine_git_object: d46d49ea679ac7534822aa440c1375debc54c360
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings.py:
id: 4cf8a5313521
- last_write_checksum: sha1:f32d3d7cf26a125d98af176f6f9021f807a24484
- pristine_git_object: ed7ffe8f76bc218ef3bdc6afbb421af21002c46a
+ last_write_checksum: sha1:840d46cae6c82de30757c6d7d4e821319fdd4d9b
+ pristine_git_object: b70ea7ce525645f9e670d87aceb977467bef8405
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node.py:
id: 550a2b9db6d6
- last_write_checksum: sha1:af902ab5079026133d9d4ff3fd6c678b920a1b0a
- pristine_git_object: e2e0c808e87ff5dd3d592ecd47915ac7853f310b
+ last_write_checksum: sha1:5ac7f8d340f01e769188b5eab54a07ac7ff903dd
+ pristine_git_object: 75b1a65dd41691fbc151698c486c31e838340a29
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr.py:
id: 751669c71408
- last_write_checksum: sha1:d78c1341698c81f9eb022161ee7775780f0a8a98
- pristine_git_object: c6bd27996be05eafaf8e6cd19003327b4c39b48f
+ last_write_checksum: sha1:0a88d21a70a7748860bcc12a598dcaf620f17ebd
+ pristine_git_object: 712d6d4ef232e5cfdb5f58a3df88ef8e16faec6e
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr_ml.py:
id: e00a9c20eab3
- last_write_checksum: sha1:0fe381290bd80d5cbb50dc59a7f39250a1ee3f36
- pristine_git_object: fc8acc69086172301c4a6e45346efc5fdce32ab8
+ last_write_checksum: sha1:d95a8415421ceffaedaf7f6476e49c5a701a02f5
+ pristine_git_object: 588a8df7d61559fc0e199cb495029ffae19700e2
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_os.py:
id: f98c8af376c9
- last_write_checksum: sha1:09f5626d499be907e80ecc15997102d8b4f79a34
- pristine_git_object: 0b3708769961fd10c4d2c1413b048008033b21df
+ last_write_checksum: sha1:8fbd6119eeb8aff0d642ccadddea9f185b5bfb0a
+ pristine_git_object: 06a4d492b91652b08f50ea2c09765ac7c61df554
src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_threadpool.py:
id: f388de0ce333
- last_write_checksum: sha1:e095346460b460a3ab81cf623a720e427e696629
- pristine_git_object: 9200f930a65a25bc81d3911ce1d7c3d4fad9de6a
+ last_write_checksum: sha1:b53e3c384524d27970950c3dbd3a3add6dff4c0d
+ pristine_git_object: 4c611c0a07aed73b85ebabf15553fafc9fc50067
src/censys_platform/models/elasticsearch_systeminfo.py:
id: 76cf32e6e5c1
- last_write_checksum: sha1:2f1bdd5a9875cf5327a6129000f4e7055d533d26
- pristine_git_object: a8e4a3b4f360bc69ac57ff6c0425dac4eadce377
+ last_write_checksum: sha1:a1f07cdf63c7b6b0ccd70614d2be4d1b43eedac2
+ pristine_git_object: cac0854d8b5df0c08786bff849485dca41dc53c4
src/censys_platform/models/elasticsearch_systeminfo_ver.py:
id: 563aaa0ac453
- last_write_checksum: sha1:415c52aa9cd26b6512283af7d23127256951616a
- pristine_git_object: 59e53bb0d4c12860bae3ad6454af71160d4bccae
+ last_write_checksum: sha1:d231017aaaa6884ca961215caaac88e46d3956fc
+ pristine_git_object: ed0ccf8ef10e812aed2b976b4d6ad2efedfbfbfc
src/censys_platform/models/elffile.py:
id: d1dd279522b2
- last_write_checksum: sha1:bff737ebb4f4ece9cd8c0aa8b056e955b90dcbf8
- pristine_git_object: c92e8fa28f92b2772b1e0040618c925b5d4fb95b
+ last_write_checksum: sha1:1e8c411d892bc5f3359f853ed2fe332ed8899fff
+ pristine_git_object: 0d436b8ee5214537a9c96f6ae6b8a656e9844731
src/censys_platform/models/endpointscan.py:
id: e9034f3e14f9
- last_write_checksum: sha1:a451a3d32b8154b9330f9b526adca482a8508029
- pristine_git_object: ef71d781c692345506f1e17063a23470b9e7335b
+ last_write_checksum: sha1:b3b9676600b08e954b9dcce50be05a5132a29fb7
+ pristine_git_object: 052b116b8f5e3c2ea2d75d31fe928ff07e6143e8
src/censys_platform/models/endpointscanned.py:
id: 62ea4d26c40d
- last_write_checksum: sha1:ceff517303a3f166dac496e77dc00a8d24e7d813
- pristine_git_object: b883ba83b9f0d70790b3c18e6f564e46a2d5c35d
+ last_write_checksum: sha1:ecabec2de77a03c68c101390410dc7a42b2f8f9a
+ pristine_git_object: 6ef2d04fb7fc32302a63a67c9935c0dcbb21bec5
src/censys_platform/models/endpointscanstate.py:
id: 7b8f1fb78573
- last_write_checksum: sha1:dd8bbc9ed540eb0cddd6299eb59e4b184b695ebe
- pristine_git_object: 6215ed7c1cfce1daee8a49ba986e6a7f2683cb9d
+ last_write_checksum: sha1:b77f48700e5a5b9eedd4edd550f3710433e59479
+ pristine_git_object: 1cd5387916673612820c652356a228c0eb668fb4
src/censys_platform/models/epmd.py:
id: 8088ccd12b02
- last_write_checksum: sha1:4d206cf32cc171d963569d18a388d289e5668351
- pristine_git_object: 8144c886f8ff7faa7fae42ea4a0e7e2b82def55c
+ last_write_checksum: sha1:c571b916c2c8a7a2c5134b5022b0d38b8e768e4b
+ pristine_git_object: fcd9fbff1ac0af6156ffcd5340eab2aa18ce359d
src/censys_platform/models/epss.py:
id: 79e75bb4b9a6
- last_write_checksum: sha1:bd3a1fa49dc26f2ab4dc04669b16b8fc1bd38be6
- pristine_git_object: d64698eabb6842f68d3305653ab974b442a770c7
+ last_write_checksum: sha1:f10b4a5303227eeb76a505bbf870bb88b91a95c5
+ pristine_git_object: 5ba6b5adda53ef913195b4af59b8c47f4dd8dea7
src/censys_platform/models/errordetail.py:
id: f6771374a838
- last_write_checksum: sha1:5d5a1d603958f3f27223cf60b9ff8a521fd61297
- pristine_git_object: 66a6fdfc37d9e81e60bd70975d973422115fc399
+ last_write_checksum: sha1:d3a418da714ad3ce60041fb640f1402e76065248
+ pristine_git_object: e50147fd9a84fad79ceced53d82eede8e5f18b99
src/censys_platform/models/errormodel.py:
id: a06125ebaff0
last_write_checksum: sha1:7e9dfb5e850e4544aa528de842e56b43b9e36f40
pristine_git_object: bbb1974ca89c2a870b0495b1d48a9780b963b22d
src/censys_platform/models/etcd.py:
id: 17aadb01c7dc
- last_write_checksum: sha1:a3b23d5bcb529be655fd85d2dc7c03f59e2bc618
- pristine_git_object: f6447f83a8f54bb3e3fc6374cdf7f6540bcd0e12
+ last_write_checksum: sha1:a86c72512289f2a9841435804cc15ec66f301669
+ pristine_git_object: 93f3cd9b362f11f3a7fb3b20afd4f743ddd7a4aa
src/censys_platform/models/etcd_v2.py:
id: b28297e48ff2
- last_write_checksum: sha1:59a64764addb2e38420f476eeb7a959d03b3bbc1
- pristine_git_object: 53dbb945c0feb38641d2fd3c9e4042970c643a9e
+ last_write_checksum: sha1:3f3bd6c1fff469cdd1117e6bca457dcfafc67da4
+ pristine_git_object: cd8bb12fff5214028becc6fd77bd9764b805fb70
src/censys_platform/models/etcd_v3.py:
id: 2c470cc1f4c6
- last_write_checksum: sha1:30d9669016c6455302e27f441c824a2d76952db2
- pristine_git_object: 00d137122874064b272cb760064d4541d6168024
+ last_write_checksum: sha1:290b57dc49ba1803d3fc89506511e37ff32a22cd
+ pristine_git_object: 7fadf370eb62a174f7831793a3fc4627891ce672
src/censys_platform/models/etcd_version.py:
id: 9808c293eafc
- last_write_checksum: sha1:881157a9b26866e0ba9e30142e63c71eab040871
- pristine_git_object: ea615d18b07e1facfe0f672d4badc57a914457cb
+ last_write_checksum: sha1:167fbfb0e565133e8e718a2c3bfd3e487893ae36
+ pristine_git_object: 4057b706704f96773a937ce6bdbffe381b25a6f0
src/censys_platform/models/ethereum.py:
id: a62a34e053f3
- last_write_checksum: sha1:bd4a7fe916c679d6d1d0577efd4e44ea05d3ab49
- pristine_git_object: c4806bf948a4f6b73fc3884fac1089157f5d1dcf
+ last_write_checksum: sha1:41a9951cab6cebe2df175a2263ee7814bb0cec96
+ pristine_git_object: 3f0afd14792f9401c3ba31a3e2189793fb562eee
src/censys_platform/models/ethereum_version.py:
id: bf44cdefd22e
- last_write_checksum: sha1:bbab9bbf0a0857072e275c7c0b25246377e7cae0
- pristine_git_object: 87e2e2772d15de2dc2ea6eb3bbfca63a2557a8b1
+ last_write_checksum: sha1:d7af7040aaed8babfbfd64177784a5ac69c00e68
+ pristine_git_object: dbdffaa38f26dc884129e10ea813232f59cd2626
src/censys_platform/models/eventassetchange.py:
id: 3589a65fbbda
last_write_checksum: sha1:c00b6c779b91e2351a3176b1313efa0caf8159bf
pristine_git_object: 49d675320f264303a10999f251fbddc171be741c
src/censys_platform/models/eventscapabilities.py:
id: 7aaf31aa8461
- last_write_checksum: sha1:ddbf16fbc3100519b0a680156cbb33cc4a981bfd
- pristine_git_object: bde503608d452bff680f2ea904ccdb647a215a1b
+ last_write_checksum: sha1:c77995b38d305b47c47e1f45fb9d0f2c2d67b19f
+ pristine_git_object: 44ac74b82171507af45b836662d60bc99ec312d0
src/censys_platform/models/eventstatuschange.py:
id: 6d86a618b8fc
- last_write_checksum: sha1:fd354a9b52e0836a89e4041472ef6d4aa30091b4
- pristine_git_object: f142bbc4824d0cfab98ac7b0df52b65ebbafb865
+ last_write_checksum: sha1:71e3707762b4f8af97fc9fd60f50b2f7b52c2c1d
+ pristine_git_object: 85efc372e12517895a0795f49ed04be37523f4eb
src/censys_platform/models/evidence.py:
id: 8bf86872666c
- last_write_checksum: sha1:0037edf064fe1eb5f3fe0a5c00a7ddc949735b07
- pristine_git_object: 6522b94bf7cd7716cc37379fbf277ad834f38e87
+ last_write_checksum: sha1:7945a206b87ac884047e6f0981f7a2b7caab63b6
+ pristine_git_object: e4bafc022c34be3bc86d544e98723cbe0f8a543e
src/censys_platform/models/export.py:
id: e1280001c749
- last_write_checksum: sha1:6b7a9dcc7364a82de1b75a343fee0bb3822d6ac1
- pristine_git_object: 5b6cc6dc2544e460311a844f095f461620929428
+ last_write_checksum: sha1:5e513309b5e56f38c9bac9b1118eb1d55541853c
+ pristine_git_object: 1f86ae35f5aa0ca19a7a3acfbce03d19631b3810
src/censys_platform/models/exportlist.py:
id: dcaad9d1c6c6
- last_write_checksum: sha1:b48b5e29826ffd167437fe3c18d82ca7451355a9
- pristine_git_object: ab92af4c2ce3ec42c7f06081d219932f501b9730
+ last_write_checksum: sha1:e8f05a063f649636a48db1c6a5b7ec6e4d6e7a73
+ pristine_git_object: 5b141ec0dc5e1dfe1e46f988a2a19d3ac9ea0b3c
src/censys_platform/models/extendedkeyusage.py:
id: c3f87da01485
- last_write_checksum: sha1:67871de699fbbfa4bcb330dece0d347bd06002bf
- pristine_git_object: fc53b09ec087213598e91a39f0dc0ab16375c448
+ last_write_checksum: sha1:cb5473de4a149dff631bc12dc3d1bcaf36dd918a
+ pristine_git_object: 4efb32de7634cd08de80de0cc4d30fcc453c6d43
src/censys_platform/models/extension.py:
id: d405e11222a7
- last_write_checksum: sha1:af88fb10dfc69cf17c959fe430d52cd185d6d4aa
- pristine_git_object: 829af7e35283250b71cbb0fda3f86ebb66564d42
+ last_write_checksum: sha1:49bff573bc20de0add395580098414e80e004249
+ pristine_git_object: ddea7a09124b7dbf705a1780ce372185d5cfd20a
src/censys_platform/models/extractedendpointdata.py:
id: 304ee28a3bc8
- last_write_checksum: sha1:c3cd4efe3a77fbdc0efad753dbfbf22a0db25a33
- pristine_git_object: d45ffe64e8b48f210e0c58c7e680953ac6c4b441
+ last_write_checksum: sha1:23d205e5caeb33edfaaa780eb9d25b65f39e60c9
+ pristine_git_object: 70f390c8e22c2ef2aa136a8deed2aae4aca2dafb
src/censys_platform/models/extractedendpointdata_analyticsservice.py:
id: e05004cc1647
- last_write_checksum: sha1:fd5f34f5b1f28c4f10ce7a9fcb034ed165d60ac2
- pristine_git_object: 2899472eab9f1ee031ff9886c77f972478880f6d
+ last_write_checksum: sha1:ca8d25a8ad1564cd5d69de7b32f977a5dd689fda
+ pristine_git_object: f021210557db8329abc0a72e38d767fe14e63071
src/censys_platform/models/extractedendpointdata_copyright.py:
id: 281c17d560a7
- last_write_checksum: sha1:debd3b21e5ce0a07446a4001380ccd2b20d47eec
- pristine_git_object: f56eaeb3629a47d160cb140c9b49c36c6d405e9d
+ last_write_checksum: sha1:bc5b72019dc0d433b4e7e6101747a07648c1d3b4
+ pristine_git_object: 558d1c1467e05fa02028d0a43d99595af4e79fb7
src/censys_platform/models/fielddiff.py:
id: 1f85227e2a22
- last_write_checksum: sha1:e5836e3182fe43c7715c0110a4e3fa1fe7ecdf39
- pristine_git_object: e770106467c25043cda99ba68721b66b1007fd99
+ last_write_checksum: sha1:bc481141ff4101a7311959e1f86b5de525bc2df7
+ pristine_git_object: bb304e308df57ac01b3de34cc91dcf9dc09a5396
src/censys_platform/models/fieldvaluepair.py:
id: 08d3cf003555
last_write_checksum: sha1:1c63c2c370a4a228fc061988e73518245933ca9e
pristine_git_object: 84a0136d69f4a5c1c06cc8c90b620ae6df7b1dd1
src/censys_platform/models/floatvalue.py:
id: 6560ee1eedb2
- last_write_checksum: sha1:a64accfa490e2958cda1f6a4b669aa8b5733272f
- pristine_git_object: be87c94b648c0d6ec199ba6902be31e880c3e407
+ last_write_checksum: sha1:809ae911b75c34abb2a9935ca53e35b00a393285
+ pristine_git_object: 30d4e722c2ae174a69ac7bd5af3a5aee9e40fc37
src/censys_platform/models/fortigate.py:
id: 7e9d3c376bc6
- last_write_checksum: sha1:9faae9c2cbe351de7d8ab7b42b110b79d95b0b06
- pristine_git_object: f53bc7340989e81bded3a8e8b96b9649a20c52fb
+ last_write_checksum: sha1:ba39a0a81c99e2cb59a98bab1eb551f613c264be
+ pristine_git_object: 5b06a33cb74b0f49698db8fa2570de42aca98612
src/censys_platform/models/forwarddnsresolved.py:
id: 9524b2946531
- last_write_checksum: sha1:ed2f746061bd07bc8e7cd08e15b18d81f80bf194
- pristine_git_object: 089f58d3e2648105ef72d2894da27fc27d66bc76
+ last_write_checksum: sha1:e96ccab27baf3aee9e7273c18e4558b588b1e07e
+ pristine_git_object: d3b8d118b96e0017b26b4f3e74ff0fe5d5644eed
src/censys_platform/models/fox.py:
id: b78436319b7d
- last_write_checksum: sha1:0efe976180583d5f037556709e9820b5f295edcf
- pristine_git_object: f54bca4c668bd7d2ca31e225e634e6a5841e13ba
+ last_write_checksum: sha1:3b143c107825fc8333fb3015006a81bcd3ee5fe2
+ pristine_git_object: d6e7ce21cfd8d52f39cdfae806fba7528f26e87d
src/censys_platform/models/ftp.py:
id: "5409817615e1"
- last_write_checksum: sha1:9ca6841436f9907ab6418258a681cd004e36f25b
- pristine_git_object: b7f7f52324853f5bc86c3fe60cd4ddc7a7070116
+ last_write_checksum: sha1:581a3d2faf6e1aba6a2e99280f8d37ae52b2728f
+ pristine_git_object: 4743adef85af9490e23447c31e24dcde18bd4d5e
src/censys_platform/models/gearman.py:
id: 807b66e46ece
- last_write_checksum: sha1:11d512d31167988d8db62ee46c22e09c8d5ac314
- pristine_git_object: 6f9d1ab0b20ab597a75d5866b515ec7c2595d0ae
+ last_write_checksum: sha1:d45183e562bc54c261c46378f640d4d5a9cd33bf
+ pristine_git_object: 6860c6c85550bc3f2706c000aee5ef1e50859f60
src/censys_platform/models/generalnames.py:
id: e1539bc45d09
- last_write_checksum: sha1:c82a8bccd886218a76bf7623badade35759b8e90
- pristine_git_object: a14574cc54b3f9f8f941f2044a0f7d0b5d280d65
+ last_write_checksum: sha1:fbd893e4e7841d9033ee6c885451794d1f41a48c
+ pristine_git_object: 3ba00a6556a759a1fbbcff01a313f4df4496fb12
src/censys_platform/models/generalsubtreeip.py:
id: 3d859a5f9356
- last_write_checksum: sha1:08dbfb15669affb8ac02d2b137ea2b35cc27d389
- pristine_git_object: 43f3181a459f09c53dd53d2223b3a24a6680b290
+ last_write_checksum: sha1:ff91b1296c5f50a943f71568ad4fd03cc8c9f04c
+ pristine_git_object: 18318bae1ef9ff8f0fc6f7963819e20127a15acc
src/censys_platform/models/graphql.py:
id: e91c41786b5a
- last_write_checksum: sha1:7e9ce2e3e6c64ec0af2a8151305716e7a3f976c2
- pristine_git_object: c88d572f2e43037f2105d45b7ae44fdd7b1db9ba
+ last_write_checksum: sha1:4bedf4f9df33ec3a8039bd6c24ad23e1900892f4
+ pristine_git_object: 18b9a74ab5370ef2ab214c27343bbcb9de1f7099
+ src/censys_platform/models/hajime.py:
+ id: d87f2eaa6762
+ last_write_checksum: sha1:2972d1dd45e18747ad34179a9da2e270771483db
+ pristine_git_object: 015333622d19c0d69b2788ebf9bb0d3e6d7da195
src/censys_platform/models/hidvertx.py:
id: 4e9cbfa6f8c9
- last_write_checksum: sha1:ce198342ea1d8687e9da5f8cd4ccebf4d92b6b3a
- pristine_git_object: 5fabf3cd66e07cd94d7ac43f450d14d37fe38b54
+ last_write_checksum: sha1:f4c146ddefa1b9bb63cc63a0299cfbe574021027
+ pristine_git_object: d6a6298b14731ed27bc41c2e878fa5dde9f69d33
src/censys_platform/models/hikvision.py:
id: 3dd67b30f14c
- last_write_checksum: sha1:cad0a0771889ed7742f6e778b30f224ab3dd846c
- pristine_git_object: 1a721ab37bf615c6cfb966c5beb841ba36b82693
+ last_write_checksum: sha1:dcd632f9bbb56d355069bcfd17ca6b8feb95d2d6
+ pristine_git_object: 075bc3be5d4e5037fb2a0dd330fcba02ef50d634
src/censys_platform/models/hikvision_platform.py:
id: ef0bcef1ae96
- last_write_checksum: sha1:92235f698ae1bd446d423cd27cffcf01010a4a25
- pristine_git_object: a816bff20abe6085d44d8ffd82b4ee2fee2fd8ff
+ last_write_checksum: sha1:86c6ec18d3ab1c177a55bdaf0cd46ce535cd5129
+ pristine_git_object: aa668071e51c3fba5f7fc319d0dfc9fd07f6584b
src/censys_platform/models/hikvision_platform_library.py:
id: 334d57382483
- last_write_checksum: sha1:43cf8c0c65d74ce532e1facda6bef4efa9fa0a6e
- pristine_git_object: 2f46f7aa233b6de0677d9a7c7a8cb8fda8f87819
+ last_write_checksum: sha1:f479af67aa904664ca4beaa38d0024d363737fd2
+ pristine_git_object: de8ef55df137f6791c10e9c75cd76d67c95f8ccc
src/censys_platform/models/host.py:
id: da29e37823ba
- last_write_checksum: sha1:b7f85a9b25d7cb8cb3d15c2d0020ca3cf1aefb99
- pristine_git_object: 544a29be3db11f936a359f519ec09268ec55bcfe
+ last_write_checksum: sha1:a727926b5b67e894b5c7d534bf9df036246965c0
+ pristine_git_object: c2fb6cf2e6805efbbec888417fa0e4ab174b915c
src/censys_platform/models/hostasset.py:
id: 0baafdd12d30
last_write_checksum: sha1:77a79e251143f03d5b776ac3f621938a4d075a68
pristine_git_object: d6ba85886ae958caed3e980e0110cf77457151c4
src/censys_platform/models/hostassetwithmatchedservices.py:
id: 5e6895c79b8a
- last_write_checksum: sha1:aa3bfd5171a0ea7ec4db79b5a809e776b10f98ae
- pristine_git_object: 95aec9752a754cedca968c6c8ad99be7850352bb
+ last_write_checksum: sha1:72d8281e11f9d3e97bd170cc9779a4a06819d985
+ pristine_git_object: 14a97ce3c949985e2606ee79d5046c2e07044a0f
src/censys_platform/models/hostdns.py:
id: 6d4dd0099b7e
- last_write_checksum: sha1:2f868368fb7bf04430e1f25813df8a8b799a3bfa
- pristine_git_object: 43910720c0301b4073edefb294f59bf3060de6d6
+ last_write_checksum: sha1:0e7dfbf0117502df2b56670dd13532c0ce508cc8
+ pristine_git_object: 98b2456460281acfa7a654d8fcc55bcb3820df3d
src/censys_platform/models/hostdns_forwardresolution.py:
id: cc65ed390d82
- last_write_checksum: sha1:d0d8a778d64f0476338571381697f47501d5e368
- pristine_git_object: bdca088f53a5326fd317463e1d3928bff6716630
+ last_write_checksum: sha1:3f39539781a13eabbbefeb663d3cafaf05a31fcd
+ pristine_git_object: f219be48d7cceda73e280d31a78528d92746e475
src/censys_platform/models/hostdns_reverseresolution.py:
id: a0b22d1e690d
- last_write_checksum: sha1:f3a335791375e71028da758b0d6c6e5ed47a34cd
- pristine_git_object: 37a800c9e6347fe900f67f36dc8d9bc91cad61fb
+ last_write_checksum: sha1:83340cde3d323d0fb9050106362d84b53b99e680
+ pristine_git_object: 2405bdc3b272df4dac582c0b848c878588e5c47b
src/censys_platform/models/hostobservationrange.py:
id: aa288339619a
- last_write_checksum: sha1:d299df8906ba8efcc9ba3cf62ed74f71e128a252
- pristine_git_object: 5ea990f3c488182818cf8e4631b022b3184e8515
+ last_write_checksum: sha1:4817bd8834f0b323e00462f051dfb7fa655f2647
+ pristine_git_object: 4422789287b5fd8e931135625931f6bff108a40f
src/censys_platform/models/hostobservationresponse.py:
id: 1b36a79232e6
- last_write_checksum: sha1:e323948449b0ef20ef918fad41247f44569bb94b
- pristine_git_object: 7f842fc6ec17980736a514abaa4c5b866f39a5e0
+ last_write_checksum: sha1:0ea50df1918cf200e444469b69265cecce82ff5a
+ pristine_git_object: b6cc261755e5a186ad617eb0d86d3a23c9c79786
src/censys_platform/models/hosttimeline.py:
id: b8cec5f9bc4d
- last_write_checksum: sha1:33c0259bfff6260f1782a3fae9061084cb28ec35
- pristine_git_object: 25acd6ee81a4dd2e884bd58f4f116402f8771c82
+ last_write_checksum: sha1:fd67ee4ad55076e4483e92c02e7512387d4e90c5
+ pristine_git_object: 3aa551e8b1b7a5f4bc7a6bd005e6d78c738a8131
src/censys_platform/models/hosttimelineevent.py:
id: fac59e774183
- last_write_checksum: sha1:ae50199e78700043654a2da78d1141ad15255e72
- pristine_git_object: 5b1a3dec25209e3e789524c1af21b53837988123
+ last_write_checksum: sha1:8ab4e9bd0874f57831ed16dcbdd4c2913a3630b1
+ pristine_git_object: 614003a1ae9f0d4d1726c9595c3b1ef97f8c2bb6
src/censys_platform/models/hosttimelineeventasset.py:
id: 690ae204bbcd
last_write_checksum: sha1:27d7a30e8f5f65472a891d98a6d2e97a59c011d3
pristine_git_object: 211ab328216652abdb52dac45b75b2d3419567fc
src/censys_platform/models/http.py:
id: 7012123f903d
- last_write_checksum: sha1:697e6f4b50c6b3fe513fa9573599bd362ffb6029
- pristine_git_object: a95f5003ff8ef2ca0030d98b23a18d71c9d7962e
+ last_write_checksum: sha1:c76946e358af22ec3dc4d18b50a238e07dd22cc4
+ pristine_git_object: 11ffeb7c95ebe8a859d45e41700474c9051bc73d
src/censys_platform/models/http_favicon.py:
id: 37a2247b162b
- last_write_checksum: sha1:05343d7246bd47f18e78349d5cf087a484656a3f
- pristine_git_object: c82312bcc605520d5ae110e842c3dcdbafd1d3ea
+ last_write_checksum: sha1:7cbedfcc9ba8fc1ed53240533c02d1585805f18e
+ pristine_git_object: cb8d1cb08d2ddd69c2caa6ad370ba233463f92b3
src/censys_platform/models/http_redirectchainlink.py:
id: f3cdca0b5525
- last_write_checksum: sha1:5b7152aab916e1a2fde2da9415a55aafc6266d5b
- pristine_git_object: d68ce979c60b01674b0b694bea36da267269eda9
+ last_write_checksum: sha1:569f1d26ed67a0361fd344e40c3981435b8c23ec
+ pristine_git_object: 3fd575d2b95774761b290351ce63f59e066a1cc1
src/censys_platform/models/http_repeatedheaders.py:
id: ab701e3cdc54
- last_write_checksum: sha1:423141d4c254237d56ee2ad725b3b1bebd09fa2a
- pristine_git_object: 0f71cd60081abd9880b3e4f2e4c98e9f97c85530
+ last_write_checksum: sha1:23e848090ce9699d2e3123764c36aeaa6223abb7
+ pristine_git_object: 9b5117ff76d431598f502a560149a4305ac16d64
src/censys_platform/models/ibmnje.py:
id: a51545001411
- last_write_checksum: sha1:d49a04ab1f5996af718158e1845385322b9237a6
- pristine_git_object: d1b4b060517b487d2de4499c349d469facf79110
+ last_write_checksum: sha1:33577c78acbb3c27c1983cea12d19cab8441c8f0
+ pristine_git_object: 85bee3e4dae399332803a6b54394adc6e97f6cf0
src/censys_platform/models/ike.py:
id: 148ca9ef74b2
- last_write_checksum: sha1:9ba3c227df4d9ade2ad5d95c357575f378d45518
- pristine_git_object: 415a2ed6add3cb7e4650feb73e17470f86cf9b88
+ last_write_checksum: sha1:51a95a4c8bcb1a5902edfe87270e0f3b4086e1f8
+ pristine_git_object: fd8a82e4bd50f25185c40b3a602a81f204cf8fe0
src/censys_platform/models/ike_v1.py:
id: 5f57ecc1df5a
- last_write_checksum: sha1:244e57fbbade58aa91f68394f2e4d5241d3cbac9
- pristine_git_object: b455aa9fdb0b4c06a8c5242fdbdb76e1a5ca2683
+ last_write_checksum: sha1:0136cec2967a1a3321536c767ba24d2966321ddc
+ pristine_git_object: 110cf6481edf2eb0d17b49b8a8ec014e08e0cb8f
src/censys_platform/models/ike_v2.py:
id: f1d3f2eccb45
- last_write_checksum: sha1:1089a246fcf5a1465629fc58a6c09fb0c64df0fd
- pristine_git_object: 7adb6113c19bbd4890a7c3d587c4945dab3df0f7
+ last_write_checksum: sha1:f0d6d5d44cb7fba0d831eb0780fda330353a5432
+ pristine_git_object: 85fdfa4a2ebc57a0d1f41f9dd2b060f7f4a9abd6
src/censys_platform/models/imagecapabilities.py:
id: 43b75bd1c81b
- last_write_checksum: sha1:c5a842d866df53f3f3cc5cbaa0e92b5332004066
- pristine_git_object: d78853df2558d68815ff665190ae456110a59dbd
+ last_write_checksum: sha1:2cde51f468875469c3b8314427fdc36a7677672d
+ pristine_git_object: ac3ac807fcbc5146b9c1b287ee6513de98b2eed7
src/censys_platform/models/imap.py:
id: 3867e9c48187
- last_write_checksum: sha1:c02f3ced6a103297ea105a453e5f06e3e6ef8938
- pristine_git_object: 376407a68e663b9d00e666fbfffe29400d70bade
+ last_write_checksum: sha1:403bf5565b6aca1df9453da6310048d60b8f41d0
+ pristine_git_object: e8ae804d689cfd88eeb64d39d8c51fc55adb6c7f
src/censys_platform/models/internal/__init__.py:
id: cc54b3ba71dd
last_write_checksum: sha1:5beaf7e5a713d3eead465c6edcfdeb7f8076175c
pristine_git_object: e7070a1222c2ed3fa3f6f54e6f122cae7ff9a449
src/censys_platform/models/internal/globals.py:
id: 15bfb7e58e84
- last_write_checksum: sha1:66fc9c848b3919abf976fc9a1eecd7d4ad90c750
- pristine_git_object: e2f4354d4d0c030bfac464d34df245648332c880
+ last_write_checksum: sha1:4456fa9b402718c2d833441354fce68efec9868a
+ pristine_git_object: fb60d91175dac6102eccf29f0b66e12e4cd97390
src/censys_platform/models/invitememberinputbody.py:
id: 8b6c8c58ca10
last_write_checksum: sha1:5faa85c50233e5035df5547bcc3d8dfdd79d6318
pristine_git_object: 2015bd60b9388f641dc9df012bc14dc8078a8d62
src/censys_platform/models/iota.py:
id: 6dab2c23ccae
- last_write_checksum: sha1:bfbe65760113254cd611214eb645c282bb7b618a
- pristine_git_object: b9de5b5b2d7d8dbec775825f3538ffefc7ee551c
+ last_write_checksum: sha1:7cf9813c8eed1a8c62ef3d9e41f01764c27d17e1
+ pristine_git_object: 1d1cf8d2dfec4814b4f8b62da2d47d8c1a4feb58
src/censys_platform/models/ipmi.py:
id: aea5d870a9c1
- last_write_checksum: sha1:62e0a6d88a4443fbee40b71778152e8ecce151fd
- pristine_git_object: a1acf91c0975cb74cbe3b4a0a8129d421f08f3f2
+ last_write_checksum: sha1:1b953dfb8c8ec7c2ada1f5a1d108f6c06604f9c3
+ pristine_git_object: 396a078487e5e66e5bc2920701c73fb9fbe13577
src/censys_platform/models/ipmi_capabilities.py:
id: aa26c83e6658
- last_write_checksum: sha1:75bc1bc09aba8424a6fdd5a33a39d3089e02c77c
- pristine_git_object: 01c0d825d9c269e92a89e4329ff7fd3ded2d8f13
+ last_write_checksum: sha1:7ba587931576512c656f464150683dae940ee7a5
+ pristine_git_object: ab8a8c2dea14f2e0c7e9900abdeb370817d9b38e
src/censys_platform/models/ipmi_capabilities_authstatus.py:
id: b492dbb0aab3
- last_write_checksum: sha1:313f108295b5a896e7bde9c0f388ac0a3e078fff
- pristine_git_object: 90b34512928d76e8dc4c99f6912280c1319d1289
+ last_write_checksum: sha1:df71034b157c393f3b32c01cfca55c12b97a2087
+ pristine_git_object: 021c9dd01307e7f7a94dfb527016d4b5dc5ccd5a
src/censys_platform/models/ipmi_capabilities_completioncode.py:
id: 6e3e34afcf82
- last_write_checksum: sha1:3930974c6fbf22c7b3365a4b7254acb3e211c59e
- pristine_git_object: c665441d57ca78249e4a595a2329410bbae23418
+ last_write_checksum: sha1:d61ba48b9028bc8ded488ebd213acb1e45b9530c
+ pristine_git_object: 8500b0cefa8fce3bb3507df3842ff8d319bc5f65
src/censys_platform/models/ipmi_capabilities_extendedcapabilities.py:
id: ad22bea14698
- last_write_checksum: sha1:f259484ea5856bbe3022ab6eab78bef87c062d39
- pristine_git_object: 3b015ebe7b6234e84723f9bd50cb014b3143058f
+ last_write_checksum: sha1:a3515af10bb71ec995f8a2d04228df5d5dee5d7c
+ pristine_git_object: b804304ceba2634ceb50ea0c6c028cce80c3eeea
src/censys_platform/models/ipmi_capabilities_supportedauthtypes.py:
id: 98c3bff7ec78
- last_write_checksum: sha1:05020a9600e72670829a53c313dc677be741194a
- pristine_git_object: 65d4dac51074ffd95e1b230c8817b195dba281e3
+ last_write_checksum: sha1:50726eb298fe748c2b02ec6afcf8684569cc9bf2
+ pristine_git_object: 88ecc6d801874ffb6fa26b4f29186c1cf1c31261
src/censys_platform/models/ipmi_commandpayload.py:
id: c66249ae6b0b
- last_write_checksum: sha1:3c2f97074ddd4c5535671673b9c05655b2ce2aeb
- pristine_git_object: fa795887ec8d6debd8ecceb3a9d49a190d96f549
+ last_write_checksum: sha1:f505d33358c05b5a15e514a2b5bf0002cc6010b9
+ pristine_git_object: cc6c3efb8e9a7a83ec84688e0edf9c5965f078ed
src/censys_platform/models/ipmi_commandpayload_commandnumber.py:
id: 8724bc7ef123
- last_write_checksum: sha1:bafe8fab0de9a6a3aff174dea59226515c6f4e5d
- pristine_git_object: 3e1d288c4e3447aceffda853bc44ba62a9c24c82
+ last_write_checksum: sha1:e623eff7e7914a5c2f1bbe30fd2d9491d0d16fc1
+ pristine_git_object: f7e0a2ed8d848411448783463e607d3e9c1378a1
src/censys_platform/models/ipmi_commandpayload_packednetfn.py:
id: 9d2955988d8f
- last_write_checksum: sha1:116fd13819a31558f96cfcf454796420e4269776
- pristine_git_object: 7dd08a9fa99a8a28e59a238360e5f31a298b39f5
+ last_write_checksum: sha1:618b0133992928bca644eb65e40c8971d5c2a099
+ pristine_git_object: 7a95be8649fb1b9dcd8195cf3c57f6fadfc46b88
src/censys_platform/models/ipmi_commandpayload_packednetfn_logicalunitnumber.py:
id: d3352d592067
- last_write_checksum: sha1:68e7823f61a95b93e84898e04ed8b9a1313676fc
- pristine_git_object: c3b3c8b350dc47c310316cd7a97cfab6237748c8
+ last_write_checksum: sha1:0df24a1b8dea1ad581f5c5e1118c3e765f18976f
+ pristine_git_object: fcbc70b07e3ae80b47e0447fb3af2ecfc849db5d
src/censys_platform/models/ipmi_commandpayload_packednetfn_netfn.py:
id: 692e586207f5
- last_write_checksum: sha1:d3d9954b376c1ffef8e08925126bcde077b66f24
- pristine_git_object: 9f067ea7889760debc1fe2499b8cfd542eac55db
+ last_write_checksum: sha1:71063267d8a6a371e91150362658ddb6b3e1a929
+ pristine_git_object: b2de145199c2dad3ca0dd2c7a276ef5e64be26a8
src/censys_platform/models/ipmi_rmcpheader.py:
id: ee72f41a43cd
- last_write_checksum: sha1:3cd63f42af1a8d4fcba8b99794ababa697bc5cdb
- pristine_git_object: 2632d4d7bd70ff29ce4b96dd92f2a02ca98cdca2
+ last_write_checksum: sha1:4d63b50731c23edca9b44541f591d6e041299bdc
+ pristine_git_object: 5025efd1808ab603dc0f695cbfd34d087dd2e17d
src/censys_platform/models/ipmi_rmcpheader_messageclass.py:
id: 6ce098f00464
- last_write_checksum: sha1:f6c3fec7bfab4639250107ed00bcbe0d887ff749
- pristine_git_object: 6bbc71c7df3842934ba1cf18c0722a8b6d2c8ebb
+ last_write_checksum: sha1:ca16d2e1f788cb735016f9c43cf74c64898732c2
+ pristine_git_object: 1eaf0131dd3eea99ad9d442dd3dd84b499dad548
src/censys_platform/models/ipmi_sessionheader.py:
id: 3981a0ef137f
- last_write_checksum: sha1:b1c8eddb191a1d4c2d7a16a02375aaeb311ff9a1
- pristine_git_object: 994a4de203d907bbaa9bf532fdd23e5f48a3610b
+ last_write_checksum: sha1:d7c309e98f21cf699f537fc2b953ddb0362492f4
+ pristine_git_object: 8a748e5ea1cb0a0236a0d3c0cc0e66c5266a4dce
src/censys_platform/models/ipmi_sessionheader_authtype.py:
id: f4b36e8f1210
- last_write_checksum: sha1:a43073f7d01606cb9ff8ab24b5be8bb3d77be7c8
- pristine_git_object: afb7d6902c2fa53e4dab1d9bd7045596c176ce82
+ last_write_checksum: sha1:317fc2c67aa8f793aa0ad74958a81c29a8de2211
+ pristine_git_object: fed00eeec869d197bb185bf10f61415f02b18d77
src/censys_platform/models/ipp.py:
id: 73ba7c87fcd4
- last_write_checksum: sha1:67ad5aae1c66d5eb275a02a922a175bb344985e9
- pristine_git_object: cc2721d713a781ac255bc394bc146399cac8d300
+ last_write_checksum: sha1:2e2dca42de54c7011f1e37d7b9c09c77a92aced8
+ pristine_git_object: 2293cbcef438267fefcc9b3d940c999aa5aaa913
src/censys_platform/models/ipp_attribute.py:
id: 4bd6297bbac0
- last_write_checksum: sha1:62ed5a650c2008e2e9c091ae7c9317cff26e1142
- pristine_git_object: 4fca1f454a4e45d2fe8084d7ff30cab7b396f7c1
+ last_write_checksum: sha1:74dc1f697084b7349f6562b8345dc78df325bafb
+ pristine_git_object: 131b6ca8a2cc2a0b4f16eed26ed840e9860159ed
src/censys_platform/models/iscsi.py:
id: e9d153675bcc
- last_write_checksum: sha1:7c8c5dca6dda3fbc6f366a8c082cc263e137e333
- pristine_git_object: 7ac8b7dccfa74cd44ae5d799357ae9e5d46989f8
+ last_write_checksum: sha1:5018a5c321cf1202bad536ead2855aa4dbac95db
+ pristine_git_object: bcb6ac71aa8110529fdbf6123127d5dda6383a97
src/censys_platform/models/ivantiavalanche.py:
id: 8aa030a73790
- last_write_checksum: sha1:4f74d42324ded0de52aebc4c0c05b8847f736438
- pristine_git_object: db464e723ef31294d6ba744802ebc967f26ad935
+ last_write_checksum: sha1:4abb72375b98c58b7572d4b0804b0af695c1bb10
+ pristine_git_object: e4428ba039bcbaa1866905afeb44e0e755083b05
src/censys_platform/models/ja4tscanscan.py:
id: 6ab74ace9eae
- last_write_checksum: sha1:620793f53e809d884550fa502f7bf5cff9a9d0e6
- pristine_git_object: a4342bb56185090d9cfbe5d3c0ecf87b4f90e0bc
+ last_write_checksum: sha1:9e7277a27ac71cd9b7cdb09659c0193309b30226
+ pristine_git_object: ff2d830d70b21ccea1435d20805e31a6099494d9
src/censys_platform/models/jarmscan.py:
id: 22fb21faead0
- last_write_checksum: sha1:3b353b24848eedcb9d5bdc31206451d624367fd9
- pristine_git_object: a2d80660571221740bf64d975bcb0b648466941e
+ last_write_checksum: sha1:98be6a7ee240e5fb45511c678f595208842ab68b
+ pristine_git_object: f9672c2b4408c023b6adeb68c9a9221eb5503140
src/censys_platform/models/jarmscanned.py:
id: d0139975c20d
- last_write_checksum: sha1:784c837f9f8ebf6e048fedfaaa17db96fd286534
- pristine_git_object: b16fecbf9359394555701cc7047515fe09909fb4
+ last_write_checksum: sha1:12c25c523f7d76e979c943fa77c01b90ab2a173b
+ pristine_git_object: 378c2f9e0a620bf77cc0f6c91ac93a193a342c75
src/censys_platform/models/jenkins.py:
id: f285f49d4374
- last_write_checksum: sha1:3f25c27a3cad8e8378a609877e6ae735d1dc766b
- pristine_git_object: 0b7e64afa1753e2f0a66f43574c4b64196738b99
+ last_write_checksum: sha1:3a34f47a8d60026eb3910a2a3328f62d2b3d299f
+ pristine_git_object: 637cd484f58ce008367f83d9cc382b8a07b668c1
src/censys_platform/models/jenkins_build.py:
id: 3acbf51afb69
- last_write_checksum: sha1:862130c7ed107f34e8cbb6ea2c85c471b111fe82
- pristine_git_object: 01049ac4c2dff129fde27c0e02f973a288e62e6b
+ last_write_checksum: sha1:3f65ccdbab5d120950946a7ebe4c757dc0eadf92
+ pristine_git_object: 0439a006a5ec7de7d5459cb08059ceb5df8ff823
src/censys_platform/models/jenkins_job.py:
id: f7ecc3e151d8
- last_write_checksum: sha1:125cd75856c7047d9088a313d728ad291ba95eb5
- pristine_git_object: c114ad45910ca61c768fdbebcd1509c98b1fcbce
+ last_write_checksum: sha1:77624e97e42cc2dc503091b44b363fcb12c4d44f
+ pristine_git_object: 3c2152498268113e96ab71a5d91054ceeb72cef9
src/censys_platform/models/jenkins_label.py:
id: 3daaa2881703
- last_write_checksum: sha1:c851d80186c11c701b0f522875f981ca0cba01bb
- pristine_git_object: 150b12acf53522873b02619ec500474f9aaaebe2
+ last_write_checksum: sha1:5201f981496f8a996e0251c80bc7a317badb5bcb
+ pristine_git_object: 17bc76e431b5f25ef51c9daba75ff3451777aa57
src/censys_platform/models/kev.py:
id: da2fa8069b00
- last_write_checksum: sha1:4e6b403459f91dd947cbfa2e021b4aa2a53f1fdb
- pristine_git_object: 7a0a465f16a5d36a5d60d0fa604f0e52baeda97e
+ last_write_checksum: sha1:239e137a202272ecdc741da42a35eb25019d37f1
+ pristine_git_object: 97688612ff1056af638c4b5f2a4c836373c4f404
src/censys_platform/models/keyalgorithm.py:
id: a5bc8309f417
- last_write_checksum: sha1:766d8688e24a9e8cdaaf3525e6d2a04ed610ba4f
- pristine_git_object: e7a43704ed7db6e4bd6c1dfeee37ccc4517c7cfa
+ last_write_checksum: sha1:55ce80612623222a8da1d1eade0ee3cc0c9243bc
+ pristine_git_object: 26c9845167c6456a77c5c21a19d88798a5e9725a
src/censys_platform/models/keyusage.py:
id: 58c56f1be68e
- last_write_checksum: sha1:7461800ad41384a1db9f9e80449b1645618a9563
- pristine_git_object: 968e4e90abca19cc231f85c5bf2ad4b00d448993
+ last_write_checksum: sha1:9e2267469477041df75141c2507486867391eb30
+ pristine_git_object: 009f5e7b8019c43cc44954f2411519f01d038885
src/censys_platform/models/krpc.py:
id: 3875855cf4d0
- last_write_checksum: sha1:2f18112c2207f45a0d88615d9192f0d4976a201a
- pristine_git_object: 04ab36a37e7257a728880ce2c26570f9341f02fb
+ last_write_checksum: sha1:06e95265445d7dfb91f12cb5f23528e7ec49a739
+ pristine_git_object: dbb7a212021a49c19107de2cb6ee2254cbc9858a
src/censys_platform/models/kubernetes.py:
id: ce80967217c0
- last_write_checksum: sha1:b18d47bb91d2b44e6c5c29319d92b9ca1a1ddef1
- pristine_git_object: 4fae6ca3bda0790ee49606b8cc9c33e659e74c72
+ last_write_checksum: sha1:2c4d8ddee5ec7f8509a3c5882fe415a1d4b2eef6
+ pristine_git_object: 8cf9cc35e5839abe72aa608ce472eccfdc4260ce
src/censys_platform/models/kubernetes_endpoint.py:
id: 3e2f92eef0d4
- last_write_checksum: sha1:66765a506dbe64278085bb7bbe01ef0b03328c36
- pristine_git_object: 1b37d2e4f65c4032e49ff6dcf6ffc783a5714ca9
+ last_write_checksum: sha1:a3e164eb44a9ca22c6920292c14c1b471c403c21
+ pristine_git_object: 7fffd180404009959d16d8d2bd75ceb120601c3c
src/censys_platform/models/kubernetes_endpoint_subset.py:
id: 403a0399e9c5
- last_write_checksum: sha1:c2d81723064149fd8be2178e29221131295943fb
- pristine_git_object: c5ab8be1fe410ab398b0c738a237466ec49eb98d
+ last_write_checksum: sha1:b3009f48f660c45cc0a71f34b265578d70c61f80
+ pristine_git_object: 804d96744e150c80d6f3165d1213a6cac8c3fe7b
src/censys_platform/models/kubernetes_endpoint_subset_endpointaddress.py:
id: 6d5ab75168c2
- last_write_checksum: sha1:a889578cae0480c4bfa6bda7e918477339b5fe50
- pristine_git_object: 8de97688910d1d69ba863d62727343a4341031fc
+ last_write_checksum: sha1:02ef1fe8352b593d9766a24e4b529347ecd20ca2
+ pristine_git_object: a54390fb58baadba1934b2f4d5d52800a422cdbc
src/censys_platform/models/kubernetes_endpoint_subset_port.py:
id: e0514c5d0835
- last_write_checksum: sha1:ccbf0bba51a8d8e8f2b07ecdd3fdd78e9d56f136
- pristine_git_object: a76046784a15f54271a4c61bbe65d2f9a3e893df
+ last_write_checksum: sha1:a5320459b3e69a81d950b2ba26252c99b4db033c
+ pristine_git_object: 4d20d2b2b7c74bf0747327bbff60d0c3c75b8e62
src/censys_platform/models/kubernetes_node.py:
id: 7426c3e502ce
- last_write_checksum: sha1:b48be225a8801dc1a4e479dba88e2ecdd20b4224
- pristine_git_object: 0d727c6687c95e3e623db64a8882e3f7a8ec6a0c
+ last_write_checksum: sha1:c5794a7359affb0274c0dc43144b11243ceb91dc
+ pristine_git_object: f9a18ef614a7d300256e271c5118d634c9c11634
src/censys_platform/models/kubernetes_node_nodeaddress.py:
id: 6db68e830c64
- last_write_checksum: sha1:e72c5d80b2fa810c8485a7d63ecd5b8fafdd3cbd
- pristine_git_object: 3634be9d020390007763280411adedf466cb1eef
+ last_write_checksum: sha1:e2a64ad16dfc53b32e0acf346787eb29b78f99a9
+ pristine_git_object: 22bed93868ac0a9133383136024a40d317222538
src/censys_platform/models/kubernetes_role.py:
id: dfc6009a0d5f
- last_write_checksum: sha1:bd8308b8c4a5c9982091524669afbed771b9a7fd
- pristine_git_object: 97a2f1f711fbd340d4ce9cf353dd70e97515705e
+ last_write_checksum: sha1:43001df67b8bcabc23804376b7f2ef12f6951fa2
+ pristine_git_object: b63003b62e26b272144ace372d0cdb4a37c08bc3
src/censys_platform/models/kubernetes_role_rule.py:
id: 4b3f53b4025b
- last_write_checksum: sha1:65946c195c093d65378f78726e4bb354c0ae4f6c
- pristine_git_object: 956ba08d8de852b80583f85491009548a523bafa
+ last_write_checksum: sha1:871b4b7a89479fc7d568d2f013f4b30bf0a944d8
+ pristine_git_object: 8ddf2db3e050e452bfcb6871b3ba000cc0a23e43
src/censys_platform/models/kubernetes_versioninfo.py:
id: 8e73a6487ef0
- last_write_checksum: sha1:e4bed06b1335b9349a809856e78b8f5b6cc740b9
- pristine_git_object: 27a3ef9a2d27e27523406621993c60bcc9ad74cb
+ last_write_checksum: sha1:a7cc68a507cb8c9f094a718356319df6269fe34c
+ pristine_git_object: cf95ac55c88a1ec8b724f6c263568f185a7a1b10
src/censys_platform/models/l2tp.py:
id: 5b9fffcea417
- last_write_checksum: sha1:cdad3ab70908be8a02a46453d3358e17f878413e
- pristine_git_object: b317deee90750e64c92d8484d7f889ab18d289cb
+ last_write_checksum: sha1:d68650188f29ce55de06dd2a5933c64ad207d842
+ pristine_git_object: 09ca2e97de441162bfa4f24ae94813cfb9576097
src/censys_platform/models/l2tp_attributevalues.py:
id: b57a85f8d0d4
- last_write_checksum: sha1:30e56951796e9460496860789447032b4753bd8d
- pristine_git_object: 55359c9a5380a4602e964da4ae7c38abc1c46756
+ last_write_checksum: sha1:2ed4386d97737c418ce5346ea87f6330d37945bf
+ pristine_git_object: 17d3f56ef4358020f05707f029b247cf6cfa6203
src/censys_platform/models/l2tp_sccrp.py:
id: aee76f0550a0
- last_write_checksum: sha1:b7a8266e2245f1a5f8ba0023df0584e2096c4dc7
- pristine_git_object: 0397343e7c12cc1c57332e0a8e811702750d8cf0
+ last_write_checksum: sha1:d2f64ac105f4ca69cfb286d125b44014e73a8ec5
+ pristine_git_object: 2f9298d192eb6b77985cc6730e81f8028a310d42
src/censys_platform/models/l2tp_stopccn.py:
id: 8083cd99abd5
- last_write_checksum: sha1:34b81b13d3c86441f24ee61a6530df42742ccef4
- pristine_git_object: 501b49104bc270f9def3d5ecd8d283e5e4badb1d
+ last_write_checksum: sha1:7f0950e1d109b85aefc598b5db7db5abacc73d6f
+ pristine_git_object: 7f20c5da2b9620d5450ba1f23a9bb31f9a7d32fd
src/censys_platform/models/label.py:
id: becad33cc37f
- last_write_checksum: sha1:df0ff6640f425b91e541cb126bc253e1fb6bba1d
- pristine_git_object: 5cec4df8a038a31217e6b4e7be6488f550091685
+ last_write_checksum: sha1:c200f2026bd4757bdd2e8ce7a7aba14737caa224
+ pristine_git_object: af4a39d4a6b05f6073c0e7046290be8667cea8d4
src/censys_platform/models/ldap.py:
id: b451a3030a09
- last_write_checksum: sha1:a2f87f28a1dbfed8d9e06c1415198c1360bbaa27
- pristine_git_object: ce643ee0d99e4a8985bdaab8d2b8b9f468c601ce
+ last_write_checksum: sha1:1a27b650a484b57b6d5636c31d7d1f74c4ae6027
+ pristine_git_object: 4343c3db34547d3513565b64adf011737a34afcc
src/censys_platform/models/ldap_attribute.py:
id: 0f931d347641
- last_write_checksum: sha1:cb9fb8c0d89de7be675f0791aa3116e60c2e7570
- pristine_git_object: f63b62c524c2f63583d8ce191a08a9a9f1296ec0
+ last_write_checksum: sha1:986a6f7b09a4747c705faf647cdd462cb455378e
+ pristine_git_object: 31b55555d2fad833cf4a52b9c4f48b3a415d30aa
src/censys_platform/models/listcollectionsresponsev1.py:
id: f193ae1d0a57
- last_write_checksum: sha1:35cac8082db5372783b4b3a0ecc70505b529a1c0
- pristine_git_object: 4e3f76186a8161d578f0ffbb3812b274866779a6
+ last_write_checksum: sha1:267641b5540de0fc76dc4daa27dbd094c14b5be5
+ pristine_git_object: f23bc3a29c60b794e9a42e50a1a57f613a58f2ec
src/censys_platform/models/location.py:
id: 535babd1f9d4
- last_write_checksum: sha1:04fdc5a89a79507ec01f35277fd06113583909dc
- pristine_git_object: bfc33e509701f06c20205ee8b87b1bbe798f95c0
+ last_write_checksum: sha1:c1725283e4e9366a32ad89e6c8fd7c9414173d27
+ pristine_git_object: 647b906c9a4c3264ebd1ba55fe36f202314c0229
src/censys_platform/models/locationupdated.py:
id: 7a98352915c6
- last_write_checksum: sha1:7074bc601882064ca58c3b134c85ba672420a440
- pristine_git_object: 09b84f1e54fea1e6dafa044c7dcdc33add4dbefb
+ last_write_checksum: sha1:39ecc8eab8206f9da85ded9dbe97ee26f0a6d0fe
+ pristine_git_object: b85f3f94c6efc602aa2974c6954d9e09363de1ae
src/censys_platform/models/lpd.py:
id: ad28772a4cbe
- last_write_checksum: sha1:f7785fdf7ad3d0c2b1b5a35fca4042cf9edbdef0
- pristine_git_object: 3bf684d6ac51ab850427572b05d8924a82d3caec
+ last_write_checksum: sha1:e6099f4b49ac47581cc84f0b6833b4e1e0a1d872
+ pristine_git_object: 99c98b194a0ea57b7fed8a12ef03df088e9e8760
src/censys_platform/models/lpdmessage.py:
id: e755afe2e4ac
- last_write_checksum: sha1:64ab9d574cfe36a7e93aaaecdd16526f7693a49e
- pristine_git_object: e49d0d47fdd9337bd2dfb3121291c6e0c6dde3ef
+ last_write_checksum: sha1:1cf0eeaa68b505514c5b200e9a2b76816017ba6d
+ pristine_git_object: 408291eb012a71ad4a3c72ff598a362fe44364b0
src/censys_platform/models/matchedservice.py:
id: 8ac9ef9d68c0
- last_write_checksum: sha1:f267b067f460ea75cf864f6a856323ce46131408
- pristine_git_object: 7d469bd40151708eb2f863aad7165f3193dde548
+ last_write_checksum: sha1:74d8ae18ace978d0bee583c9b769c4ff50c97368
+ pristine_git_object: 51eb196500fa7cdc6426a1e70cfde56714f2deb9
src/censys_platform/models/mdns.py:
id: 892cdc4aec3c
- last_write_checksum: sha1:ea24893f27feacb708bb3a4482b63e49c55af145
- pristine_git_object: 956e0422ae9ac0d3fedfc3a0834cc255a6687d66
+ last_write_checksum: sha1:c89153cb82c589d39dc84e121ed6b61c9cde5fff
+ pristine_git_object: 22bad4530a8f1027612a2497ca8365c940330a76
src/censys_platform/models/mdnsresult.py:
id: 2db91487bcc9
- last_write_checksum: sha1:de0fd4e46cebe8ab16cb9eda0f3e47eda75fad02
- pristine_git_object: f1692ff76c385fd85b4f16bf84da722bc14f0750
+ last_write_checksum: sha1:d6b8b3847e06b9104b7c6a776c4ee81e72a311e0
+ pristine_git_object: cce2f6db8e7a6b4375b6a1ca4ed9f01e9aa46348
src/censys_platform/models/mediacapabilities.py:
id: 91398ec18ca0
- last_write_checksum: sha1:50b4eb30d1212897c630ae8529e38afd77a8c604
- pristine_git_object: 14f087ded06c11b8319c8bdbe61ca6f7b13638f6
+ last_write_checksum: sha1:b14082905dbdaf12561b87870f0cc7057d790213
+ pristine_git_object: 54e2e1447b20d677c22016d55f6ade1603d02c12
src/censys_platform/models/mediaprofile.py:
id: 78dd38711011
- last_write_checksum: sha1:9699e3a7958638c26ee5c97bd3690bf836fb4895
- pristine_git_object: bf4f7e3ebf711c81bcbef63c663216832b3ebcf7
+ last_write_checksum: sha1:2c2ef6b4478541b9d7c9b4034c72bc72d462442e
+ pristine_git_object: e76d46f809a0e89a8eb5e43cbc6330efb42cfc78
src/censys_platform/models/mediastreaming.py:
id: 72fc46d8eab3
- last_write_checksum: sha1:6655898edfa373ea06c1fb9abafa255ed75357a6
- pristine_git_object: 6547874edc32325144d36688a3b4e6c634102437
+ last_write_checksum: sha1:23771279638d6aa223e0d210a62ec47cb75a43db
+ pristine_git_object: b2da5517d4f55e7f297e4467f1942d149f719680
src/censys_platform/models/membercounts.py:
id: 335b636f5618
- last_write_checksum: sha1:31aaba8207dad7b1c691930dd61200d16904f6aa
- pristine_git_object: 6762acf1a44bef5cf0a6b11dd420f00b48752ead
+ last_write_checksum: sha1:1187a80dc052cbf6a851d3bd08f1161f417c11f2
+ pristine_git_object: d7122f2fe964927f9da4d2632cd4270ef7352206
src/censys_platform/models/members.py:
id: 891e74951b6e
- last_write_checksum: sha1:898377f520426a900647327e9bf66436904189be
- pristine_git_object: 582afb8e3f25c119511975e241ef7acb04d3fb11
+ last_write_checksum: sha1:22686d494c9eff37c30ef3ab49dbb938a0d18d4f
+ pristine_git_object: 842bf2dfe1aa7eeef1e24cfcc583b3da5e9c295f
src/censys_platform/models/memcached.py:
id: 938c535e60b8
- last_write_checksum: sha1:04eb905122162e7968e43e91a8132c60f534d6b5
- pristine_git_object: 98e43acd56e16bd6c2ee74bfffa20a473a0e6a60
+ last_write_checksum: sha1:b74274bf9548911c63f25f7f4e50fbf0e1efaf08
+ pristine_git_object: d6422ec2011d7fbf825f690d07111732f537110f
src/censys_platform/models/metrics.py:
id: 06256535a6dc
- last_write_checksum: sha1:6451a401d9ef0aa700497aca359a13ea07932915
- pristine_git_object: ab58fe323299a34f306b57b7431565a0c9e9b0d8
+ last_write_checksum: sha1:2c3071f0dc5ae03c6924ec13ddd586a26d1850d8
+ pristine_git_object: 507f06ade9b91fb44745b963603ad96af24c5326
src/censys_platform/models/mikrotikwinbox.py:
id: a292218f13e5
- last_write_checksum: sha1:a3b5c8c59ff7e2c46a904541e41ab08e7605efc2
- pristine_git_object: 3a5188f842aa710717715d4a68a2fed7a26051b6
+ last_write_checksum: sha1:9810cc1145ee42185a7a9d62f3afbd7ea2e6d31a
+ pristine_git_object: 93c8939c7b8a079d937e1a624d5dfb1d16d8cd25
src/censys_platform/models/minecraft.py:
id: eac7b6965e84
- last_write_checksum: sha1:7e4166b384257c8c719832578474f85b6f9354a3
- pristine_git_object: 89a96ad57a968d8341127d250abfcbc89db502a6
+ last_write_checksum: sha1:828a8388346f79384c0e1b862e64d11f4e9ba343
+ pristine_git_object: 61d7620cd30788e401b7db0357f0327847d0ba23
src/censys_platform/models/mms.py:
id: 4f49e848fcbc
- last_write_checksum: sha1:0bd630c65beccfb86ee4d1ddf8443bbb42c9fdc5
- pristine_git_object: 433755e363bbe8c556f7081a2051fcfe2842616b
+ last_write_checksum: sha1:3431522dad0095b230fea93390d8025af49790c1
+ pristine_git_object: 303fe3e0edd567bdfb9aaf328313cf053f5b7f67
src/censys_platform/models/modbus.py:
id: 4b5d93791f6b
- last_write_checksum: sha1:222cd14f3ebd911d63697ecc69197c013b0660f2
- pristine_git_object: a8f1d7d32448c9cfe2948945f20a7b654fc3cfb2
+ last_write_checksum: sha1:7b7598f24640813133f55293208c420cc62debc9
+ pristine_git_object: df676a4ffe2dab23f4c9b36573e6338c9142d5ea
src/censys_platform/models/modbus_exceptionresponse.py:
id: 3cd3644f8a26
- last_write_checksum: sha1:e66ce2f3500c2283db29897bef0da3880669213e
- pristine_git_object: b5f3448b3abc292fe561138e8604bf69c0004030
+ last_write_checksum: sha1:fe0fc449250588e76a2845f6f987b2c3d22a3cf7
+ pristine_git_object: ece69dcd06290d3a2b49c8ebc9b818c6efb3410a
src/censys_platform/models/modbus_meiresponse.py:
id: c47f1456966b
- last_write_checksum: sha1:3b3d14e5a42213be28c55988ef9580f1a4a7385c
- pristine_git_object: 92fa45951813627682e5d8461fb640ffcd6a02bb
+ last_write_checksum: sha1:5e7942edaa812d7b0392beaf9cbeff9fffc92266
+ pristine_git_object: b048e63ddf5688cd8024174b7ce8837f82ef6f5f
src/censys_platform/models/monerop2p.py:
id: 6c509d29479f
- last_write_checksum: sha1:9c7b4d5c84c8e7db43e33db1dd0a79b847f9b88c
- pristine_git_object: 088ce165b87045ea7c246b68175c299c7bcc1809
+ last_write_checksum: sha1:bf658881128415beeb655abaf8a94d93a20d291f
+ pristine_git_object: e9d0e7ea0e1349235d934589d551e7836ae5d341
src/censys_platform/models/monerop2p_entry.py:
id: 7d8b989fce27
- last_write_checksum: sha1:c18e7cbb809ef30aafbfd49395fffe2133c57bf2
- pristine_git_object: c7cace26a979cf6e1252fde96ac924bbe14fbcc2
+ last_write_checksum: sha1:9ac2b5933b732904b8bb9af1c287fc06ec2837e4
+ pristine_git_object: 0ea3e07dd4eb9d6afae035cfd906a187ac3597cd
src/censys_platform/models/monerop2p_payload.py:
id: fb406d788d36
- last_write_checksum: sha1:98810f1855ac342b8512e7fa099c9af341fb4fa3
- pristine_git_object: 453d25d1e333cc5a60097832ce5a6c7f9c22a91c
+ last_write_checksum: sha1:6c098e8718f19edbf2f97d5de81c5ff1d387a10a
+ pristine_git_object: a48c21ff1086b6dbbde9a4b418453ba9cef74466
src/censys_platform/models/monerop2p_pingresponse.py:
id: 37f35550f577
- last_write_checksum: sha1:080a8959d3576ce68cb09759d9d1599b11f4c8e6
- pristine_git_object: e10717d323ff1dee2a65d5d3e0caaa8c41c45f2b
+ last_write_checksum: sha1:4d595ad758536d4e076ad5fe6ee2442aa1fbad28
+ pristine_git_object: 82f56269c99ec11e22a098618d5f070c0d9106f8
src/censys_platform/models/monerop2p_responseheader.py:
id: 33b67814746a
- last_write_checksum: sha1:5ef463127993f389efc6ee12e18008b8e44eb97b
- pristine_git_object: 9eac6f4742ade2579dde4cf837f8371794f25c98
+ last_write_checksum: sha1:b1ce3f716c02d173cc261a05f96e893da9f30439
+ pristine_git_object: 3a525b1d7793ec99b282278b45626acdbe32ac1b
src/censys_platform/models/mongodb.py:
id: 4383938a6818
- last_write_checksum: sha1:fb7c0e18903f9387c5d00eb19c7ca176c953efeb
- pristine_git_object: 08c57828d7bc27d08c3d5f733d8f7ad30ce6be1f
+ last_write_checksum: sha1:99309e8974735ea017bfb84193e10e92323e8f32
+ pristine_git_object: 5ac53c7a3afc9fbc2a2734793a89fe683da987d6
src/censys_platform/models/mongodb_buildinfo.py:
id: e2924d8a4eed
- last_write_checksum: sha1:81a4fd691041f410115733b1130df1a3bda67d14
- pristine_git_object: 6bd30370128cf27072b49d4fc0e5924d985835b9
+ last_write_checksum: sha1:609c1d491a5df051746e8ae77e45c54d75e051c2
+ pristine_git_object: a2b2fd7cc89ac06724e7ac50a73c8674bd632d1d
src/censys_platform/models/mongodb_buildinfo_buildenvironment.py:
id: d1e3b2e80acd
- last_write_checksum: sha1:398724255f5f503e88a7010ca2b0f0febecf1ceb
- pristine_git_object: 066ec7c0fc9d79312117ee3459fa4e428335bd99
+ last_write_checksum: sha1:2f70161be6e4b866d3b1851c662f50dfa8178a6d
+ pristine_git_object: cd597b53a0cca5f1650785cf406606129188eb08
src/censys_platform/models/mongodb_ismaster.py:
id: 810fabe25562
- last_write_checksum: sha1:e3ec473bd4fe6892cc917752f5ac1a9c0a8e9d9e
- pristine_git_object: af89ebdeef7df7db1213834fa1aa4dbd3e9c3169
+ last_write_checksum: sha1:482133c6814406e986e8c6eb432e78371f1fbc38
+ pristine_git_object: e207ddf19d94e252bb77aaeb8d9a7917e1a36014
src/censys_platform/models/mqtt.py:
id: f992838cca01
- last_write_checksum: sha1:07638c642c2ad657a9b40ce4ed26c4d0707246bd
- pristine_git_object: 9f3514e9c6b5efa55ce9e7679ec9e3ab1f92b69d
+ last_write_checksum: sha1:b3acdba3b9811def38f2140ad9107941d7068b6a
+ pristine_git_object: 8cd537abff23ab6b5e68214cf21904ff99220913
src/censys_platform/models/mqtt_connectionackreturn.py:
id: b18ba90b7e98
- last_write_checksum: sha1:0efae63b252519658ada9b61e708f70db1940b35
- pristine_git_object: 1f81e7141ba63f0297ced07e55e651c67d594e6b
+ last_write_checksum: sha1:ee7aa02b050a8194d69cab901c49329f99939c94
+ pristine_git_object: 33f91a30eb9bf59e93e9d8ff6c51cf8721806988
src/censys_platform/models/mqtt_subscriptionackreturn.py:
id: 2e08bfce0b11
- last_write_checksum: sha1:3a7d06861b8fd4bb66d63c7e49e1e13b6d458775
- pristine_git_object: 8ea921eb26ec47491daa952b5c527fda077df49a
+ last_write_checksum: sha1:32071af13e1b9605f274cc4f1ae3204bad6c8edd
+ pristine_git_object: d776afa27126f5afff2696864e961c7f2f4d889f
src/censys_platform/models/mssql.py:
id: 24dba92557f8
- last_write_checksum: sha1:0d16f0f455fadc27a81e0f7d6b089477912eab3f
- pristine_git_object: 123ad4dfe1705b5832af4ce105eeb6dbeac6b72c
+ last_write_checksum: sha1:bdfe9270f0a2075a318e1bf8ee6ab1ec3e7202d5
+ pristine_git_object: 4c861311c6f51cf990d9c01c8d54a29b20cde2a7
src/censys_platform/models/mssql_preloginoptions.py:
id: e5bcde8198c2
- last_write_checksum: sha1:819ad419639ea491ad83906a53082bb60da2815d
- pristine_git_object: 9e53336905ee8186e0b5054b49bbc0a3a5fd40bd
+ last_write_checksum: sha1:e98b2a5da4ecfc592c080818c1f25ba2395c7eeb
+ pristine_git_object: 7a9a8fcfc9b11bbe77d3781b815ac9d966b00fa5
src/censys_platform/models/mssql_preloginoptions_serverversion.py:
id: a182bb03004a
- last_write_checksum: sha1:8796f0147ef2853e74d830da32bd344e61d7bb93
- pristine_git_object: a3626a72809995698e0aa538f6cae660bdcf6c4e
+ last_write_checksum: sha1:27af6628e14078d17dd4d54fe6bc86a944477ccd
+ pristine_git_object: 4ddbc6a19d0aa30c44cda4fc45756bb33aeb7fd0
src/censys_platform/models/murmur.py:
id: 96d94ca42aec
- last_write_checksum: sha1:5e9afe41f4537e577b0569049f01a8b1bad0659d
- pristine_git_object: 7b58aa12276ecf9645da5fc22ac79973a51b930b
+ last_write_checksum: sha1:55484057d41be59a8e1da189c6865f9ee747dfde
+ pristine_git_object: 90bc532dd63f8e9239bd47782507083e61b7bccd
src/censys_platform/models/murmur_murmurversion.py:
id: 145d41d84c30
- last_write_checksum: sha1:8b422d7522b51f8959156c7455f5b903e6bb8af2
- pristine_git_object: 313ca6df615be1cbdd8c3ef9ca4a3fdc1a81778a
+ last_write_checksum: sha1:4ce35284f7ea30cd3e100be391b2b85f7cf6513e
+ pristine_git_object: 507023b147a45f0db94e8a113025c51626bd9ce3
src/censys_platform/models/murmurmessage.py:
id: 2d14fea5a7a9
- last_write_checksum: sha1:0cc2c58e71c06cc69811dcc32c130f5f80f5d444
- pristine_git_object: 50dfc31fbf1a667e627dab5095f5d767d75f7e5e
+ last_write_checksum: sha1:c96518a1e1100f6d8680d3782ab9294362a95954
+ pristine_git_object: 7f003c9b8dd47734efeaab129031eb7fba4b928d
src/censys_platform/models/murmurmessage_murmurheader.py:
id: 640b81d95aea
- last_write_checksum: sha1:102884235b8d8a1d67e5277317f8ec550a6f531e
- pristine_git_object: da46c702a43f51d18e43d2008ef32d5878d7d729
+ last_write_checksum: sha1:85852781f071139dc3b04364bf64b919400fcfd0
+ pristine_git_object: 328dca95c67a25dcc6bc7b47549449e5a7bc0a89
src/censys_platform/models/mysql.py:
id: 296293c03376
- last_write_checksum: sha1:9dc954342cd0906e41396022e9c2a6224d9402a6
- pristine_git_object: c5b8dc50eefad01a1b8943fb9f806ee89ab84ed8
+ last_write_checksum: sha1:94b79eec1215e299c211d04a3a6ad6b6d1918243
+ pristine_git_object: a836ca5ed089dac813b3be7d91d3b94586181bad
src/censys_platform/models/nameconstraints.py:
id: 688e6ea6fa45
- last_write_checksum: sha1:5b4ac0e7a8b60c1c9ebce4fdcbf60aa6d9b912fe
- pristine_git_object: 16f4542366931051269a5d4a00c8b01bc89cff57
+ last_write_checksum: sha1:b4eeca40fbe3b767a64fc905fb8d868a418d457e
+ pristine_git_object: 2591022a706d298a5687b43641ab8339cbbf2a00
src/censys_platform/models/natsio.py:
id: 8d9514decc16
- last_write_checksum: sha1:5f07b8c377fb12e24a6e3cfc5aa6a69048a12f93
- pristine_git_object: 5aaddebb38b2fdfbdc3c8d9a8a052d66ed6f1a9d
+ last_write_checksum: sha1:5f1f79e8a21482fddba5bf8b96652ae5e10483fa
+ pristine_git_object: e03aa2b6f5ca39b257dcaa7ba4c70f29f643f9e6
src/censys_platform/models/nbd.py:
id: 391a67c8970c
- last_write_checksum: sha1:83cefe7a25c79ce9b5c9a6cdb64f138be99b87cd
- pristine_git_object: 3aaaa43561905bb421ff838380d0384ab180f6b0
+ last_write_checksum: sha1:f664ad7abb20caeabcb32c49652d653e67665377
+ pristine_git_object: 1666690dbe988eff866e41c10b87134eb5a3ea42
src/censys_platform/models/network.py:
id: 931bcd7b12c4
- last_write_checksum: sha1:1674e549b164ae24616d305a189cc8de94d4d010
- pristine_git_object: c3e4d996c82674f7d78b57eb64adf47d5de069ad
+ last_write_checksum: sha1:4558bbfc2d8fad1e93defe54ad62168f17fefbe2
+ pristine_git_object: a254cb4dfb178cca927d268597f0bc9ac869905b
src/censys_platform/models/networkcapabilities.py:
id: df57a65e4bf8
- last_write_checksum: sha1:9b28b4634cadbf91f381bf85a1f8baa886f28050
- pristine_git_object: 586c69604f9a5d68269fa78393a5af28d166353f
+ last_write_checksum: sha1:02940d233dbbcb427be68dc8003d93929307351e
+ pristine_git_object: 19588fe6c60ad258905472a16245633976636fc1
src/censys_platform/models/nfsmountd.py:
id: 51c06e6b4f8d
- last_write_checksum: sha1:fe7a465f9d0a699b1083a4f08d47b0ef9f7e57ae
- pristine_git_object: a3986c4b5ef4b57c75c9efa62d46234b9ce445a6
+ last_write_checksum: sha1:c51830bff8e357045f63cdedefc45c9e44921813
+ pristine_git_object: f6e2892029dfcf71a44c027ee937f338e8407133
src/censys_platform/models/nmea.py:
id: ed1adda3aee4
- last_write_checksum: sha1:58b31008105b9533484cdac13d03737edbf50c3a
- pristine_git_object: 1460dcf3e2ebe074e61cc52efdc2c14e3b7b74c7
+ last_write_checksum: sha1:d75dda48d16e03a45db952dd7896571b50827a0c
+ pristine_git_object: f6ea7c6d8900a798b90ee1c3109a7f4c10021922
src/censys_platform/models/nmea_nmeamessage.py:
id: 09060f61d186
- last_write_checksum: sha1:f9d865bafba20950f88ae89ce000de62dcca9bd1
- pristine_git_object: 1c687a4727719acb192527c6262ea841826a73fb
+ last_write_checksum: sha1:c37aab81ae556365fbf08063c6f792611c1976cc
+ pristine_git_object: c6c0cdbf84917753d40ab2eff963af5aee95b1b7
src/censys_platform/models/no_response_error.py:
id: 4e1a4ac1af52
last_write_checksum: sha1:7f326424a7d5ae1bcd5c89a0d6b3dbda9138942f
pristine_git_object: 1deab64bc43e1e65bf3c412d326a4032ce342366
src/censys_platform/models/nodeinfov0.py:
id: 7fd48c354ba7
- last_write_checksum: sha1:8bd233160154f5d0ad3715af10d2c472cfb430d0
- pristine_git_object: b7ce9d25df1824aa9ea6123dc30e8b4eb67e57bb
+ last_write_checksum: sha1:b32ac3535bfdc9d9b80a5b82569a333da31482fd
+ pristine_git_object: b5db706022dd411067aca97cd2e980af8580e892
src/censys_platform/models/nodeinfov1.py:
id: 067a81928690
- last_write_checksum: sha1:45981eba48e8810dc6db2b00a6ca3fc487110085
- pristine_git_object: cde9ee74a725c0d0f744e05bc41cde2d96d0c2c4
+ last_write_checksum: sha1:dafeb5f3f6be73d75481047e4d3edef0dbeeb2eb
+ pristine_git_object: b8bc1985e919e4eac435788b0b83eba6e0535edb
src/censys_platform/models/nodeinfov2.py:
id: 728e74a9bb69
- last_write_checksum: sha1:f7caa82faa3970d18c69ce06c857970f16349ccf
- pristine_git_object: 0922c0ee8f43c4d712b3a56a1861536b38062476
+ last_write_checksum: sha1:33dabb101c10f3e932871312484e4be311e3bf96
+ pristine_git_object: c43644855fa8db7fc370ebb6e82c63b99454414f
src/censys_platform/models/noticereference.py:
id: 15f15289ba05
- last_write_checksum: sha1:2514bcae006b48ec35edb24490447627b7c2769a
- pristine_git_object: 1e6d20bc9b664e020355dfcd004c62031378a471
+ last_write_checksum: sha1:200f5af1b9726101092efb370fe6d6979ed23164
+ pristine_git_object: eb3757f3f3b267065660ccf8e17fe21ca90b96ad
src/censys_platform/models/ntlminfo.py:
id: 7cbc66b4a816
- last_write_checksum: sha1:16afa79d442e2f7262a5bb467d14895de65daf94
- pristine_git_object: b010dd1bfd871bea53615279e52985981a499c61
+ last_write_checksum: sha1:c624ab46e86fc65a9148361292247ed5bf71f563
+ pristine_git_object: 6d4f4236ba8a6d5a43e44c9827181e83976624e8
src/censys_platform/models/ntp.py:
id: 36a7e05a847a
- last_write_checksum: sha1:143380d11416a7639d1896d6bc3d4c5c5a10657b
- pristine_git_object: f8cc9577696bdf6ac97c1162733c6716e157d72c
+ last_write_checksum: sha1:3a84602d5ee12b88f95193a40e63102ba1100dd8
+ pristine_git_object: 23e178751c97b5dfdb2d923bd16aa2a5f52c5acf
src/censys_platform/models/ntp_ntpheader.py:
id: 20c2fab6c28c
- last_write_checksum: sha1:3e702c908fa3ad594ab349d1e47cfbe4f1699e76
- pristine_git_object: e287153ebe69d0a2f9bc6a307a9c0087c965e956
+ last_write_checksum: sha1:8d5691d284d733d1cb7c4696900e10dbef5882d5
+ pristine_git_object: c1b5b432d8aaba5990f12518b8acac5694acd13c
src/censys_platform/models/ntrip.py:
id: d62c6d768e4e
- last_write_checksum: sha1:f0f91e62618fea3d6f78b3aed63e45ae5731465d
- pristine_git_object: 6139d7f2c474f9d3cc92edfbff3dda7d3bcdcf83
+ last_write_checksum: sha1:4142f06598e61af7e254d4e8eaee8516424c9490
+ pristine_git_object: 2f52cdacbe98b7dd15529d84fad2373fb3457e27
src/censys_platform/models/ntrip_datastream.py:
id: dbaa0c44b2ed
- last_write_checksum: sha1:9b01b768e61528fcb2c65e86b81932ffe8a60e63
- pristine_git_object: 3a04f1f48981a05a59a453176f8070a95c40754a
+ last_write_checksum: sha1:6addb30ad24a736815f6e34aa36b1d3ac438ae89
+ pristine_git_object: c52d8146a145a1fb0a4929b26170c2f07cd0f161
src/censys_platform/models/ollama.py:
id: ca8783d0de31
- last_write_checksum: sha1:c0414c96032c426c8e47dd8300cbfb153de6c3f6
- pristine_git_object: 52ab3443d9d4cf144b6100db1b8c9c34e2fdf4f9
+ last_write_checksum: sha1:8fde2582151852137b5ca96289163d7c276d29e8
+ pristine_git_object: 83070abfbc7a28f5633609d8b9dfc103574f7dda
src/censys_platform/models/ollama_model.py:
id: 248951a55f9b
- last_write_checksum: sha1:22d7722813a5fdfe636513bd18c816cfa5ffe397
- pristine_git_object: 89f44b1f57a2250775ae79e8b3d81447a37250b3
+ last_write_checksum: sha1:e2160d03f87297685ddb1dcc70635d7af4332821
+ pristine_git_object: 4d834475a00940bf8c1443d9e060f3b7d0c1e311
src/censys_platform/models/onc.py:
id: 237054bf786a
last_write_checksum: sha1:19ce3bd42c01637eb0ad5b1bcb31c6d4509e0652
pristine_git_object: dd79d3307a44b8a19741813c04f092270cd4d96f
src/censys_platform/models/onvif.py:
id: 8a3fc0c225f7
- last_write_checksum: sha1:1ad4c9c11f1efd2250d22e67977e76c3d1f21a3a
- pristine_git_object: 1cc0b4ebb308fd8586ac099b2054ba47f8c52d41
+ last_write_checksum: sha1:12a926eccf19cb1a0cf73ae993f726d444bd621c
+ pristine_git_object: 54a58669ef31e3746228183272d351bd5f8f2f6c
src/censys_platform/models/onvif_hostname.py:
id: f4a5cd928906
- last_write_checksum: sha1:1f11ad198753c0a6d63073585f00c4af30419167
- pristine_git_object: ed8b77501d66b382a9cfe2d3ab31f23b789abba4
+ last_write_checksum: sha1:4bb12686a0ef4bfc75c40f9895bca02cea6a2fde
+ pristine_git_object: ee9f19d4698eed87d946c85c892d866e6c8a9d77
src/censys_platform/models/onvifservice.py:
id: 5ee9b4cacd4b
- last_write_checksum: sha1:4d9fae2e6915fc383665b9dda3b8468ac873b9a2
- pristine_git_object: a0760ced6ac87115d3d0862fd9507e1276f460c9
+ last_write_checksum: sha1:c28e0b0ed60f487577455dfae7573279b31c0a56
+ pristine_git_object: ba53168be35d771d527bc6041e490afa4ff452a8
src/censys_platform/models/opcua.py:
id: aabddd28902e
- last_write_checksum: sha1:934ef5537621c1494fed7ef0b881e9120248a95c
- pristine_git_object: 9429e7b9076cfc69b57e0d63a81d0d2d9dbce6e8
+ last_write_checksum: sha1:d52feac7cc9b9bf382bf9a1f34fe468f598fb8f4
+ pristine_git_object: 15dade266db04e3aee9fc93db2bf2a0acb276915
src/censys_platform/models/opcua_description.py:
id: 5b402f504fb1
- last_write_checksum: sha1:c464c64ddc77110928cd1088674928f6f4bb3e5e
- pristine_git_object: 44176218aadb9541cbf17acb9712961b636909dc
+ last_write_checksum: sha1:77a31cac6718662b504d8fd4201466762073e698
+ pristine_git_object: ff85e832eb0c4d9a7832f7813db6bf3feb0aeb70
src/censys_platform/models/opcua_endpoint.py:
id: 8c961752db3a
- last_write_checksum: sha1:d55ae123d12d0b78383c044b77ce00cbbf78aac2
- pristine_git_object: 09167fd0962a6fe43fbb9fd618776b894c22765a
+ last_write_checksum: sha1:e3f8cdaf7b73b4422c6685abf8289eb147bfc5a6
+ pristine_git_object: 82177517d6687999baed88081f71b5f5e6753abe
src/censys_platform/models/opcua_localizedtext.py:
id: ee86441c2141
- last_write_checksum: sha1:f806184b4c8607f21b3afbc0d78872924d5f72ca
- pristine_git_object: e2a1aac4f986152fce507004a2489312ca365b7e
+ last_write_checksum: sha1:503462e3876e10acfa852aafde38360509dfb1d3
+ pristine_git_object: 0e19856bd4d870824d55e6ab59ac9a89890d223f
src/censys_platform/models/opcua_usertokenpolicy.py:
id: 8bd6388dea75
- last_write_checksum: sha1:d5b0764b8ad6a98f922594baa3c9e35193542fba
- pristine_git_object: 372a84a6b7e439e29533044d62963343b9c1b47a
+ last_write_checksum: sha1:a4d1fc84d5785f73658ab9a7338bece29755c597
+ pristine_git_object: d553e22221f84a4df4e37d321a9522683efb4e3d
src/censys_platform/models/opendirectory.py:
id: 8b685ba0c28d
- last_write_checksum: sha1:b0c09c9e9eb7d453e3d2001e75c4d04ce7fd24da
- pristine_git_object: c3e4cd18afdcfb0b70435d9bfdd747608e1b91d7
+ last_write_checksum: sha1:c09e529f5ca6f2b95a0b3a76dbef2870c9c83c4d
+ pristine_git_object: b439bffa14066465ddb5c5d3b469389d6156ad2a
src/censys_platform/models/opendirectory_file.py:
id: eb8ac3ebfa26
- last_write_checksum: sha1:2acabf2ef5ffefbf4070d761f3f3a420c2804281
- pristine_git_object: a195cf3cf01744786e53b3a077e32172c258d162
+ last_write_checksum: sha1:5b4c78bc32a06fa3207ce63ef9d64ade410c8835
+ pristine_git_object: ae86e9bb1496fdb3def30378aa535813a698a03f
src/censys_platform/models/openvpn.py:
id: fd2d4424ef7c
- last_write_checksum: sha1:b9bef3316c91a43e5cdeb97153a4d4bb1d5b8e6c
- pristine_git_object: 803aeb08413bda8cb760ea22627e0b7b9d1e5ae2
+ last_write_checksum: sha1:02b8e1ba182cae1b49ed8165f885298097dc5dc5
+ pristine_git_object: e398ce7f2ffd823df5e9389369f05dfc90a741d8
src/censys_platform/models/openvpnmgmt.py:
id: aef37dea3f66
- last_write_checksum: sha1:b241a625e4e9b6097060734e017fc5e7d6330cc1
- pristine_git_object: a841d46440be01bfee6564a4b728271b4e58a489
+ last_write_checksum: sha1:4d3987532de13789d207e9aa631815ed7b79f309
+ pristine_git_object: 0000beea93a08ca349d4ee36bb57b5414a56f452
src/censys_platform/models/oracle.py:
id: f53b94570c52
- last_write_checksum: sha1:247260e3c823f5e0d5840c7c2558c4a8b2363985
- pristine_git_object: 7af5f74316a48c79d7bf271665ad5c648f8b1737
+ last_write_checksum: sha1:c29d22c57388bafd949c87bff6aa737f2ce3366a
+ pristine_git_object: b503bac6651ef698f88ddbedf3617161e10b86f5
src/censys_platform/models/oracle_descriptor.py:
id: 1eb7fb666cb4
- last_write_checksum: sha1:06390d83e61614ce755b82a8bd5e93442b005433
- pristine_git_object: 06e653be981d5edd4282550fae1a3a6f9b04a337
+ last_write_checksum: sha1:8870c69a2a7c3be7f85739b89757f783f43bd63c
+ pristine_git_object: 7664440225e26ba33a8a77b6dc1a4c9b7254c408
src/censys_platform/models/organization.py:
id: 39a55a8c164a
- last_write_checksum: sha1:fa2b69d5747b555d04cb8a7d288831adb11aaac9
- pristine_git_object: fe2fa0ce93fbcf17cb7eb5fd9a2edf52392b4b77
+ last_write_checksum: sha1:5024b26c704c5d59c6197be180933137c950bf55
+ pristine_git_object: 8664b68d43cfa6b0ea2012326883108212ceb517
src/censys_platform/models/organizationcredits.py:
id: c0231fe6df1d
- last_write_checksum: sha1:a122815f0591ddbfb457cd3c5e4b7c98f6c90a42
- pristine_git_object: e815f057778e701836d831925d7806de0045bb2b
+ last_write_checksum: sha1:7d8f2cafb937aa3f9bb48175d992d5d1a5f9139d
+ pristine_git_object: 9cc7b9c12b35d32dcee985c7d0a257ae89bf083e
src/censys_platform/models/organizationdetails.py:
id: d5e0391a48be
- last_write_checksum: sha1:3ca3695fff8ea484350c42d35da9f2153973044f
- pristine_git_object: 02dd980c887e7f1e0ca68bd07fe14bac593777f6
+ last_write_checksum: sha1:8495d35b4d5fc0aed9a5fb0bd86a05c26083511f
+ pristine_git_object: 7aae35682b6bfff3c53654d9689d39e0df4a85ee
src/censys_platform/models/organizationmember.py:
id: 7fff6ddb1975
- last_write_checksum: sha1:01daaf0cbd5f1845697fc7dd73622d1cf1e101dc
- pristine_git_object: b2cb260e7c481571665283248514352ae8beea90
+ last_write_checksum: sha1:235b1d2d1826949124f58d64e561c44cbea5106d
+ pristine_git_object: 717111b2c0ce6764e5aa4a69337b1809186a2645
src/censys_platform/models/organizationmemberslist.py:
id: ae7f9a71e345
- last_write_checksum: sha1:4b3ce7c618a9d885e3bf275deb93b6f3eba220c6
- pristine_git_object: b78f362922f1991d09c8f7abc590cb564f5c6844
+ last_write_checksum: sha1:e234c8f7c9b806b8fb88f34f5cade5dfd45e1f9c
+ pristine_git_object: 334868316c6044ec2c66b0412343a0152195f492
src/censys_platform/models/organizationpreferences.py:
id: ef66ffb0cc94
- last_write_checksum: sha1:77180f8e0a570197d4047d3b18d522bce8e7dc26
- pristine_git_object: beaa554e778ae5104149ba25b32d32c9487e5a49
+ last_write_checksum: sha1:014fc0e6dcf20a760e002a193daf342d92b1b5bd
+ pristine_git_object: 83e55504ce6219901277204836de1f11310c77fb
src/censys_platform/models/othername.py:
id: a45a82662a27
- last_write_checksum: sha1:e7b4489b579746b5090becefb784666149c6fc0c
- pristine_git_object: 0242c34b5189d11de732f2766de080c986b9ed50
+ last_write_checksum: sha1:8c1cc3d2d85b261b584e9c6666dc45846a2069c7
+ pristine_git_object: 4dd5e442608c11ad678380ba2878549128603ba2
src/censys_platform/models/paginationinfo.py:
id: bf87766bfa32
- last_write_checksum: sha1:c68b26a2e373ed0a9d18bf2ca68881cb90cabedf
- pristine_git_object: 7c959ca58ea6d3890f9e74bb3cc133aeb2295e88
+ last_write_checksum: sha1:c376c6312e0ed690e46796931038cf7d52a8bcf2
+ pristine_git_object: fd9527a5e732647f2bfd7734e127524c18a98164
src/censys_platform/models/pantiltzoomcapabilities.py:
id: 4a16113a544b
- last_write_checksum: sha1:7459b0b5751df0ba3509ed74eac4e6cb6dd25e72
- pristine_git_object: 887f4828ed7136c05c059b8050ca442ea57be808
+ last_write_checksum: sha1:0101fcb5b07d459193b71218e29a1b760804006f
+ pristine_git_object: 594b4646ba243b13a02d80168fed8a07cbbb2cbe
src/censys_platform/models/pcanywhere.py:
id: a6befb773c14
- last_write_checksum: sha1:52cce1a7bd924237912b410ed559d0599e84e9ee
- pristine_git_object: 89858bbb45d035d43bd7679c7f3bb1de1f75c278
+ last_write_checksum: sha1:c2d82f3e55a40e8e74f4c672ffa455a376b6c409
+ pristine_git_object: a82064d6d957dfe36f6d1db0325bf56697309216
src/censys_platform/models/pcanywhere_status.py:
id: 7cbbc5bdecbd
- last_write_checksum: sha1:b7e2d1f334f76d0c230c2a8398e8d17f290e8fd1
- pristine_git_object: 6bc5e0d8b21fda8743903a652fda9a72c3710b6d
+ last_write_checksum: sha1:a32b04c2ea61852cb15efb98c8ff5925ed042277
+ pristine_git_object: ded6eb0fd65cc278665067d360ff33276c9c5dc0
src/censys_platform/models/peer.py:
id: fe4cd2d6cd5a
- last_write_checksum: sha1:703fc32c4b6557cdb9f4bdd44fee4baf4810465b
- pristine_git_object: 47c47d59fc496edbbbb0b80629bb3569dc6a10d8
+ last_write_checksum: sha1:ae68085479163d30925eea52d33eaec01115e3ee
+ pristine_git_object: 037e502b1bfd8a3787d4a587c7ad3c86b7bc46d3
src/censys_platform/models/pgbouncer.py:
id: 78f508dabb06
- last_write_checksum: sha1:37ea4afc1531709c311ee5b9625c6c475a0f9c5c
- pristine_git_object: 60608a29c14bbc41858be049528706605e99955a
+ last_write_checksum: sha1:4f7538373967beb2a7dc391470c8e25784ebac82
+ pristine_git_object: b5dab1b4d057b660c347d00248cdf054c71d0fa6
src/censys_platform/models/pgbouncer_startupcapabilities.py:
id: 94ed525036cf
- last_write_checksum: sha1:4ea7563b9ef91aeb04219a31f1f2872bb6a25f57
- pristine_git_object: 17f25028783142d56506bd7d9ca38a06b4ede7a1
+ last_write_checksum: sha1:caf82473978abbdb35f3b3561729d9e63cf50e44
+ pristine_git_object: e0c951a5c80e26e286eacdf495c752424432cdb2
src/censys_platform/models/pixelformat.py:
id: 41d5d592b924
- last_write_checksum: sha1:7d30ae5be9c4a2cd2d7a4148606e3a94a2ad77c4
- pristine_git_object: dd6e2faa29b504de0433a613de31c61f470cd95c
+ last_write_checksum: sha1:82e8a235782b1529c94c007a9e1223fdcd4ef1c2
+ pristine_git_object: ef8e8a6d19c373f4a2e377a8996cbf37273748df
src/censys_platform/models/plexmediaserver.py:
id: e6640f348863
- last_write_checksum: sha1:8ce85e7c04997b2ce55bc1803370b9a2f4eec575
- pristine_git_object: 02f05ee74c58c5138561a2dc20e3056921a37a7f
+ last_write_checksum: sha1:9cb41ff04aa117d51aeecabcba2f97047b7f59a2
+ pristine_git_object: d0ad4d45d2f566d644620d75abbf5effad84e676
src/censys_platform/models/pop3.py:
id: b07f449a8bd2
- last_write_checksum: sha1:2b10e4ee5588ccc553141c587c0745db202c1baa
- pristine_git_object: 27cec020cb42face23609d777934fbacd430757e
+ last_write_checksum: sha1:538398ba52975280f06398d8d3b76034e1828a66
+ pristine_git_object: 4131bac966ebc589a3ebaedd19638ce9ee999bd0
src/censys_platform/models/port.py:
id: b953ceb419d4
- last_write_checksum: sha1:50a63482c0a2f419256ff7ecc3b62524dca608e6
- pristine_git_object: e7ea4a594f93ca5ca49c245f2111d1e95dd00cf5
+ last_write_checksum: sha1:8bca8b20d1491fb731199daf05d086299606de77
+ pristine_git_object: e880d8ef0e29441341b7f2b348e7137cf30db119
src/censys_platform/models/portmap.py:
id: 92549374e92e
- last_write_checksum: sha1:cbb49c3f78c2c853eeb298ebc89502d1a757cf26
- pristine_git_object: bb2ad5f64dd86d3cf1edfe52719640c30539fa54
+ last_write_checksum: sha1:6d4f75c4f7e318e623330a62cea10c419532386f
+ pristine_git_object: 085a6a67db15d223227a2779657a9edafafd4997
src/censys_platform/models/portmap_v2entry.py:
id: 55f66ccc975a
- last_write_checksum: sha1:64dafb1652271d425062a776f59b9c6dea145170
- pristine_git_object: 3d43213ab2f686e5ec726eb7c765f3b69a3912e5
+ last_write_checksum: sha1:7ae651da0643c1901960f948334b1de26c4521dd
+ pristine_git_object: 6287bcda27973b5506f77e26be2098c33dc7de6b
src/censys_platform/models/portmap_v3entry.py:
id: 250285feb327
- last_write_checksum: sha1:3295ac3463e37ef6436e8f4be88db11e21c4628a
- pristine_git_object: 500bf3845d52f336576055dda6cc02ec4e540f44
+ last_write_checksum: sha1:7ddf78320635bcd320f74db4bda9e00bdbe5bb37
+ pristine_git_object: 79a0208bd46f17c982b64c6d1b1fc1cda8e9fd38
src/censys_platform/models/postgres.py:
id: 05ae7a539dd5
- last_write_checksum: sha1:6e6f0ac862445a8f0154326c46bab6ecdd9256ea
- pristine_git_object: ba703c4dc8a2d1db724fd0309d920daad9fec52b
+ last_write_checksum: sha1:115f8dc5f6e79094e19ba7b10af585a8ce366676
+ pristine_git_object: 391497caa9cf87241084b99ca5f319d02867bd0e
src/censys_platform/models/pprof.py:
id: 21da1b7d631b
- last_write_checksum: sha1:08d68857ef7e01d98962d403c17ecb096a04b1da
- pristine_git_object: 9c85a49f98fcb30897cb5ac76686d3954aae1f7e
+ last_write_checksum: sha1:f0ccaa86f5b6121a206b2d4bc5223f114b251c01
+ pristine_git_object: 6488f3aa196139d32d9c89207ecc18301a458cf5
src/censys_platform/models/pptp.py:
id: b1b5bf8118f7
- last_write_checksum: sha1:83945c1a0277d9380953162c3b9ab16ff96b9aba
- pristine_git_object: 5484f01da689747932ee27c13a6987e19ae0eff7
+ last_write_checksum: sha1:511748e8882a9fe008c44ee491c0bd896e1f2322
+ pristine_git_object: f7a75331d5bfbb0674d9a86f05e474f0125d89a3
src/censys_platform/models/pptp_responseinfo.py:
id: 9f9998d6924e
- last_write_checksum: sha1:1ee538576a9d942bf90ae16af8a3c5a6b2387334
- pristine_git_object: 275dbdb5e717d4b92c0615179482985f0eadd08a
+ last_write_checksum: sha1:01fd757cc1e035e50ee1aa668d93f72b5ae9e2d9
+ pristine_git_object: b8a70c7aa0007426f3ac96aaf32528db9713a4a8
src/censys_platform/models/pptp_version.py:
id: 4a02ff6618e3
- last_write_checksum: sha1:29196656acc35974fa23baa6501d621b63ed799a
- pristine_git_object: dd520e654711e9e0585fc74ccda88dc6d715c501
+ last_write_checksum: sha1:4c8681a3b112a52039c32d7847f7a1d81486bc16
+ pristine_git_object: 02e1d781a6bf303dfcbe65c5506bdf09d45da920
src/censys_platform/models/profinetcm.py:
id: c8e8bbd9eec1
- last_write_checksum: sha1:695c93bc0361add3baf17ff7c2f01a0a22df17a1
- pristine_git_object: 946b441f8928fdf6f9fb5a3f5562ee7b89c7f979
+ last_write_checksum: sha1:bb9fea6bef8de345ded228f34ebb2a01123c97ef
+ pristine_git_object: d83ad43dfe3471e24991cd5d8e676d7dc834c508
src/censys_platform/models/prometheus.py:
id: 6e981e99ac50
- last_write_checksum: sha1:3e71c84255c5f5858c1a9dd88656f5400dab8807
- pristine_git_object: 69f9a554c02c38bd57279af59b448910c8a3a09f
+ last_write_checksum: sha1:dd74ebc376384a720404f4d1484291ce3c5826a1
+ pristine_git_object: 67becc7b335f783b4f461dd2010bdfaced6a1164
src/censys_platform/models/prometheus_response.py:
id: 542e45c50959
- last_write_checksum: sha1:1381c86babff2a0f3330a129f5a8866e823f70b9
- pristine_git_object: 44b01b692c6e3d766694ef30870578ffed0c6b64
+ last_write_checksum: sha1:66c5a098bfa490dbf09b690dab6801dcee010afc
+ pristine_git_object: 4180c51137338d1648273a31a9f8e816a90ba5a1
src/censys_platform/models/prometheus_response_activetarget.py:
id: a4f9aca2032e
- last_write_checksum: sha1:f44629cf67d615707b4fa2c72612018d0f1f9e70
- pristine_git_object: 91e00e7e27c06cf06d076f4f39f7d19ead4f44ef
+ last_write_checksum: sha1:f7640c4eb91605b4ce21d0a27348623ca92847bb
+ pristine_git_object: b6c7c78e211d7fbfb59f2b4c296a4223ff3d2cb1
src/censys_platform/models/prometheus_response_activetarget_discoveredlabels.py:
id: 07133a022de2
- last_write_checksum: sha1:0e4608fab6aa29025d9cedfd6cb59c2db0a43074
- pristine_git_object: 192ddfadb3ff099d6aeafe4ed34c48c36d770ed9
+ last_write_checksum: sha1:b45ebfb08a9112e0e067ea0ea7bca62ee797040b
+ pristine_git_object: cfcfa67f5e554c20f39c0e9809bd84acaefc402d
src/censys_platform/models/prometheus_response_activetarget_labels.py:
id: 1aa9505bf4bc
- last_write_checksum: sha1:85887ee869d8c583f67f272bb17bac703ed85f2a
- pristine_git_object: a50cb0f9b900f24ec8a741732ee25abd4dd95fb6
+ last_write_checksum: sha1:96383107c9914776046c2da3c1cd4413c10453ae
+ pristine_git_object: 1e6835100e045f42fc43a1207ee9dbe981112854
src/censys_platform/models/prometheus_response_droppedtarget.py:
id: d34f2a13239b
- last_write_checksum: sha1:5d2467ca47e8abc808b3d9528d63a03503129c3b
- pristine_git_object: 34e96f62c93411531f539285ad25c84078b6055b
+ last_write_checksum: sha1:d6d66b2c9fec5bc042fc4f7f6b281ac57985bfce
+ pristine_git_object: f9a080c35045e593b600df92c1271dc14cb383ef
src/censys_platform/models/prometheus_response_prometheusversion.py:
id: 0225683cbf3f
- last_write_checksum: sha1:ff5b8994a9995644409bf8f7bd8258a25f999185
- pristine_git_object: 4fe56a6db982d5accb1021c9f91720578386fc18
+ last_write_checksum: sha1:23ec9a0999d571e552df6fee139ed8d545e92a57
+ pristine_git_object: 1093e5ff9e4d7068f35c3c64b4e87965bbe644f9
src/censys_platform/models/prometheusmetricfamily.py:
id: aca1337529e2
- last_write_checksum: sha1:38457bae8167c10adf703aa23364bab8d4488ac4
- pristine_git_object: d1a2aaaf5e496d46ec06ce0e4086946c3fcc872e
+ last_write_checksum: sha1:46dc18fcb78d858630993f0f66390d9cd6b0d3a9
+ pristine_git_object: 75e6e3d73159124f6bf3ae2d5b799b7fc2efd6f9
src/censys_platform/models/prometheustarget.py:
id: 2d14446ba235
- last_write_checksum: sha1:cb39c2e6974ce9dedddefc57631f232f1f8ebc93
- pristine_git_object: f3a5e7a7eb9e4b68c59b7070f630d507b44a7f96
+ last_write_checksum: sha1:f49c5757f1db11c0fbb8fac6e1f66ebc1b5d4dcd
+ pristine_git_object: 24c0d727c3d55d8da0a24c4870537092c2547e53
src/censys_platform/models/qcstatements.py:
id: 9c20601e10b1
- last_write_checksum: sha1:531e4f807e1ee187cfc47792132e2ce6307f7389
- pristine_git_object: e3672b5c7252311f9bf43e43861e8d0f34001083
+ last_write_checksum: sha1:e14b9cd00f9b52036931a7e68ec43981651a87fc
+ pristine_git_object: 9ef6d3288607b7e87c834bc46dce5ef25fe691ca
src/censys_platform/models/qcstatements_monetaryvalue.py:
id: 3864bea33d66
- last_write_checksum: sha1:1a48b058146147b9497a79f6f679b27b235db278
- pristine_git_object: 50473a808d87fa1abe137b82c70de990c0b21829
+ last_write_checksum: sha1:6f44e2b0eb2897ff88206bd189920df5a8754ad4
+ pristine_git_object: 8dbfc7c2c49d6af1bb5c59541366023bad79071e
src/censys_platform/models/qcstatements_parsedstatements.py:
id: 9de186c67df1
- last_write_checksum: sha1:4961924fc6046f6b927e52833f3b5fec51c8ef42
- pristine_git_object: 643abd9dba8666a7cc0297d20afb93312e76b73b
+ last_write_checksum: sha1:bfb0ae82f860e1ec23534810a7cc99881c5ae755
+ pristine_git_object: 16555c1aca94488d9316abd6ef5aecb06b66a316
src/censys_platform/models/qcstatements_pdslocation.py:
id: 9cb033735c7a
- last_write_checksum: sha1:2b9059fe25a49767b2af7932b1879fbfe0f8a05a
- pristine_git_object: 778967811ecac6bce3b32c39224a920454e7629b
+ last_write_checksum: sha1:2817cfef5c32eb9abeb9a24e5847b027bb665135
+ pristine_git_object: a33e01f9b420d76db3d2df7b1232c0596905fb36
src/censys_platform/models/qcstatements_qclegislation.py:
id: aeb28a0cf1e0
- last_write_checksum: sha1:53108de6b5249e0eb8852d1b18badf6a7b041428
- pristine_git_object: 3c4d378c9d60febb979866f39171a94ea96360d2
+ last_write_checksum: sha1:3ebffd02b0fbcff154948a6c554b99ab3212ccaa
+ pristine_git_object: 1ab7eed15df585e65e8feefcebb035484108aced
src/censys_platform/models/qcstatements_qctype.py:
id: 7e5c766445a5
- last_write_checksum: sha1:a836eb897f5f4924b512a64e9028c5ddac3de585
- pristine_git_object: 3f4df38214d5801c54b17d855de94776f957d9fe
+ last_write_checksum: sha1:c2c6d125165765a97a6be999fc293fdbc9b4bd87
+ pristine_git_object: ea488c3faa6b51c9abe32f1f0c7381d492a0868a
src/censys_platform/models/rawcertificateresponse.py:
id: 50c186596e6d
last_write_checksum: sha1:df5d9f5780e9e2558ad06a8ab2bb0c50a33af74e
pristine_git_object: 676be7f1775133cda359da52dbda588edeffdd14
src/censys_platform/models/rdate.py:
id: 93c562f8ee31
- last_write_checksum: sha1:05eb3b0ccfbde9e24168bb893eddfa2cfc2fdde6
- pristine_git_object: cfa76be0ce9b462fe96a39756ea5c82bc6e0461c
+ last_write_checksum: sha1:b682bc31d73a82fccc614e96cbdf0b6455c3b92d
+ pristine_git_object: c3c69790ce4c49ba7bb94b6e00739990499bbb52
src/censys_platform/models/rdp.py:
id: 1ba23ccc8bc8
- last_write_checksum: sha1:d16efce60f4bc8476aff0eca1e8406a45821b248
- pristine_git_object: f54d6bc3817c451a9509b37cde27b59493e8077f
+ last_write_checksum: sha1:bd680689ee8b5174e0c55463152825c67a26360b
+ pristine_git_object: 7759b165bdc64473ebeacc4e75ad24e8f1b3945b
src/censys_platform/models/rdp_certificateinfo.py:
id: c11c70fe4d88
- last_write_checksum: sha1:d1648b08ba2b290c4c18d90aec0e5b0f70796095
- pristine_git_object: 6b2456eda2dc4291dbb705c26feb9e2f4e4fda75
+ last_write_checksum: sha1:afc86cf5e232b44e53c7099c899365420cc1d2e7
+ pristine_git_object: c6981d5bab4c34a818c555461c87e424aefeccce
src/censys_platform/models/rdp_connectresponse.py:
id: 6b64f465c2ec
- last_write_checksum: sha1:0c2456fc312a0b7766952076c921828bf2ea1e7b
- pristine_git_object: 5a1f3e92b66007700a6edef3faa8c102f82a8ed8
+ last_write_checksum: sha1:4283365e1a2eb2e7a9cfa813cc891d837eaed9c8
+ pristine_git_object: 60d62d93ea8a390fb96180e2004a8c11185fd03e
src/censys_platform/models/rdp_domainparameters.py:
id: a08ab86e4879
- last_write_checksum: sha1:e1f436a8f35b611557c35906095f87f65f0037e2
- pristine_git_object: 4efe11cad0beeeb80325db3b8450539d6b3178ee
+ last_write_checksum: sha1:375854c658471edcd8994d21cdbbcfd5e7869880
+ pristine_git_object: a2b454e02b8322f39f5c8630a0b7bca331864fb7
src/censys_platform/models/rdp_embeddedrsacert.py:
id: fd928266d7b2
- last_write_checksum: sha1:5c0e9822cf541edc545146e4c8e1b0fd45776e80
- pristine_git_object: ef65f1a6fbb350f73c151b13f789a07d61789c87
+ last_write_checksum: sha1:eac88619af074bda0ab6756457477f92b1b95c07
+ pristine_git_object: 212a65e772d9ddf2539d90ec7a5cce710095c80c
src/censys_platform/models/rdp_protocolflags.py:
id: 64b48eaa2e4c
- last_write_checksum: sha1:f45352ee593c01ca06046f879d8d68032e480993
- pristine_git_object: 24522f417e4bf7d9866882cdc4adf807ff9a3d83
+ last_write_checksum: sha1:e0b2bce1faf25744d765e028f1cc29524357262a
+ pristine_git_object: 1c33af1778150e2417bd4488a9943a3cd40fe7ce
src/censys_platform/models/rdp_securityprotocol.py:
id: 1784ab480a75
- last_write_checksum: sha1:9bd7d87dd01b3ed27afba8e4c2dd7b10e16c6a31
- pristine_git_object: de6b8be878046c35a40de512d97eae0e0b796843
+ last_write_checksum: sha1:a4f80dcd0eca312a064ad20ee7739446f0e0a51b
+ pristine_git_object: 5669a4392dc5535d2af7853f1f730aab6f19c971
src/censys_platform/models/rdp_version.py:
id: e0e0f6f5d5c4
- last_write_checksum: sha1:0d81c71f54c8a7b04a1a2f093e024ccbfbf6a6db
- pristine_git_object: b1ba02cd3a7335101710d86316bddeaca1941671
+ last_write_checksum: sha1:e1c93ecc6a9054ed26d5aac2fcb2395863d82862
+ pristine_git_object: acece9334fdcdd8931d7b3d23f038ee52d3c8ebf
src/censys_platform/models/realport.py:
id: f1c79374b704
- last_write_checksum: sha1:c2ea9c71d772de713d48b5b6b7bcf81db2860227
- pristine_git_object: 27bfefc3f311a7d01056f6326bf873f15e874abf
+ last_write_checksum: sha1:994a49d15d6876f56f60f1763612f0dc9d4aff79
+ pristine_git_object: 1dbf4f75f3f6bcae4893573ccfb79035a05a86db
src/censys_platform/models/recordingcapabilities.py:
id: 4e4f9d946031
- last_write_checksum: sha1:1dcc17dc3f3e5f998dd4e2ed0b56e8f329edc69a
- pristine_git_object: 91176fd8b5a3a1f458b204432efbee9ed1621258
+ last_write_checksum: sha1:2f3b28e01a8fe553ac055f6409178eede7e2b0a0
+ pristine_git_object: e5338a375af62e3defca1d58ed40c62efbb7ae1e
src/censys_platform/models/redis.py:
id: 355b9ebd75b8
- last_write_checksum: sha1:5196c1c7d8fe10567b763cc7afe062c2061eaaa9
- pristine_git_object: ca66459096db609d3a3f82869c9f886d74fa36df
+ last_write_checksum: sha1:cdef169894a087eb880d8eaf213e49463204a7f4
+ pristine_git_object: 3b54353e1ce0d1a7d1aa1e91647eb4571f6ccb58
src/censys_platform/models/redis_rawoutput.py:
id: db4e73a7c194
- last_write_checksum: sha1:a15e8c83af8719bfafc9ca40d7f82d5dd92bc5fb
- pristine_git_object: 5c693ea8c64fa304bed5fb41be2a5a9dea58db58
+ last_write_checksum: sha1:3c8ae054821c25a18cf12078ece363d6be7a007a
+ pristine_git_object: f8cc38f10fb7242de96b69406a58223c0bf269ca
src/censys_platform/models/redline.py:
id: 495333fd12e8
- last_write_checksum: sha1:f2f82be4ecf58f343dc825d123672ca7915618d7
- pristine_git_object: 606a152f91b703a274036088dc7219b3f90332be
+ last_write_checksum: sha1:32611c9316bae3fb1eb30790ff0a1548a6c8ef40
+ pristine_git_object: a55c2268c42b2350c28171f4f2e796c19711c87a
src/censys_platform/models/redlioncrimson.py:
id: 7d5fe75d9d19
- last_write_checksum: sha1:c64b6dec3cc9ae4816cd88aeeef1bdac8f2e0b1e
- pristine_git_object: 06805a267eda681ba32c57b64647187d0b0dc5f9
+ last_write_checksum: sha1:81c1960b0a6b2b89d27f990b7c0bd344695e5dd6
+ pristine_git_object: b202ae1db6b6fadb8af5044a1ad1cee2477190f6
src/censys_platform/models/redlionweb.py:
id: c7c1a8457903
- last_write_checksum: sha1:3009d40ad672e001cbd85f4cc5c3029dea272a52
- pristine_git_object: 1a69c648968e05814e9d79bb68b8e38d392e30d5
+ last_write_checksum: sha1:3a9e08e4f77ec89ea603a05ebd17a7a554e2754f
+ pristine_git_object: b229a39cba08bdfabc2cadb79e25e8b09d474572
src/censys_platform/models/reject.py:
id: e3227f28ecbd
- last_write_checksum: sha1:b01bd873817a25490140fcd8bb62ccfa20a7b9ca
- pristine_git_object: 637b70891634a3dca79eddbd9b1faee2e5579737
+ last_write_checksum: sha1:edb2682a4f536ca26a8ec9555119b77ef3c2e0fc
+ pristine_git_object: d70ce12e80ff2a8f5a5d84054b37b900462297e6
src/censys_platform/models/replaycapabilities.py:
id: 2dec08a9f8c4
- last_write_checksum: sha1:e44a24927273dae53a54588bfdae2c9e03fb3f57
- pristine_git_object: 7e7d666cef0c5e1404ccefcc4c4b78fd5d1b6894
+ last_write_checksum: sha1:cbbe0f04d0f89facbf6c2c00a78d0835c94cc258
+ pristine_git_object: 877d057e70db1292c0e991976976d61a8b45b7b2
src/censys_platform/models/representativeinfo.py:
id: c4ddf3932518
- last_write_checksum: sha1:f6704e734bac7e0bc3ac5c639a372135f07b13c4
- pristine_git_object: abe36f20141870213b37db7b6da6d86dea40c2b8
+ last_write_checksum: sha1:f9c7d12c0af2adf99e23aa6774f0d42026183938
+ pristine_git_object: 311543cd75b9d27da338e52c963849d6f851cf06
src/censys_platform/models/responseenvelopecertificateasset.py:
id: 0f38477cd4cc
- last_write_checksum: sha1:dade5a0065266a98bd400793e6754df9c198fa47
- pristine_git_object: 8226ec7b229e1aa5d5833df8d2b2f4df415523c2
+ last_write_checksum: sha1:84c756009251a103278aa9fa15ca3f77f6a6442d
+ pristine_git_object: 8c1fcd8922ff860db8ccc5ea22e8ad78379e34ec
src/censys_platform/models/responseenvelopecollection.py:
id: 4df998f12132
- last_write_checksum: sha1:730e7be908734cee01f4b8452f7a34f8e56e3a11
- pristine_git_object: bf903ff849cb3832eaeb52d44641f55250a08f8a
+ last_write_checksum: sha1:9c5b54a5ca79365e1a28df5aca0758d3cea356f9
+ pristine_git_object: 6be6d2c0e30b3f738cf366025fc261906ac11d19
src/censys_platform/models/responseenvelopecollectioneventsresponse.py:
id: fa101a0cb893
- last_write_checksum: sha1:c7bb52e24686d660405b3beb7e93bcf495d53571
- pristine_git_object: 9bc9441dafc4c3d53bd36163cd9ee2d2ac7c530e
+ last_write_checksum: sha1:6dcd0127a4fe43dd7ec5ed52ba1ef0135362f74b
+ pristine_git_object: 733b7ab2ba093d628c83b30db64b923946eef91f
src/censys_platform/models/responseenvelopecreditusagereport.py:
id: b13771039f42
- last_write_checksum: sha1:9cdce2c209682fcb9e7ada12f1937c15104a468f
- pristine_git_object: 8b18e0c20d567ee61edc854f7943bc090f76d0d2
+ last_write_checksum: sha1:692c9ec390b520d7489e4b421dc52f8e9be9f228
+ pristine_git_object: ae2d32cacab1771e76c240300b6ca636b38bb414
src/censys_platform/models/responseenvelopehostasset.py:
id: 992a65c9b63c
- last_write_checksum: sha1:7bf2699e20a1d0016ba6ad01a534eedd63b922fd
- pristine_git_object: f403082a6287d50981bb58a50acb5136dba4db14
+ last_write_checksum: sha1:279d36bc6d748a1edba2fda53d5b861bc121e183
+ pristine_git_object: 31325815c67d74e6f1b6f81664c109a081a07db9
src/censys_platform/models/responseenvelopehostobservationresponse.py:
id: 05554f165d80
- last_write_checksum: sha1:b3c3e7025cf8ff24d652818825600bd0f678de6d
- pristine_git_object: 825d2083845a9b0f0d0c08159388b0ff5f198248
+ last_write_checksum: sha1:0976d9d3c51d44a9501ee30d49b1a763586bd156
+ pristine_git_object: d1bfbc1c752e1c8bedb1c156fdbdfef0b25814cd
src/censys_platform/models/responseenvelopehosttimeline.py:
id: c8ccaa901fba
- last_write_checksum: sha1:ece84b5cdb5f5ca91d37dcf5308e92a354220337
- pristine_git_object: 85bc159d7b68c05dc02913d4734fdabe79e706cd
+ last_write_checksum: sha1:dccdd049789560f0609243b4a2ad1971abef9606
+ pristine_git_object: 76e61c523e9eb48b0c2233430c4a762f34d3ccce
src/censys_platform/models/responseenvelopelistcertificateasset.py:
id: 0a2e710c9659
- last_write_checksum: sha1:b8cc316ca41caefb612b3365c1596bc15f5e0676
- pristine_git_object: 4accf02f4149860de79432c477213498b042e38a
+ last_write_checksum: sha1:65cb0ed6d1c01f09fafdfafeacdcea1708e1f77c
+ pristine_git_object: 3a0cc0f40e1d58dfbe3e254c68a23c4c6fa10681
src/censys_platform/models/responseenvelopelistcollectionsresponsev1.py:
id: 8848b9e3371a
- last_write_checksum: sha1:e8eaaf518d426e5406cc0d6d5a08f40e8a4d4e9c
- pristine_git_object: 2e82a17319ffccf709bd9179a1a60e6403837dd3
+ last_write_checksum: sha1:64fca89afd9328d8c340dd98cf79352a4899520b
+ pristine_git_object: e68318f7de3c8aea170d703b11623eb9cdf9d444
src/censys_platform/models/responseenvelopelisthostasset.py:
id: e5a69228832f
- last_write_checksum: sha1:5f217739e38bf0792fe3b93313f9d8098ff8030a
- pristine_git_object: 40d2fb4a4abd7e645909183ef5646edff0d12052
+ last_write_checksum: sha1:e2b22abc034bbacf9e8b600ff191fd151cfa42bf
+ pristine_git_object: 85a3a606c184b43f2ec5529ea7d2a095715e99e7
src/censys_platform/models/responseenvelopelistrawcertificateresponse.py:
id: 73c1ca78f948
- last_write_checksum: sha1:b19a52c95a7aa1d404ef3aa366e5fe438ff35da7
- pristine_git_object: 3debcf591026ebf08918b1d8bf05888385273900
+ last_write_checksum: sha1:7bae4c0d3f8edc15806db471f7c82807647c9371
+ pristine_git_object: 8a48acd52dad26ea1b3b82b1c84858979d158d3b
src/censys_platform/models/responseenvelopelistsearchconvertqueryresponse.py:
id: 4b7c2b745b6b
- last_write_checksum: sha1:ea6d4f22453813b8a7287c5f238734c6ad2e7564
- pristine_git_object: 66a79008df979fcde9358937da929c94553b71db
+ last_write_checksum: sha1:c850afdd4aca51485c4daa54a0e2a00b7ac83610
+ pristine_git_object: d6ea9dd711ddea2b1916169116ad09445c05d801
src/censys_platform/models/responseenvelopelistwebpropertyasset.py:
id: e72cd42b695d
- last_write_checksum: sha1:2ecc9a695d97e6ec31fdd2ccd9e496369fc7ca21
- pristine_git_object: 06ea3efe8a28ef1c5f8e77fca2790b37f64c43b9
+ last_write_checksum: sha1:287ddbe21be9d7f214ad80363a29bc09d61c32af
+ pristine_git_object: 3601fef306921a4dcec1a87d8643ee196568766b
src/censys_platform/models/responseenvelopeorganizationcredits.py:
id: d5ab651e6504
- last_write_checksum: sha1:ec30bdee086da8e631f86128110c1b05872e507c
- pristine_git_object: 4f51c6bde104082a6931023d050201a9e1eaf996
+ last_write_checksum: sha1:33a7d567d497c92822bc8852ba48cb1c3f8bceea
+ pristine_git_object: 82de5438e13d683ed84a0873a5017faff587378d
src/censys_platform/models/responseenvelopeorganizationdetails.py:
id: 8e77decce31a
- last_write_checksum: sha1:e4e815b1d789158badbc91d61fa320718b4d582c
- pristine_git_object: 79956858c243b3d1aa528dbf75679ae3b73ad113
+ last_write_checksum: sha1:69d7676c6277dc7a39509dbc8199311fc1461980
+ pristine_git_object: 32c0987222352a6ffbe9ede653f9712c7263f5c1
src/censys_platform/models/responseenvelopeorganizationmemberslist.py:
id: 72e05518d3e8
- last_write_checksum: sha1:55ca50a6dfce7f6f765a35788dfa74cb12eee484
- pristine_git_object: 2152618cd9365d2e746f5d14cd6f711eb947bbf6
+ last_write_checksum: sha1:374689210068effce681086a021c72a0e2b756d1
+ pristine_git_object: cd523d5715f1de0e0aaa1db5728c38db8ebebed7
src/censys_platform/models/responseenvelopesearchaggregateresponse.py:
id: bd2427c4d276
- last_write_checksum: sha1:d008e57170ac14a679cd7dd261ee336442a357da
- pristine_git_object: 31a0e7889db5538a0f41cc2ac21413e4fc626568
+ last_write_checksum: sha1:aef11c0a6b392cbddd7cc710dcfe160eaf2c1ced
+ pristine_git_object: a7bf0b8eca9c7a6fac030277ff52e9d9fdc10d70
src/censys_platform/models/responseenvelopesearchqueryresponse.py:
id: 865244dc2224
- last_write_checksum: sha1:6d89b6d73dc47ff169707fb2aaa15202c7761329
- pristine_git_object: de2829aa2ec574aca688723c7a5fdbafb62c905e
+ last_write_checksum: sha1:0b35922ca1415acb8ea007e1c4ffc380e4b41ee9
+ pristine_git_object: 77454f678d4436301cd664a1aa05455ee0c2663b
src/censys_platform/models/responseenvelopethreatslistresponse.py:
id: c59b87700b19
- last_write_checksum: sha1:6d69c66bd02b003803b17d22ff0f323962fb47e9
- pristine_git_object: 6826c6aa572e525ff62d4dc28677c2ca0e6b00b7
+ last_write_checksum: sha1:db717c9345002119538ca8d487d9ac85582e90d6
+ pristine_git_object: 095e21b3e8b89edb47b282209c3c5343d575aea5
src/censys_platform/models/responseenvelopetrackedscan.py:
id: 97bf01df17fa
- last_write_checksum: sha1:d3c448fcdb33999bd4a40aa8c5655ee27f7da368
- pristine_git_object: 14062607c9b4c54a0243978da11072bbf219992c
+ last_write_checksum: sha1:c388c4c356564e68fb3d8952eedd994ea9899bd3
+ pristine_git_object: 94abe220ee60a2b6762f550cacced61074c03ea4
src/censys_platform/models/responseenvelopeusercredits.py:
id: 9d95b5e46be0
- last_write_checksum: sha1:0a9b880f25325b95bc767c453eb61a2c3e5377d8
- pristine_git_object: 42c210f21a928f426cb2f9f4f0bf5566a25a08f2
+ last_write_checksum: sha1:351629da3d37889d4f8408e28debfbb084ecc031
+ pristine_git_object: 80e303549e29867a84373791082810efe32cf451
src/censys_platform/models/responseenvelopevaluecountsresponse.py:
id: "306397291089"
- last_write_checksum: sha1:c1fe4e5bbf518dac018017411c7d61e766549f1a
- pristine_git_object: 800c4640a3f9bfb98ab5b81e463b84d2ab357441
+ last_write_checksum: sha1:8d17e10aff1722757659a2eb1299c054b37d497f
+ pristine_git_object: 8b0be08fe40b4da659f251283ae69b07ad039cf7
src/censys_platform/models/responseenvelopewebpropertyasset.py:
id: f9b99fb3688b
- last_write_checksum: sha1:ed8acb9680dd78c5ef95bf4872368f0cd7d3aef6
- pristine_git_object: 2d034815c4aee43d20475730de7073c5554f3efe
+ last_write_checksum: sha1:6d5f725350ebffb5614892d03d028b61ec75c174
+ pristine_git_object: f78e3d60456aedfefc6cd0323091710c91991945
src/censys_platform/models/responsevalidationerror.py:
id: 6b2931513e38
last_write_checksum: sha1:aebc366c848aecbde4b9041d45b18a993b8a12a8
pristine_git_object: 43ebc51403273777b4189360a12290d914b517a0
src/censys_platform/models/reversednsresolved.py:
id: 1ac5f92340d1
- last_write_checksum: sha1:ffebc8d44e155296cdf4dec1a166e16199a0c326
- pristine_git_object: 09b724ce1d6356ba22e692cfed2832c7608c1824
+ last_write_checksum: sha1:61e867fa3b63e9f8e4fabb5d25a3af3d4c725ef3
+ pristine_git_object: a4821e9c8a67ba5f9fb761f68fcf194149b2f864
src/censys_platform/models/rifatron.py:
id: ab821257d737
- last_write_checksum: sha1:77a8a675c0a00b39ba48d3fa871d476245c4073a
- pristine_git_object: 0010794eea716c2fc1191341f611f2d990b6ab21
+ last_write_checksum: sha1:a25159dd49a31340ce78cfe974367cf2cddd422b
+ pristine_git_object: 556d376848b2daedc4b9efaa8b181dd7601b10e2
src/censys_platform/models/ripple.py:
id: fc6b34cef5e4
- last_write_checksum: sha1:2726b9341cd1f20942b2e975c013d12afa6bc532
- pristine_git_object: 8a9509a74cbcf5b899798c342f4e57050aa323f5
+ last_write_checksum: sha1:b6fa7e91cce10c7c1a71feeb542af0e675c34935
+ pristine_git_object: bc5a0a5e384fbaa7dae634a2d206a5a8d19c5c05
src/censys_platform/models/rippleclioresults.py:
id: 908e78f87750
- last_write_checksum: sha1:020a1500b3c4e7346f0bd1e81bb9c124ea4fd689
- pristine_git_object: 9a34be31a66f1cc9b9034af17ea544663e9e6f11
+ last_write_checksum: sha1:b63e456b56e5e52ffb589996ff0574a2b0f75e04
+ pristine_git_object: 3afdd26bfafe677184b237cc9d58860dd65bfb62
src/censys_platform/models/rippledpublicresults.py:
id: 5d9d1161fab1
- last_write_checksum: sha1:31b672e682a1c25ec9e9f78bbfa03d42383dd634
- pristine_git_object: cec5cf04417c3b74721f4e3346cc91975a589c26
+ last_write_checksum: sha1:fed5a526bb4481e087042a4fe03de3e77ee37e9c
+ pristine_git_object: 6862ccae668575c324c7b75a8f6aa7bd7fee7803
src/censys_platform/models/ripplepeerresults.py:
id: d4a0c578bcb9
- last_write_checksum: sha1:1294f2152ecc67a4d05b5147c10c809bc052b1db
- pristine_git_object: 02944d8c68208122cc925108489c9b69af4aa6b4
+ last_write_checksum: sha1:5a3848e5467aa77849c208660843f96d82ec82c5
+ pristine_git_object: 54e634beb42e7031a9f847c9666abdb998570bb1
src/censys_platform/models/risk.py:
id: 0b47bdbe2e69
- last_write_checksum: sha1:0de59c90fd077b1fc5b4176e6227f99efae097ec
- pristine_git_object: 4a35ff6fd4e2ea14f73962938a805723c23d72b0
+ last_write_checksum: sha1:16123b4b28ad0f10432cb5e8d6827029e2a7559e
+ pristine_git_object: 946b6b0ca39bdc505fead600776e6e09ae4d8ab8
src/censys_platform/models/rlogin.py:
id: 32fb1187dfbb
- last_write_checksum: sha1:f7b38e65647d2efd6330d5724a7973c7a0e8337a
- pristine_git_object: b0df948b22ff7251f093236003c1afe274666abf
+ last_write_checksum: sha1:e13c7f0ec67197ede4161cee385f008f5eb0a949
+ pristine_git_object: 77176ee8fde0eb83dafab2946881a44878bdf28c
src/censys_platform/models/rocketmq.py:
id: 92f0c1a490f4
- last_write_checksum: sha1:0ef109c8524c557791ed180002987a14be923d3e
- pristine_git_object: 153bc18457b494fc3cf1f217b2593d4184378204
+ last_write_checksum: sha1:6e61ec951c149b63a8ebf00a70a27524cd651a79
+ pristine_git_object: e6b1b83f9bfbf89ffb92a29136815db28daa1a7a
src/censys_platform/models/rocketmq_clusterinfo.py:
id: 775f59b289fa
- last_write_checksum: sha1:cd2f938e71dcb9571896ac2031da01e7544a3880
- pristine_git_object: e24b1e0dae9ed15760c164a2c23c18c083ad4d1b
+ last_write_checksum: sha1:2b6fe0f80175ffbbcd059d6ef69b516f52f38ddb
+ pristine_git_object: c8da33ee28e3c095c71930ab89c56ee7520e995d
src/censys_platform/models/rocketmq_responseheader.py:
id: 0efa9818a957
- last_write_checksum: sha1:6eaf99e3fa7d4a6297e645370115a06b1673c006
- pristine_git_object: b025e490070fbc0e00f33cdeb17ae9f121a25044
+ last_write_checksum: sha1:aba02a7440a652ff86790dcd741d72258d4593e5
+ pristine_git_object: 5ec8c51252a2d0c2268ead0a87628437eace8ca4
src/censys_platform/models/rocketmq_topiclist.py:
id: 7d580b323f3c
- last_write_checksum: sha1:4f28eabb7be2ab1ec3316acb095388f6cddaef30
- pristine_git_object: 53dc6c22b0c8420110e93a76927cc67fc6b617e0
+ last_write_checksum: sha1:8e00e86c902ae971b66cabc04b644ac1892162e0
+ pristine_git_object: b68fde718922c514d3285028251e72526c998739
src/censys_platform/models/rootstore.py:
id: ac37c6e6e433
- last_write_checksum: sha1:ab8486657116248610a975cfce557e4ba3a378e1
- pristine_git_object: ff6d1470a7347501f9a0a67e09a79268de47350b
+ last_write_checksum: sha1:aaf0bd0972901f6554187622e93f5f4a9618fb4f
+ pristine_git_object: 53465951485da6a77fc4793453aee9c57860e972
src/censys_platform/models/rootstore_chain.py:
id: 223e62e08979
- last_write_checksum: sha1:50a7d072f047f35ee12ed04751d7c83e0b61f8a9
- pristine_git_object: 3f18f45a96b08ed39b289d0563732cc5620997de
+ last_write_checksum: sha1:922218816340f096ccd0bcb94e809fd662a710d8
+ pristine_git_object: 81e1a95fa78dcecbf074c30d7378e2f3031a41f0
src/censys_platform/models/routeupdated.py:
id: 8ab05bb6c682
- last_write_checksum: sha1:60f99669019066fb3a19eadde73d904479fabc31
- pristine_git_object: 59bfa6af7a39cd80083947b9cecf750256fc4002
+ last_write_checksum: sha1:0101637328adaf67a058dd807448fba6a3a3eb98
+ pristine_git_object: 330054430cd04bafce826753559207f22a594877
src/censys_platform/models/routing.py:
id: fef4fae337a3
- last_write_checksum: sha1:4b1ad9941e9944a8ce51ecdadb32c4c2779c4d98
- pristine_git_object: c28387796ec8760fdaa511d1a77313d3c1649a1d
+ last_write_checksum: sha1:ceb694b0dd07632ac56995470e593db3eb4851b8
+ pristine_git_object: 1e21d95bcaed90d4a884f6330960053b0ae138c1
src/censys_platform/models/rsacryptographickey.py:
id: 3c430575cf57
- last_write_checksum: sha1:94c8f435f7ff727862c7dcadd4333f640f1dd64d
- pristine_git_object: 0f8623d72e07ea81ff4b574516e83e17b8ca3d4a
+ last_write_checksum: sha1:62e3ad40e8750f1ff2f61e76cc33e9de8a783eb9
+ pristine_git_object: cdcbb8c60bfb4d661562b731cd327ca982337e0c
src/censys_platform/models/rsapublickey.py:
id: c622437705b4
- last_write_checksum: sha1:32bd37b983c71d43cb3c838fcb21a1acf3e45216
- pristine_git_object: ce8dce6a5b112a6299c512fc468df50f0a9daf4e
+ last_write_checksum: sha1:cabc5fe63efb3d7fc33d5370677c93cb4170df97
+ pristine_git_object: 347b75a4f2b41a627049da440e311bf571eb6744
src/censys_platform/models/rtsp.py:
id: ef3576bdc22f
- last_write_checksum: sha1:467123ce51fd3bc441ee7e42295a4bf36727da7f
- pristine_git_object: 1e3b80ce5c1546c6f96e7b52e6b6abb70a05c9b2
+ last_write_checksum: sha1:a122ae0f14fe7683ba1fd8cb74557b4caae8b998
+ pristine_git_object: a5ecbabb195c2c05a0325cf6b5ed554031006983
src/censys_platform/models/s7.py:
id: c92951a6fc78
- last_write_checksum: sha1:a1c55fd62193f7995ad2e3461e15f80fd658fb87
- pristine_git_object: 2ce118827b85e1d15064b9c3832e8ca34653e25d
+ last_write_checksum: sha1:0684c47616d46ac9e42b55f632825a89236d1545
+ pristine_git_object: e7a738933b5e3ba1ca3659596bd87b5a5b060988
src/censys_platform/models/saprouter.py:
id: 8800716aa4f1
- last_write_checksum: sha1:e14ba404439e64f4ec8cc81ac294485dd50f45e5
- pristine_git_object: 8d80b792ecc6fd44948d36d65c6452e3b9d7075b
+ last_write_checksum: sha1:93d401b421e2acd31e3ec3a0889c5066d6b7350a
+ pristine_git_object: 3e1c2ebaf211978dbe34cee3e976531984f77d6e
src/censys_platform/models/saprouter_clientinfo.py:
id: 5288f40df8ac
- last_write_checksum: sha1:27160fd19fa71f6a0e72dcc34022d3953a4ef9c2
- pristine_git_object: ea398f41a2d05b6128d17e62204d46e9746cbb12
+ last_write_checksum: sha1:5acbf982e93ea4cf516c9d5244224ce7dd2214cd
+ pristine_git_object: 0138f42e8b5df8a5a8c687a73838fb5703907195
src/censys_platform/models/saprouter_routerinfo.py:
id: fcf0289b9022
- last_write_checksum: sha1:808867919777fbb1df33a7c642df2d6c047229a1
- pristine_git_object: c35846438dcd105401cc6616ac9767e1e3c99582
+ last_write_checksum: sha1:56ef058b522dff00531c5d85f93f22520cc77d0e
+ pristine_git_object: c3175c9e2258d30183bcb05eb0216ec854b0a7c0
src/censys_platform/models/saprouter_routerversioninfo.py:
id: 7e6625529ed7
- last_write_checksum: sha1:a5d40e1dbd501de7542d4f1b1e738622c922fd7b
- pristine_git_object: 58575508629dd75640e3f7854a571f31d74d14e5
+ last_write_checksum: sha1:ca9dcbc10b77f4ffad8cc92e1da189f0cf8241e0
+ pristine_git_object: f8aa808ee1e23c2db5679c9fdfa9ed67d89158cb
src/censys_platform/models/scadaview.py:
id: 378fb8123e92
- last_write_checksum: sha1:21484576e77727367d350d6b3bf4555c291d07ea
- pristine_git_object: 193780f557259f70d59934ca8f77dd11a4741bf9
+ last_write_checksum: sha1:768494548d856532ccb95571aa21d92574842f2e
+ pristine_git_object: d2f84dd88a6539b82863137822e102edec18a0f1
src/censys_platform/models/scansdiscoveryinputbody.py:
id: 1f4554b7638d
last_write_checksum: sha1:e1ed80abc64c4c6d058c424b94e03d3824aac0d7
@@ -4654,12 +4662,12 @@ trackedFiles:
pristine_git_object: 0ae1f548690ef5431c466c339ea8fd1403f31841
src/censys_platform/models/scpi.py:
id: e94f89a38bf0
- last_write_checksum: sha1:95358d830afbb899f1ef8b2f9fa25b714792098c
- pristine_git_object: 0470fb5067210497480ecc17824423c660e73f6c
+ last_write_checksum: sha1:8fef189b7e9bb3622f07deb077f4af34362d4237
+ pristine_git_object: 2719a197e9c3c1f7da286663865f77e770e3c6c0
src/censys_platform/models/screenshot.py:
id: 4a9a9422cbf2
- last_write_checksum: sha1:414ee5f39925a124d06754bf045350205356915c
- pristine_git_object: 76d50a7f6da3ac4dafd36fd71b0059b83dcfff0d
+ last_write_checksum: sha1:f89249c1ab364a6582ec1d9fe2720bd05566cf78
+ pristine_git_object: e6331d3afe679006c2377003cffe98a4dc35032c
src/censys_platform/models/sdkbaseerror.py:
id: 141f1bfca946
last_write_checksum: sha1:a10977aed9914acfe6f63d2afbf4db656fc449d9
@@ -4670,356 +4678,356 @@ trackedFiles:
pristine_git_object: c4947f0a9e5d8cbe3a6c375e729111d999685903
src/censys_platform/models/searchaggregateinputbody.py:
id: 9ba6bc910529
- last_write_checksum: sha1:3b4cbb6038cd146ba47c527b868d01e84ab3ab15
- pristine_git_object: f7e40009ab6c49891b5eaaabfc5136c21fd7bbcf
+ last_write_checksum: sha1:f5b39117518e8d71f6617f882c842fe121a5bd64
+ pristine_git_object: fa3cfec91810d089934ab9184ce143985f193213
src/censys_platform/models/searchaggregateresponse.py:
id: 2aee1e750489
- last_write_checksum: sha1:ddfa78ae2727b1b0726801af3dd0a0f564ee6913
- pristine_git_object: 2b4a34afa35e319fa60ce64a4ccc5f01ee02ed13
+ last_write_checksum: sha1:d16b3d538d58015fc1e71923b5f62faa3286634d
+ pristine_git_object: 57b0ce2950f41c4d480bfa8104825e07fb153e26
src/censys_platform/models/searchaggregateresponsebucket.py:
id: c8c98ea3b38e
last_write_checksum: sha1:b90c87a5593ea22e06347ea75b38748bd0a183a6
pristine_git_object: 9244d43915415865c8ca4d7ffa2da1cdeeb0c43c
src/censys_platform/models/searchcapabilities.py:
id: 72408b161c86
- last_write_checksum: sha1:84bc007499158dde817a4b2923f1c753ff17df46
- pristine_git_object: acdc665d7a221ed02832ea5d75ccc5b208d55bc4
+ last_write_checksum: sha1:580e5f119027715d3a210ab89de5ed5b7eef628a
+ pristine_git_object: 4568810842ac40d45ba4d8649f4a660c3ab1217b
src/censys_platform/models/searchconvertqueryinputbody.py:
id: 3007203fe9ba
- last_write_checksum: sha1:c755940567256bd7a73994ab87a109308a88d67e
- pristine_git_object: 8768a5652c3bd1731f0957018b99202dcffef545
+ last_write_checksum: sha1:753064bd5e0c8ff196f4b7091fcd174f1820df91
+ pristine_git_object: b8b1669002c9f996a83812127762115e01e2de56
src/censys_platform/models/searchconvertqueryresponse.py:
id: 59a8c6898cc0
- last_write_checksum: sha1:39a871aa18e55403c130608f894434309dba05f5
- pristine_git_object: a8cb10ffa8321f8e9a557db4b82adf5e183f77f1
+ last_write_checksum: sha1:a661a8c5f4a41446a3ff1e8d0fae51dfd0e5ab6a
+ pristine_git_object: 823cfdc4c0aa6eb4ed311b60573ca0c09455cbe1
src/censys_platform/models/searchqueryhit.py:
id: a3b996ab9936
- last_write_checksum: sha1:febbf256e683d87ccfebd937aedc17d0104fcf96
- pristine_git_object: 7cb1f4b52bcb26e48e824a3806c32a08d7fc2ea4
+ last_write_checksum: sha1:f8ecba5a49a39c188311ec5ac768b189d06be1fc
+ pristine_git_object: 3732d3e1741a4ff8dd4e56cdd03c2b538d398f35
src/censys_platform/models/searchqueryinputbody.py:
id: 5a19fe64c4c3
- last_write_checksum: sha1:841c1d05e49a6d53489ce980b9fa02880756d96c
- pristine_git_object: 2f352aa2f1e63e9157baeee713fea114e042d0c5
+ last_write_checksum: sha1:2b0d648953845774d69e816b64d88857a56114eb
+ pristine_git_object: c9986a459389f2091a5026d4b7a65f261247e335
src/censys_platform/models/searchqueryresponse.py:
id: a67e92fb07de
- last_write_checksum: sha1:a598a674462e5e73212117b9d8eeb621a3920120
- pristine_git_object: 81b2f9efdb14671fd2f5cad4591c211da31a98ab
+ last_write_checksum: sha1:ef529456c9318b0862ffdab6cbbd465aedd70ed7
+ pristine_git_object: 55d75d21f7810cad645ad3fd7af7ceb131ad728c
src/censys_platform/models/searchvaluecountsinputbody.py:
id: e2eeeb7b0ef0
- last_write_checksum: sha1:b4a16e307b44eacb2c43fdfe231cfd87b74ef1cd
- pristine_git_object: d7f65130297586f792b585f80f00d4164c1dd006
+ last_write_checksum: sha1:3d4ccdf4df75420584484162f29288c74f75172d
+ pristine_git_object: 710bb394a3aa390d599239e57a70b557913d706f
src/censys_platform/models/security.py:
id: 1c2f490e8a6f
last_write_checksum: sha1:d0c176089a634b75a0714f58f41aadce9d0c25c6
pristine_git_object: fa15a201f35888635c95860a2cedbbe5cfda1af0
src/censys_platform/models/securitycapabilities.py:
id: 95d88d342315
- last_write_checksum: sha1:fd01a47c59c232e373605ea7b886a418e13c6b4c
- pristine_git_object: 16bbc35599ad2cb8ce74d10d04932e3b6e7e729b
+ last_write_checksum: sha1:24064a1e3b99b9236add7dfd40a822563501f820
+ pristine_git_object: 519f5d70237236111d226b3cf4989b0b5f0d740c
src/censys_platform/models/ser2net.py:
id: e3786aa6db45
- last_write_checksum: sha1:edd47f572130bbffdbca5d30b3efc0a063d0d123
- pristine_git_object: 97784b0ed12c8c379cca668ca306d31605eeb9f5
+ last_write_checksum: sha1:fff2fb75088e529d50e3c8f459b0c6554d14bee1
+ pristine_git_object: 5059fc4ab051df4bbae03996a5ef25c34e2fcfff
src/censys_platform/models/ser2net_serialparameters.py:
id: 8f30f5f2dede
- last_write_checksum: sha1:1c9a7574e380741cf1dc863fa6e432c92bea0e81
- pristine_git_object: ba55ed324b5ba19aea799efb16354b91da70319f
+ last_write_checksum: sha1:bf7f79f4d40c64aa036382f19281233a62d748d6
+ pristine_git_object: df0e01dbe755b47001d4f0d49df46aac6fac89ad
src/censys_platform/models/serverconfig.py:
id: d59189df9545
- last_write_checksum: sha1:011e4aac657e882b76c4b2cbec54eb4d95a8feb3
- pristine_git_object: ad93a817da8d9025ef2bbf9a7b32a64451f6e582
+ last_write_checksum: sha1:d0f0f7a37e128bb7c1518084a6d4eec2ed4ed259
+ pristine_git_object: 161c9c755a2f815c23675e3cd75ee67be4ea4c73
src/censys_platform/models/serversync.py:
id: 7e81608e0058
- last_write_checksum: sha1:49704cdf90e89457dbfe261dd1971f271a8881fc
- pristine_git_object: d6a0d185da8916654e2e6692c37e443ce1803a46
+ last_write_checksum: sha1:7be95d4ccb47d57caed748351d746cb1a9103629
+ pristine_git_object: a7391bbf7b2dc4f949ac86ac6969dd4b84d2ce44
src/censys_platform/models/service.py:
id: 25dc1044897b
- last_write_checksum: sha1:afa02867e681e89d7e9f0c72eb0eb42c8dadc598
- pristine_git_object: 7eae657bd4dc887b0cc6706d304901143c7628c2
+ last_write_checksum: sha1:053da9c55b05c2f4c9e2d55c315f17811d63b44b
+ pristine_git_object: bc33d18cd776a6e6a83bef93cb4ac0a98e53382b
src/censys_platform/models/serviceid.py:
id: 52a5b098ac72
- last_write_checksum: sha1:4a84380e27e223dfdeb267d0d4807bef9d338399
- pristine_git_object: 9cb5aabc574876d581199e9949c754c9f4aa0be0
+ last_write_checksum: sha1:c4a2658ab45deb7e3dbe968c9835ab7f3553b641
+ pristine_git_object: c4c6f67ff6f23fd1693b78a9f3bba28b243b5db1
src/censys_platform/models/servicescan.py:
id: 24c47a42f886
- last_write_checksum: sha1:e42cc23594df3741a47d40a95cbb05ac40bc72e7
- pristine_git_object: e0dfb210b5bdb97855a7b32ec7f56c9a9d89b13e
+ last_write_checksum: sha1:7b8e129cce8e7ba199212f599ed21c6a1139230a
+ pristine_git_object: dd6b91fd2c44efb36d7fee09bd5a6892ea08c8bd
src/censys_platform/models/servicescanned.py:
id: 7a118692950e
- last_write_checksum: sha1:da368953b9bee1be35a255e5bc2b174e85675699
- pristine_git_object: 1b31188b8bfcd37abbf9ad3695e3890832f660f3
+ last_write_checksum: sha1:026ccd1b0189bfba2baa9b352deaefb55c4bce36
+ pristine_git_object: 80ffbce99b246195642c3eec134263e64ba1fbd7
src/censys_platform/models/sevendaystodie.py:
id: 339ea7cd9d32
- last_write_checksum: sha1:95fffd5e623e1f4e4af2d638c22b1f4ead64b834
- pristine_git_object: 6367b8f2230db70e04eee03114a7c483ee2edb0a
+ last_write_checksum: sha1:e03d2f811f7fa6d888c9424486a4baa6c675a9b0
+ pristine_git_object: 0d2cffb88ae02748f1719280b3b451d629d52074
src/censys_platform/models/signature.py:
id: 8d19471508c5
- last_write_checksum: sha1:3263aeda08b9a4c5b1bfde1eb27ec7a7cf0ed893
- pristine_git_object: 534663ff29bd4e0ada53fa71f5541b35c5d3c7b5
+ last_write_checksum: sha1:a37212442c8ccd3456ab02f94519cf7694de7ff2
+ pristine_git_object: 999348b47a607ac0f549f826dfcd2f7668a68792
src/censys_platform/models/signedcertificatetimestamp.py:
id: 69e8e4e2ed69
- last_write_checksum: sha1:311b09fe90d553fab299ef2a8df986f10f8456e1
- pristine_git_object: 5dd80c6ebc76d51d05cd9cb409e5a2631c70afa9
+ last_write_checksum: sha1:f657e914171015603f031a7801402b3894b61a77
+ pristine_git_object: 2b147fed30f5862e7e6b5a20c77fe078cc4d84f8
src/censys_platform/models/signedcertificatetimestamp_signature.py:
id: 55be814a3541
- last_write_checksum: sha1:19b380ee3bd30e60a85c3f8e6fda0ef090d8a3bf
- pristine_git_object: 261835b175edf341230854b93f195508d48d5a73
+ last_write_checksum: sha1:33e565b208dd952623b3a72374e0dacc8a7e5b88
+ pristine_git_object: 5ec517ddb4fe61638fa7fbbb21e3e1c55400f113
src/censys_platform/models/sip.py:
id: 048c532a6ff7
- last_write_checksum: sha1:2e12503e5f99df6463bec00ef7a7e3e1fcbad577
- pristine_git_object: a541deef17b3be9d015c21a0ac3d79e8a2c9489c
+ last_write_checksum: sha1:dc5bbb6fc637f64f53aae4b6e99d07df2fd4efad
+ pristine_git_object: 4785b9c2885b031171f434eb881368cc170e62d1
src/censys_platform/models/skinny.py:
id: 3a2d6c116634
- last_write_checksum: sha1:e52d498b4b94d5b28d8de43989b3b5d1b9a48517
- pristine_git_object: 30802d438b3d67a5ca9f05425a4d690629fffa5d
+ last_write_checksum: sha1:7525a6f86641d4e9c22524eb78eaced4bf712835
+ pristine_git_object: 3461506af33477d487fa660a9f17b7f3b41faa53
src/censys_platform/models/smb.py:
id: 3f6ff194de59
- last_write_checksum: sha1:6ba1365faaf7ea9942bc2661cebfda24316a61bb
- pristine_git_object: 83f0d166d1d7a31e03dce994c9b2fe62ea52ff79
+ last_write_checksum: sha1:dfd1a6b94e348a6cd38474da50d0166a4c977600
+ pristine_git_object: 54b1aa1aab1df59949e26fae5292ae4e15e55495
src/censys_platform/models/smb_headerlog.py:
id: 8399025b2c43
- last_write_checksum: sha1:6a691493ff0f63fdc0cea42425e5cedfc910fea0
- pristine_git_object: adc7bf283e322f25beea87a5b915c221d10be17a
+ last_write_checksum: sha1:41afd2781d05225b674a7abad76e3edb05414faf
+ pristine_git_object: ccec7b3a7a4a6797b473ba7ba9e32602206708ee
src/censys_platform/models/smb_negotiationlog.py:
id: f82e2968d36e
- last_write_checksum: sha1:16f998a76d8258ddc2b72e6b0835fee8d99b8bb4
- pristine_git_object: b9c28fde2aca3a6b8899115fc7b911159ac92215
+ last_write_checksum: sha1:c62909d41e54ef675b01aa4e7b599139f9feec11
+ pristine_git_object: cb53edb4cf286fba4e7734449b5208d1c877bd3d
src/censys_platform/models/smb_sessionsetuplog.py:
id: 4352229f8ff3
- last_write_checksum: sha1:494c344683c887e6939cabc13f59df2f25e30053
- pristine_git_object: b7e7e15fd0394f105725256667c6a4327be743be
+ last_write_checksum: sha1:a25063403fc2f3b8be9e3898b9561697539c856a
+ pristine_git_object: 756c25cdc8a53dd300603506c9715381d9dd1bc7
src/censys_platform/models/smb_smbcapabilities.py:
id: cf0e7a9941d2
- last_write_checksum: sha1:00d65ae67d21b0b80a6a04d169e656d6be870de2
- pristine_git_object: b36040e9724956a379bf0a7cb45d5f536746e87d
+ last_write_checksum: sha1:ce2dd2979bf33b246d399917ea847ee939202d99
+ pristine_git_object: 2a49579686563bcb86cc2def56cdbc6d969a12c3
src/censys_platform/models/smb_smbversions.py:
id: 7e036d998834
- last_write_checksum: sha1:ad0248ba7e7c7814d06120c8355d0ebc225f5bb2
- pristine_git_object: cb3e5347f57e5f0750642cb6fbae5bba504acecd
+ last_write_checksum: sha1:178382ddaaed77460c958b571b1a90537905cd38
+ pristine_git_object: 0f2ff35796817726835ceda994931a84cc3521fb
src/censys_platform/models/smtp.py:
id: 90cc35a5ad41
- last_write_checksum: sha1:4687179f230a25724ae4fef4fb943efe9af51a13
- pristine_git_object: 0f7fd59f7c166a19dd4d3c5b45cbd7248fce3fb1
+ last_write_checksum: sha1:f4f517515452b1044c7863075600603731e968b2
+ pristine_git_object: 3e4af1ec3a55519c7ad911e60ce8298785cd9906
src/censys_platform/models/snmp.py:
id: bcb63afbe85c
- last_write_checksum: sha1:9eaaefad58528a053959c86503218403e19c9b68
- pristine_git_object: 7811386d3337c966ff11875275076b38dc4178f8
+ last_write_checksum: sha1:c209675adc08970168e756ae5a8670aec4531bcc
+ pristine_git_object: b67e4cef99edfb29221441fe4950c4440fe7dc26
src/censys_platform/models/snmp_engine.py:
id: 00b89f797e90
- last_write_checksum: sha1:e18db6a607195fc049f032ffba1763287f6b172d
- pristine_git_object: 421c48d1fc51ce4b740d5d4de36df4cf8f2d4108
+ last_write_checksum: sha1:44e028898365c866e93aebaddea943408a1342ab
+ pristine_git_object: 53e78ba9b100e18c69306335574627dad33a501e
src/censys_platform/models/snmp_interfaces.py:
id: 2d639901b28b
- last_write_checksum: sha1:71f81a8b2fb5375518d5791c6583ea8b32bb166c
- pristine_git_object: 8dd40004681597aef46c75a7724e24ce9e6522c5
+ last_write_checksum: sha1:b6fe501512d2832b69370a74fc8d7dc2e5287b21
+ pristine_git_object: 2a75b84b85c468f06d8b61ea870a2d0deb96eaec
src/censys_platform/models/snmp_physical.py:
id: eeaa52f9c081
- last_write_checksum: sha1:e878b8fb91d2db8650add0ccef7049673327d822
- pristine_git_object: 213ad1c1b91cab106d9255fd5c1fd2e7374ace5e
+ last_write_checksum: sha1:5b24ab693d340238507f5fcae678310dde9fb327
+ pristine_git_object: 3f0fd05063da4f33e138ae9f6dcbe6c3658c4588
src/censys_platform/models/snmp_system.py:
id: 385978fe24c0
- last_write_checksum: sha1:44dd62111b7db8dc80023fbba40b6687c14a855a
- pristine_git_object: 8b41af7769c18463a5c17d141cc51ab614d87e6c
+ last_write_checksum: sha1:ecc8d757f9e3e45caf4388f389c4adfef8f44f93
+ pristine_git_object: 8022e4ccfadd9e41ffc015af2546f13b503731a4
src/censys_platform/models/snmp_system_services.py:
id: 8c185ab94eaa
- last_write_checksum: sha1:f6d0b7fc647de6c212138e5f8894fdc33bed38e0
- pristine_git_object: 69c178203b57671fdc1de59f02fa187972ce8d53
+ last_write_checksum: sha1:cf64d7dadfd7062977cd12e1c1bc748def710e9d
+ pristine_git_object: 7377cece76c8aa9c5d88d852e4e551b2dc05db02
src/censys_platform/models/socks.py:
id: cf9146b4a20d
- last_write_checksum: sha1:6bbabe9f8c3dfc820ea8c3bfb583e70eafb23fa5
- pristine_git_object: 32ba6635d71e3a808fdb2476938aa70cb28d410d
+ last_write_checksum: sha1:88506fdb1f9e424a3649c026be005f45e954f7e0
+ pristine_git_object: 615e5f90ddf9e03c2cde746f116adedd718d476a
src/censys_platform/models/sourceusagebreakdown.py:
id: 135e8c6797e6
last_write_checksum: sha1:19b452670ab49e641467bb04c9d50f2e57780540
pristine_git_object: 19731c93fb6836068aa9d93e1f54d1af22a353ac
src/censys_platform/models/spice.py:
id: c77b4a307c1d
- last_write_checksum: sha1:37d9c196a828bfc163b8c760d9d9cfeda86d1109
- pristine_git_object: aa50606203f653b286afda39cf12579008e6f1bd
+ last_write_checksum: sha1:dca4ab08e20e94eea491d7b91d9e0d8b5e865555
+ pristine_git_object: 3de92bc943bd2371dacee79245fe37b49b88e0c6
src/censys_platform/models/ssdp.py:
id: 4aa3a20d1650
- last_write_checksum: sha1:cf311c5d287515810a364fa9f5c4eb459ff4df5d
- pristine_git_object: 2b679f2a4d882ee69823203cf9a314063d116e79
+ last_write_checksum: sha1:ecb68672f0cb0f5c726326fdf84da98c7af4b9da
+ pristine_git_object: 352029015784ba7a0a622507f7a10ab1df877a8c
src/censys_platform/models/ssh.py:
id: 84a5d4a480ee
- last_write_checksum: sha1:209dc4ceeeda9cba31b2d0db5dda415c118b229b
- pristine_git_object: ddda3f91887f53c66314bdd1a71d192de3eb11f3
+ last_write_checksum: sha1:9c266c2a8a12344071b0696d1a8084c0f67b632b
+ pristine_git_object: 40679aff2a166e38d3d38435fe9a470ddc153d22
src/censys_platform/models/ssh_algorithmselection.py:
id: e7751ab88d70
- last_write_checksum: sha1:d0b393a2f5e73f28fe117f9a7ff558c32bf689e9
- pristine_git_object: 510fb16d3b51fc561d9d31843c42d2c92a27b648
+ last_write_checksum: sha1:4ff58229da4850f1d92e3701f173b09473a09cf0
+ pristine_git_object: c2e2f1e1f036b3dbce250f05744da1950577519a
src/censys_platform/models/ssh_algorithmselection_directionalgorithms.py:
id: 93912e0894f5
- last_write_checksum: sha1:67d5623b1f9846de4cfb8798d2f2428a15d4a82a
- pristine_git_object: 5112a2fe2e3edebb2ea60138b37ffd96a5a1800e
+ last_write_checksum: sha1:e4f9d0e9ac35e9dffc45c158ebd76c13270dc98e
+ pristine_git_object: d56046edded03743799ca99f6d125a98aa6251b7
src/censys_platform/models/ssh_endpointid.py:
id: d42628526ebf
- last_write_checksum: sha1:5d7be286535d8ca7fc5896b7b6e084973bbb7713
- pristine_git_object: a4f8bf74203442d9afef30f51478715be85abe7c
+ last_write_checksum: sha1:42d1731bd18fea686fa0aeb39a133d8361cff25b
+ pristine_git_object: 1b7c1f112a05e23be9c45ad6a3b364fecd3fb150
src/censys_platform/models/ssh_kexinitmessage.py:
id: 7f03aacc154f
- last_write_checksum: sha1:d1a9f41fb2923bb21ee9965a2f20533eca64fdee
- pristine_git_object: 1a349c7605d2ebbfc340f5dcff0da1e62cb86de4
+ last_write_checksum: sha1:7d536630d120a3bd23e55ac234bc527e67df23e4
+ pristine_git_object: f492efec7b9b654aaf1a293b1e577fe8ca70cf93
src/censys_platform/models/ssh_serverhostkey.py:
id: b50ef3b55a56
- last_write_checksum: sha1:41a9e601eb3f5d73d965190505634bc8815f01b1
- pristine_git_object: 0bb360137ec87551ca2c3bcbccc72aa3287c5880
+ last_write_checksum: sha1:588c90c8b535189621016dc17478ac1bdfc2debf
+ pristine_git_object: b340591ccae2254de1cb4d90dd4fa63552a0f480
src/censys_platform/models/status.py:
id: 9758835cd503
- last_write_checksum: sha1:f6777309e48b6776f21110a49f0cbc81c40633ea
- pristine_git_object: 7610c6c887829acb43675562ec5622bc454fa531
+ last_write_checksum: sha1:8f6c925f8da0ef6945e3aad41d787bad9ce43cfc
+ pristine_git_object: c9ced8a61058456c9a781006ae63d0a513397d4b
src/censys_platform/models/steam.py:
id: 1dfa69ab021e
- last_write_checksum: sha1:f486355c66a04b93005a44808e84d4fccacd176e
- pristine_git_object: db940e51c83ff6e6a3f274c0f7c0aa5d40eb2418
+ last_write_checksum: sha1:ed34539203f60064aca876f45c05dc0e18d1378d
+ pristine_git_object: 4e348ea14c5f441feda41f41b1e289d476e42226
src/censys_platform/models/subjectkeyinfo.py:
id: 228de191a4ee
- last_write_checksum: sha1:d8fd0a5424903ac83e234822cc7e2e9ef9f304d8
- pristine_git_object: e722f9eebe31859168e2fbb0050e9448eff2f673
+ last_write_checksum: sha1:230fa3bb011af25ce19f0119c3d99dd402b391d6
+ pristine_git_object: d4de89c39179238c2cc0bf4151524d6d8ddfe4ba
src/censys_platform/models/systemcapabilities.py:
id: f5e6cedda63f
- last_write_checksum: sha1:3bd179553404d7ed8c113db4b1e8e4b406b5ca4c
- pristine_git_object: 2a117a4cc290dee6537c76cc27cedf62e66065c0
+ last_write_checksum: sha1:ae5eb743882e197af3fd690289846d528d55e299
+ pristine_git_object: 2588311b21a720c49efd973936716c65cd9afc6f
src/censys_platform/models/tacacsplus.py:
id: 00fde802bb42
- last_write_checksum: sha1:d43aa40e37bdd9fff3288e2b21cb593f0c9a408a
- pristine_git_object: a98d01abda0ce93b4cdb226322009a8d927aae25
+ last_write_checksum: sha1:18c712274deaa53be82d2a8076ca464121015768
+ pristine_git_object: 6b39e0dfae6e1c609aa8f7e8eaa53d09b997928a
src/censys_platform/models/target.py:
id: 62bf1f7d8965
- last_write_checksum: sha1:779fa7670e7a0e19e9f22aae072dc41fdb3595f6
- pristine_git_object: 15af4404a1c0caf9f2d73fa702293b2b70e085c9
+ last_write_checksum: sha1:61a24b7dcca8b0c4b24726e0f33131da0f8f7ea3
+ pristine_git_object: 4c9710899fd3b0fa3b7e86ac7b518d4292cbeab8
src/censys_platform/models/teamviewer.py:
id: c65f03547317
- last_write_checksum: sha1:943fd8186f18215af924aa4c1666db431e9120e4
- pristine_git_object: ff85d3b5e83ea6f4acf3363f77615b27241f1939
+ last_write_checksum: sha1:39c359658392847036ff36646e282e35584cc389
+ pristine_git_object: 3b7b63c4df94ba75f9163747ec3c9b40e8576b38
src/censys_platform/models/telnet.py:
id: e5948c2d8f2c
- last_write_checksum: sha1:ff81b7115ade5c89a4b26ccf0bd35f32decac208
- pristine_git_object: 9cabe53b1b49207d1e8e798308a1ae2ee8b1296a
+ last_write_checksum: sha1:ac5a87ac476c7e2efa50e03e18b831420cf863ed
+ pristine_git_object: 11177f4664e3905ddce4898328559fdbdb56183b
src/censys_platform/models/textmessage.py:
id: 7047642afcc7
- last_write_checksum: sha1:abd93f23d10c3bd80492a044b3e356433ffeef2f
- pristine_git_object: f82429d437ffe2c1ec7fe8a62967ff6f7f2fc6ba
+ last_write_checksum: sha1:25a8062d705f44e759a530e1dd72cd52c4430199
+ pristine_git_object: 4dfeb00d3361ca179f9b8b43bf32a3e1bda1f7c3
src/censys_platform/models/threat.py:
id: 6e8ab6e20796
- last_write_checksum: sha1:784683065c0d5ca0a5868c39030a63d160b74dce
- pristine_git_object: 2f5a2dc1d9b0df946a70076ce5b8f48c8df52e03
+ last_write_checksum: sha1:7b31f0d001405dfd89ccf467a290a699f94b6fdd
+ pristine_git_object: 5caf341b9f7d58ce0643fb0e1fcc3e6a99e29379
src/censys_platform/models/threat_actor.py:
id: c826b9893395
- last_write_checksum: sha1:03b4fab01a1ae07134199321d5a5561b0ba3a134
- pristine_git_object: a028c75d7c5de1896de9501dae569524b463b165
+ last_write_checksum: sha1:7dbef7f486d4f45d4a22dfc687ee0a80f122051a
+ pristine_git_object: df60e2fe81acb245160f8fb23557c3cb38b05a2c
src/censys_platform/models/threat_details.py:
id: fb3b1f217875
- last_write_checksum: sha1:a448e7933f9b0db52c3dacb92012751691723cf4
- pristine_git_object: 11f1672af0f75a173eae65bd39107b738215347e
+ last_write_checksum: sha1:fda5c39ea2e8001e9f68f75a2f5cf98e97927b85
+ pristine_git_object: a5d1d5b6f6a9def08fd401ed1db3d04249bddd65
src/censys_platform/models/threat_malware.py:
id: 15057a839ee7
- last_write_checksum: sha1:383685261ab3fe774e6416ccb31214aa522d8d05
- pristine_git_object: f8e844c163b72cfc6dae480c407f6596ef869732
+ last_write_checksum: sha1:da2af68d76fb00d89c2168110cd74ec2e07731f7
+ pristine_git_object: 9b4bd92e7f64107ab5367707585740d0894f4aaa
src/censys_platform/models/threatlistitem.py:
id: d761a3e8560c
- last_write_checksum: sha1:0b801f97b7c2081c33a0ac6ef39990d9c0130786
- pristine_git_object: df5e04c95fb078782e4598ea09b5b99c5c18895a
+ last_write_checksum: sha1:1fe03b04f22ef308c0d6377c2322bc97a3d613bc
+ pristine_git_object: 7c2235a299cfd2f4e4a240436605c4312e82693d
src/censys_platform/models/threatreference.py:
id: c1d0de6d4c52
last_write_checksum: sha1:1fd610a9c3279859226c5a7e1116284fdb7bb2d7
pristine_git_object: 21790284a6625729263ea482431d06604fedd39e
src/censys_platform/models/threatslistresponse.py:
id: 1e90b9de3662
- last_write_checksum: sha1:334d12a6e6fa759a3f7003b9a739810cf674a14b
- pristine_git_object: 16d425a37708c44815b61c6de6cb02957a79ec25
+ last_write_checksum: sha1:cee15bd13b95b7222cf633b4304e0984fe491adc
+ pristine_git_object: eff76c1f7793af2bdece487dbfa4ff75e67b0475
src/censys_platform/models/tibia.py:
id: 6470545588cd
- last_write_checksum: sha1:24419904c6676336118f22dc9599604a62f476df
- pristine_git_object: 981a9d99f79dfe378ca42d3b3155e85f785931ee
+ last_write_checksum: sha1:b3a6303189a2270fe6d1e8b2ce1b0805f28722e2
+ pristine_git_object: c0c0328d546aa9279d5e398bbf8201f050be3d5e
src/censys_platform/models/tls.py:
id: 28f934d811f8
- last_write_checksum: sha1:eebd4c781f8ab0aebf3ba049e155fa2ccd6b5c67
- pristine_git_object: 830a93d987209983a41c97bb08d11a740f01580d
+ last_write_checksum: sha1:5a1c9432b7f4a4132f2f6fff97b805c6ec42ad7c
+ pristine_git_object: 0f5c99e88966c44cfde26fb0960c136b35c9e1fd
src/censys_platform/models/tls_chain.py:
id: b670adfe054b
- last_write_checksum: sha1:101653a46d015448d76119e135a953b474962610
- pristine_git_object: b0aefb41a59511487a15e6143aac140b1fb1bcc2
+ last_write_checksum: sha1:720f257a527324384965ec2b0d3e2b1d51591f32
+ pristine_git_object: 7e63f8302b67e2288d0bb05f11c97d76f791dafc
src/censys_platform/models/tls_versiondata.py:
id: 72380b2a1487
- last_write_checksum: sha1:b463ae0faed8d5b3ca87d4c2028ba0cde0757795
- pristine_git_object: d96e9293719ac5419ea0d4a058c6a14fe7f5a221
+ last_write_checksum: sha1:a5e1c7a5b358f6b0f0806489c33575170a71eb51
+ pristine_git_object: 465690ce39538c6922616908c57f50b6f654eddf
src/censys_platform/models/torservicedescriptor.py:
id: 109d9e38d13a
- last_write_checksum: sha1:05fd68afef2d5eb2361b426d2630569c2465f724
- pristine_git_object: 0faf40e1c2bea6e279ab4c415b1ab91b6f51ce5d
+ last_write_checksum: sha1:43e877ecef2bc9a66b66923df336c1d14c63fcc6
+ pristine_git_object: 5107e7f41bcb3871fca6824e4f4d85ab76652401
src/censys_platform/models/tplinkkasa.py:
id: 6a8591bc72c2
- last_write_checksum: sha1:58ad4696e4ec6953869e759f12bd3e24b88d0816
- pristine_git_object: 905eb21ab7e701853f6438e6ecef2211d563a196
+ last_write_checksum: sha1:4aa4c62bb755076aad68457e41b3df5f58cceaf4
+ pristine_git_object: ac4d6f9e381d91b47c8efc53faf4843996761bb4
src/censys_platform/models/trackedscan.py:
id: 02f53c1cc3fc
- last_write_checksum: sha1:83f54591c9c7b757419062baed648927c7f0b789
- pristine_git_object: d781473dabe784d87f6d94eb45a58e2c89b116e0
+ last_write_checksum: sha1:431ab2428cdc1711d78fbc38f08bc349fdd8422b
+ pristine_git_object: 022688cb4c91be754536a25f281c223a65bbd62e
src/censys_platform/models/trackedscan_scantarget.py:
id: b5c043c0a6c5
- last_write_checksum: sha1:d40adfcbc9ba86c523d8f557d55f9e6c9f6421e8
- pristine_git_object: c10abf2e65bd07b117b0fb2a268ed599fbd32fec
+ last_write_checksum: sha1:b28a0f8a7ed45ec4097734b9ff22c86b7be755a2
+ pristine_git_object: ddcf4c6ec32e786c689ea19cb9b04e23b0ea2ef1
src/censys_platform/models/trackedscan_scantarget_hostnameport.py:
id: a67bd6706dd4
- last_write_checksum: sha1:c18709c5e001af1fccdad4cbe2a3d83f8800a451
- pristine_git_object: 2413f58ae8747d175c82f8b85fe71ab73def7644
+ last_write_checksum: sha1:e77627b14d1f0d1ee19101e5e75767aa3ac926b5
+ pristine_git_object: db90fff02096bf3d726f3b232eac2e30a4d54e93
src/censys_platform/models/trackedscan_scantarget_hostport.py:
id: 9e1ee1c54a3a
- last_write_checksum: sha1:9fad820d3d11ec10f644301cf1027f56058a83f4
- pristine_git_object: a55a796006b368b9dccc34c97fc2da0058cd5562
+ last_write_checksum: sha1:ae16f8663fad257fdb97551b1bd8815f6254febe
+ pristine_git_object: 07098a8a482322f843a4e9e50aac1ed195022d0f
src/censys_platform/models/trackedscan_task.py:
id: 7bf05e568d3a
- last_write_checksum: sha1:f275eba77854205783a3de79b8e7c61eeab28281
- pristine_git_object: d90cbac5cc8dfac9549dcfa70febd7a1f48c0ba8
+ last_write_checksum: sha1:502a2bd7f9c76c5a73c3a06923c1c734217ab946
+ pristine_git_object: 2ddaec96d2b6d0b841775236094ce183a2f53ac1
src/censys_platform/models/unitronicspcom.py:
id: be03a5ba7e18
- last_write_checksum: sha1:7c7a2aa24b3cd4f8f2a4a1a085738b491b16abbb
- pristine_git_object: 309073b3040daf67ec122b0c6a3474d5d3736ad2
+ last_write_checksum: sha1:de9026c78d2775306207f790d6d8c470ae03b729
+ pristine_git_object: a8e99b974435c3b73fa629fb7e47544531e6b460
src/censys_platform/models/unrecognizedpublickey.py:
id: c45ef370f655
- last_write_checksum: sha1:dc5c069d357bd8f67c1a634208c8babab6164b37
- pristine_git_object: d44c7e773f708791bc54fc8c4fcd2620eb6c2107
+ last_write_checksum: sha1:aec96797282c6f36af7e7064959c694ba93eca45
+ pristine_git_object: 4e773401a7db22bb1123044db65d4bc156eb8893
src/censys_platform/models/updatememberroleinputbody.py:
id: 6f240c949e73
- last_write_checksum: sha1:c42fe32ae38ac876930477e9138e0a86c39291f5
- pristine_git_object: e88ec762cdf3ce8aed759d87566d1aef472885f5
+ last_write_checksum: sha1:d01afe9c813f9ff2d1f2552f5a56c619965e1780
+ pristine_git_object: 5a2f71468c147c2da782830800aec920d897bb51
src/censys_platform/models/upnp.py:
id: 31d5bed5aab3
- last_write_checksum: sha1:4bb03b4427a106f9986effe3a4e939d4f1b73f0e
- pristine_git_object: d5adabfb3f6ca7cb88c838c287d9e865a8707a07
+ last_write_checksum: sha1:2f58d5673830592a00b0d56b6a324ec6c1905776
+ pristine_git_object: 03ec180fbfc93384aac9e8dcdc8d6057c38bdb36
src/censys_platform/models/upnp_device.py:
id: e01eaaa297ee
- last_write_checksum: sha1:fea40cb13bf3fe33dc1f573014bbd6c304a1cd28
- pristine_git_object: 2bc65e73852d088bc1daf1829b596a843119ed61
+ last_write_checksum: sha1:1ee23213593794a67e27d21a2f819f5ae4cd61c1
+ pristine_git_object: 18f193cc8d9c03688541302eeb23815eb0341383
src/censys_platform/models/upnp_service.py:
id: d0557bab3c2b
- last_write_checksum: sha1:f61887e53bd02b078267fd5e54d113eb27d207c1
- pristine_git_object: d83450185402eb33fa2c568d0f616e1a7d92f413
+ last_write_checksum: sha1:5d04fd7a4819a49cb7744094685b1275995b01e7
+ pristine_git_object: a8fbca2f1ec9a0ce9ff459c532ae90ea30b485de
src/censys_platform/models/upnp_specversion.py:
id: 9b6fca32bc7e
- last_write_checksum: sha1:c690583bf35a6e1a49bafaebbb0dfa83a90330ca
- pristine_git_object: a5fab062d589ef19d61948ee08d05945f4d40ed0
+ last_write_checksum: sha1:c8f7af223e8beb32cb8db2e362b92f074fc7a464
+ pristine_git_object: 8ce13952ff81f1a1254b1410e7167300be05ec01
src/censys_platform/models/user.py:
id: 8086bd3ae081
- last_write_checksum: sha1:91876ba5d5fa0d343a08f873b0ff95721ba12336
- pristine_git_object: 9533708821e27a0d473bdda6c94962f34bdf4a23
+ last_write_checksum: sha1:efdfc048bfba06b76287706a25fc3eadaa556b48
+ pristine_git_object: c04f49db0394b32225642a0c36d690e8b9023356
src/censys_platform/models/usercredits.py:
id: ff6059a37ebb
- last_write_checksum: sha1:467d99de96d8d5c2e20184021100b9ec8e8c107f
- pristine_git_object: e138926e7d6ee52cc7cd479ca004dd429122e2d9
+ last_write_checksum: sha1:84801aba656d7f6424560c83e087eb9fec4fa88c
+ pristine_git_object: 9de4b9c83e75c68a6e8ccaba2f30f626756c9026
src/censys_platform/models/usernotice.py:
id: ad70989817ee
- last_write_checksum: sha1:e90501f6f672db9e90c5657a4e8a3fefd0399509
- pristine_git_object: 65916730ddd4072b59092d94f9204c8b553bc49d
+ last_write_checksum: sha1:8d4ab8167ec9b486520c345d33826734b59b48fd
+ pristine_git_object: e3d9299b2de0fd56b82533f291dae6d469a0302d
src/censys_platform/models/v3_accountmanagement_invite_user_to_orgop.py:
id: cf91b6a06320
last_write_checksum: sha1:3eb78f23c162061bc0c1f11bab1bc6358028906f
pristine_git_object: ce181e75568397c2a0061dcefd0baaf8fc0de68f
src/censys_platform/models/v3_accountmanagement_list_org_membersop.py:
id: 16cea6dc8c8d
- last_write_checksum: sha1:e6daf879a271bcade312c535eb8efe4441251a0e
- pristine_git_object: 444ad217ab9f4c66b9acca7b30ad9e7666ff8dbf
+ last_write_checksum: sha1:2e3a6b63d383599d7b2ad36e81a732aa08c3c0dc
+ pristine_git_object: e07f0dc13e22af33e03b449ecd0f65b08b846424
src/censys_platform/models/v3_accountmanagement_member_credits_usageop.py:
id: b185d2245704
last_write_checksum: sha1:864963037c0ee6d33f337dad3b5295cba42a7868
@@ -5034,8 +5042,8 @@ trackedFiles:
pristine_git_object: 08fbc9ea6917bb1e311a56d9b1203af51ae87bfd
src/censys_platform/models/v3_accountmanagement_org_detailsop.py:
id: a59403c6a492
- last_write_checksum: sha1:76450a6d0ee6dffee25b30a51cbde2a0dcc66b4d
- pristine_git_object: f4ba8258eab90c60a7454b13b09e3ada4a3d3f1e
+ last_write_checksum: sha1:f8403bd37b03ddd5e18fdf9202d19a90649b3029
+ pristine_git_object: 9435ad78337f79d62af451973a32eef97b74bc2f
src/censys_platform/models/v3_accountmanagement_remove_org_memberop.py:
id: 20f62a01d3f0
last_write_checksum: sha1:84dc10a2deffcad7c9cada83f89d0c42885bc318
@@ -5050,204 +5058,204 @@ trackedFiles:
pristine_git_object: c2fb322c4f8e5a9d298973c79937f5e4e487e1fb
src/censys_platform/models/v3_collections_crud_createop.py:
id: 16aeb443a482
- last_write_checksum: sha1:e9e27f091d9f4a99e5f3017f39f5ff4e86e1e731
- pristine_git_object: 059e7b261364fe079ca20a1e635fa9649b6c3786
+ last_write_checksum: sha1:09e9eaedd177b809217e5cc49b293c212a380540
+ pristine_git_object: b031d8161b3c2c0cbaff197c3904cc2206959f83
src/censys_platform/models/v3_collections_crud_deleteop.py:
id: 5d30a83f6857
- last_write_checksum: sha1:7f7d83d1326142d5025028dfcb161c966d1453b2
- pristine_git_object: 9fb11e246374da215004b94e482ebf5031f5102a
+ last_write_checksum: sha1:9c132bb5a05bd954d24e29480ddd69e3414ff276
+ pristine_git_object: d58014e6453c800fe3e0f065e745b630f097eb79
src/censys_platform/models/v3_collections_crud_getop.py:
id: 7560f9371ab3
- last_write_checksum: sha1:e04728f2242cee8b844a7053fbce522a7cfe6286
- pristine_git_object: f5c88866abbb82c2f8304f94230bbb9310fbbf28
+ last_write_checksum: sha1:02c1977460a381bb576f1aecc5e1a949abcb9703
+ pristine_git_object: c18b132981364a2130576221d62f1f7610ffbc64
src/censys_platform/models/v3_collections_crud_listop.py:
id: 448a4cdf9d95
- last_write_checksum: sha1:fad1bc6cae089e378bea69c8b1e8edfdad0ee958
- pristine_git_object: 1e9a7572ddc9cde98d6773a6177a69e32344eda9
+ last_write_checksum: sha1:c3add14d34ff3d4330e1894025d0f37b54123840
+ pristine_git_object: ae2b5298d2955ee90580885b4a470189b5acb70f
src/censys_platform/models/v3_collections_crud_updateop.py:
id: 2c6bfa2138db
- last_write_checksum: sha1:58dde54a6fe5d721b13e0f49b8168c644c682a0f
- pristine_git_object: cb97b49ab4334fa11051a484de5932ea90e15712
+ last_write_checksum: sha1:926d989c8a6055829624daf2db10c41131cc0fea
+ pristine_git_object: 165a311afc30534d98a933e825c18ad8d4f40a86
src/censys_platform/models/v3_collections_list_eventsop.py:
id: 5797c2806585
- last_write_checksum: sha1:1f0d88e55df5f51516833224900a2aa9276127cb
- pristine_git_object: 66e1172babc567bf67ae7e88c9ab5265e893d849
+ last_write_checksum: sha1:a558ee4b3cfc1a1656e149c27e82505e3a8e7a55
+ pristine_git_object: 47a54913ec1970a87f899378468445d7cc034276
src/censys_platform/models/v3_collections_search_aggregateop.py:
id: 7f0472cfe0d9
- last_write_checksum: sha1:775ce70e83a020b7bc85360513fb8a4f067a474a
- pristine_git_object: ef9f13fa2fa378f62b98f2d2842a57396bbf6cf2
+ last_write_checksum: sha1:b81675a052ad0acb783f68ff48fb6e830ad9eb80
+ pristine_git_object: bffd7651aa59b44571ae30c438d9c11512ee717f
src/censys_platform/models/v3_collections_search_queryop.py:
id: 24d48e71ca78
- last_write_checksum: sha1:da9659440fc633274943c4d5fac9d34232559064
- pristine_git_object: fd5661e0a4f68ce879d60e3d357782ac6e886505
+ last_write_checksum: sha1:5a6d82ac62e33e36524fdd940ac674a5501c1e0e
+ pristine_git_object: 50c5b229e5253e4ac99eea5577e0fcaf6d7333c8
src/censys_platform/models/v3_globaldata_asset_certificate_list_postop.py:
id: 0aea2b5b1456
- last_write_checksum: sha1:8f60d2ddb6c064ef3de2d309e1ee421c2329bceb
- pristine_git_object: b92b68dcfe61fd62e96ca9cd01a6eb853394f4dc
+ last_write_checksum: sha1:712c0b6768737be03949ab81835d6b700304160a
+ pristine_git_object: 3a9b73d0c6bdd0ccd9e89a1f1e1083e17a52b536
src/censys_platform/models/v3_globaldata_asset_certificate_list_raw_postop.py:
id: 2da0829bfd27
- last_write_checksum: sha1:0a155b664adfeb7ac362b1a73d77fa3030be794e
- pristine_git_object: 8dcae29a106375cc97b768864d926376e6ce821d
+ last_write_checksum: sha1:78c151456b986a0d009e9fecb4092ebd26b50b3a
+ pristine_git_object: ceb9676fff6a4e9a8c7344409208df3e8b96d016
src/censys_platform/models/v3_globaldata_asset_certificate_rawop.py:
id: a5eea6997d32
- last_write_checksum: sha1:8512f07cbee93623b431a0d657eb5cb994fa850d
- pristine_git_object: fd60d22715d1eb8646e0a9cf2ea6ef8674670b15
+ last_write_checksum: sha1:933383b653980b7517f9ad80911407d901f02371
+ pristine_git_object: e90d3d476eb696c88913028fd29153f8a28523a6
src/censys_platform/models/v3_globaldata_asset_certificateop.py:
id: 5ba0c7970383
- last_write_checksum: sha1:ea91e2c59bc485e7a524667a4595120e89daba4c
- pristine_git_object: 31d6c91eaaa7bd3962140009d6407f3b996f0d09
+ last_write_checksum: sha1:20338e4d5186911d0d07aaa06f8a924b7bfa3a9b
+ pristine_git_object: 23f51a32d44b9c93163d4cfb4219e23d2cd0f7e4
src/censys_platform/models/v3_globaldata_asset_host_list_postop.py:
id: 642c2e63ff60
- last_write_checksum: sha1:c22d0f73e82f7dd7ba3cb758fe4f37f4d28c3bea
- pristine_git_object: 867d18eb87859ecd062281a934788306d04e440a
+ last_write_checksum: sha1:a977c09266a75e6c1c3471e393fc60943a895334
+ pristine_git_object: f579441a9c0983cd453e2e6cdba15d57891a3739
src/censys_platform/models/v3_globaldata_asset_host_timelineop.py:
id: 7ca63a024370
- last_write_checksum: sha1:a8ab1a8da7cbed21c3bf66e5bd939f6e48f58170
- pristine_git_object: 743b3b7a2784b1aaa4ce944717fa99948a80643e
+ last_write_checksum: sha1:7a5fb7198f17d621e53d7cc8002e5c676239fd82
+ pristine_git_object: c59acc75722f7cba7e6e0060976c0315f41c2563
src/censys_platform/models/v3_globaldata_asset_hostop.py:
id: c5e3263e71a6
- last_write_checksum: sha1:c8e17a2d4a133901e626f0c840ae15366a6ff2c2
- pristine_git_object: a688302c9b10d379301ee4e65fee91d458dbdd3f
+ last_write_checksum: sha1:d865dc7908508e3f660947346e3c7dbab05554e6
+ pristine_git_object: a8da11f3ce4779182cc7c521df051969828a41e3
src/censys_platform/models/v3_globaldata_asset_webproperty_list_postop.py:
id: c685301403e0
- last_write_checksum: sha1:386e5fb464342119d93287d65db8aec8b11fc025
- pristine_git_object: b325fe2bd5a9162834fa0d4a2cf6d0fc53da0ebb
+ last_write_checksum: sha1:688e5eeeff110ea1d0e1371d71b06b906109de60
+ pristine_git_object: d715cb5a0d28ec6934b94e23c1ae59d2e2ab8e51
src/censys_platform/models/v3_globaldata_asset_webpropertyop.py:
id: 1c3e75b528e2
- last_write_checksum: sha1:e8ce97f34e629167fabb0f075965be800cede23c
- pristine_git_object: bf32a85026e28d6354750a47b269b4ab7d6ed289
+ last_write_checksum: sha1:9377f19a761812de565d8ae66621230d19f488ff
+ pristine_git_object: 38190aa09304861b2fba000a58aceef2709991ba
src/censys_platform/models/v3_globaldata_scans_getop.py:
id: ab00483fe559
- last_write_checksum: sha1:4376571fcf6c4c202daf975a0c8a13dabb843510
- pristine_git_object: 39bf3e2b78fdbd133a145f07211212df5a80ad32
+ last_write_checksum: sha1:627eb3c6818e546de16ba5a5a5747f8346b2eca5
+ pristine_git_object: c93a685687fb52bce8c3423d6f3a901ff3dc1084
src/censys_platform/models/v3_globaldata_scans_rescanop.py:
id: 6a04406fd111
- last_write_checksum: sha1:674f8d3f112e3466cd6cf32a1fd67e2d78845b74
- pristine_git_object: c118431c4acfe3bc8b7c3bcb3f5ac44b52e203fc
+ last_write_checksum: sha1:a8f2895fc5e181b678d12b83697244204917bdb8
+ pristine_git_object: 7a7e374a076d9699ce510e55b9953236de29bd75
src/censys_platform/models/v3_globaldata_search_aggregateop.py:
id: d49c5cee1f4d
- last_write_checksum: sha1:4a0b4963e66df673f8a6127c6143cd315091c7ae
- pristine_git_object: b280f199c77b6fd34f737ab7a3f939e90b83b52f
+ last_write_checksum: sha1:454735a5d31562146db50b0e63b2c1eb1b36870c
+ pristine_git_object: fa3ca1a55590e875cc0fc067277f03de11f0b72e
src/censys_platform/models/v3_globaldata_search_convertop.py:
id: fe05fc32ae20
- last_write_checksum: sha1:530aae51eeb390a90ba402fdc7af949a69c77116
- pristine_git_object: 97408888eca9710dd775b96865618b08fa09846e
+ last_write_checksum: sha1:6241e87b8e83e96d30b1f83adff23e617d872354
+ pristine_git_object: f7373809dd4f79047adc76746803689492159852
src/censys_platform/models/v3_globaldata_search_queryop.py:
id: 1e0882be1f7b
- last_write_checksum: sha1:a186bc29de41d4a4817001f1614f7cf7fbe76e9a
- pristine_git_object: 5eb9114ad57d36dcc68071dbc684d023c7c23381
+ last_write_checksum: sha1:cd829788e75f42c906cb2187223b2eb128db36a4
+ pristine_git_object: da590844eda8c00bc3a256dcabd1ee559d9912a1
src/censys_platform/models/v3_threathunting_get_host_observations_with_certificateop.py:
id: ba9b94957bd2
- last_write_checksum: sha1:d4f859ec6776cd9f5bbacb5420f3b06c0303dea8
- pristine_git_object: 1b07a3900ba2d24138439a638c9b749530cd628f
+ last_write_checksum: sha1:bccb49afe077b8bc29db316a2bd637594bed3826
+ pristine_git_object: bc394d5596e149176316726b163ec4e28e510883
src/censys_platform/models/v3_threathunting_scans_discoveryop.py:
id: faab379de921
- last_write_checksum: sha1:89ad92d2ffa1a9776c31c2d6a3dc001bb3538caf
- pristine_git_object: 63b320ea8671b2ded2e853f5104136f8c3e3cddb
+ last_write_checksum: sha1:d4e6ee76638de75a9ac287c13b6d3c5adaa73c0f
+ pristine_git_object: 60a01a81bb37d158eb0af4956520d0142110ef33
src/censys_platform/models/v3_threathunting_scans_getop.py:
id: e4677edba6ff
- last_write_checksum: sha1:1ddd1116a4241061c0334f87f32a4e4b05af1290
- pristine_git_object: e03a754fd475dc4d7c5f442d8c76a4c7977de00e
+ last_write_checksum: sha1:b19253fe9e99c539768ce8ecd184074b69f5eace
+ pristine_git_object: 2224ad428ad4341f97529ccd4c77482776deb180
src/censys_platform/models/v3_threathunting_threats_listop.py:
id: 75ff8a0a2234
- last_write_checksum: sha1:f08bb784b62600d0f3802e29d63bc0a22322dd2a
- pristine_git_object: 5b9e4c4bce389e37123df7a99c9f004ed78e2343
+ last_write_checksum: sha1:01414017b012d1b1e457448eb786766af08c41ec
+ pristine_git_object: b812a3bfd783c8ada77f0cadbab019db3c975a62
src/censys_platform/models/v3_threathunting_value_countsop.py:
id: ccee29c742da
- last_write_checksum: sha1:4c4988ab2b82c349f407e75205378ce86983c8ed
- pristine_git_object: 1845688f357b8665c299c4cd9a2187fb84a1e839
+ last_write_checksum: sha1:cd36d5b7753d4153a036410fc01fdb3e3e71e8d0
+ pristine_git_object: 9ad12fa9fb86941f1393af7ac344ca039a91f2c4
src/censys_platform/models/validation.py:
id: c0322b26b0aa
- last_write_checksum: sha1:ecafa049e42555458d0e24702cb81bc56f13caf9
- pristine_git_object: 8b8e6e3a48158c996a8f5c4762c54cfb41ffec88
+ last_write_checksum: sha1:9933e1aa978e12bd7114f04000dc544e0ccac253
+ pristine_git_object: 9fdfd090c52b5333ebd227a6d322dcb728ef7fec
src/censys_platform/models/validityperiod.py:
id: d8ee7454e043
- last_write_checksum: sha1:3e11653296c3415911fb4ae3fe6ee21772bb4089
- pristine_git_object: 3a64e9f92407bd8b50cd6988965aba51246b093c
+ last_write_checksum: sha1:82a82c29ffda37f962ce0fb1f4103bea4338672e
+ pristine_git_object: 479f79d891b8c91de5edb689f2a9389c93060f18
src/censys_platform/models/valuecountsresponse.py:
id: 36623ba65d8a
- last_write_checksum: sha1:7fc4dc2e28709fda8fa4a954f84abcdc02233cc6
- pristine_git_object: 24dda6cd7506aec8192f5c00362ed642bb0d5cee
+ last_write_checksum: sha1:4af437f81b0e384470096c71d34d4ad278a70b08
+ pristine_git_object: 7210ad9513c505d3750b0cc796c37856a8f68d8a
src/censys_platform/models/ventrilo.py:
id: 9121b3b30672
- last_write_checksum: sha1:9a6ba5a61e40f89be59db32b6b6290699ba0dccc
- pristine_git_object: bdcd74d97d59300e41bc7472a02fd72e8169cf72
+ last_write_checksum: sha1:5edd21980369f48582bd796c118d405404f611ef
+ pristine_git_object: fc8a40b17b39b328e759a001a2ae0759520acdd0
src/censys_platform/models/ventrilo_header.py:
id: 9539d1379373
- last_write_checksum: sha1:612b536647fb0aa80bc9228f2c34a896ecd8e16f
- pristine_git_object: f7e9a4a65bd7caf53c7827a39f1ca94674fcd95b
+ last_write_checksum: sha1:ee55e34ad8cf34d072cfcf5ed102e362d4574825
+ pristine_git_object: 1f09774e6152649eea182ae7fbe5a0c5897f9785
src/censys_platform/models/ventrilo_message.py:
id: c8c10f07e602
- last_write_checksum: sha1:e9ffb7159e9cad5e9bea201f20b96711edceb39e
- pristine_git_object: 4c9366cc3ab7205de2d4a77c3c7b3efc28df85e2
+ last_write_checksum: sha1:d98b71b4040282c01218ed5d64607ec6ae158229
+ pristine_git_object: 347e1a62e8b924b7e07fed4c47f13ec7b8abcbba
src/censys_platform/models/vnc.py:
id: 97cb7ac86d71
- last_write_checksum: sha1:290a980b7a30700aed286d1ccb31b17d2ae0c50f
- pristine_git_object: dc9f935e02cf2174c7a9d0f30c5757a39fea8caf
+ last_write_checksum: sha1:10c8fe9bb50b4a7799268c8b3157a3f5a53bc2ef
+ pristine_git_object: 177d5bb805f8e002d969cf59e8c3cf10d4c21eea
src/censys_platform/models/vnc_keyvalue.py:
id: 8296640a34b2
- last_write_checksum: sha1:f5a7127c052728a5da99205b7ddf6ce26b8d7093
- pristine_git_object: dc1f320f315c654385d52a996dd48d0229567e51
+ last_write_checksum: sha1:aaf1f96bf2ffd714928a97b281018a14dc56f689
+ pristine_git_object: cfef571bd9ed74eac3abb80cfbb3bca035f9d8ea
src/censys_platform/models/vuln.py:
id: f51f970c072b
- last_write_checksum: sha1:2befc5022a0410ba3242c3868b1590aba1bc3b84
- pristine_git_object: b828518483363e885e4785770a4ddc409caad9b2
+ last_write_checksum: sha1:6489b4ef5216dcd8f3114b7aecf26c21e04e5e63
+ pristine_git_object: 759e193652f88649c910d0d89e80d8364df5012e
src/censys_platform/models/weblogict3.py:
id: 3b51cf2919e4
- last_write_checksum: sha1:de6ba4ba842a3d7674bef2bdfb1a02f3f74405ea
- pristine_git_object: ae7e97932e1ace3cc535ca7a9e63b40470532e57
+ last_write_checksum: sha1:688fe2fba13dc347344c3f4bd7b57f80b3578fe6
+ pristine_git_object: bf8543a3c0eb5c976e4992fc9318a3d2d0c67cc0
src/censys_platform/models/weborigin.py:
id: d3c87a9eb327
- last_write_checksum: sha1:3c5dcb3cd859f8b9c6a2e970cccca03bdf522049
- pristine_git_object: 2e0af14473a0e867ef3780e44462aaec6cb046e9
+ last_write_checksum: sha1:44b6577cead78d7ff96ed44fe87f49d0c7feaad9
+ pristine_git_object: 7d9b4db3bce353ff15eaee0d7b57177d4067706b
src/censys_platform/models/webproperty.py:
id: 5f9ffc5693b1
- last_write_checksum: sha1:315261e79afae87a56a880758a1f84bdd2153c9b
- pristine_git_object: 5234ee88fb627bc024b136090032d623602a6bbb
+ last_write_checksum: sha1:d9c1e13f5032957367ada0b4ebefc9afd4889f11
+ pristine_git_object: 719f1a633e6531071a63a0529bb5020309d48818
src/censys_platform/models/webpropertyasset.py:
id: 394f87dd6c6c
last_write_checksum: sha1:ed22af90d1bb3caddbc37afebef9b72ec737a25d
pristine_git_object: eee8bfa0a9b97e6038c7a534ab43395c7874cfcc
src/censys_platform/models/whois.py:
id: 9478e226ecc1
- last_write_checksum: sha1:6e2fc122597968667848bed963238fdb2abdcaa2
- pristine_git_object: 0b8be04fee7f3c1a2e47a49b08a7d3bb863b6ef8
+ last_write_checksum: sha1:0bd9005e99214856b57d7f9211e300aed6f65338
+ pristine_git_object: f260dff97df20d8ce137bc2337461da7f2ab7529
src/censys_platform/models/whoisupdated.py:
id: b32a21ffa7f6
- last_write_checksum: sha1:202a459aac6f19fb11c09ef9f4016b8c2a2dd051
- pristine_git_object: 8862993ccfac511bd96fd8ca8bb2aa047c8e0d78
+ last_write_checksum: sha1:b1fbdcf11c34073e4a50dc288f5363c72bcd4476
+ pristine_git_object: 4508bc885b54e761c095ec3f168f2be49cf48014
src/censys_platform/models/winrm.py:
id: aad01f19c66b
- last_write_checksum: sha1:99f15ca079f29fbee7eaf17b6500f0c9d438fe1f
- pristine_git_object: 6001802532416ab65a543fe14ef00d7c6e2b4732
+ last_write_checksum: sha1:45f67ffcfd1333ee4ec2d4885fd837440d65207d
+ pristine_git_object: 4a526149f13da7ef9f24c6ea2f9f708d94ac204a
src/censys_platform/models/worker.py:
id: 04e55a63084e
- last_write_checksum: sha1:2e50442c974bf6e9cba38e543aae670835281072
- pristine_git_object: 8a4e621e6f27d53c1fc94e420f39def218d73e3c
+ last_write_checksum: sha1:8a732c20ac64835c6189d3401141a57a79359b95
+ pristine_git_object: a24542efdaa68ef4b5f6a02a0561d08d5760a4e6
src/censys_platform/models/wsdiscovery.py:
id: c9420d7667b4
- last_write_checksum: sha1:b1d4e079cd14da67a2bfc311738888beea7f87ce
- pristine_git_object: 99b66af82aed108319be66757dca2be5638da29a
+ last_write_checksum: sha1:7b34ad93fcbda4e5930a1cd8febd9db4c5cc3ff7
+ pristine_git_object: beb514c1d08d997e73c278a237d32bf8ffed798f
src/censys_platform/models/x11.py:
id: 344f98074fde
- last_write_checksum: sha1:648c4c9bdda1791700534b8f054ddedc39c9581f
- pristine_git_object: 0faaa1313343760f59f68cc2fba14bcab17aad2f
+ last_write_checksum: sha1:6d5f2ecf302bf7a96eb42383df58ecd4d13f8baf
+ pristine_git_object: 383238c3f6184974ec00fcf109ed02ef32869b36
src/censys_platform/models/zeromq.py:
id: 7dd84ed3b89d
- last_write_checksum: sha1:9412d441c85fe3e3a8d5cdb6ad6de45134823e8f
- pristine_git_object: 7ecd66665a4b50940d14ede4071f594ee01ea3cb
+ last_write_checksum: sha1:343c318cb8cc772585e6317393005b887b392917
+ pristine_git_object: 52e8b9be980ad5208dd8b422d24d2350d9e5bbdb
src/censys_platform/models/zeromq_greeting.py:
id: 92cd1166f9d8
- last_write_checksum: sha1:c4d7ef54264c6c1aa888abe63f2eb35c84bdf369
- pristine_git_object: 9ce38982a4d8d04d68b3648db8ed23715ac80887
+ last_write_checksum: sha1:eed7a7f316cb7ad53765d84c9586b366f170fdd8
+ pristine_git_object: 430679f0a3abb98b44a5776155411eaee340f5ff
src/censys_platform/models/zeromq_handshake.py:
id: 045c888f0997
- last_write_checksum: sha1:86da9b669880bc3f2a0371528e0c1172401ab0de
- pristine_git_object: 2a2d6e7f736855707b45fa11a8cba5b45c8658fe
+ last_write_checksum: sha1:229f7287b4cb7844e40e52561e4b6291320ecfe3
+ pristine_git_object: 0683354ec6331eb107dab3d4367b231d22ca10b1
src/censys_platform/models/zlint.py:
id: b3444f54361b
- last_write_checksum: sha1:53542ed4642b43476b7ae2f17250b581bef7f11e
- pristine_git_object: ed3e53cd45905c6af3f56cf5b8be28b863f2362f
+ last_write_checksum: sha1:0681b3e1617abd2d002b4915220008c290a72213
+ pristine_git_object: 04dcd89ae32ab86213d31766e30873eac8419449
src/censys_platform/py.typed:
id: d457cf568851
last_write_checksum: sha1:8efc425ffe830805ffcc0f3055871bdcdc542c60
@@ -5274,8 +5282,8 @@ trackedFiles:
pristine_git_object: a9a640a1a7048736383f96c67c6290c86bf536ee
src/censys_platform/utils/__init__.py:
id: 76ac94c422c2
- last_write_checksum: sha1:81e0385b93362e0f3f6911b65bd4cc601ebc11e1
- pristine_git_object: 56164cf3a86399ee7a8e1a68d19fb494689d77c3
+ last_write_checksum: sha1:398211d49b762a067ec6d10197a4b11dfd258ff5
+ pristine_git_object: c906e1e0192e9017fc13851eb23fc0c2753429c8
src/censys_platform/utils/annotations.py:
id: 259f8dfc4b83
last_write_checksum: sha1:a4824ad65f730303e4e1e3ec1febf87b4eb46dbc
@@ -5286,8 +5294,8 @@ trackedFiles:
pristine_git_object: a6c52cd61bbe2d459046c940ce5e8c469f2f0664
src/censys_platform/utils/enums.py:
id: bd73b82ea938
- last_write_checksum: sha1:786ba597f79dca6fbc0d87c591752bb8d775ecb7
- pristine_git_object: c3bc13cfc48794c143a64667f02e7949a8ce3fcc
+ last_write_checksum: sha1:bc8c3c1285ae09ba8a094ee5c3d9c7f41fa1284d
+ pristine_git_object: 3324e1bc2668c54c4d5f5a1a845675319757a828
src/censys_platform/utils/eventstreaming.py:
id: 79888c9b9f71
last_write_checksum: sha1:bababae5d54b7efc360db701daa49e18a92c2f3b
@@ -5314,8 +5322,8 @@ trackedFiles:
pristine_git_object: c04e0db82b68eca041f2cb2614d748fbac80fd41
src/censys_platform/utils/requestbodies.py:
id: 91a9a796d42a
- last_write_checksum: sha1:e0a3a78158eba39880475d62d61be906625676b8
- pristine_git_object: d5240dd5f5efffabbd9aefa2f4a349511a9c75b4
+ last_write_checksum: sha1:41e2d2d2d3ecc394c8122ca4d4b85e1c3e03f054
+ pristine_git_object: 1de32b6d26f46590232f398fdba6ce0072f1659c
src/censys_platform/utils/retries.py:
id: d5aceef1f0a1
last_write_checksum: sha1:5b97ac4f59357d70c2529975d50364c88bcad607
@@ -5326,8 +5334,8 @@ trackedFiles:
pristine_git_object: 295a3f40031dbb40073ad227fd4a355660f97ab2
src/censys_platform/utils/serializers.py:
id: a3afe58d4a90
- last_write_checksum: sha1:a0d184ace7371a14a7d005cca7f358a03e3d4b07
- pristine_git_object: 378a14c0f86a867ca7b0eb7e620da82234c0ccc4
+ last_write_checksum: sha1:ce1d8d7f500a9ccba0aeca5057cee9c271f4dfd7
+ pristine_git_object: 14321eb479de81d0d9580ec8291e0ff91bf29e57
src/censys_platform/utils/unmarshal_json_response.py:
id: d2dd833c6fb4
last_write_checksum: sha1:431aefbf77535ecb82fd774c5429eda8380aca91
diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml
index 50f733b..9766516 100644
--- a/.speakeasy/gen.yaml
+++ b/.speakeasy/gen.yaml
@@ -13,6 +13,7 @@ generation:
requestResponseComponentNamesFeb2024: true
securityFeb2025: false
sharedErrorComponentsApr2025: false
+ sharedNestedComponentsJan2026: false
auth:
oAuth2ClientCredentialsEnabled: false
oAuth2PasswordEnabled: false
@@ -26,7 +27,7 @@ generation:
generateNewTests: false
skipResponseBodyAssertions: false
python:
- version: 0.12.1
+ version: 0.12.2
additionalDependencies:
dev: {}
main: {}
@@ -73,3 +74,4 @@ python:
responseFormat: flat
sseFlatResponse: false
templateVersion: v2
+ useAsyncHooks: false
diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock
index 07fb347..a414c06 100644
--- a/.speakeasy/workflow.lock
+++ b/.speakeasy/workflow.lock
@@ -1,21 +1,21 @@
-speakeasyVersion: 1.682.0
+speakeasyVersion: 1.686.0
sources:
converge-source:
sourceNamespace: converge-source
- sourceRevisionDigest: sha256:29a147b1c7849375f4c0dd3cf042e586f46088af68462dfc73c562595229c7f1
- sourceBlobDigest: sha256:c007b3011b46fd017ac8c3a964db9c819515de1d130b401c9d9ef127e2f433c7
+ sourceRevisionDigest: sha256:2fcd4a47fa3226588142f859e4bbf2c52400a8fbcda9fe66f788db244ffc576d
+ sourceBlobDigest: sha256:e512e913749949526ed979fa7884ae0eeda78e582aca7692928876862bd93c6e
tags:
- latest
- - speakeasy-sdk-regen-1766104176
- - 1.0.59
+ - speakeasy-sdk-regen-1767832222
+ - 1.0.63
targets:
censys-sdk-python:
source: converge-source
sourceNamespace: converge-source
- sourceRevisionDigest: sha256:29a147b1c7849375f4c0dd3cf042e586f46088af68462dfc73c562595229c7f1
- sourceBlobDigest: sha256:c007b3011b46fd017ac8c3a964db9c819515de1d130b401c9d9ef127e2f433c7
+ sourceRevisionDigest: sha256:2fcd4a47fa3226588142f859e4bbf2c52400a8fbcda9fe66f788db244ffc576d
+ sourceBlobDigest: sha256:e512e913749949526ed979fa7884ae0eeda78e582aca7692928876862bd93c6e
codeSamplesNamespace: converge-source-python-code-samples
- codeSamplesRevisionDigest: sha256:f25d55cdef67c3b748888eb41940f7ec0ffd17699b36eb6156681b069a478fec
+ codeSamplesRevisionDigest: sha256:63f0655909e08c37d712f7957095ee8862da00bd096031632cbfb046411572b7
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
diff --git a/RELEASES.md b/RELEASES.md
index a36189a..c963f06 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -176,4 +176,14 @@ Based on:
### Generated
- [python v0.12.1] .
### Releases
-- [PyPI v0.12.1] https://pypi.org/project/censys-platform/0.12.1 - .
\ No newline at end of file
+- [PyPI v0.12.1] https://pypi.org/project/censys-platform/0.12.1 - .
+
+## 2026-01-16 00:30:16
+### Changes
+Based on:
+- OpenAPI Doc
+- Speakeasy CLI 1.686.0 (2.796.1) https://github.com/speakeasy-api/speakeasy
+### Generated
+- [python v0.12.2] .
+### Releases
+- [PyPI v0.12.2] https://pypi.org/project/censys-platform/0.12.2 - .
\ No newline at end of file
diff --git a/docs/models/hajime.md b/docs/models/hajime.md
new file mode 100644
index 0000000..c94486b
--- /dev/null
+++ b/docs/models/hajime.md
@@ -0,0 +1,8 @@
+# Hajime
+
+
+## Fields
+
+| Field | Type | Required | Description |
+| ------------------ | ------------------ | ------------------ | ------------------ |
+| `public_key` | *Optional[str]* | :heavy_minus_sign: | N/A |
\ No newline at end of file
diff --git a/docs/models/service.md b/docs/models/service.md
index 35be8e0..9416ec5 100644
--- a/docs/models/service.md
+++ b/docs/models/service.md
@@ -40,6 +40,7 @@
| `fox` | [Optional[models.Fox]](../models/fox.md) | :heavy_minus_sign: | N/A |
| `ftp` | [Optional[models.Ftp]](../models/ftp.md) | :heavy_minus_sign: | N/A |
| `gearman` | [Optional[models.Gearman]](../models/gearman.md) | :heavy_minus_sign: | N/A |
+| `hajime` | [Optional[models.Hajime]](../models/hajime.md) | :heavy_minus_sign: | N/A |
| `hardware` | List[[models.Attribute](../models/attribute.md)] | :heavy_minus_sign: | N/A |
| `hid_vertx` | [Optional[models.HidVertx]](../models/hidvertx.md) | :heavy_minus_sign: | N/A |
| `hikvision` | [Optional[models.Hikvision]](../models/hikvision.md) | :heavy_minus_sign: | N/A |
diff --git a/docs/models/servicescan.md b/docs/models/servicescan.md
index c0fd7b3..0c000a9 100644
--- a/docs/models/servicescan.md
+++ b/docs/models/servicescan.md
@@ -36,6 +36,7 @@
| `fox` | [Optional[models.Fox]](../models/fox.md) | :heavy_minus_sign: | N/A |
| `ftp` | [Optional[models.Ftp]](../models/ftp.md) | :heavy_minus_sign: | N/A |
| `gearman` | [Optional[models.Gearman]](../models/gearman.md) | :heavy_minus_sign: | N/A |
+| `hajime` | [Optional[models.Hajime]](../models/hajime.md) | :heavy_minus_sign: | N/A |
| `hid_vertx` | [Optional[models.HidVertx]](../models/hidvertx.md) | :heavy_minus_sign: | N/A |
| `hikvision` | [Optional[models.Hikvision]](../models/hikvision.md) | :heavy_minus_sign: | N/A |
| `ibmnje` | [Optional[models.Ibmnje]](../models/ibmnje.md) | :heavy_minus_sign: | N/A |
diff --git a/docs/sdks/collections/README.md b/docs/sdks/collections/README.md
index 7cccc15..f620a9f 100644
--- a/docs/sdks/collections/README.md
+++ b/docs/sdks/collections/README.md
@@ -17,7 +17,7 @@ Endpoints related to the Collections product
## list
-List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
+List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
### Example Usage
@@ -61,7 +61,7 @@ with SDK(
## create
-Create a new collection.
+Create a new collection.
This endpoint does not cost credits to execute.
### Example Usage
@@ -108,7 +108,7 @@ with SDK(
## delete
-Delete a collection.
+Delete a collection.
This endpoint does not cost credits to execute.
### Example Usage
@@ -151,7 +151,7 @@ with SDK(
## get
-Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
+Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
### Example Usage
@@ -194,7 +194,7 @@ with SDK(
## update
-Update a collection's name, description, and/or query.
+Update a collection's name, description, and/or query.
This endpoint does not cost credits to execute.
### Example Usage
@@ -242,7 +242,7 @@ with SDK(
## list_events
-Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
+Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
This endpoint does not cost credits to execute.
### Example Usage
diff --git a/pyproject.toml b/pyproject.toml
index 09157cd..4a0c211 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,7 +1,7 @@
[project]
name = "censys-platform"
-version = "0.12.1"
+version = "0.12.2"
description = "Python Client SDK Generated by Speakeasy."
authors = [{ name = "Speakeasy" },]
readme = "README-PYPI.md"
diff --git a/src/censys_platform/_version.py b/src/censys_platform/_version.py
index a170f7d..6e72bcd 100644
--- a/src/censys_platform/_version.py
+++ b/src/censys_platform/_version.py
@@ -3,10 +3,10 @@
import importlib.metadata
__title__: str = "censys-platform"
-__version__: str = "0.12.1"
-__openapi_doc_version__: str = "1.0.59"
-__gen_version__: str = "2.791.1"
-__user_agent__: str = "speakeasy-sdk/python 0.12.1 2.791.1 1.0.59 censys-platform"
+__version__: str = "0.12.2"
+__openapi_doc_version__: str = "1.0.63"
+__gen_version__: str = "2.796.1"
+__user_agent__: str = "speakeasy-sdk/python 0.12.2 2.796.1 1.0.63 censys-platform"
try:
if __package__ is not None:
diff --git a/src/censys_platform/basesdk.py b/src/censys_platform/basesdk.py
index c5f5d88..aecdb5c 100644
--- a/src/censys_platform/basesdk.py
+++ b/src/censys_platform/basesdk.py
@@ -7,7 +7,12 @@
AfterSuccessContext,
BeforeRequestContext,
)
-from censys_platform.utils import RetryConfig, SerializedRequestBody, get_body_content
+from censys_platform.utils import (
+ RetryConfig,
+ SerializedRequestBody,
+ get_body_content,
+ run_sync_in_thread,
+)
import httpx
from typing import Callable, List, Mapping, Optional, Tuple
from urllib.parse import parse_qs, urlparse
@@ -311,7 +316,10 @@ async def do_request_async(
async def do():
http_res = None
try:
- req = hooks.before_request(BeforeRequestContext(hook_ctx), request)
+ req = await run_sync_in_thread(
+ hooks.before_request, BeforeRequestContext(hook_ctx), request
+ )
+
logger.debug(
"Request:\nMethod: %s\nURL: %s\nHeaders: %s\nBody: %s",
req.method,
@@ -325,7 +333,10 @@ async def do():
http_res = await client.send(req, stream=stream)
except Exception as e:
- _, e = hooks.after_error(AfterErrorContext(hook_ctx), None, e)
+ _, e = await run_sync_in_thread(
+ hooks.after_error, AfterErrorContext(hook_ctx), None, e
+ )
+
if e is not None:
logger.debug("Request Exception", exc_info=True)
raise e
@@ -343,9 +354,10 @@ async def do():
)
if utils.match_status_codes(error_status_codes, http_res.status_code):
- result, err = hooks.after_error(
- AfterErrorContext(hook_ctx), http_res, None
+ result, err = await run_sync_in_thread(
+ hooks.after_error, AfterErrorContext(hook_ctx), http_res, None
)
+
if err is not None:
logger.debug("Request Exception", exc_info=True)
raise err
@@ -365,6 +377,8 @@ async def do():
http_res = await do()
if not utils.match_status_codes(error_status_codes, http_res.status_code):
- http_res = hooks.after_success(AfterSuccessContext(hook_ctx), http_res)
+ http_res = await run_sync_in_thread(
+ hooks.after_success, AfterSuccessContext(hook_ctx), http_res
+ )
return http_res
diff --git a/src/censys_platform/collections.py b/src/censys_platform/collections.py
index f8f5aba..23beebd 100644
--- a/src/censys_platform/collections.py
+++ b/src/censys_platform/collections.py
@@ -30,7 +30,7 @@ def list(
) -> models.V3CollectionsCrudListResponse:
r"""List collections
- List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
+ List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
:param page_token: page token for the requested page of collection results
@@ -135,7 +135,7 @@ async def list_async(
) -> models.V3CollectionsCrudListResponse:
r"""List collections
- List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
+ List all collections for an organization. Retrieved information includes collection ID, name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
:param page_token: page token for the requested page of collection results
@@ -241,7 +241,7 @@ def create(
) -> models.V3CollectionsCrudCreateResponse:
r"""Create a collection
- Create a new collection.
+ Create a new collection.
This endpoint does not cost credits to execute.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
:param crud_create_input_body:
@@ -354,7 +354,7 @@ async def create_async(
) -> models.V3CollectionsCrudCreateResponse:
r"""Create a collection
- Create a new collection.
+ Create a new collection.
This endpoint does not cost credits to execute.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
:param crud_create_input_body:
@@ -466,7 +466,7 @@ def delete(
) -> models.V3CollectionsCrudDeleteResponse:
r"""Delete a collection
- Delete a collection.
+ Delete a collection.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection. Obtain the collection ID using the [list collections endpoint](https://docs.censys.com/reference/v3-collections-crud-list#/) or via the collection URL when using the web console.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -569,7 +569,7 @@ async def delete_async(
) -> models.V3CollectionsCrudDeleteResponse:
r"""Delete a collection
- Delete a collection.
+ Delete a collection.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection. Obtain the collection ID using the [list collections endpoint](https://docs.censys.com/reference/v3-collections-crud-list#/) or via the collection URL when using the web console.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -671,7 +671,7 @@ def get(
) -> models.V3CollectionsCrudGetResponse:
r"""Get a collection
- Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
+ Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection. Obtain the collection ID using the [list collections endpoint](https://docs.censys.com/reference/v3-collections-crud-list#/) or via the collection URL when using the web console.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -773,7 +773,7 @@ async def get_async(
) -> models.V3CollectionsCrudGetResponse:
r"""Get a collection
- Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
+ Retrieve information about a collection. Retrieved information includes its name, query, description, status, and asset count.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection. Obtain the collection ID using the [list collections endpoint](https://docs.censys.com/reference/v3-collections-crud-list#/) or via the collection URL when using the web console.
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -878,7 +878,7 @@ def update(
) -> models.V3CollectionsCrudUpdateResponse:
r"""Update a collection
- Update a collection's name, description, and/or query.
+ Update a collection's name, description, and/or query.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -994,7 +994,7 @@ async def update_async(
) -> models.V3CollectionsCrudUpdateResponse:
r"""Update a collection
- Update a collection's name, description, and/or query.
+ Update a collection's name, description, and/or query.
This endpoint does not cost credits to execute.
:param collection_uid: The UID for the collection
:param organization_id: The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information.
@@ -1109,7 +1109,7 @@ def list_events(
) -> models.V3CollectionsListEventsResponse:
r"""Get a collection's events
- Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
+ Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
This endpoint does not cost credits to execute.
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
@@ -1211,7 +1211,7 @@ async def list_events_async(
) -> models.V3CollectionsListEventsResponse:
r"""Get a collection's events
- Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
+ Retrieve the event history for a collection. This includes the addition or removal of assets as well as collection status changes.
This endpoint does not cost credits to execute.
:param request: The request object to send.
:param retries: Override the default retry configuration for this method
diff --git a/src/censys_platform/models/__init__.py b/src/censys_platform/models/__init__.py
index 3219d21..25d9747 100644
--- a/src/censys_platform/models/__init__.py
+++ b/src/censys_platform/models/__init__.py
@@ -360,6 +360,7 @@
from .generalnames import GeneralNames, GeneralNamesTypedDict
from .generalsubtreeip import GeneralSubtreeIP, GeneralSubtreeIPTypedDict
from .graphql import Graphql, GraphqlTypedDict
+ from .hajime import Hajime, HajimeTypedDict
from .hidvertx import HidVertx, HidVertxTypedDict
from .hikvision import Hikvision, HikvisionTypedDict
from .hikvision_platform import HikvisionPlatform, HikvisionPlatformTypedDict
@@ -1698,6 +1699,8 @@
"HTTPRepeatedHeaders",
"HTTPRepeatedHeadersTypedDict",
"HTTPTypedDict",
+ "Hajime",
+ "HajimeTypedDict",
"HidVertx",
"HidVertxTypedDict",
"Hikvision",
@@ -3054,6 +3057,8 @@
"GeneralSubtreeIPTypedDict": ".generalsubtreeip",
"Graphql": ".graphql",
"GraphqlTypedDict": ".graphql",
+ "Hajime": ".hajime",
+ "HajimeTypedDict": ".hajime",
"HidVertx": ".hidvertx",
"HidVertxTypedDict": ".hidvertx",
"Hikvision": ".hikvision",
diff --git a/src/censys_platform/models/activemq.py b/src/censys_platform/models/activemq.py
index 1fc0c95..ee70d78 100644
--- a/src/censys_platform/models/activemq.py
+++ b/src/censys_platform/models/activemq.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -45,3 +46,34 @@ class Activemq(BaseModel):
tcp_no_delay_enabled: Optional[bool] = None
tight_encoding_enabled: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "cache_enabled",
+ "cache_size",
+ "max_frame_size",
+ "max_inactivity_duration",
+ "max_inactivity_duration_initial_delay",
+ "platform_details",
+ "provider_name",
+ "provider_version",
+ "size_prefix_disabled",
+ "stack_trace_enabled",
+ "tcp_no_delay_enabled",
+ "tight_encoding_enabled",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/alternativequery.py b/src/censys_platform/models/alternativequery.py
index a3df8d3..01b811c 100644
--- a/src/censys_platform/models/alternativequery.py
+++ b/src/censys_platform/models/alternativequery.py
@@ -31,30 +31,14 @@ class AlternativeQuery(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["targets"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/amqp.py b/src/censys_platform/models/amqp.py
index 913a7f3..6b26132 100644
--- a/src/censys_platform/models/amqp.py
+++ b/src/censys_platform/models/amqp.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .amqp_protocol import AmqpProtocol, AmqpProtocolTypedDict
from .amqp_version import AmqpVersion, AmqpVersionTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,21 @@ class Amqp(BaseModel):
protocol_id: Optional[AmqpProtocol] = None
version: Optional[AmqpVersion] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["explicit_tls", "implicit_tls", "protocol_id", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/amqp_protocol.py b/src/censys_platform/models/amqp_protocol.py
index 3b02d74..d087bb2 100644
--- a/src/censys_platform/models/amqp_protocol.py
+++ b/src/censys_platform/models/amqp_protocol.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class AmqpProtocol(BaseModel):
id: Optional[int] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["id", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/amqp_version.py b/src/censys_platform/models/amqp_version.py
index aa93d94..3a7b744 100644
--- a/src/censys_platform/models/amqp_version.py
+++ b/src/censys_platform/models/amqp_version.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class AmqpVersion(BaseModel):
minor: Optional[int] = None
revision: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["major", "minor", "revision"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/analyticscapabilities.py b/src/censys_platform/models/analyticscapabilities.py
index a7c613e..9a46cde 100644
--- a/src/censys_platform/models/analyticscapabilities.py
+++ b/src/censys_platform/models/analyticscapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,26 @@ class AnalyticsCapabilities(BaseModel):
rule_options_supported: Optional[bool] = None
rule_support: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "analytics_module_support",
+ "cell_based_scene_description_supported",
+ "rule_options_supported",
+ "rule_support",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/anyconnect.py b/src/censys_platform/models/anyconnect.py
index 38466c5..29b6f35 100644
--- a/src/censys_platform/models/anyconnect.py
+++ b/src/censys_platform/models/anyconnect.py
@@ -44,36 +44,27 @@ class AnyConnect(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "aggregate_auth_version",
- "auth_methods",
- "groups",
- "raw",
- "response_type",
- ]
- nullable_fields = ["auth_methods", "groups"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["aggregate_auth_version", "auth_methods", "groups", "raw", "response_type"]
+ )
+ nullable_fields = set(["auth_methods", "groups"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/assetcertificatelistinputbody.py b/src/censys_platform/models/assetcertificatelistinputbody.py
index 159e1fe..cf87507 100644
--- a/src/censys_platform/models/assetcertificatelistinputbody.py
+++ b/src/censys_platform/models/assetcertificatelistinputbody.py
@@ -18,30 +18,14 @@ class AssetCertificateListInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["certificate_ids"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/assethostlistinputbody.py b/src/censys_platform/models/assethostlistinputbody.py
index dcac299..7162c0d 100644
--- a/src/censys_platform/models/assethostlistinputbody.py
+++ b/src/censys_platform/models/assethostlistinputbody.py
@@ -24,30 +24,25 @@ class AssetHostListInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["at_time"]
- nullable_fields = ["host_ids"]
- null_default_fields = []
-
+ optional_fields = set(["at_time"])
+ nullable_fields = set(["host_ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/assetwebpropertylistinputbody.py b/src/censys_platform/models/assetwebpropertylistinputbody.py
index f35093f..fcf17c4 100644
--- a/src/censys_platform/models/assetwebpropertylistinputbody.py
+++ b/src/censys_platform/models/assetwebpropertylistinputbody.py
@@ -24,30 +24,25 @@ class AssetWebpropertyListInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["at_time"]
- nullable_fields = ["webproperty_ids"]
- null_default_fields = []
-
+ optional_fields = set(["at_time"])
+ nullable_fields = set(["webproperty_ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/asteriskmanagerinterface.py b/src/censys_platform/models/asteriskmanagerinterface.py
index b33f779..1b85f93 100644
--- a/src/censys_platform/models/asteriskmanagerinterface.py
+++ b/src/censys_platform/models/asteriskmanagerinterface.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class AsteriskManagerInterfaceTypedDict(TypedDict):
class AsteriskManagerInterface(BaseModel):
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/attribute.py b/src/censys_platform/models/attribute.py
index c89d387..18a0f47 100644
--- a/src/censys_platform/models/attribute.py
+++ b/src/censys_platform/models/attribute.py
@@ -71,44 +71,41 @@ class Attribute(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "components",
- "confidence",
- "cpe",
- "edition",
- "evidence",
- "life_cycle",
- "part",
- "product",
- "source",
- "type",
- "update",
- "vendor",
- "version",
- ]
- nullable_fields = ["components", "evidence", "type"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "components",
+ "confidence",
+ "cpe",
+ "edition",
+ "evidence",
+ "life_cycle",
+ "part",
+ "product",
+ "source",
+ "type",
+ "update",
+ "vendor",
+ "version",
+ ]
+ )
+ nullable_fields = set(["components", "evidence", "type"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/auth.py b/src/censys_platform/models/auth.py
index efa818e..8a21a9e 100644
--- a/src/censys_platform/models/auth.py
+++ b/src/censys_platform/models/auth.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class AuthTypedDict(TypedDict):
class Auth(BaseModel):
enabled: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["enabled"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/authenticationerrordetail.py b/src/censys_platform/models/authenticationerrordetail.py
index 30a4d5f..d2f3045 100644
--- a/src/censys_platform/models/authenticationerrordetail.py
+++ b/src/censys_platform/models/authenticationerrordetail.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -32,3 +33,19 @@ class AuthenticationErrorDetail(BaseModel):
status: Optional[str] = None
r"""HTTP status message associated with the error"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["code", "message", "reason", "request", "status"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/authorityinfoaccess.py b/src/censys_platform/models/authorityinfoaccess.py
index 77912c8..00f97c7 100644
--- a/src/censys_platform/models/authorityinfoaccess.py
+++ b/src/censys_platform/models/authorityinfoaccess.py
@@ -25,30 +25,25 @@ class AuthorityInfoAccess(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["issuer_urls", "ocsp_urls"]
- nullable_fields = ["issuer_urls", "ocsp_urls"]
- null_default_fields = []
-
+ optional_fields = set(["issuer_urls", "ocsp_urls"])
+ nullable_fields = set(["issuer_urls", "ocsp_urls"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/autonomoussystem.py b/src/censys_platform/models/autonomoussystem.py
index 648e095..47d3f1e 100644
--- a/src/censys_platform/models/autonomoussystem.py
+++ b/src/censys_platform/models/autonomoussystem.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,21 @@ class AutonomousSystem(BaseModel):
organization: Optional[str] = None
r"""The name of the organization managning the autonomous system."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["asn", "bgp_prefix", "country_code", "description", "name", "organization"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/autoreplenishconfig.py b/src/censys_platform/models/autoreplenishconfig.py
index bf87f1c..bb7a62e 100644
--- a/src/censys_platform/models/autoreplenishconfig.py
+++ b/src/censys_platform/models/autoreplenishconfig.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class AutoReplenishConfig(BaseModel):
threshold: Optional[int] = None
r"""The threshold at which the organization's credit balance will be auto-replenished."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["amount", "threshold"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/bacnet.py b/src/censys_platform/models/bacnet.py
index 17eb4e5..354b06c 100644
--- a/src/censys_platform/models/bacnet.py
+++ b/src/censys_platform/models/bacnet.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,31 @@ class Bacnet(BaseModel):
vendor_id: Optional[int] = None
vendor_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "application_software_revision",
+ "description",
+ "firmware_revision",
+ "instance_number",
+ "location",
+ "model_name",
+ "object_name",
+ "vendor_id",
+ "vendor_name",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/basicconstraints.py b/src/censys_platform/models/basicconstraints.py
index 53afcc5..38bb623 100644
--- a/src/censys_platform/models/basicconstraints.py
+++ b/src/censys_platform/models/basicconstraints.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class BasicConstraints(BaseModel):
max_path_len: Optional[int] = None
r"""When present, provides the maximum number of intermediate certificates that may follow this certificate in a trusted certification path."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["is_ca", "max_path_len"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cabforganizationid.py b/src/censys_platform/models/cabforganizationid.py
index 10512f0..78216dc 100644
--- a/src/censys_platform/models/cabforganizationid.py
+++ b/src/censys_platform/models/cabforganizationid.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class CabfOrganizationID(BaseModel):
scheme: Optional[str] = None
state: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["country", "reference", "scheme", "state"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/capabilities.py b/src/censys_platform/models/capabilities.py
index fbbead9..97fca1e 100644
--- a/src/censys_platform/models/capabilities.py
+++ b/src/censys_platform/models/capabilities.py
@@ -14,7 +14,8 @@
from .recordingcapabilities import RecordingCapabilities, RecordingCapabilitiesTypedDict
from .replaycapabilities import ReplayCapabilities, ReplayCapabilitiesTypedDict
from .searchcapabilities import SearchCapabilities, SearchCapabilitiesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -52,3 +53,32 @@ class Capabilities(BaseModel):
replay: Optional[ReplayCapabilities] = None
search: Optional[SearchCapabilities] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "analytics",
+ "device",
+ "device_io",
+ "events",
+ "image",
+ "media",
+ "pan_tilt_zoom",
+ "recording",
+ "replay",
+ "search",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/certificate.py b/src/censys_platform/models/certificate.py
index a609b22..d7a6d23 100644
--- a/src/censys_platform/models/certificate.py
+++ b/src/censys_platform/models/certificate.py
@@ -144,54 +144,51 @@ class Certificate(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "added_at",
- "ct",
- "ever_seen_in_scan",
- "fingerprint_md5",
- "fingerprint_sha1",
- "fingerprint_sha256",
- "modified_at",
- "names",
- "parent_spki_fingerprint_sha256",
- "parent_spki_subject_fingerprint_sha256",
- "parse_status",
- "parsed",
- "precert",
- "revocation",
- "revoked",
- "spki_fingerprint_sha256",
- "spki_subject_fingerprint_sha256",
- "tbs_fingerprint_sha256",
- "tbs_no_ct_fingerprint_sha256",
- "validated_at",
- "validation",
- "validation_level",
- "zlint",
- ]
- nullable_fields = ["names"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "added_at",
+ "ct",
+ "ever_seen_in_scan",
+ "fingerprint_md5",
+ "fingerprint_sha1",
+ "fingerprint_sha256",
+ "modified_at",
+ "names",
+ "parent_spki_fingerprint_sha256",
+ "parent_spki_subject_fingerprint_sha256",
+ "parse_status",
+ "parsed",
+ "precert",
+ "revocation",
+ "revoked",
+ "spki_fingerprint_sha256",
+ "spki_subject_fingerprint_sha256",
+ "tbs_fingerprint_sha256",
+ "tbs_no_ct_fingerprint_sha256",
+ "validated_at",
+ "validation",
+ "validation_level",
+ "zlint",
+ ]
+ )
+ nullable_fields = set(["names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/certificate_parsed.py b/src/censys_platform/models/certificate_parsed.py
index 8a10639..8873e66 100644
--- a/src/censys_platform/models/certificate_parsed.py
+++ b/src/censys_platform/models/certificate_parsed.py
@@ -75,45 +75,42 @@ class CertificateParsed(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "extensions",
- "issuer",
- "issuer_dn",
- "ja4x",
- "redacted",
- "serial_number",
- "serial_number_hex",
- "signature",
- "subject",
- "subject_dn",
- "subject_key_info",
- "unknown_extensions",
- "validity_period",
- "version",
- ]
- nullable_fields = ["unknown_extensions"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "extensions",
+ "issuer",
+ "issuer_dn",
+ "ja4x",
+ "redacted",
+ "serial_number",
+ "serial_number_hex",
+ "signature",
+ "subject",
+ "subject_dn",
+ "subject_key_info",
+ "unknown_extensions",
+ "validity_period",
+ "version",
+ ]
+ )
+ nullable_fields = set(["unknown_extensions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/certificateextensions.py b/src/censys_platform/models/certificateextensions.py
index d35d964..fa987a0 100644
--- a/src/censys_platform/models/certificateextensions.py
+++ b/src/censys_platform/models/certificateextensions.py
@@ -95,52 +95,51 @@ class CertificateExtensions(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "authority_info_access",
- "authority_key_id",
- "basic_constraints",
- "cabf_organization_id",
- "certificate_policies",
- "crl_distribution_points",
- "ct_poison",
- "extended_key_usage",
- "issuer_alt_name",
- "key_usage",
- "name_constraints",
- "qc_statements",
- "signed_certificate_timestamps",
- "subject_alt_name",
- "subject_key_id",
- "tor_service_descriptors",
- ]
- nullable_fields = [
- "certificate_policies",
- "crl_distribution_points",
- "signed_certificate_timestamps",
- "tor_service_descriptors",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "authority_info_access",
+ "authority_key_id",
+ "basic_constraints",
+ "cabf_organization_id",
+ "certificate_policies",
+ "crl_distribution_points",
+ "ct_poison",
+ "extended_key_usage",
+ "issuer_alt_name",
+ "key_usage",
+ "name_constraints",
+ "qc_statements",
+ "signed_certificate_timestamps",
+ "subject_alt_name",
+ "subject_key_id",
+ "tor_service_descriptors",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "certificate_policies",
+ "crl_distribution_points",
+ "signed_certificate_timestamps",
+ "tor_service_descriptors",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/certificatepolicy.py b/src/censys_platform/models/certificatepolicy.py
index 4cf7b42..614f024 100644
--- a/src/censys_platform/models/certificatepolicy.py
+++ b/src/censys_platform/models/certificatepolicy.py
@@ -29,30 +29,25 @@ class CertificatePolicy(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["cps", "id", "user_notice"]
- nullable_fields = ["cps", "user_notice"]
- null_default_fields = []
-
+ optional_fields = set(["cps", "id", "user_notice"])
+ nullable_fields = set(["cps", "user_notice"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/certificaterevocation.py b/src/censys_platform/models/certificaterevocation.py
index 282a72c..561eaa0 100644
--- a/src/censys_platform/models/certificaterevocation.py
+++ b/src/censys_platform/models/certificaterevocation.py
@@ -5,7 +5,8 @@
CertificateRevocationRevocationInfo,
CertificateRevocationRevocationInfoTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class CertificateRevocation(BaseModel):
crl: Optional[CertificateRevocationRevocationInfo] = None
ocsp: Optional[CertificateRevocationRevocationInfo] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["crl", "ocsp"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/certificaterevocation_revocationinfo.py b/src/censys_platform/models/certificaterevocation_revocationinfo.py
index a7e4d88..c20d8a8 100644
--- a/src/censys_platform/models/certificaterevocation_revocationinfo.py
+++ b/src/censys_platform/models/certificaterevocation_revocationinfo.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,19 @@ class CertificateRevocationRevocationInfo(BaseModel):
revoked: Optional[bool] = None
r"""Whether the certificate has been revoked before its expiry date by the issuer."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["next_update", "reason", "revocation_time", "revoked"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/checkpointtopology.py b/src/censys_platform/models/checkpointtopology.py
index 5da6e65..775fdea 100644
--- a/src/censys_platform/models/checkpointtopology.py
+++ b/src/censys_platform/models/checkpointtopology.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class CheckpointTopology(BaseModel):
common_name: Optional[str] = None
organization: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["common_name", "organization"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/chromecast.py b/src/censys_platform/models/chromecast.py
index 98cda17..2a0718b 100644
--- a/src/censys_platform/models/chromecast.py
+++ b/src/censys_platform/models/chromecast.py
@@ -45,38 +45,35 @@ class Chromecast(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "applications",
- "icon_url",
- "is_active_input",
- "protocol_version",
- "status_text",
- "universal_app_id",
- "volume",
- ]
- nullable_fields = ["applications"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "applications",
+ "icon_url",
+ "is_active_input",
+ "protocol_version",
+ "status_text",
+ "universal_app_id",
+ "volume",
+ ]
+ )
+ nullable_fields = set(["applications"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/chromecast_application.py b/src/censys_platform/models/chromecast_application.py
index 740e702..93a77c3 100644
--- a/src/censys_platform/models/chromecast_application.py
+++ b/src/censys_platform/models/chromecast_application.py
@@ -38,37 +38,34 @@ class ChromecastApplication(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "app_id",
- "app_type",
- "display_name",
- "namespaces",
- "session_id",
- "transport_id",
- ]
- nullable_fields = ["namespaces"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "app_id",
+ "app_type",
+ "display_name",
+ "namespaces",
+ "session_id",
+ "transport_id",
+ ]
+ )
+ nullable_fields = set(["namespaces"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/chromecast_namespace.py b/src/censys_platform/models/chromecast_namespace.py
index db947ad..f0c3670 100644
--- a/src/censys_platform/models/chromecast_namespace.py
+++ b/src/censys_platform/models/chromecast_namespace.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class ChromecastNamespaceTypedDict(TypedDict):
class ChromecastNamespace(BaseModel):
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/chromecast_volume.py b/src/censys_platform/models/chromecast_volume.py
index 40297b3..db1510a 100644
--- a/src/censys_platform/models/chromecast_volume.py
+++ b/src/censys_platform/models/chromecast_volume.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .floatvalue import FloatValue, FloatValueTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,19 @@ class ChromecastVolume(BaseModel):
muted: Optional[bool] = None
step_interval: Optional[FloatValue] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["control_type", "level", "muted", "step_interval"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/chromedevtools.py b/src/censys_platform/models/chromedevtools.py
index c3fd00b..e21e592 100644
--- a/src/censys_platform/models/chromedevtools.py
+++ b/src/censys_platform/models/chromedevtools.py
@@ -38,37 +38,34 @@ class ChromeDevtools(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "browser",
- "protocol_version",
- "targets",
- "user_agent",
- "v8_version",
- "webkit_version",
- ]
- nullable_fields = ["targets"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "browser",
+ "protocol_version",
+ "targets",
+ "user_agent",
+ "v8_version",
+ "webkit_version",
+ ]
+ )
+ nullable_fields = set(["targets"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/chromedevtools_target.py b/src/censys_platform/models/chromedevtools_target.py
index d1ad4bb..8acdb8f 100644
--- a/src/censys_platform/models/chromedevtools_target.py
+++ b/src/censys_platform/models/chromedevtools_target.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class ChromeDevtoolsTarget(BaseModel):
type: Optional[str] = None
url: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["title", "type", "url"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ciscoipsla.py b/src/censys_platform/models/ciscoipsla.py
index da4105e..e53d08f 100644
--- a/src/censys_platform/models/ciscoipsla.py
+++ b/src/censys_platform/models/ciscoipsla.py
@@ -6,7 +6,8 @@
CiscoIpslaMeasureResponse,
CiscoIpslaMeasureResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class CiscoIpsla(BaseModel):
handshake: Optional[CiscoIpslaHandshake] = None
measure_response: Optional[CiscoIpslaMeasureResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["handshake", "measure_response"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ciscoipsla_handshake.py b/src/censys_platform/models/ciscoipsla_handshake.py
index f946a1e..18f5443 100644
--- a/src/censys_platform/models/ciscoipsla_handshake.py
+++ b/src/censys_platform/models/ciscoipsla_handshake.py
@@ -9,7 +9,8 @@
CiscoIpslaHandshakeMessage,
CiscoIpslaHandshakeMessageTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -23,3 +24,19 @@ class CiscoIpslaHandshake(BaseModel):
header: Optional[CiscoIpslaHandshakeHeader] = None
message: Optional[CiscoIpslaHandshakeMessage] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["header", "message"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ciscoipsla_handshake_header.py b/src/censys_platform/models/ciscoipsla_handshake_header.py
index c151f99..7f44de7 100644
--- a/src/censys_platform/models/ciscoipsla_handshake_header.py
+++ b/src/censys_platform/models/ciscoipsla_handshake_header.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class CiscoIpslaHandshakeHeader(BaseModel):
unknown: Optional[int] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["length", "seq", "unknown", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ciscoipsla_handshake_message.py b/src/censys_platform/models/ciscoipsla_handshake_message.py
index f165ff9..b1cd59f 100644
--- a/src/censys_platform/models/ciscoipsla_handshake_message.py
+++ b/src/censys_platform/models/ciscoipsla_handshake_message.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class CiscoIpslaHandshakeMessage(BaseModel):
port: Optional[int] = None
type: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ip", "length", "port", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ciscoipsla_measureresponse.py b/src/censys_platform/models/ciscoipsla_measureresponse.py
index da136a8..8ecbbaa 100644
--- a/src/censys_platform/models/ciscoipsla_measureresponse.py
+++ b/src/censys_platform/models/ciscoipsla_measureresponse.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class CiscoIpslaMeasureResponse(BaseModel):
send_time: Optional[int] = None
type: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "flags",
+ "payload",
+ "receive_seq",
+ "receive_time",
+ "send_seq",
+ "send_time",
+ "type",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/coap.py b/src/censys_platform/models/coap.py
index e2f659b..3c3cf89 100644
--- a/src/censys_platform/models/coap.py
+++ b/src/censys_platform/models/coap.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,21 @@ class Coap(BaseModel):
token: Optional[str] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["code", "message_id", "message_type", "payload", "token", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cobaltstrike.py b/src/censys_platform/models/cobaltstrike.py
index 7db1348..cc88753 100644
--- a/src/censys_platform/models/cobaltstrike.py
+++ b/src/censys_platform/models/cobaltstrike.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .cobaltstrike_config import CobaltStrikeConfig, CobaltStrikeConfigTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class CobaltStrike(BaseModel):
x64: Optional[CobaltStrikeConfig] = None
x86: Optional[CobaltStrikeConfig] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["x64", "x86"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cobaltstrike_config.py b/src/censys_platform/models/cobaltstrike_config.py
index 96df2cc..cf9e01f 100644
--- a/src/censys_platform/models/cobaltstrike_config.py
+++ b/src/censys_platform/models/cobaltstrike_config.py
@@ -6,7 +6,8 @@
CobaltStrikeHTTPConfigTypedDict,
)
from .cobaltstrike_postex import CobaltStrikePostEx, CobaltStrikePostExTypedDict
-from censys_platform.types import BaseModel, Nullable
+from censys_platform.types import BaseModel, Nullable, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -62,3 +63,38 @@ class CobaltStrikeConfig(BaseModel):
user_agent: Optional[str] = None
watermark: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "cookie_beacon",
+ "crypto_scheme",
+ "dns",
+ "host_header",
+ "http_get",
+ "http_post",
+ "jitter",
+ "killdate",
+ "post_ex",
+ "public_key",
+ "sleep_time",
+ "ssl",
+ "unknown_bytes",
+ "unknown_int",
+ "user_agent",
+ "watermark",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cobaltstrike_httpconfig.py b/src/censys_platform/models/cobaltstrike_httpconfig.py
index 2757bb2..ae1a8b5 100644
--- a/src/censys_platform/models/cobaltstrike_httpconfig.py
+++ b/src/censys_platform/models/cobaltstrike_httpconfig.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class CobaltStrikeHTTPConfig(BaseModel):
uri: Optional[str] = None
verb: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["client", "uri", "verb"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cobaltstrike_postex.py b/src/censys_platform/models/cobaltstrike_postex.py
index 94cde11..8f0d546 100644
--- a/src/censys_platform/models/cobaltstrike_postex.py
+++ b/src/censys_platform/models/cobaltstrike_postex.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class CobaltStrikePostEx(BaseModel):
x64: Optional[str] = None
x86: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["x64", "x86"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/collection.py b/src/censys_platform/models/collection.py
index 85884de..4758082 100644
--- a/src/censys_platform/models/collection.py
+++ b/src/censys_platform/models/collection.py
@@ -68,30 +68,25 @@ class Collection(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["created_by"]
- nullable_fields = ["status_reason"]
- null_default_fields = []
-
+ optional_fields = set(["created_by"])
+ nullable_fields = set(["status_reason"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/collectionevent.py b/src/censys_platform/models/collectionevent.py
index 9443339..27dac43 100644
--- a/src/censys_platform/models/collectionevent.py
+++ b/src/censys_platform/models/collectionevent.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .eventassetchange import EventAssetChange, EventAssetChangeTypedDict
from .eventstatuschange import EventStatusChange, EventStatusChangeTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class CollectionEvent(BaseModel):
asset_change: Optional[EventAssetChange] = None
status_change: Optional[EventStatusChange] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["asset_change", "status_change"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/collectioneventsresponse.py b/src/censys_platform/models/collectioneventsresponse.py
index 5ae24b3..60ed772 100644
--- a/src/censys_platform/models/collectioneventsresponse.py
+++ b/src/censys_platform/models/collectioneventsresponse.py
@@ -20,30 +20,14 @@ class CollectionEventsResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["events"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/connection.py b/src/censys_platform/models/connection.py
index 70fc504..407c2b0 100644
--- a/src/censys_platform/models/connection.py
+++ b/src/censys_platform/models/connection.py
@@ -46,40 +46,37 @@ class Connection(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "ahs_length",
- "cmd_seq",
- "isid",
- "keyval_pairs",
- "max_new_cmds",
- "status_seq",
- "tsih",
- "version_active",
- "version_max",
- ]
- nullable_fields = ["keyval_pairs"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "ahs_length",
+ "cmd_seq",
+ "isid",
+ "keyval_pairs",
+ "max_new_cmds",
+ "status_seq",
+ "tsih",
+ "version_active",
+ "version_max",
+ ]
+ )
+ nullable_fields = set(["keyval_pairs"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/contact.py b/src/censys_platform/models/contact.py
index ea4f854..4cb60c7 100644
--- a/src/censys_platform/models/contact.py
+++ b/src/censys_platform/models/contact.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class Contact(BaseModel):
handle: Optional[str] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["email", "handle", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/coordinates.py b/src/censys_platform/models/coordinates.py
index ec2b047..d82d249 100644
--- a/src/censys_platform/models/coordinates.py
+++ b/src/censys_platform/models/coordinates.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class Coordinates(BaseModel):
latitude: Optional[float] = None
longitude: Optional[float] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["latitude", "longitude"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/countcondition.py b/src/censys_platform/models/countcondition.py
index 4374e33..b6ff96c 100644
--- a/src/censys_platform/models/countcondition.py
+++ b/src/censys_platform/models/countcondition.py
@@ -19,30 +19,14 @@ class CountCondition(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["field_value_pairs"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/cpe.py b/src/censys_platform/models/cpe.py
index 4be8bcc..5759626 100644
--- a/src/censys_platform/models/cpe.py
+++ b/src/censys_platform/models/cpe.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .cpe_lifecycle import CPELifeCycle, CPELifeCycleTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,30 @@ class Cpe(BaseModel):
vendor: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "cpe",
+ "edition",
+ "life_cycle",
+ "part",
+ "product",
+ "update",
+ "vendor",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cpe_lifecycle.py b/src/censys_platform/models/cpe_lifecycle.py
index 69e5865..954612f 100644
--- a/src/censys_platform/models/cpe_lifecycle.py
+++ b/src/censys_platform/models/cpe_lifecycle.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class CPELifeCycle(BaseModel):
end_of_life_date: Optional[str] = None
release_date: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["end_of_life", "end_of_life_date", "release_date"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/creditexpiration.py b/src/censys_platform/models/creditexpiration.py
index f7fdb8e..5d00081 100644
--- a/src/censys_platform/models/creditexpiration.py
+++ b/src/censys_platform/models/creditexpiration.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from datetime import datetime
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,19 @@ class CreditExpiration(BaseModel):
expires_at: Optional[datetime] = None
r"""The date and time the credit expiration will expire."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["created_at", "expires_at"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/crestroncp3.py b/src/censys_platform/models/crestroncp3.py
index 75d44e4..fdb34d7 100644
--- a/src/censys_platform/models/crestroncp3.py
+++ b/src/censys_platform/models/crestroncp3.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class CrestronCp3TypedDict(TypedDict):
class CrestronCp3(BaseModel):
version_string: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["version_string"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/crestrondinap2.py b/src/censys_platform/models/crestrondinap2.py
index 559f4ac..dcd5fd1 100644
--- a/src/censys_platform/models/crestrondinap2.py
+++ b/src/censys_platform/models/crestrondinap2.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class CrestronDinAp2TypedDict(TypedDict):
class CrestronDinAp2(BaseModel):
version_string: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["version_string"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/crudcreateinputbody.py b/src/censys_platform/models/crudcreateinputbody.py
index 37856b9..641cdde 100644
--- a/src/censys_platform/models/crudcreateinputbody.py
+++ b/src/censys_platform/models/crudcreateinputbody.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class CrudCreateInputBody(BaseModel):
description: Optional[str] = None
r"""description of the collection"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["description"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/crudupdateinputbody.py b/src/censys_platform/models/crudupdateinputbody.py
index 172165b..fce675f 100644
--- a/src/censys_platform/models/crudupdateinputbody.py
+++ b/src/censys_platform/models/crudupdateinputbody.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class CrudUpdateInputBody(BaseModel):
description: Optional[str] = None
r"""description of the collection"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["description"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cryptsetup.py b/src/censys_platform/models/cryptsetup.py
index e2cd06d..20f0bf9 100644
--- a/src/censys_platform/models/cryptsetup.py
+++ b/src/censys_platform/models/cryptsetup.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class CryptSetup(BaseModel):
key: Optional[str] = None
server_nonce: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["client_nonce", "key", "server_nonce"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ct.py b/src/censys_platform/models/ct.py
index 41dc175..065c215 100644
--- a/src/censys_platform/models/ct.py
+++ b/src/censys_platform/models/ct.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .ct_record import CtRecord, CtRecordTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class CtTypedDict(TypedDict):
class Ct(BaseModel):
entries: Optional[Dict[str, CtRecord]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["entries"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ct_record.py b/src/censys_platform/models/ct_record.py
index f0acddd..8682504 100644
--- a/src/censys_platform/models/ct_record.py
+++ b/src/censys_platform/models/ct_record.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class CtRecord(BaseModel):
index: Optional[int] = None
r"""Numerical marker of the certificate's place in the CT log."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["added_to_ct_at", "ct_to_censys_at", "index"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cvss.py b/src/censys_platform/models/cvss.py
index 4a07eb9..a8869db 100644
--- a/src/censys_platform/models/cvss.py
+++ b/src/censys_platform/models/cvss.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .cvss_components import CVSSComponents, CVSSComponentsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -23,3 +24,19 @@ class Cvss(BaseModel):
vector: Optional[str] = None
r"""The path, method, or scenario used to exploit the vulnerability. Each section represents components that contribute to the overall CVSS score."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["components", "score", "vector"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cvss_components.py b/src/censys_platform/models/cvss_components.py
index 8f5f532..668ffcb 100644
--- a/src/censys_platform/models/cvss_components.py
+++ b/src/censys_platform/models/cvss_components.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -120,3 +121,30 @@ class CVSSComponents(BaseModel):
user_interaction: Optional[UserInteraction] = None
r"""Describes whether a user, other than the attacker, is required to do anything or participate in exploitation of the vulnerability. User interaction has two possible values: None (N) – No user interaction is required, Required (R) – A user must complete some steps for the exploit to succeed. For example, a user might be required to install some software."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "attack_complexity",
+ "attack_vector",
+ "availability",
+ "confidentiality",
+ "integrity",
+ "privileges_required",
+ "scope",
+ "user_interaction",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cvssv4.py b/src/censys_platform/models/cvssv4.py
index 2cddd69..4d9c05a 100644
--- a/src/censys_platform/models/cvssv4.py
+++ b/src/censys_platform/models/cvssv4.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .cvssv4_components import CVSSv4Components, CVSSv4ComponentsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -23,3 +24,19 @@ class CVSSv4(BaseModel):
vector: Optional[str] = None
r"""The path, method, or scenario used to exploit the vulnerability. Each section represents components that contribute to the overall CVSS score."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["components", "score", "vector"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cvssv4_components.py b/src/censys_platform/models/cvssv4_components.py
index 9746795..a9e301c 100644
--- a/src/censys_platform/models/cvssv4_components.py
+++ b/src/censys_platform/models/cvssv4_components.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -174,3 +175,36 @@ class CVSSv4Components(BaseModel):
value_density: Optional[ValueDensity] = None
vulnerability_response_effort: Optional[VulnerabilityResponseEffort] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "attack_complexity",
+ "attack_requirements",
+ "attack_vector",
+ "automatable",
+ "availability",
+ "confidentiality",
+ "integrity",
+ "privileges_required",
+ "provider_urgency",
+ "recovery",
+ "safety",
+ "user_interaction",
+ "value_density",
+ "vulnerability_response_effort",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cwe.py b/src/censys_platform/models/cwe.py
index 4fe7adc..0489f35 100644
--- a/src/censys_platform/models/cwe.py
+++ b/src/censys_platform/models/cwe.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -14,3 +15,19 @@ class CweTypedDict(TypedDict):
class Cwe(BaseModel):
entry: Optional[str] = None
r"""A unique identifier associated with a class of a software or hardware weakness."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["entry"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/cwmp.py b/src/censys_platform/models/cwmp.py
index ad62479..5827766 100644
--- a/src/censys_platform/models/cwmp.py
+++ b/src/censys_platform/models/cwmp.py
@@ -28,30 +28,25 @@ class Cwmp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["auth", "cookies", "server"]
- nullable_fields = ["auth", "cookies"]
- null_default_fields = []
-
+ optional_fields = set(["auth", "cookies", "server"])
+ nullable_fields = set(["auth", "cookies"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/darkcomet.py b/src/censys_platform/models/darkcomet.py
index f1b4056..81c4904 100644
--- a/src/censys_platform/models/darkcomet.py
+++ b/src/censys_platform/models/darkcomet.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class DarkcometTypedDict(TypedDict):
class Darkcomet(BaseModel):
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/darkgate.py b/src/censys_platform/models/darkgate.py
index 89e4945..9fba224 100644
--- a/src/censys_platform/models/darkgate.py
+++ b/src/censys_platform/models/darkgate.py
@@ -23,30 +23,25 @@ class Darkgate(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["files"]
- nullable_fields = ["files"]
- null_default_fields = []
-
+ optional_fields = set(["files"])
+ nullable_fields = set(["files"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/darkgate_file.py b/src/censys_platform/models/darkgate_file.py
index ffdb49b..14ffd02 100644
--- a/src/censys_platform/models/darkgate_file.py
+++ b/src/censys_platform/models/darkgate_file.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class DarkgateFile(BaseModel):
length: Optional[int] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["length", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dcerpc.py b/src/censys_platform/models/dcerpc.py
index c99a852..916c1d5 100644
--- a/src/censys_platform/models/dcerpc.py
+++ b/src/censys_platform/models/dcerpc.py
@@ -29,30 +29,25 @@ class Dcerpc(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["could_bind", "could_query_epm", "endpoints"]
- nullable_fields = ["endpoints"]
- null_default_fields = []
-
+ optional_fields = set(["could_bind", "could_query_epm", "endpoints"])
+ nullable_fields = set(["endpoints"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/dcerpc_endpoint.py b/src/censys_platform/models/dcerpc_endpoint.py
index 3c816b2..cd3a362 100644
--- a/src/censys_platform/models/dcerpc_endpoint.py
+++ b/src/censys_platform/models/dcerpc_endpoint.py
@@ -31,30 +31,25 @@ class DcerpcEndpoint(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["bindings", "executable", "explained_uuid", "protocol"]
- nullable_fields = ["bindings"]
- null_default_fields = []
-
+ optional_fields = set(["bindings", "executable", "explained_uuid", "protocol"])
+ nullable_fields = set(["bindings"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/desktopinfo.py b/src/censys_platform/models/desktopinfo.py
index 89b1b01..be5e59c 100644
--- a/src/censys_platform/models/desktopinfo.py
+++ b/src/censys_platform/models/desktopinfo.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .pixelformat import PixelFormat, PixelFormatTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,19 @@ class DesktopInfo(BaseModel):
pixel_format: Optional[PixelFormat] = None
width: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["height", "name_len", "pixel_format", "width"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/devicecapabilities.py b/src/censys_platform/models/devicecapabilities.py
index ac450d3..3a2d02c 100644
--- a/src/censys_platform/models/devicecapabilities.py
+++ b/src/censys_platform/models/devicecapabilities.py
@@ -4,7 +4,8 @@
from .networkcapabilities import NetworkCapabilities, NetworkCapabilitiesTypedDict
from .securitycapabilities import SecurityCapabilities, SecurityCapabilitiesTypedDict
from .systemcapabilities import SystemCapabilities, SystemCapabilitiesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class DeviceCapabilities(BaseModel):
security: Optional[SecurityCapabilities] = None
system: Optional[SystemCapabilities] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["network", "security", "system"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/deviceiocapabilities.py b/src/censys_platform/models/deviceiocapabilities.py
index f9b0ef6..7d59008 100644
--- a/src/censys_platform/models/deviceiocapabilities.py
+++ b/src/censys_platform/models/deviceiocapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class DeviceIOCapabilities(BaseModel):
video_outputs: Optional[int] = None
video_source: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "audio_outputs",
+ "audio_sources",
+ "digital_inputs",
+ "relay_outputs",
+ "serial_ports",
+ "video_outputs",
+ "video_source",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dhcpdiscover.py b/src/censys_platform/models/dhcpdiscover.py
index ce4d00b..81a858c 100644
--- a/src/censys_platform/models/dhcpdiscover.py
+++ b/src/censys_platform/models/dhcpdiscover.py
@@ -5,7 +5,8 @@
DhcpdiscoverResponseParams,
DhcpdiscoverResponseParamsTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class Dhcpdiscover(BaseModel):
method: Optional[str] = None
params: Optional[DhcpdiscoverResponseParams] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["method", "params"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dhcpdiscover_deviceinfo.py b/src/censys_platform/models/dhcpdiscover_deviceinfo.py
index ba1b2c1..106064f 100644
--- a/src/censys_platform/models/dhcpdiscover_deviceinfo.py
+++ b/src/censys_platform/models/dhcpdiscover_deviceinfo.py
@@ -5,7 +5,8 @@
DhcpdiscoverIPAddress,
DhcpdiscoverIPAddressTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -70,3 +71,41 @@ class DhcpdiscoverDeviceInfo(BaseModel):
video_input_channels: Optional[int] = None
video_output_channels: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "alarm_input_channels",
+ "alarm_output_channels",
+ "device_class",
+ "device_id",
+ "device_type",
+ "http_port",
+ "ipv4_address",
+ "ipv6_address",
+ "machine_group",
+ "machine_name",
+ "manufacturer",
+ "port",
+ "remote_video_input_channels",
+ "serial_number",
+ "unlogin_func_mask",
+ "vendor",
+ "version",
+ "video_input_channels",
+ "video_output_channels",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dhcpdiscover_ipaddress.py b/src/censys_platform/models/dhcpdiscover_ipaddress.py
index a1112be..026c522 100644
--- a/src/censys_platform/models/dhcpdiscover_ipaddress.py
+++ b/src/censys_platform/models/dhcpdiscover_ipaddress.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class DhcpdiscoverIPAddress(BaseModel):
link_local_address: Optional[str] = None
subnetmask: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "default_gateway",
+ "dhcp_enable",
+ "ip_address",
+ "link_local_address",
+ "subnetmask",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dhcpdiscover_responseparams.py b/src/censys_platform/models/dhcpdiscover_responseparams.py
index 46e37a8..54e31e3 100644
--- a/src/censys_platform/models/dhcpdiscover_responseparams.py
+++ b/src/censys_platform/models/dhcpdiscover_responseparams.py
@@ -5,7 +5,8 @@
DhcpdiscoverDeviceInfo,
DhcpdiscoverDeviceInfoTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class DhcpdiscoverResponseParamsTypedDict(TypedDict):
class DhcpdiscoverResponseParams(BaseModel):
device_info: Optional[DhcpdiscoverDeviceInfo] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["device_info"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/distinguishedname.py b/src/censys_platform/models/distinguishedname.py
index 6cf20ed..378124b 100644
--- a/src/censys_platform/models/distinguishedname.py
+++ b/src/censys_platform/models/distinguishedname.py
@@ -102,66 +102,65 @@ class DistinguishedName(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "common_name",
- "country",
- "domain_component",
- "email_address",
- "given_name",
- "jurisdiction_country",
- "jurisdiction_locality",
- "jurisdiction_province",
- "locality",
- "organization",
- "organization_id",
- "organizational_unit",
- "postal_code",
- "province",
- "serial_number",
- "street_address",
- "surname",
- ]
- nullable_fields = [
- "common_name",
- "country",
- "domain_component",
- "email_address",
- "given_name",
- "jurisdiction_country",
- "jurisdiction_locality",
- "jurisdiction_province",
- "locality",
- "organization",
- "organization_id",
- "organizational_unit",
- "postal_code",
- "province",
- "serial_number",
- "street_address",
- "surname",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "common_name",
+ "country",
+ "domain_component",
+ "email_address",
+ "given_name",
+ "jurisdiction_country",
+ "jurisdiction_locality",
+ "jurisdiction_province",
+ "locality",
+ "organization",
+ "organization_id",
+ "organizational_unit",
+ "postal_code",
+ "province",
+ "serial_number",
+ "street_address",
+ "surname",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "common_name",
+ "country",
+ "domain_component",
+ "email_address",
+ "given_name",
+ "jurisdiction_country",
+ "jurisdiction_locality",
+ "jurisdiction_province",
+ "locality",
+ "organization",
+ "organization_id",
+ "organizational_unit",
+ "postal_code",
+ "province",
+ "serial_number",
+ "street_address",
+ "surname",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/dns.py b/src/censys_platform/models/dns.py
index a224ed2..7f83a03 100644
--- a/src/censys_platform/models/dns.py
+++ b/src/censys_platform/models/dns.py
@@ -98,40 +98,37 @@ class DNS(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "additionals",
- "answers",
- "authorities",
- "edns",
- "questions",
- "r_code",
- "resolves_correctly",
- "server_type",
- "version",
- ]
- nullable_fields = ["additionals", "answers", "authorities", "questions"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "additionals",
+ "answers",
+ "authorities",
+ "edns",
+ "questions",
+ "r_code",
+ "resolves_correctly",
+ "server_type",
+ "version",
+ ]
+ )
+ nullable_fields = set(["additionals", "answers", "authorities", "questions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/dns_edns.py b/src/censys_platform/models/dns_edns.py
index cf94cfc..0fbcfe0 100644
--- a/src/censys_platform/models/dns_edns.py
+++ b/src/censys_platform/models/dns_edns.py
@@ -31,30 +31,25 @@ class DNSEDNS(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["do", "options", "udp", "version"]
- nullable_fields = ["options"]
- null_default_fields = []
-
+ optional_fields = set(["do", "options", "udp", "version"])
+ nullable_fields = set(["options"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/dns_resourcerecord.py b/src/censys_platform/models/dns_resourcerecord.py
index 5b62c9d..ace271b 100644
--- a/src/censys_platform/models/dns_resourcerecord.py
+++ b/src/censys_platform/models/dns_resourcerecord.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,19 @@ class DNSResourceRecord(BaseModel):
type: Optional[DNSResourceRecordType] = None
r"""An enumerated field indicating what type of data is in the \"services.dns.additionals.response\" field. For example, \"A\" signifies that the value in \"services.dns.additionals.response\" is an IPv4 address for the FQDN in \"services.dns.additionals.name\"."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "response", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dsacryptographickey.py b/src/censys_platform/models/dsacryptographickey.py
index e4cfe0f..b009bca 100644
--- a/src/censys_platform/models/dsacryptographickey.py
+++ b/src/censys_platform/models/dsacryptographickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class DSACryptographicKey(BaseModel):
q: Optional[str] = None
y: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["g", "p", "q", "y"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dsapublickey.py b/src/censys_platform/models/dsapublickey.py
index 874943e..dbf16e3 100644
--- a/src/censys_platform/models/dsapublickey.py
+++ b/src/censys_platform/models/dsapublickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class DsaPublicKey(BaseModel):
q: Optional[str] = None
y: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["g", "p", "q", "y"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dvrip.py b/src/censys_platform/models/dvrip.py
index f9f08bd..72bc2da 100644
--- a/src/censys_platform/models/dvrip.py
+++ b/src/censys_platform/models/dvrip.py
@@ -5,7 +5,8 @@
DvrIPPartitionCapability,
DvrIPPartitionCapabilityTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -49,3 +50,34 @@ class DvrIP(BaseModel):
version: Optional[str] = None
wireless_alarm_capability: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "access_url",
+ "function_capability",
+ "function_list",
+ "hard_drive",
+ "language_support",
+ "network_status",
+ "oem_info",
+ "partition_capability",
+ "serial",
+ "split_screen_capability",
+ "version",
+ "wireless_alarm_capability",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/dvrip_partitioncapability.py b/src/censys_platform/models/dvrip_partitioncapability.py
index 955288c..1095f5a 100644
--- a/src/censys_platform/models/dvrip_partitioncapability.py
+++ b/src/censys_platform/models/dvrip_partitioncapability.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class DvrIPPartitionCapability(BaseModel):
max_partition_number: Optional[int] = None
supported: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["max_partition_number", "supported"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ecdsacryptographickey.py b/src/censys_platform/models/ecdsacryptographickey.py
index db67ae6..980fe88 100644
--- a/src/censys_platform/models/ecdsacryptographickey.py
+++ b/src/censys_platform/models/ecdsacryptographickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,21 @@ class ECDSACryptographicKey(BaseModel):
x: Optional[str] = None
y: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["b", "curve", "gx", "gy", "length", "n", "p", "pub", "x", "y"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ecdsapublickey.py b/src/censys_platform/models/ecdsapublickey.py
index 59ced67..9559afe 100644
--- a/src/censys_platform/models/ecdsapublickey.py
+++ b/src/censys_platform/models/ecdsapublickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,21 @@ class EcdsaPublicKey(BaseModel):
x: Optional[str] = None
y: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["b", "curve", "gx", "gy", "length", "n", "p", "pub", "x", "y"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ed25519cryptographickey.py b/src/censys_platform/models/ed25519cryptographickey.py
index 22fe75a..75e2a3a 100644
--- a/src/censys_platform/models/ed25519cryptographickey.py
+++ b/src/censys_platform/models/ed25519cryptographickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class Ed25519CryptographicKeyTypedDict(TypedDict):
class Ed25519CryptographicKey(BaseModel):
public_bytes: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["public_bytes"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/edipartyname.py b/src/censys_platform/models/edipartyname.py
index c0963e8..a8bfc58 100644
--- a/src/censys_platform/models/edipartyname.py
+++ b/src/censys_platform/models/edipartyname.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class EdiPartyName(BaseModel):
name_assigner: Optional[str] = None
party_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name_assigner", "party_name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/eip.py b/src/censys_platform/models/eip.py
index cd2c15b..37c7f8d 100644
--- a/src/censys_platform/models/eip.py
+++ b/src/censys_platform/models/eip.py
@@ -31,30 +31,25 @@ class Eip(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["identity", "interfaces", "services"]
- nullable_fields = ["interfaces", "services"]
- null_default_fields = []
-
+ optional_fields = set(["identity", "interfaces", "services"])
+ nullable_fields = set(["interfaces", "services"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/eip_identity.py b/src/censys_platform/models/eip_identity.py
index e3bd12d..ebe1e06 100644
--- a/src/censys_platform/models/eip_identity.py
+++ b/src/censys_platform/models/eip_identity.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -45,3 +46,34 @@ class EipIdentity(BaseModel):
vendor_id: Optional[str] = None
vendor_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "device_type",
+ "device_type_code",
+ "product_code",
+ "product_name",
+ "revision",
+ "serial_number",
+ "socket_addr",
+ "socket_port",
+ "state",
+ "status",
+ "vendor_id",
+ "vendor_name",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/eip_interface.py b/src/censys_platform/models/eip_interface.py
index ffb6cf2..347559e 100644
--- a/src/censys_platform/models/eip_interface.py
+++ b/src/censys_platform/models/eip_interface.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class EipInterface(BaseModel):
index: Optional[int] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["index", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/eip_service.py b/src/censys_platform/models/eip_service.py
index 0cd44ed..37565da 100644
--- a/src/censys_platform/models/eip_service.py
+++ b/src/censys_platform/models/eip_service.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class EipService(BaseModel):
supports_tcp: Optional[bool] = None
supports_udp: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["capabilities", "service_name", "supports_tcp", "supports_udp"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch.py b/src/censys_platform/models/elasticsearch.py
index 4072eb3..acd5235 100644
--- a/src/censys_platform/models/elasticsearch.py
+++ b/src/censys_platform/models/elasticsearch.py
@@ -13,7 +13,8 @@
ElasticSearchSystemInfo,
ElasticSearchSystemInfoTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,19 @@ class ElasticSearch(BaseModel):
results_node_info: Optional[ElasticSearchResultsNodeInfo] = None
system_info: Optional[ElasticSearchSystemInfo] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["error_message", "results_node_info", "system_info"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_errormessage.py b/src/censys_platform/models/elasticsearch_errormessage.py
index 3703152..9adb852 100644
--- a/src/censys_platform/models/elasticsearch_errormessage.py
+++ b/src/censys_platform/models/elasticsearch_errormessage.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class ElasticSearchErrorMessage(BaseModel):
reason: Optional[str] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["header", "reason", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo.py
index ffa3a6c..383bc71 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo.py
@@ -37,30 +37,25 @@ class ElasticSearchResultsNodeInfo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["cluster_combined_info", "node_info"]
- nullable_fields = ["node_info"]
- null_default_fields = []
-
+ optional_fields = set(["cluster_combined_info", "node_info"])
+ nullable_fields = set(["node_info"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo.py
index 7f3be12..2b341a8 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo.py
@@ -9,7 +9,8 @@
ElasticSearchResultsNodeInfoClusterCombinedInfoIndices,
ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -41,3 +42,21 @@ class ElasticSearchResultsNodeInfoClusterCombinedInfo(BaseModel):
timestamp: Optional[int] = None
uuid: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["filesystem", "indices", "name", "status", "timestamp", "uuid"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem.py
index 979daba..967110b 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,28 @@ class ElasticSearchResultsNodeInfoClusterCombinedInfoFilesystem(BaseModel):
total: Optional[str] = None
total_in_bytes: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "available",
+ "available_in_bytes",
+ "free",
+ "free_in_bytes",
+ "total",
+ "total_in_bytes",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices.py
index 22b234e..35298e4 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices.py
@@ -9,7 +9,8 @@
ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesStore,
ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesStoreTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,19 @@ class ElasticSearchResultsNodeInfoClusterCombinedInfoIndices(BaseModel):
docs: Optional[ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesDocs] = None
store: Optional[ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesStore] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["count", "docs", "store"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_docs.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_docs.py
index 859fd25..477603d 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_docs.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_docs.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesDocs(BaseModel):
count: Optional[int] = None
deleted: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["count", "deleted"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_store.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_store.py
index ef3bf61..488a9e9 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_store.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_clustercombinedinfo_indices_store.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesStore(BaseModel):
reserved_in_bytes: Optional[int] = None
size_in_bytes: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["reserved_in_bytes", "size_in_bytes"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes.py
index cff949e..799f639 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes.py
@@ -5,7 +5,8 @@
ElasticSearchResultsNodeInfoNodesNodeData,
ElasticSearchResultsNodeInfoNodesNodeDataTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class ElasticSearchResultsNodeInfoNodes(BaseModel):
node_data: Optional[ElasticSearchResultsNodeInfoNodesNodeData] = None
node_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["node_data", "node_name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata.py
index 42e474b..8220e99 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata.py
@@ -97,47 +97,46 @@ class ElasticSearchResultsNodeInfoNodesNodeData(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "build_flavor",
- "build_hash",
- "build_type",
- "host",
- "ingest_processors",
- "ip",
- "ip_raw",
- "jvm",
- "modules",
- "name",
- "os",
- "roles",
- "settings",
- "thread_pool_list",
- "total_indexing_buffer",
- "version",
- ]
- nullable_fields = ["ingest_processors", "modules", "roles", "thread_pool_list"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "build_flavor",
+ "build_hash",
+ "build_type",
+ "host",
+ "ingest_processors",
+ "ip",
+ "ip_raw",
+ "jvm",
+ "modules",
+ "name",
+ "os",
+ "roles",
+ "settings",
+ "thread_pool_list",
+ "total_indexing_buffer",
+ "version",
+ ]
+ )
+ nullable_fields = set(
+ ["ingest_processors", "modules", "roles", "thread_pool_list"]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_jvm.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_jvm.py
index 1923a97..3826359 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_jvm.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_jvm.py
@@ -46,40 +46,37 @@ class ElasticSearchResultsNodeInfoNodesNodeDataJVM(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "gc",
- "input_args",
- "memory_pools",
- "start_time",
- "start_time_ms",
- "version",
- "vm_name",
- "vm_vendor",
- "vm_version",
- ]
- nullable_fields = ["gc", "input_args", "memory_pools"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "gc",
+ "input_args",
+ "memory_pools",
+ "start_time",
+ "start_time_ms",
+ "version",
+ "vm_name",
+ "vm_vendor",
+ "vm_version",
+ ]
+ )
+ nullable_fields = set(["gc", "input_args", "memory_pools"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_modules.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_modules.py
index e6a21c1..d46d49e 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_modules.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_modules.py
@@ -43,39 +43,36 @@ class ElasticSearchResultsNodeInfoNodesNodeDataModules(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "class_name",
- "desc",
- "elastic_version",
- "ext_plugins",
- "has_native_ctrl",
- "java_version",
- "name",
- "version",
- ]
- nullable_fields = ["ext_plugins"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "class_name",
+ "desc",
+ "elastic_version",
+ "ext_plugins",
+ "has_native_ctrl",
+ "java_version",
+ "name",
+ "version",
+ ]
+ )
+ nullable_fields = set(["ext_plugins"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings.py
index ed7ffe8..b70ea7c 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings.py
@@ -5,7 +5,8 @@
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNode,
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class ElasticSearchResultsNodeInfoNodesNodeDataNodeSettings(BaseModel):
cluster_name: Optional[str] = None
node: Optional[ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNode] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cluster_name", "node"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node.py
index e2e0c80..75b1a65 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node.py
@@ -5,7 +5,8 @@
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttr,
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttrTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNode(BaseModel):
attr: Optional[ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttr] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["attr", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr.py
index c6bd279..712d6d4 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr.py
@@ -5,7 +5,8 @@
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttrML,
ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttrMLTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttr(BaseModel):
ml: Optional[ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttrML] = None
xpack_installed: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ml", "xpack_installed"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr_ml.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr_ml.py
index fc8acc6..588a8df 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr_ml.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_nodesettings_node_attr_ml.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class ElasticSearchResultsNodeInfoNodesNodeDataNodeSettingsNodeAttrML(BaseModel)
machine_memory: Optional[str] = None
max_open_jobs: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["enabled", "machine_memory", "max_open_jobs"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_os.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_os.py
index 0b37087..06a4d49 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_os.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_os.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class ElasticSearchResultsNodeInfoNodesNodeDataOS(BaseModel):
refresh_interval_ms: Optional[int] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "allocated_proc",
+ "arch",
+ "available_proc",
+ "name",
+ "pretty_name",
+ "refresh_interval_ms",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_threadpool.py b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_threadpool.py
index 9200f93..4c611c0 100644
--- a/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_threadpool.py
+++ b/src/censys_platform/models/elasticsearch_resultsnodeinfo_nodes_nodedata_threadpool.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class ElasticSearchResultsNodeInfoNodesNodeDataThreadPool(BaseModel):
queue_size: Optional[int] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["keep_alive", "max", "min", "queue_size", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_systeminfo.py b/src/censys_platform/models/elasticsearch_systeminfo.py
index a8e4a3b..cac0854 100644
--- a/src/censys_platform/models/elasticsearch_systeminfo.py
+++ b/src/censys_platform/models/elasticsearch_systeminfo.py
@@ -5,7 +5,8 @@
ElasticSearchSystemInfoVer,
ElasticSearchSystemInfoVerTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -25,3 +26,19 @@ class ElasticSearchSystemInfo(BaseModel):
tagline: Optional[str] = None
version: Optional[ElasticSearchSystemInfoVer] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cluster_uuid", "name", "tagline", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elasticsearch_systeminfo_ver.py b/src/censys_platform/models/elasticsearch_systeminfo_ver.py
index 59e53bb..ed0ccf8 100644
--- a/src/censys_platform/models/elasticsearch_systeminfo_ver.py
+++ b/src/censys_platform/models/elasticsearch_systeminfo_ver.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,31 @@ class ElasticSearchSystemInfoVer(BaseModel):
min_wire_compat_ver: Optional[str] = None
number: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "build_date",
+ "build_flavor",
+ "build_hash",
+ "build_snapshot",
+ "build_type",
+ "lucene_version",
+ "min_idx_compat_ver",
+ "min_wire_compat_ver",
+ "number",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/elffile.py b/src/censys_platform/models/elffile.py
index c92e8fa..0d436b8 100644
--- a/src/censys_platform/models/elffile.py
+++ b/src/censys_platform/models/elffile.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
import pydantic
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,3 +26,19 @@ class ElfFile(BaseModel):
os_abi: Optional[str] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["class", "data", "machine", "os_abi", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/endpointscan.py b/src/censys_platform/models/endpointscan.py
index ef71d78..052b116 100644
--- a/src/censys_platform/models/endpointscan.py
+++ b/src/censys_platform/models/endpointscan.py
@@ -134,60 +134,57 @@ class EndpointScan(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "banner",
- "banner_hash_sha256",
- "chrome_devtools",
- "cobalt_strike",
- "elasticsearch",
- "endpoint_type",
- "fortigate",
- "graphql",
- "hostname",
- "http",
- "ip",
- "is_success",
- "ivanti_avalanche",
- "jenkins",
- "kubernetes",
- "ollama",
- "open_directory",
- "path",
- "plex_media_server",
- "port",
- "pprof",
- "prometheus",
- "prometheus_target",
- "redlion_web",
- "scada_view",
- "scan_time",
- "screenshots",
- "tls",
- "transport_protocol",
- ]
- nullable_fields = ["screenshots"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "banner",
+ "banner_hash_sha256",
+ "chrome_devtools",
+ "cobalt_strike",
+ "elasticsearch",
+ "endpoint_type",
+ "fortigate",
+ "graphql",
+ "hostname",
+ "http",
+ "ip",
+ "is_success",
+ "ivanti_avalanche",
+ "jenkins",
+ "kubernetes",
+ "ollama",
+ "open_directory",
+ "path",
+ "plex_media_server",
+ "port",
+ "pprof",
+ "prometheus",
+ "prometheus_target",
+ "redlion_web",
+ "scada_view",
+ "scan_time",
+ "screenshots",
+ "tls",
+ "transport_protocol",
+ ]
+ )
+ nullable_fields = set(["screenshots"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/endpointscanned.py b/src/censys_platform/models/endpointscanned.py
index b883ba8..6ef2d04 100644
--- a/src/censys_platform/models/endpointscanned.py
+++ b/src/censys_platform/models/endpointscanned.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .endpointscan import EndpointScan, EndpointScanTypedDict
from .fielddiff import FieldDiff, FieldDiffTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class EndpointScanned(BaseModel):
diff: Optional[Dict[str, FieldDiff]] = None
scan: Optional[EndpointScan] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["diff", "scan"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/endpointscanstate.py b/src/censys_platform/models/endpointscanstate.py
index 6215ed7..1cd5387 100644
--- a/src/censys_platform/models/endpointscanstate.py
+++ b/src/censys_platform/models/endpointscanstate.py
@@ -131,59 +131,56 @@ class EndpointScanState(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "banner",
- "banner_hash_sha256",
- "chrome_devtools",
- "cobalt_strike",
- "elasticsearch",
- "endpoint_type",
- "extracted",
- "fortigate",
- "graphql",
- "hostname",
- "http",
- "ip",
- "ivanti_avalanche",
- "jenkins",
- "kubernetes",
- "ollama",
- "open_directory",
- "path",
- "plex_media_server",
- "port",
- "pprof",
- "prometheus",
- "prometheus_target",
- "redlion_web",
- "scada_view",
- "scan_time",
- "screenshots",
- "transport_protocol",
- ]
- nullable_fields = ["screenshots"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "banner",
+ "banner_hash_sha256",
+ "chrome_devtools",
+ "cobalt_strike",
+ "elasticsearch",
+ "endpoint_type",
+ "extracted",
+ "fortigate",
+ "graphql",
+ "hostname",
+ "http",
+ "ip",
+ "ivanti_avalanche",
+ "jenkins",
+ "kubernetes",
+ "ollama",
+ "open_directory",
+ "path",
+ "plex_media_server",
+ "port",
+ "pprof",
+ "prometheus",
+ "prometheus_target",
+ "redlion_web",
+ "scada_view",
+ "scan_time",
+ "screenshots",
+ "transport_protocol",
+ ]
+ )
+ nullable_fields = set(["screenshots"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/epmd.py b/src/censys_platform/models/epmd.py
index 8144c88..fcd9fbf 100644
--- a/src/censys_platform/models/epmd.py
+++ b/src/censys_platform/models/epmd.py
@@ -22,30 +22,25 @@ class Epmd(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["names"]
- nullable_fields = ["names"]
- null_default_fields = []
-
+ optional_fields = set(["names"])
+ nullable_fields = set(["names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/epss.py b/src/censys_platform/models/epss.py
index d64698e..5ba6b5a 100644
--- a/src/censys_platform/models/epss.py
+++ b/src/censys_platform/models/epss.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class Epss(BaseModel):
percentile: Optional[float] = None
score: Optional[float] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["percentile", "score"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/errordetail.py b/src/censys_platform/models/errordetail.py
index 66a6fdf..e50147f 100644
--- a/src/censys_platform/models/errordetail.py
+++ b/src/censys_platform/models/errordetail.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Any, Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class ErrorDetail(BaseModel):
value: Optional[Any] = None
r"""The value at the given location"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["location", "message", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/etcd.py b/src/censys_platform/models/etcd.py
index f6447f8..93f3cd9 100644
--- a/src/censys_platform/models/etcd.py
+++ b/src/censys_platform/models/etcd.py
@@ -4,7 +4,8 @@
from .etcd_v2 import EtcdV2, EtcdV2TypedDict
from .etcd_v3 import EtcdV3, EtcdV3TypedDict
from .etcd_version import EtcdVersion, EtcdVersionTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Etcd(BaseModel):
v3: Optional[EtcdV3] = None
version: Optional[EtcdVersion] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["v2", "v3", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/etcd_v2.py b/src/censys_platform/models/etcd_v2.py
index 53dbb94..cd8bb12 100644
--- a/src/censys_platform/models/etcd_v2.py
+++ b/src/censys_platform/models/etcd_v2.py
@@ -30,30 +30,25 @@ class EtcdV2(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["auth", "members", "total_keys"]
- nullable_fields = ["members"]
- null_default_fields = []
-
+ optional_fields = set(["auth", "members", "total_keys"])
+ nullable_fields = set(["members"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/etcd_v3.py b/src/censys_platform/models/etcd_v3.py
index 00d1371..7fadf37 100644
--- a/src/censys_platform/models/etcd_v3.py
+++ b/src/censys_platform/models/etcd_v3.py
@@ -30,30 +30,25 @@ class EtcdV3(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["auth", "members", "total_keys"]
- nullable_fields = ["members"]
- null_default_fields = []
-
+ optional_fields = set(["auth", "members", "total_keys"])
+ nullable_fields = set(["members"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/etcd_version.py b/src/censys_platform/models/etcd_version.py
index ea615d1..4057b70 100644
--- a/src/censys_platform/models/etcd_version.py
+++ b/src/censys_platform/models/etcd_version.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class EtcdVersion(BaseModel):
cluster: Optional[str] = None
server: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cluster", "server"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ethereum.py b/src/censys_platform/models/ethereum.py
index c4806bf..3f0afd1 100644
--- a/src/censys_platform/models/ethereum.py
+++ b/src/censys_platform/models/ethereum.py
@@ -29,30 +29,25 @@ class Ethereum(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["accounts", "hashrate", "version"]
- nullable_fields = ["accounts"]
- null_default_fields = []
-
+ optional_fields = set(["accounts", "hashrate", "version"])
+ nullable_fields = set(["accounts"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ethereum_version.py b/src/censys_platform/models/ethereum_version.py
index 87e2e27..dbdffaa 100644
--- a/src/censys_platform/models/ethereum_version.py
+++ b/src/censys_platform/models/ethereum_version.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class EthereumVersion(BaseModel):
trailing: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["client", "compiler", "platform", "trailing", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/eventscapabilities.py b/src/censys_platform/models/eventscapabilities.py
index bde5036..44ac74b 100644
--- a/src/censys_platform/models/eventscapabilities.py
+++ b/src/censys_platform/models/eventscapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class EventsCapabilities(BaseModel):
ws_pull_point_support: Optional[bool] = None
ws_subscription_policy_support: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "max_notification_producers",
+ "max_pull_points",
+ "ws_pausable_subscription_manager_interface_support",
+ "ws_pull_point_support",
+ "ws_subscription_policy_support",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/eventstatuschange.py b/src/censys_platform/models/eventstatuschange.py
index f142bbc..85efc37 100644
--- a/src/censys_platform/models/eventstatuschange.py
+++ b/src/censys_platform/models/eventstatuschange.py
@@ -1,9 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from datetime import datetime
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -37,3 +38,19 @@ class EventStatusChange(BaseModel):
old_status: Optional[OldStatus] = None
reason: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["old_status", "reason"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/evidence.py b/src/censys_platform/models/evidence.py
index 6522b94..e4bafc0 100644
--- a/src/censys_platform/models/evidence.py
+++ b/src/censys_platform/models/evidence.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class Evidence(BaseModel):
regex: Optional[str] = None
semver_expression: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "data_path",
+ "exists",
+ "found_value",
+ "literal_match",
+ "negative",
+ "proprietary",
+ "regex",
+ "semver_expression",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/export.py b/src/censys_platform/models/export.py
index 5b6cc6d..1f86ae3 100644
--- a/src/censys_platform/models/export.py
+++ b/src/censys_platform/models/export.py
@@ -40,38 +40,35 @@ class Export(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "details",
- "max_payload_size",
- "min_block_size",
- "name",
- "preferred_block_size",
- "size",
- "transmit_flags",
- ]
- nullable_fields = ["transmit_flags"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "details",
+ "max_payload_size",
+ "min_block_size",
+ "name",
+ "preferred_block_size",
+ "size",
+ "transmit_flags",
+ ]
+ )
+ nullable_fields = set(["transmit_flags"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/exportlist.py b/src/censys_platform/models/exportlist.py
index ab92af4..5b141ec 100644
--- a/src/censys_platform/models/exportlist.py
+++ b/src/censys_platform/models/exportlist.py
@@ -25,30 +25,25 @@ class ExportList(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["directory", "groups"]
- nullable_fields = ["groups"]
- null_default_fields = []
-
+ optional_fields = set(["directory", "groups"])
+ nullable_fields = set(["groups"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/extendedkeyusage.py b/src/censys_platform/models/extendedkeyusage.py
index fc53b09..4efb32d 100644
--- a/src/censys_platform/models/extendedkeyusage.py
+++ b/src/censys_platform/models/extendedkeyusage.py
@@ -211,95 +211,92 @@ class ExtendedKeyUsage(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "any",
- "apple_code_signing",
- "apple_code_signing_development",
- "apple_code_signing_third_party",
- "apple_crypto_development_env",
- "apple_crypto_env",
- "apple_crypto_maintenance_env",
- "apple_crypto_production_env",
- "apple_crypto_qos",
- "apple_crypto_test_env",
- "apple_crypto_tier0_qos",
- "apple_crypto_tier1_qos",
- "apple_crypto_tier2_qos",
- "apple_crypto_tier3_qos",
- "apple_ichat_encryption",
- "apple_ichat_signing",
- "apple_resource_signing",
- "apple_software_update_signing",
- "apple_system_identity",
- "client_auth",
- "code_signing",
- "dvcs",
- "eap_over_lan",
- "eap_over_ppp",
- "email_protection",
- "ipsec_end_system",
- "ipsec_intermediate_system_usage",
- "ipsec_tunnel",
- "ipsec_user",
- "microsoft_ca_exchange",
- "microsoft_cert_trust_list_signing",
- "microsoft_csp_signature",
- "microsoft_document_signing",
- "microsoft_drm",
- "microsoft_drm_individualization",
- "microsoft_efs_recovery",
- "microsoft_embedded_nt_crypto",
- "microsoft_encrypted_file_system",
- "microsoft_enrollment_agent",
- "microsoft_kernel_mode_code_signing",
- "microsoft_key_recovery_21",
- "microsoft_key_recovery_3",
- "microsoft_license_server",
- "microsoft_licenses",
- "microsoft_lifetime_signing",
- "microsoft_mobile_device_software",
- "microsoft_nt5_crypto",
- "microsoft_oem_whql_crypto",
- "microsoft_qualified_subordinate",
- "microsoft_root_list_signer",
- "microsoft_server_gated_crypto",
- "microsoft_sgc_serialized",
- "microsoft_smart_display",
- "microsoft_smartcard_logon",
- "microsoft_system_health",
- "microsoft_system_health_loophole",
- "microsoft_timestamp_signing",
- "microsoft_whql_crypto",
- "netscape_server_gated_crypto",
- "ocsp_signing",
- "sbgp_cert_aa_service_auth",
- "server_auth",
- "time_stamping",
- "unknown",
- ]
- nullable_fields = ["unknown"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "any",
+ "apple_code_signing",
+ "apple_code_signing_development",
+ "apple_code_signing_third_party",
+ "apple_crypto_development_env",
+ "apple_crypto_env",
+ "apple_crypto_maintenance_env",
+ "apple_crypto_production_env",
+ "apple_crypto_qos",
+ "apple_crypto_test_env",
+ "apple_crypto_tier0_qos",
+ "apple_crypto_tier1_qos",
+ "apple_crypto_tier2_qos",
+ "apple_crypto_tier3_qos",
+ "apple_ichat_encryption",
+ "apple_ichat_signing",
+ "apple_resource_signing",
+ "apple_software_update_signing",
+ "apple_system_identity",
+ "client_auth",
+ "code_signing",
+ "dvcs",
+ "eap_over_lan",
+ "eap_over_ppp",
+ "email_protection",
+ "ipsec_end_system",
+ "ipsec_intermediate_system_usage",
+ "ipsec_tunnel",
+ "ipsec_user",
+ "microsoft_ca_exchange",
+ "microsoft_cert_trust_list_signing",
+ "microsoft_csp_signature",
+ "microsoft_document_signing",
+ "microsoft_drm",
+ "microsoft_drm_individualization",
+ "microsoft_efs_recovery",
+ "microsoft_embedded_nt_crypto",
+ "microsoft_encrypted_file_system",
+ "microsoft_enrollment_agent",
+ "microsoft_kernel_mode_code_signing",
+ "microsoft_key_recovery_21",
+ "microsoft_key_recovery_3",
+ "microsoft_license_server",
+ "microsoft_licenses",
+ "microsoft_lifetime_signing",
+ "microsoft_mobile_device_software",
+ "microsoft_nt5_crypto",
+ "microsoft_oem_whql_crypto",
+ "microsoft_qualified_subordinate",
+ "microsoft_root_list_signer",
+ "microsoft_server_gated_crypto",
+ "microsoft_sgc_serialized",
+ "microsoft_smart_display",
+ "microsoft_smartcard_logon",
+ "microsoft_system_health",
+ "microsoft_system_health_loophole",
+ "microsoft_timestamp_signing",
+ "microsoft_whql_crypto",
+ "netscape_server_gated_crypto",
+ "ocsp_signing",
+ "sbgp_cert_aa_service_auth",
+ "server_auth",
+ "time_stamping",
+ "unknown",
+ ]
+ )
+ nullable_fields = set(["unknown"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/extension.py b/src/censys_platform/models/extension.py
index 829af7e..ddea7a0 100644
--- a/src/censys_platform/models/extension.py
+++ b/src/censys_platform/models/extension.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class Extension(BaseModel):
id: Optional[str] = None
value: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["critical", "id", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/extractedendpointdata.py b/src/censys_platform/models/extractedendpointdata.py
index d45ffe6..70f390c 100644
--- a/src/censys_platform/models/extractedendpointdata.py
+++ b/src/censys_platform/models/extractedendpointdata.py
@@ -49,44 +49,43 @@ class ExtractedEndpointData(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "analytics_services",
- "copyrights",
- "ip_addresses",
- "languages",
- "links",
- "mac_addresses",
- ]
- nullable_fields = [
- "analytics_services",
- "copyrights",
- "ip_addresses",
- "languages",
- "links",
- "mac_addresses",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "analytics_services",
+ "copyrights",
+ "ip_addresses",
+ "languages",
+ "links",
+ "mac_addresses",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "analytics_services",
+ "copyrights",
+ "ip_addresses",
+ "languages",
+ "links",
+ "mac_addresses",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/extractedendpointdata_analyticsservice.py b/src/censys_platform/models/extractedendpointdata_analyticsservice.py
index 2899472..f021210 100644
--- a/src/censys_platform/models/extractedendpointdata_analyticsservice.py
+++ b/src/censys_platform/models/extractedendpointdata_analyticsservice.py
@@ -25,30 +25,25 @@ class ExtractedEndpointDataAnalyticsService(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["ids", "provider"]
- nullable_fields = ["ids"]
- null_default_fields = []
-
+ optional_fields = set(["ids", "provider"])
+ nullable_fields = set(["ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/extractedendpointdata_copyright.py b/src/censys_platform/models/extractedendpointdata_copyright.py
index f56eaeb..558d1c1 100644
--- a/src/censys_platform/models/extractedendpointdata_copyright.py
+++ b/src/censys_platform/models/extractedendpointdata_copyright.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class ExtractedEndpointDataCopyright(BaseModel):
start_year: Optional[int] = None
text: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["end_year", "holder", "start_year", "text"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/fielddiff.py b/src/censys_platform/models/fielddiff.py
index e770106..bb304e3 100644
--- a/src/censys_platform/models/fielddiff.py
+++ b/src/censys_platform/models/fielddiff.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class FieldDiff(BaseModel):
new: Optional[str] = None
old: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["new", "old"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/floatvalue.py b/src/censys_platform/models/floatvalue.py
index be87c94..30d4e72 100644
--- a/src/censys_platform/models/floatvalue.py
+++ b/src/censys_platform/models/floatvalue.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class FloatValueTypedDict(TypedDict):
class FloatValue(BaseModel):
value: Optional[float] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/fortigate.py b/src/censys_platform/models/fortigate.py
index f53bc73..5b06a33 100644
--- a/src/censys_platform/models/fortigate.py
+++ b/src/censys_platform/models/fortigate.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,21 @@ class Fortigate(BaseModel):
status_msg: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["api_version", "build", "serial", "status_code", "status_msg", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/forwarddnsresolved.py b/src/censys_platform/models/forwarddnsresolved.py
index 089f58d..d3b8d11 100644
--- a/src/censys_platform/models/forwarddnsresolved.py
+++ b/src/censys_platform/models/forwarddnsresolved.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class ForwardDNSResolved(BaseModel):
name: Optional[str] = None
resolve_time: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "resolve_time"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/fox.py b/src/censys_platform/models/fox.py
index f54bca4..d6e7ce2 100644
--- a/src/censys_platform/models/fox.py
+++ b/src/censys_platform/models/fox.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -63,3 +64,40 @@ class Fox(BaseModel):
vm_uuid: Optional[str] = None
vm_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "app_name",
+ "app_version",
+ "auth_agent_type",
+ "brand_id",
+ "host_address",
+ "host_id",
+ "hostname",
+ "id",
+ "language",
+ "os_name",
+ "os_version",
+ "station_name",
+ "sys_info",
+ "time_zone",
+ "version",
+ "vm_name",
+ "vm_uuid",
+ "vm_version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ftp.py b/src/censys_platform/models/ftp.py
index b7f7f52..4743ade 100644
--- a/src/censys_platform/models/ftp.py
+++ b/src/censys_platform/models/ftp.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class Ftp(BaseModel):
status_code: Optional[int] = None
status_meaning: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "auth_ssl_response",
+ "auth_tls_response",
+ "implicit_tls",
+ "status_code",
+ "status_meaning",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/gearman.py b/src/censys_platform/models/gearman.py
index 6f9d1ab..6860c6c 100644
--- a/src/censys_platform/models/gearman.py
+++ b/src/censys_platform/models/gearman.py
@@ -30,30 +30,25 @@ class Gearman(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["status", "version", "workers"]
- nullable_fields = ["status", "workers"]
- null_default_fields = []
-
+ optional_fields = set(["status", "version", "workers"])
+ nullable_fields = set(["status", "workers"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/generalnames.py b/src/censys_platform/models/generalnames.py
index a14574c..3ba00a6 100644
--- a/src/censys_platform/models/generalnames.py
+++ b/src/censys_platform/models/generalnames.py
@@ -62,48 +62,47 @@ class GeneralNames(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "directory_names",
- "dns_names",
- "edi_party_names",
- "email_addresses",
- "ip_addresses",
- "other_names",
- "registered_ids",
- "uniform_resource_identifiers",
- ]
- nullable_fields = [
- "directory_names",
- "dns_names",
- "edi_party_names",
- "email_addresses",
- "ip_addresses",
- "other_names",
- "registered_ids",
- "uniform_resource_identifiers",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "directory_names",
+ "dns_names",
+ "edi_party_names",
+ "email_addresses",
+ "ip_addresses",
+ "other_names",
+ "registered_ids",
+ "uniform_resource_identifiers",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "directory_names",
+ "dns_names",
+ "edi_party_names",
+ "email_addresses",
+ "ip_addresses",
+ "other_names",
+ "registered_ids",
+ "uniform_resource_identifiers",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/generalsubtreeip.py b/src/censys_platform/models/generalsubtreeip.py
index 43f3181..18318ba 100644
--- a/src/censys_platform/models/generalsubtreeip.py
+++ b/src/censys_platform/models/generalsubtreeip.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,19 @@ class GeneralSubtreeIP(BaseModel):
mask: Optional[str] = None
r"""The subnet mask of the CIDR."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["begin", "cidr", "end", "mask"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/graphql.py b/src/censys_platform/models/graphql.py
index c88d572..18b9a74 100644
--- a/src/censys_platform/models/graphql.py
+++ b/src/censys_platform/models/graphql.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class Graphql(BaseModel):
response: Optional[str] = None
supports_introspection: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["response", "supports_introspection"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/hajime.py b/src/censys_platform/models/hajime.py
new file mode 100644
index 0000000..0153336
--- /dev/null
+++ b/src/censys_platform/models/hajime.py
@@ -0,0 +1,31 @@
+"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
+
+from __future__ import annotations
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
+from typing import Optional
+from typing_extensions import NotRequired, TypedDict
+
+
+class HajimeTypedDict(TypedDict):
+ public_key: NotRequired[str]
+
+
+class Hajime(BaseModel):
+ public_key: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["public_key"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/hidvertx.py b/src/censys_platform/models/hidvertx.py
index 5fabf3c..d6a6298 100644
--- a/src/censys_platform/models/hidvertx.py
+++ b/src/censys_platform/models/hidvertx.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class HidVertx(BaseModel):
model: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "firmware_date",
+ "id",
+ "ip",
+ "mac_address",
+ "make_model",
+ "model",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/hikvision.py b/src/censys_platform/models/hikvision.py
index 1a721ab..075bc3b 100644
--- a/src/censys_platform/models/hikvision.py
+++ b/src/censys_platform/models/hikvision.py
@@ -32,35 +32,27 @@ class Hikvision(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "custom_version",
- "platforms",
- "plugin_version",
- "web_version",
- ]
- nullable_fields = ["platforms"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["custom_version", "platforms", "plugin_version", "web_version"]
+ )
+ nullable_fields = set(["platforms"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hikvision_platform.py b/src/censys_platform/models/hikvision_platform.py
index a816bff..aa66807 100644
--- a/src/censys_platform/models/hikvision_platform.py
+++ b/src/censys_platform/models/hikvision_platform.py
@@ -29,30 +29,25 @@ class HikvisionPlatform(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["libraries", "name"]
- nullable_fields = ["libraries"]
- null_default_fields = []
-
+ optional_fields = set(["libraries", "name"])
+ nullable_fields = set(["libraries"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hikvision_platform_library.py b/src/censys_platform/models/hikvision_platform_library.py
index 2f46f7a..de8ef55 100644
--- a/src/censys_platform/models/hikvision_platform_library.py
+++ b/src/censys_platform/models/hikvision_platform_library.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class HikvisionPlatformLibrary(BaseModel):
name: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/host.py b/src/censys_platform/models/host.py
index 544a29b..c2fb6cf 100644
--- a/src/censys_platform/models/host.py
+++ b/src/censys_platform/models/host.py
@@ -56,41 +56,38 @@ class Host(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "autonomous_system",
- "dns",
- "hardware",
- "ip",
- "labels",
- "location",
- "operating_system",
- "service_count",
- "services",
- "whois",
- ]
- nullable_fields = ["labels", "services"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "autonomous_system",
+ "dns",
+ "hardware",
+ "ip",
+ "labels",
+ "location",
+ "operating_system",
+ "service_count",
+ "services",
+ "whois",
+ ]
+ )
+ nullable_fields = set(["labels", "services"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hostassetwithmatchedservices.py b/src/censys_platform/models/hostassetwithmatchedservices.py
index 95aec97..14a97ce 100644
--- a/src/censys_platform/models/hostassetwithmatchedservices.py
+++ b/src/censys_platform/models/hostassetwithmatchedservices.py
@@ -32,30 +32,25 @@ class HostAssetWithMatchedServices(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["matched_services"]
- nullable_fields = ["matched_services"]
- null_default_fields = []
-
+ optional_fields = set(["matched_services"])
+ nullable_fields = set(["matched_services"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hostdns.py b/src/censys_platform/models/hostdns.py
index 4391072..98b2456 100644
--- a/src/censys_platform/models/hostdns.py
+++ b/src/censys_platform/models/hostdns.py
@@ -36,30 +36,25 @@ class HostDNS(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["forward_dns", "names", "reverse_dns"]
- nullable_fields = ["names"]
- null_default_fields = []
-
+ optional_fields = set(["forward_dns", "names", "reverse_dns"])
+ nullable_fields = set(["names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hostdns_forwardresolution.py b/src/censys_platform/models/hostdns_forwardresolution.py
index bdca088..f219be4 100644
--- a/src/censys_platform/models/hostdns_forwardresolution.py
+++ b/src/censys_platform/models/hostdns_forwardresolution.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -28,3 +29,19 @@ class HostDNSForwardResolution(BaseModel):
resolve_time: Optional[str] = None
server: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "record_type", "resolve_time", "server"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/hostdns_reverseresolution.py b/src/censys_platform/models/hostdns_reverseresolution.py
index 37a800c..2405bdc 100644
--- a/src/censys_platform/models/hostdns_reverseresolution.py
+++ b/src/censys_platform/models/hostdns_reverseresolution.py
@@ -28,30 +28,25 @@ class HostDNSReverseResolution(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["names", "resolve_time", "server"]
- nullable_fields = ["names"]
- null_default_fields = []
-
+ optional_fields = set(["names", "resolve_time", "server"])
+ nullable_fields = set(["names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hostobservationrange.py b/src/censys_platform/models/hostobservationrange.py
index 5ea990f..4422789 100644
--- a/src/censys_platform/models/hostobservationrange.py
+++ b/src/censys_platform/models/hostobservationrange.py
@@ -32,30 +32,14 @@ class HostObservationRange(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["protocols"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/hostobservationresponse.py b/src/censys_platform/models/hostobservationresponse.py
index 7f842fc..b6cc261 100644
--- a/src/censys_platform/models/hostobservationresponse.py
+++ b/src/censys_platform/models/hostobservationresponse.py
@@ -23,30 +23,25 @@ class HostObservationResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["next_page_token"]
- nullable_fields = ["ranges"]
- null_default_fields = []
-
+ optional_fields = set(["next_page_token"])
+ nullable_fields = set(["ranges"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/hosttimeline.py b/src/censys_platform/models/hosttimeline.py
index 25acd6e..3aa551e 100644
--- a/src/censys_platform/models/hosttimeline.py
+++ b/src/censys_platform/models/hosttimeline.py
@@ -24,30 +24,14 @@ class HostTimeline(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["events"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/hosttimelineevent.py b/src/censys_platform/models/hosttimelineevent.py
index 5b1a3de..614003a 100644
--- a/src/censys_platform/models/hosttimelineevent.py
+++ b/src/censys_platform/models/hosttimelineevent.py
@@ -9,7 +9,8 @@
from .routeupdated import RouteUpdated, RouteUpdatedTypedDict
from .servicescanned import ServiceScanned, ServiceScannedTypedDict
from .whoisupdated import WhoisUpdated, WhoisUpdatedTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,31 @@ class HostTimelineEvent(BaseModel):
service_scanned: Optional[ServiceScanned] = None
whois_updated: Optional[WhoisUpdated] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "endpoint_scanned",
+ "event_time",
+ "forward_dns_resolved",
+ "jarm_scanned",
+ "location_updated",
+ "reverse_dns_resolved",
+ "route_updated",
+ "service_scanned",
+ "whois_updated",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/http.py b/src/censys_platform/models/http.py
index a95f500..11ffeb7 100644
--- a/src/censys_platform/models/http.py
+++ b/src/censys_platform/models/http.py
@@ -90,51 +90,45 @@ class HTTP(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "body",
- "body_hash_sha1",
- "body_hash_sha256",
- "body_hash_tlsh",
- "body_size",
- "favicons",
- "headers",
- "html_tags",
- "html_title",
- "protocol",
- "redirect_chain",
- "status_code",
- "status_reason",
- "supported_versions",
- "uri",
- ]
- nullable_fields = [
- "favicons",
- "html_tags",
- "redirect_chain",
- "supported_versions",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "body",
+ "body_hash_sha1",
+ "body_hash_sha256",
+ "body_hash_tlsh",
+ "body_size",
+ "favicons",
+ "headers",
+ "html_tags",
+ "html_title",
+ "protocol",
+ "redirect_chain",
+ "status_code",
+ "status_reason",
+ "supported_versions",
+ "uri",
+ ]
+ )
+ nullable_fields = set(
+ ["favicons", "html_tags", "redirect_chain", "supported_versions"]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/http_favicon.py b/src/censys_platform/models/http_favicon.py
index c82312b..cb8d1cb 100644
--- a/src/censys_platform/models/http_favicon.py
+++ b/src/censys_platform/models/http_favicon.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -35,3 +36,21 @@ class HTTPFavicon(BaseModel):
size: Optional[int] = None
r"""The size of the favicon retrieved, in bytes."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["hash_md5", "hash_phash", "hash_sha256", "hash_shodan", "name", "size"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/http_redirectchainlink.py b/src/censys_platform/models/http_redirectchainlink.py
index d68ce97..3fd575d 100644
--- a/src/censys_platform/models/http_redirectchainlink.py
+++ b/src/censys_platform/models/http_redirectchainlink.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,21 @@ class HTTPRedirectChainLink(BaseModel):
reason: Optional[str] = None
transport_protocol: Optional[HTTPRedirectChainLinkTransportProtocol] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["hostname", "path", "port", "reason", "transport_protocol"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/http_repeatedheaders.py b/src/censys_platform/models/http_repeatedheaders.py
index 0f71cd6..9b5117f 100644
--- a/src/censys_platform/models/http_repeatedheaders.py
+++ b/src/censys_platform/models/http_repeatedheaders.py
@@ -24,30 +24,25 @@ class HTTPRepeatedHeaders(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["headers"]
- nullable_fields = ["headers"]
- null_default_fields = []
-
+ optional_fields = set(["headers"])
+ nullable_fields = set(["headers"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ibmnje.py b/src/censys_platform/models/ibmnje.py
index d1b4b06..85bee3e 100644
--- a/src/censys_platform/models/ibmnje.py
+++ b/src/censys_platform/models/ibmnje.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,19 @@ class Ibmnje(BaseModel):
rip: Optional[str] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ohost", "oip", "reason", "rhost", "rip", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ike.py b/src/censys_platform/models/ike.py
index 415a2ed..fd8a82e 100644
--- a/src/censys_platform/models/ike.py
+++ b/src/censys_platform/models/ike.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .ike_v1 import IkeV1, IkeV1TypedDict
from .ike_v2 import IkeV2, IkeV2TypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class Ike(BaseModel):
v1: Optional[IkeV1] = None
v2: Optional[IkeV2] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["v1", "v2"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ike_v1.py b/src/censys_platform/models/ike_v1.py
index b455aa9..110cf64 100644
--- a/src/censys_platform/models/ike_v1.py
+++ b/src/censys_platform/models/ike_v1.py
@@ -34,30 +34,27 @@ class IkeV1(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["accepted_proposal", "notify_message_types", "vendor_ids"]
- nullable_fields = ["notify_message_types", "vendor_ids"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["accepted_proposal", "notify_message_types", "vendor_ids"]
+ )
+ nullable_fields = set(["notify_message_types", "vendor_ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ike_v2.py b/src/censys_platform/models/ike_v2.py
index 7adb611..85fdfa4 100644
--- a/src/censys_platform/models/ike_v2.py
+++ b/src/censys_platform/models/ike_v2.py
@@ -28,30 +28,27 @@ class IkeV2(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["accepted_proposal", "notify_message_types", "vendor_ids"]
- nullable_fields = ["notify_message_types", "vendor_ids"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["accepted_proposal", "notify_message_types", "vendor_ids"]
+ )
+ nullable_fields = set(["notify_message_types", "vendor_ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/imagecapabilities.py b/src/censys_platform/models/imagecapabilities.py
index d78853d..ac3ac80 100644
--- a/src/censys_platform/models/imagecapabilities.py
+++ b/src/censys_platform/models/imagecapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class ImageCapabilitiesTypedDict(TypedDict):
class ImageCapabilities(BaseModel):
image_stabilization: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["image_stabilization"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/imap.py b/src/censys_platform/models/imap.py
index 376407a..e8ae804 100644
--- a/src/censys_platform/models/imap.py
+++ b/src/censys_platform/models/imap.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -14,3 +15,19 @@ class ImapTypedDict(TypedDict):
class Imap(BaseModel):
start_tls: Optional[str] = None
r"""The server's response to the STARTTLS command."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["start_tls"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/internal/globals.py b/src/censys_platform/models/internal/globals.py
index e2f4354..fb60d91 100644
--- a/src/censys_platform/models/internal/globals.py
+++ b/src/censys_platform/models/internal/globals.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -16,3 +17,19 @@ class Globals(BaseModel):
Optional[str],
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/iota.py b/src/censys_platform/models/iota.py
index b9de5b5..1d1cf8d 100644
--- a/src/censys_platform/models/iota.py
+++ b/src/censys_platform/models/iota.py
@@ -4,7 +4,8 @@
from .nodeinfov0 import NodeInfoV0, NodeInfoV0TypedDict
from .nodeinfov1 import NodeInfoV1, NodeInfoV1TypedDict
from .nodeinfov2 import NodeInfoV2, NodeInfoV2TypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Iota(BaseModel):
v1_info: Optional[NodeInfoV1] = None
v2_info: Optional[NodeInfoV2] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["v0_info", "v1_info", "v2_info"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi.py b/src/censys_platform/models/ipmi.py
index a1acf91..396a078 100644
--- a/src/censys_platform/models/ipmi.py
+++ b/src/censys_platform/models/ipmi.py
@@ -5,7 +5,8 @@
from .ipmi_commandpayload import IpmiCommandPayload, IpmiCommandPayloadTypedDict
from .ipmi_rmcpheader import IpmiRMCPHeader, IpmiRMCPHeaderTypedDict
from .ipmi_sessionheader import IpmiSessionHeader, IpmiSessionHeaderTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,21 @@ class Ipmi(BaseModel):
rmcp_header: Optional[IpmiRMCPHeader] = None
session_header: Optional[IpmiSessionHeader] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["capabilities", "command_payload", "raw", "rmcp_header", "session_header"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_capabilities.py b/src/censys_platform/models/ipmi_capabilities.py
index 01c0d82..ab8a8c2 100644
--- a/src/censys_platform/models/ipmi_capabilities.py
+++ b/src/censys_platform/models/ipmi_capabilities.py
@@ -17,7 +17,8 @@
IpmiCapabilitiesSupportedAuthTypes,
IpmiCapabilitiesSupportedAuthTypesTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -52,3 +53,29 @@ class IpmiCapabilities(BaseModel):
r"""The 3-byte OEM identifier"""
supported_auth_types: Optional[IpmiCapabilitiesSupportedAuthTypes] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "auth_status",
+ "channel_number",
+ "completion_code",
+ "extended_capabilities",
+ "oem_data",
+ "oem_id",
+ "supported_auth_types",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_capabilities_authstatus.py b/src/censys_platform/models/ipmi_capabilities_authstatus.py
index 90b3451..021c9dd 100644
--- a/src/censys_platform/models/ipmi_capabilities_authstatus.py
+++ b/src/censys_platform/models/ipmi_capabilities_authstatus.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,28 @@ class IpmiCapabilitiesAuthStatus(BaseModel):
user_auth_disabled: Optional[bool] = None
r"""If true, user authentication is disabled."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "anonymous_login_enabled",
+ "auth_each_message",
+ "has_anonymous_users",
+ "has_named_users",
+ "two_key_login_required",
+ "user_auth_disabled",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_capabilities_completioncode.py b/src/censys_platform/models/ipmi_capabilities_completioncode.py
index c665441..8500b0c 100644
--- a/src/censys_platform/models/ipmi_capabilities_completioncode.py
+++ b/src/censys_platform/models/ipmi_capabilities_completioncode.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class IpmiCapabilitiesCompletionCode(BaseModel):
raw: Optional[int] = None
r"""The raw completion code"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_capabilities_extendedcapabilities.py b/src/censys_platform/models/ipmi_capabilities_extendedcapabilities.py
index 3b015eb..b804304 100644
--- a/src/censys_platform/models/ipmi_capabilities_extendedcapabilities.py
+++ b/src/censys_platform/models/ipmi_capabilities_extendedcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class IpmiCapabilitiesExtendedCapabilities(BaseModel):
supports_ipmi_v2_0: Optional[bool] = None
r"""True if IPMI v2.0 is supported"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["supports_ipmi_v1_5", "supports_ipmi_v2_0"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_capabilities_supportedauthtypes.py b/src/censys_platform/models/ipmi_capabilities_supportedauthtypes.py
index 65d4dac..88ecc6d 100644
--- a/src/censys_platform/models/ipmi_capabilities_supportedauthtypes.py
+++ b/src/censys_platform/models/ipmi_capabilities_supportedauthtypes.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,21 @@ class IpmiCapabilitiesSupportedAuthTypes(BaseModel):
raw: Optional[int] = None
r"""The raw byte, with the bit mask etc"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["extended", "md2", "md5", "none", "oem_proprietary", "password", "raw"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_commandpayload.py b/src/censys_platform/models/ipmi_commandpayload.py
index fa79588..cc6c3ef 100644
--- a/src/censys_platform/models/ipmi_commandpayload.py
+++ b/src/censys_platform/models/ipmi_commandpayload.py
@@ -9,7 +9,8 @@
IpmiCommandPayloadPackedNetFn,
IpmiCommandPayloadPackedNetFnTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -38,3 +39,27 @@ class IpmiCommandPayload(BaseModel):
requestor_sequence_number: Optional[int] = None
r"""The request sequence number."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "checksum_error",
+ "data",
+ "ipmi_command_number",
+ "network_function_code",
+ "requestor_sequence_number",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_commandpayload_commandnumber.py b/src/censys_platform/models/ipmi_commandpayload_commandnumber.py
index 3e1d288..f7e0a2e 100644
--- a/src/censys_platform/models/ipmi_commandpayload_commandnumber.py
+++ b/src/censys_platform/models/ipmi_commandpayload_commandnumber.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class IpmiCommandPayloadCommandNumber(BaseModel):
raw: Optional[int] = None
r"""The raw value of the cmd value"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_commandpayload_packednetfn.py b/src/censys_platform/models/ipmi_commandpayload_packednetfn.py
index 7dd08a9..7a95be8 100644
--- a/src/censys_platform/models/ipmi_commandpayload_packednetfn.py
+++ b/src/censys_platform/models/ipmi_commandpayload_packednetfn.py
@@ -9,7 +9,8 @@
IpmiCommandPayloadPackedNetFnNetFn,
IpmiCommandPayloadPackedNetFnNetFnTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,19 @@ class IpmiCommandPayloadPackedNetFn(BaseModel):
raw: Optional[int] = None
r"""The raw value of the (NetFn << 2) | LUN"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["logical_unit_number", "net_fn", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_commandpayload_packednetfn_logicalunitnumber.py b/src/censys_platform/models/ipmi_commandpayload_packednetfn_logicalunitnumber.py
index c3b3c8b..fcbc70b 100644
--- a/src/censys_platform/models/ipmi_commandpayload_packednetfn_logicalunitnumber.py
+++ b/src/censys_platform/models/ipmi_commandpayload_packednetfn_logicalunitnumber.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class IpmiCommandPayloadPackedNetFnLogicalUnitNumber(BaseModel):
raw: Optional[int] = None
r"""The value of the LUN (3 bits)"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_commandpayload_packednetfn_netfn.py b/src/censys_platform/models/ipmi_commandpayload_packednetfn_netfn.py
index 9f067ea..b2de145 100644
--- a/src/censys_platform/models/ipmi_commandpayload_packednetfn_netfn.py
+++ b/src/censys_platform/models/ipmi_commandpayload_packednetfn_netfn.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,19 @@ class IpmiCommandPayloadPackedNetFnNetFn(BaseModel):
value: Optional[int] = None
r"""The normalized value of the NetFn (i.e. raw & 0xfe, so it is always even)"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["is_request", "is_response", "name", "raw", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_rmcpheader.py b/src/censys_platform/models/ipmi_rmcpheader.py
index 2632d4d..5025efd 100644
--- a/src/censys_platform/models/ipmi_rmcpheader.py
+++ b/src/censys_platform/models/ipmi_rmcpheader.py
@@ -5,7 +5,8 @@
IpmiRMCPHeaderMessageClass,
IpmiRMCPHeaderMessageClassTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -26,3 +27,19 @@ class IpmiRMCPHeader(BaseModel):
version: Optional[int] = None
r"""The version. This scanner supports version 6."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["message_class", "sequence_number", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_rmcpheader_messageclass.py b/src/censys_platform/models/ipmi_rmcpheader_messageclass.py
index 6bbc71c..1eaf013 100644
--- a/src/censys_platform/models/ipmi_rmcpheader_messageclass.py
+++ b/src/censys_platform/models/ipmi_rmcpheader_messageclass.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
import pydantic
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,3 +31,19 @@ class IpmiRMCPHeaderMessageClass(BaseModel):
raw: Optional[int] = None
r"""The raw message class byte."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["class", "is_ack", "name", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_sessionheader.py b/src/censys_platform/models/ipmi_sessionheader.py
index 994a4de..8a748e5 100644
--- a/src/censys_platform/models/ipmi_sessionheader.py
+++ b/src/censys_platform/models/ipmi_sessionheader.py
@@ -5,7 +5,8 @@
IpmiSessionHeaderAuthType,
IpmiSessionHeaderAuthTypeTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -31,3 +32,21 @@ class IpmiSessionHeader(BaseModel):
session_sequence_number: Optional[int] = None
r"""The session sequence number of this packet in the session"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["auth_code", "auth_type", "session_id", "session_sequence_number"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipmi_sessionheader_authtype.py b/src/censys_platform/models/ipmi_sessionheader_authtype.py
index afb7d69..fed00ee 100644
--- a/src/censys_platform/models/ipmi_sessionheader_authtype.py
+++ b/src/censys_platform/models/ipmi_sessionheader_authtype.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class IpmiSessionHeaderAuthType(BaseModel):
type: Optional[int] = None
r"""Just the auth type (reserved bits omitted)"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "raw", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ipp.py b/src/censys_platform/models/ipp.py
index cc2721d..2293cbc 100644
--- a/src/censys_platform/models/ipp.py
+++ b/src/censys_platform/models/ipp.py
@@ -60,43 +60,38 @@ class Ipp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "attribute_cups_version",
- "attribute_ipp_versions",
- "attribute_printer_uris",
- "attributes",
- "cups_version",
- "major_version",
- "minor_version",
- "version_string",
- ]
- nullable_fields = [
- "attribute_ipp_versions",
- "attribute_printer_uris",
- "attributes",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "attribute_cups_version",
+ "attribute_ipp_versions",
+ "attribute_printer_uris",
+ "attributes",
+ "cups_version",
+ "major_version",
+ "minor_version",
+ "version_string",
+ ]
+ )
+ nullable_fields = set(
+ ["attribute_ipp_versions", "attribute_printer_uris", "attributes"]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ipp_attribute.py b/src/censys_platform/models/ipp_attribute.py
index 4fca1f4..131b6ca 100644
--- a/src/censys_platform/models/ipp_attribute.py
+++ b/src/censys_platform/models/ipp_attribute.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class IppAttribute(BaseModel):
name: Optional[str] = None
value_tag: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "value_tag"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/iscsi.py b/src/censys_platform/models/iscsi.py
index 7ac8b7d..bcb6ac7 100644
--- a/src/censys_platform/models/iscsi.py
+++ b/src/censys_platform/models/iscsi.py
@@ -30,30 +30,25 @@ class Iscsi(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["connection", "errors", "targets"]
- nullable_fields = ["errors", "targets"]
- null_default_fields = []
-
+ optional_fields = set(["connection", "errors", "targets"])
+ nullable_fields = set(["errors", "targets"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ivantiavalanche.py b/src/censys_platform/models/ivantiavalanche.py
index db464e7..e4428ba 100644
--- a/src/censys_platform/models/ivantiavalanche.py
+++ b/src/censys_platform/models/ivantiavalanche.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class IvantiAvalanche(BaseModel):
status_code: Optional[int] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["body", "status_code", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ja4tscanscan.py b/src/censys_platform/models/ja4tscanscan.py
index a4342bb..ff2d830 100644
--- a/src/censys_platform/models/ja4tscanscan.py
+++ b/src/censys_platform/models/ja4tscanscan.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class Ja4TScanScan(BaseModel):
fingerprint: Optional[str] = None
scan_time: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["fingerprint", "scan_time"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/jarmscan.py b/src/censys_platform/models/jarmscan.py
index a2d8066..f9672c2 100644
--- a/src/censys_platform/models/jarmscan.py
+++ b/src/censys_platform/models/jarmscan.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -53,3 +54,31 @@ class JarmScan(BaseModel):
r"""The second 32 character portion of the Jarm fingerprint"""
transport_protocol: Optional[JarmScanTransportProtocol] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "cipher_and_version_fingerprint",
+ "fingerprint",
+ "hostname",
+ "ip",
+ "is_success",
+ "port",
+ "scan_time",
+ "tls_extensions_sha256",
+ "transport_protocol",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/jarmscanned.py b/src/censys_platform/models/jarmscanned.py
index b16fecb..378c2f9 100644
--- a/src/censys_platform/models/jarmscanned.py
+++ b/src/censys_platform/models/jarmscanned.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .fielddiff import FieldDiff, FieldDiffTypedDict
from .jarmscan import JarmScan, JarmScanTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class JarmScanned(BaseModel):
diff: Optional[Dict[str, FieldDiff]] = None
scan: Optional[JarmScan] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["diff", "scan"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/jenkins.py b/src/censys_platform/models/jenkins.py
index 0b7e64a..637cd48 100644
--- a/src/censys_platform/models/jenkins.py
+++ b/src/censys_platform/models/jenkins.py
@@ -42,38 +42,35 @@ class Jenkins(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "assigned_labels",
- "jobs",
- "mode",
- "node_description",
- "node_name",
- "slave_agent_port",
- "use_security",
- ]
- nullable_fields = ["assigned_labels", "jobs"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "assigned_labels",
+ "jobs",
+ "mode",
+ "node_description",
+ "node_name",
+ "slave_agent_port",
+ "use_security",
+ ]
+ )
+ nullable_fields = set(["assigned_labels", "jobs"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/jenkins_build.py b/src/censys_platform/models/jenkins_build.py
index 01049ac..0439a00 100644
--- a/src/censys_platform/models/jenkins_build.py
+++ b/src/censys_platform/models/jenkins_build.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class JenkinsBuild(BaseModel):
timestamp: Optional[int] = None
url: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["duration_seconds", "number", "result", "timestamp", "url"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/jenkins_job.py b/src/censys_platform/models/jenkins_job.py
index c114ad4..3c21524 100644
--- a/src/censys_platform/models/jenkins_job.py
+++ b/src/censys_platform/models/jenkins_job.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .jenkins_build import JenkinsBuild, JenkinsBuildTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,19 @@ class JenkinsJob(BaseModel):
name: Optional[str] = None
url: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["description", "last_build", "name", "url"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/jenkins_label.py b/src/censys_platform/models/jenkins_label.py
index 150b12a..17bc76e 100644
--- a/src/censys_platform/models/jenkins_label.py
+++ b/src/censys_platform/models/jenkins_label.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class JenkinsLabel(BaseModel):
name: Optional[str] = None
value: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/kev.py b/src/censys_platform/models/kev.py
index 7a0a465..9768861 100644
--- a/src/censys_platform/models/kev.py
+++ b/src/censys_platform/models/kev.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,19 @@ class Kev(BaseModel):
source: Optional[KEVSource] = None
r"""The source checked to determine whether the CVE is in the KEV catalog."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["date_added", "date_due", "source"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/keyalgorithm.py b/src/censys_platform/models/keyalgorithm.py
index e7a4370..26c9845 100644
--- a/src/censys_platform/models/keyalgorithm.py
+++ b/src/censys_platform/models/keyalgorithm.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class KeyAlgorithm(BaseModel):
r"""Name of public key type, such as RSA or ECDSA. Information specific to the key type is available in the named sub-record."""
oid: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "oid"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/keyusage.py b/src/censys_platform/models/keyusage.py
index 968e4e9..009f5e7 100644
--- a/src/censys_platform/models/keyusage.py
+++ b/src/censys_platform/models/keyusage.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -59,3 +60,32 @@ class KeyUsage(BaseModel):
value: Optional[int] = None
r"""The integer value of the bitmask in the extension."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "certificate_sign",
+ "content_commitment",
+ "crl_sign",
+ "data_encipherment",
+ "decipher_only",
+ "digital_signature",
+ "encipher_only",
+ "key_agreement",
+ "key_encipherment",
+ "value",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/krpc.py b/src/censys_platform/models/krpc.py
index 04ab36a..dbb7a21 100644
--- a/src/censys_platform/models/krpc.py
+++ b/src/censys_platform/models/krpc.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class KrpcTypedDict(TypedDict):
class Krpc(BaseModel):
ping_response_id: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ping_response_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/kubernetes.py b/src/censys_platform/models/kubernetes.py
index 4fae6ca..8cf9cc3 100644
--- a/src/censys_platform/models/kubernetes.py
+++ b/src/censys_platform/models/kubernetes.py
@@ -46,37 +46,34 @@ class Kubernetes(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "endpoints",
- "kubernetes_dashboard_found",
- "nodes",
- "pod_names",
- "roles",
- "version_info",
- ]
- nullable_fields = ["endpoints", "nodes", "pod_names", "roles"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "endpoints",
+ "kubernetes_dashboard_found",
+ "nodes",
+ "pod_names",
+ "roles",
+ "version_info",
+ ]
+ )
+ nullable_fields = set(["endpoints", "nodes", "pod_names", "roles"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_endpoint.py b/src/censys_platform/models/kubernetes_endpoint.py
index 1b37d2e..7fffd18 100644
--- a/src/censys_platform/models/kubernetes_endpoint.py
+++ b/src/censys_platform/models/kubernetes_endpoint.py
@@ -32,30 +32,25 @@ class KubernetesEndpoint(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["name", "self_link", "subsets"]
- nullable_fields = ["subsets"]
- null_default_fields = []
-
+ optional_fields = set(["name", "self_link", "subsets"])
+ nullable_fields = set(["subsets"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_endpoint_subset.py b/src/censys_platform/models/kubernetes_endpoint_subset.py
index c5ab8be..804d967 100644
--- a/src/censys_platform/models/kubernetes_endpoint_subset.py
+++ b/src/censys_platform/models/kubernetes_endpoint_subset.py
@@ -35,30 +35,25 @@ class KubernetesEndpointSubset(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["addresses", "ports"]
- nullable_fields = ["addresses", "ports"]
- null_default_fields = []
-
+ optional_fields = set(["addresses", "ports"])
+ nullable_fields = set(["addresses", "ports"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_endpoint_subset_endpointaddress.py b/src/censys_platform/models/kubernetes_endpoint_subset_endpointaddress.py
index 8de9768..a54390f 100644
--- a/src/censys_platform/models/kubernetes_endpoint_subset_endpointaddress.py
+++ b/src/censys_platform/models/kubernetes_endpoint_subset_endpointaddress.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class KubernetesEndpointSubsetEndpointAddress(BaseModel):
ip: Optional[str] = None
node_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["hostname", "ip", "node_name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/kubernetes_endpoint_subset_port.py b/src/censys_platform/models/kubernetes_endpoint_subset_port.py
index a760467..4d20d2b 100644
--- a/src/censys_platform/models/kubernetes_endpoint_subset_port.py
+++ b/src/censys_platform/models/kubernetes_endpoint_subset_port.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class KubernetesEndpointSubsetPort(BaseModel):
port: Optional[int] = None
protocol: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "port", "protocol"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/kubernetes_node.py b/src/censys_platform/models/kubernetes_node.py
index 0d727c6..f9a18ef 100644
--- a/src/censys_platform/models/kubernetes_node.py
+++ b/src/censys_platform/models/kubernetes_node.py
@@ -69,41 +69,38 @@ class KubernetesNode(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "addresses",
- "architecture",
- "container_runtime_version",
- "images",
- "kernel_version",
- "kube_proxy_version",
- "kubelet_version",
- "name",
- "operating_system",
- "os_image",
- ]
- nullable_fields = ["addresses", "images"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "addresses",
+ "architecture",
+ "container_runtime_version",
+ "images",
+ "kernel_version",
+ "kube_proxy_version",
+ "kubelet_version",
+ "name",
+ "operating_system",
+ "os_image",
+ ]
+ )
+ nullable_fields = set(["addresses", "images"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_node_nodeaddress.py b/src/censys_platform/models/kubernetes_node_nodeaddress.py
index 3634be9..22bed93 100644
--- a/src/censys_platform/models/kubernetes_node_nodeaddress.py
+++ b/src/censys_platform/models/kubernetes_node_nodeaddress.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class KubernetesNodeNodeAddress(BaseModel):
address_type: Optional[str] = None
r"""Node address type, one of Hostname, ExternalIP or InternalIP."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["address", "address_type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/kubernetes_role.py b/src/censys_platform/models/kubernetes_role.py
index 97a2f1f..b63003b 100644
--- a/src/censys_platform/models/kubernetes_role.py
+++ b/src/censys_platform/models/kubernetes_role.py
@@ -28,30 +28,25 @@ class KubernetesRole(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["name", "rules"]
- nullable_fields = ["rules"]
- null_default_fields = []
-
+ optional_fields = set(["name", "rules"])
+ nullable_fields = set(["rules"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_role_rule.py b/src/censys_platform/models/kubernetes_role_rule.py
index 956ba08..8ddf2db 100644
--- a/src/censys_platform/models/kubernetes_role_rule.py
+++ b/src/censys_platform/models/kubernetes_role_rule.py
@@ -34,30 +34,25 @@ class KubernetesRoleRule(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["api_groups", "resources", "verbs"]
- nullable_fields = ["api_groups", "resources", "verbs"]
- null_default_fields = []
-
+ optional_fields = set(["api_groups", "resources", "verbs"])
+ nullable_fields = set(["api_groups", "resources", "verbs"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/kubernetes_versioninfo.py b/src/censys_platform/models/kubernetes_versioninfo.py
index 27a3ef9..cf95ac5 100644
--- a/src/censys_platform/models/kubernetes_versioninfo.py
+++ b/src/censys_platform/models/kubernetes_versioninfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -52,3 +53,31 @@ class KubernetesVersionInfo(BaseModel):
platform: Optional[str] = None
r"""Platform compiled for"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "build_date",
+ "compiler",
+ "git_commit",
+ "git_tree_state",
+ "git_version",
+ "go_version",
+ "major",
+ "minor",
+ "platform",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/l2tp.py b/src/censys_platform/models/l2tp.py
index b317dee..09ca2e9 100644
--- a/src/censys_platform/models/l2tp.py
+++ b/src/censys_platform/models/l2tp.py
@@ -48,40 +48,37 @@ class L2Tp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "hello_received",
- "ordered_messages_raw",
- "sccn_received",
- "sccrp",
- "sccrp_received",
- "sccrq_received",
- "stop_sccn",
- "stop_sccn_received",
- "zlb_received",
- ]
- nullable_fields = ["ordered_messages_raw"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "hello_received",
+ "ordered_messages_raw",
+ "sccn_received",
+ "sccrp",
+ "sccrp_received",
+ "sccrq_received",
+ "stop_sccn",
+ "stop_sccn_received",
+ "zlb_received",
+ ]
+ )
+ nullable_fields = set(["ordered_messages_raw"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/l2tp_attributevalues.py b/src/censys_platform/models/l2tp_attributevalues.py
index 55359c9..17d3f56 100644
--- a/src/censys_platform/models/l2tp_attributevalues.py
+++ b/src/censys_platform/models/l2tp_attributevalues.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -42,3 +43,33 @@ class L2TpAttributeValues(BaseModel):
vendor_name: Optional[str] = None
window_size: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "error_code",
+ "error_meaning",
+ "error_message",
+ "firmware_revision",
+ "hostname",
+ "protocol_revision",
+ "protocol_version",
+ "result_code",
+ "result_meaning",
+ "vendor_name",
+ "window_size",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/l2tp_sccrp.py b/src/censys_platform/models/l2tp_sccrp.py
index 0397343..2f9298d 100644
--- a/src/censys_platform/models/l2tp_sccrp.py
+++ b/src/censys_platform/models/l2tp_sccrp.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .l2tp_attributevalues import L2TpAttributeValues, L2TpAttributeValuesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class L2TpSccrpTypedDict(TypedDict):
class L2TpSccrp(BaseModel):
attribute_values: Optional[L2TpAttributeValues] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["attribute_values"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/l2tp_stopccn.py b/src/censys_platform/models/l2tp_stopccn.py
index 501b491..7f20c5d 100644
--- a/src/censys_platform/models/l2tp_stopccn.py
+++ b/src/censys_platform/models/l2tp_stopccn.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .l2tp_attributevalues import L2TpAttributeValues, L2TpAttributeValuesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class L2TpStopCcnTypedDict(TypedDict):
class L2TpStopCcn(BaseModel):
attribute_values: Optional[L2TpAttributeValues] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["attribute_values"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/label.py b/src/censys_platform/models/label.py
index 5cec4df..af4a39d 100644
--- a/src/censys_platform/models/label.py
+++ b/src/censys_platform/models/label.py
@@ -42,30 +42,25 @@ class Label(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["confidence", "evidence", "source", "value"]
- nullable_fields = ["evidence"]
- null_default_fields = []
-
+ optional_fields = set(["confidence", "evidence", "source", "value"])
+ nullable_fields = set(["evidence"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ldap.py b/src/censys_platform/models/ldap.py
index ce643ee..4343c3d 100644
--- a/src/censys_platform/models/ldap.py
+++ b/src/censys_platform/models/ldap.py
@@ -35,30 +35,25 @@ class Ldap(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["allows_anonymous_bind", "attributes", "result_code"]
- nullable_fields = ["attributes"]
- null_default_fields = []
-
+ optional_fields = set(["allows_anonymous_bind", "attributes", "result_code"])
+ nullable_fields = set(["attributes"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ldap_attribute.py b/src/censys_platform/models/ldap_attribute.py
index f63b62c..31b5555 100644
--- a/src/censys_platform/models/ldap_attribute.py
+++ b/src/censys_platform/models/ldap_attribute.py
@@ -29,30 +29,25 @@ class LdapAttribute(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["name", "values"]
- nullable_fields = ["values"]
- null_default_fields = []
-
+ optional_fields = set(["name", "values"])
+ nullable_fields = set(["values"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/listcollectionsresponsev1.py b/src/censys_platform/models/listcollectionsresponsev1.py
index 4e3f761..f23bc3a 100644
--- a/src/censys_platform/models/listcollectionsresponsev1.py
+++ b/src/censys_platform/models/listcollectionsresponsev1.py
@@ -20,30 +20,14 @@ class ListCollectionsResponseV1(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["collections"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/location.py b/src/censys_platform/models/location.py
index bfc33e5..647b906 100644
--- a/src/censys_platform/models/location.py
+++ b/src/censys_platform/models/location.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .coordinates import Coordinates, CoordinatesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -58,3 +59,32 @@ class Location(BaseModel):
timezone: Optional[str] = None
r"""The IANA time zone database name of the detected location."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "city",
+ "continent",
+ "coordinates",
+ "country",
+ "country_code",
+ "postal_code",
+ "province",
+ "registered_country",
+ "registered_country_code",
+ "timezone",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/locationupdated.py b/src/censys_platform/models/locationupdated.py
index 09b84f1..b85f3f9 100644
--- a/src/censys_platform/models/locationupdated.py
+++ b/src/censys_platform/models/locationupdated.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .location import Location, LocationTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class LocationUpdatedTypedDict(TypedDict):
class LocationUpdated(BaseModel):
location: Optional[Location] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["location"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/lpd.py b/src/censys_platform/models/lpd.py
index 3bf684d..99c98b1 100644
--- a/src/censys_platform/models/lpd.py
+++ b/src/censys_platform/models/lpd.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .lpdmessage import LpdMessage, LpdMessageTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -31,3 +32,29 @@ class Lpd(BaseModel):
short_state: Optional[str] = None
text: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "jobs",
+ "long_state",
+ "lpd_message",
+ "printer",
+ "raw",
+ "short_state",
+ "text",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/lpdmessage.py b/src/censys_platform/models/lpdmessage.py
index e49d0d4..408291e 100644
--- a/src/censys_platform/models/lpdmessage.py
+++ b/src/censys_platform/models/lpdmessage.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class LpdMessage(BaseModel):
body: Optional[str] = None
status: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["body", "status"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/matchedservice.py b/src/censys_platform/models/matchedservice.py
index 7d469bd..51eb196 100644
--- a/src/censys_platform/models/matchedservice.py
+++ b/src/censys_platform/models/matchedservice.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,19 @@ class MatchedService(BaseModel):
protocol: Optional[str] = None
transport_protocol: Optional[TransportProtocol] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["port", "protocol", "transport_protocol"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mdns.py b/src/censys_platform/models/mdns.py
index 956e042..22bad45 100644
--- a/src/censys_platform/models/mdns.py
+++ b/src/censys_platform/models/mdns.py
@@ -29,30 +29,25 @@ class Mdns(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["multiple_responses", "names", "results"]
- nullable_fields = ["names", "results"]
- null_default_fields = []
-
+ optional_fields = set(["multiple_responses", "names", "results"])
+ nullable_fields = set(["names", "results"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/mdnsresult.py b/src/censys_platform/models/mdnsresult.py
index f1692ff..cce2f6d 100644
--- a/src/censys_platform/models/mdnsresult.py
+++ b/src/censys_platform/models/mdnsresult.py
@@ -40,38 +40,27 @@ class MdnsResult(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "addresses",
- "full_name",
- "port",
- "priority",
- "target",
- "texts",
- "weight",
- ]
- nullable_fields = ["addresses", "texts"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["addresses", "full_name", "port", "priority", "target", "texts", "weight"]
+ )
+ nullable_fields = set(["addresses", "texts"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/mediacapabilities.py b/src/censys_platform/models/mediacapabilities.py
index 14f087d..54e2e14 100644
--- a/src/censys_platform/models/mediacapabilities.py
+++ b/src/censys_platform/models/mediacapabilities.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .mediaprofile import MediaProfile, MediaProfileTypedDict
from .mediastreaming import MediaStreaming, MediaStreamingTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,28 @@ class MediaCapabilities(BaseModel):
streaming: Optional[MediaStreaming] = None
video_source_mode: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "osd",
+ "profile",
+ "rotation",
+ "snapshot_uri",
+ "streaming",
+ "video_source_mode",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mediaprofile.py b/src/censys_platform/models/mediaprofile.py
index bf4f7e3..e76d46f 100644
--- a/src/censys_platform/models/mediaprofile.py
+++ b/src/censys_platform/models/mediaprofile.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class MediaProfileTypedDict(TypedDict):
class MediaProfile(BaseModel):
max_profile_count: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["max_profile_count"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mediastreaming.py b/src/censys_platform/models/mediastreaming.py
index 6547874..b2da551 100644
--- a/src/censys_platform/models/mediastreaming.py
+++ b/src/censys_platform/models/mediastreaming.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class MediaStreaming(BaseModel):
rtp_rtsp_tcp: Optional[bool] = None
rtp_tcp: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["non_aggregate_control", "rtp_multicast", "rtp_rtsp_tcp", "rtp_tcp"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/membercounts.py b/src/censys_platform/models/membercounts.py
index 6762acf..d7122f2 100644
--- a/src/censys_platform/models/membercounts.py
+++ b/src/censys_platform/models/membercounts.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,6 +25,22 @@ class ByRole(BaseModel):
api_access: Optional[int] = None
r"""The number of users with the API access role."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["admin", "api_access"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class MemberCountsTypedDict(TypedDict):
by_role: ByRoleTypedDict
diff --git a/src/censys_platform/models/members.py b/src/censys_platform/models/members.py
index 582afb8..842bf2d 100644
--- a/src/censys_platform/models/members.py
+++ b/src/censys_platform/models/members.py
@@ -31,30 +31,25 @@ class Members(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["client_urls", "id", "name", "peer_urls"]
- nullable_fields = ["client_urls", "peer_urls"]
- null_default_fields = []
-
+ optional_fields = set(["client_urls", "id", "name", "peer_urls"])
+ nullable_fields = set(["client_urls", "peer_urls"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/memcached.py b/src/censys_platform/models/memcached.py
index 98e43ac..d6422ec 100644
--- a/src/censys_platform/models/memcached.py
+++ b/src/censys_platform/models/memcached.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,27 @@ class Memcached(BaseModel):
version: Optional[str] = None
r"""The Memcached version indicated in the server's response."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "ascii_binding_protocol_enabled",
+ "binary_binding_protocol_enabled",
+ "responds_to_udp",
+ "stats",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/metrics.py b/src/censys_platform/models/metrics.py
index ab58fe3..507f06a 100644
--- a/src/censys_platform/models/metrics.py
+++ b/src/censys_platform/models/metrics.py
@@ -4,7 +4,8 @@
from .cvss import Cvss, CvssTypedDict
from .cvssv4 import CVSSv4, CVSSv4TypedDict
from .epss import Epss, EpssTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class Metrics(BaseModel):
cvss_v40: Optional[CVSSv4] = None
epss: Optional[Epss] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cvss_v30", "cvss_v31", "cvss_v40", "epss"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mikrotikwinbox.py b/src/censys_platform/models/mikrotikwinbox.py
index 3a5188f..93c8939 100644
--- a/src/censys_platform/models/mikrotikwinbox.py
+++ b/src/censys_platform/models/mikrotikwinbox.py
@@ -25,30 +25,25 @@ class MikrotikWinbox(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["components", "version"]
- nullable_fields = ["components"]
- null_default_fields = []
-
+ optional_fields = set(["components", "version"])
+ nullable_fields = set(["components"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/minecraft.py b/src/censys_platform/models/minecraft.py
index 89a96ad..61d7620 100644
--- a/src/censys_platform/models/minecraft.py
+++ b/src/censys_platform/models/minecraft.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class Minecraft(BaseModel):
protocol_version: Optional[str] = None
server_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "motd",
+ "players_max",
+ "players_online",
+ "protocol_version",
+ "server_version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mms.py b/src/censys_platform/models/mms.py
index 433755e..303fe3e 100644
--- a/src/censys_platform/models/mms.py
+++ b/src/censys_platform/models/mms.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class Mms(BaseModel):
revision: Optional[str] = None
vendor: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["model", "revision", "vendor"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/modbus.py b/src/censys_platform/models/modbus.py
index a8f1d7d..df676a4 100644
--- a/src/censys_platform/models/modbus.py
+++ b/src/censys_platform/models/modbus.py
@@ -6,7 +6,8 @@
ModbusExceptionResponseTypedDict,
)
from .modbus_meiresponse import ModbusMEIResponse, ModbusMEIResponseTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -26,3 +27,21 @@ class Modbus(BaseModel):
mei_response: Optional[ModbusMEIResponse] = None
unit_id: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["exception_response", "function", "mei_response", "unit_id"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/modbus_exceptionresponse.py b/src/censys_platform/models/modbus_exceptionresponse.py
index b5f3448..ece69dc 100644
--- a/src/censys_platform/models/modbus_exceptionresponse.py
+++ b/src/censys_platform/models/modbus_exceptionresponse.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class ModbusExceptionResponse(BaseModel):
exception_function: Optional[int] = None
exception_type: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["exception_function", "exception_type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/modbus_meiresponse.py b/src/censys_platform/models/modbus_meiresponse.py
index 92fa459..b048e63 100644
--- a/src/censys_platform/models/modbus_meiresponse.py
+++ b/src/censys_platform/models/modbus_meiresponse.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class ModbusMEIResponse(BaseModel):
more_follows: Optional[bool] = None
objects: Optional[Dict[str, str]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["conformity_level", "more_follows", "objects"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/monerop2p.py b/src/censys_platform/models/monerop2p.py
index 088ce16..e9d0e7e 100644
--- a/src/censys_platform/models/monerop2p.py
+++ b/src/censys_platform/models/monerop2p.py
@@ -5,7 +5,8 @@
MoneroP2PPingResponse,
MoneroP2PPingResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class MoneroP2PTypedDict(TypedDict):
class MoneroP2P(BaseModel):
ping_response: Optional[MoneroP2PPingResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ping_response"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/monerop2p_entry.py b/src/censys_platform/models/monerop2p_entry.py
index c7cace2..0ea3e07 100644
--- a/src/censys_platform/models/monerop2p_entry.py
+++ b/src/censys_platform/models/monerop2p_entry.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class MoneroP2PEntry(BaseModel):
data: Optional[str] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["data", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/monerop2p_payload.py b/src/censys_platform/models/monerop2p_payload.py
index 453d25d..a48c21f 100644
--- a/src/censys_platform/models/monerop2p_payload.py
+++ b/src/censys_platform/models/monerop2p_payload.py
@@ -23,30 +23,25 @@ class MoneroP2PPayload(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["entries"]
- nullable_fields = ["entries"]
- null_default_fields = []
-
+ optional_fields = set(["entries"])
+ nullable_fields = set(["entries"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/monerop2p_pingresponse.py b/src/censys_platform/models/monerop2p_pingresponse.py
index e10717d..82f5626 100644
--- a/src/censys_platform/models/monerop2p_pingresponse.py
+++ b/src/censys_platform/models/monerop2p_pingresponse.py
@@ -6,7 +6,8 @@
MoneroP2PResponseHeader,
MoneroP2PResponseHeaderTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class MoneroP2PPingResponse(BaseModel):
payload: Optional[MoneroP2PPayload] = None
response_header: Optional[MoneroP2PResponseHeader] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["payload", "response_header"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/monerop2p_responseheader.py b/src/censys_platform/models/monerop2p_responseheader.py
index 9eac6f4..3a525b1 100644
--- a/src/censys_platform/models/monerop2p_responseheader.py
+++ b/src/censys_platform/models/monerop2p_responseheader.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class MoneroP2PResponseHeader(BaseModel):
signature: Optional[int] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "command",
+ "expects_response",
+ "flags",
+ "length",
+ "return_code",
+ "signature",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mongodb.py b/src/censys_platform/models/mongodb.py
index 08c5782..5ac53c7 100644
--- a/src/censys_platform/models/mongodb.py
+++ b/src/censys_platform/models/mongodb.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .mongodb_buildinfo import MongodbBuildInfo, MongodbBuildInfoTypedDict
from .mongodb_ismaster import MongodbIsMaster, MongodbIsMasterTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class Mongodb(BaseModel):
build_info: Optional[MongodbBuildInfo] = None
is_master: Optional[MongodbIsMaster] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["build_info", "is_master"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mongodb_buildinfo.py b/src/censys_platform/models/mongodb_buildinfo.py
index 6bd3037..a2b2fd7 100644
--- a/src/censys_platform/models/mongodb_buildinfo.py
+++ b/src/censys_platform/models/mongodb_buildinfo.py
@@ -5,7 +5,8 @@
MongodbBuildInfoBuildEnvironment,
MongodbBuildInfoBuildEnvironmentTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -26,3 +27,19 @@ class MongodbBuildInfo(BaseModel):
version: Optional[str] = None
r"""Version of mongodb server"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["build_environment", "git_version", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mongodb_buildinfo_buildenvironment.py b/src/censys_platform/models/mongodb_buildinfo_buildenvironment.py
index 066ec7c..cd597b5 100644
--- a/src/censys_platform/models/mongodb_buildinfo_buildenvironment.py
+++ b/src/censys_platform/models/mongodb_buildinfo_buildenvironment.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,31 @@ class MongodbBuildInfoBuildEnvironment(BaseModel):
target_arch: Optional[str] = None
target_os: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "cc",
+ "cc_flags",
+ "cxx",
+ "cxx_flags",
+ "dist_arch",
+ "dist_mod",
+ "link_flags",
+ "target_arch",
+ "target_os",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mongodb_ismaster.py b/src/censys_platform/models/mongodb_ismaster.py
index af89ebd..e207ddf 100644
--- a/src/censys_platform/models/mongodb_ismaster.py
+++ b/src/censys_platform/models/mongodb_ismaster.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class MongodbIsMaster(BaseModel):
min_wire_version: Optional[int] = None
read_only: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "is_master",
+ "logical_session_timeout_minutes",
+ "max_bson_object_size",
+ "max_message_size_bytes",
+ "max_wire_version",
+ "max_write_batch_size",
+ "min_wire_version",
+ "read_only",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mqtt.py b/src/censys_platform/models/mqtt.py
index 9f3514e..8cd537a 100644
--- a/src/censys_platform/models/mqtt.py
+++ b/src/censys_platform/models/mqtt.py
@@ -9,7 +9,8 @@
MqttSubscriptionAckReturn,
MqttSubscriptionAckReturnTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -28,3 +29,21 @@ class Mqtt(BaseModel):
connection_ack_return: Optional[MqttConnectionAckReturn] = None
subscription_ack_return: Optional[MqttSubscriptionAckReturn] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["connection_ack_raw", "connection_ack_return", "subscription_ack_return"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mqtt_connectionackreturn.py b/src/censys_platform/models/mqtt_connectionackreturn.py
index 1f81e71..33f91a3 100644
--- a/src/censys_platform/models/mqtt_connectionackreturn.py
+++ b/src/censys_platform/models/mqtt_connectionackreturn.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class MqttConnectionAckReturn(BaseModel):
return_value: Optional[str] = None
r"""Connection status"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["raw", "return_value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mqtt_subscriptionackreturn.py b/src/censys_platform/models/mqtt_subscriptionackreturn.py
index 8ea921e..d776afa 100644
--- a/src/censys_platform/models/mqtt_subscriptionackreturn.py
+++ b/src/censys_platform/models/mqtt_subscriptionackreturn.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class MqttSubscriptionAckReturn(BaseModel):
return_value: Optional[str] = None
r"""Subscription response"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["raw", "return_value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mssql.py b/src/censys_platform/models/mssql.py
index 123ad4d..4c86131 100644
--- a/src/censys_platform/models/mssql.py
+++ b/src/censys_platform/models/mssql.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .mssql_preloginoptions import MssqlPreloginOptions, MssqlPreloginOptionsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class Mssql(BaseModel):
prelogin_options: Optional[MssqlPreloginOptions] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["encrypt_mode", "instance_name", "prelogin_options", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mssql_preloginoptions.py b/src/censys_platform/models/mssql_preloginoptions.py
index 9e53336..7a9a8fc 100644
--- a/src/censys_platform/models/mssql_preloginoptions.py
+++ b/src/censys_platform/models/mssql_preloginoptions.py
@@ -5,7 +5,8 @@
MssqlPreloginOptionsServerVersion,
MssqlPreloginOptionsServerVersionTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -40,3 +41,31 @@ class MssqlPreloginOptions(BaseModel):
trace_id: Optional[str] = None
unknown: Optional[Dict[str, str]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "encrypt_mode",
+ "fed_auth_required",
+ "instance",
+ "mars",
+ "nonce",
+ "server_version",
+ "thread_id",
+ "trace_id",
+ "unknown",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mssql_preloginoptions_serverversion.py b/src/censys_platform/models/mssql_preloginoptions_serverversion.py
index a3626a7..4ddbc6a 100644
--- a/src/censys_platform/models/mssql_preloginoptions_serverversion.py
+++ b/src/censys_platform/models/mssql_preloginoptions_serverversion.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class MssqlPreloginOptionsServerVersion(BaseModel):
major: Optional[int] = None
minor: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["build_number", "major", "minor"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/murmur.py b/src/censys_platform/models/murmur.py
index 7b58aa1..90bc532 100644
--- a/src/censys_platform/models/murmur.py
+++ b/src/censys_platform/models/murmur.py
@@ -47,38 +47,35 @@ class Murmur(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "crypt_setup",
- "murmur_messages",
- "reject",
- "server_config",
- "server_sync",
- "text_messages",
- "version",
- ]
- nullable_fields = ["murmur_messages", "text_messages"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "crypt_setup",
+ "murmur_messages",
+ "reject",
+ "server_config",
+ "server_sync",
+ "text_messages",
+ "version",
+ ]
+ )
+ nullable_fields = set(["murmur_messages", "text_messages"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/murmur_murmurversion.py b/src/censys_platform/models/murmur_murmurversion.py
index 313ca6d..507023b 100644
--- a/src/censys_platform/models/murmur_murmurversion.py
+++ b/src/censys_platform/models/murmur_murmurversion.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,21 @@ class MurmurMurmurVersion(BaseModel):
os_version: Optional[str] = None
version_string: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["build", "major", "minor", "os", "os_version", "version_string"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/murmurmessage.py b/src/censys_platform/models/murmurmessage.py
index 50dfc31..7f003c9 100644
--- a/src/censys_platform/models/murmurmessage.py
+++ b/src/censys_platform/models/murmurmessage.py
@@ -5,7 +5,8 @@
MurmurMessageMurmurHeader,
MurmurMessageMurmurHeaderTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class MurmurMessage(BaseModel):
body: Optional[str] = None
header: Optional[MurmurMessageMurmurHeader] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["body", "header"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/murmurmessage_murmurheader.py b/src/censys_platform/models/murmurmessage_murmurheader.py
index da46c70..328dca9 100644
--- a/src/censys_platform/models/murmurmessage_murmurheader.py
+++ b/src/censys_platform/models/murmurmessage_murmurheader.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class MurmurMessageMurmurHeader(BaseModel):
length: Optional[int] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["length", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/mysql.py b/src/censys_platform/models/mysql.py
index c5b8dc5..a836ca5 100644
--- a/src/censys_platform/models/mysql.py
+++ b/src/censys_platform/models/mysql.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -64,3 +65,33 @@ class Mysql(BaseModel):
status_flags: Optional[Dict[str, bool]] = None
r"""The set of status flags the server returned in the initial HandshakePacket. Each entry corresponds to a bit being set in the flags; key names correspond to the #defines in the MySQL docs."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "auth_plugin_data",
+ "auth_plugin_name",
+ "capability_flags",
+ "character_set",
+ "connection_id",
+ "error_code",
+ "error_id",
+ "error_message",
+ "protocol_version",
+ "server_version",
+ "status_flags",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/nameconstraints.py b/src/censys_platform/models/nameconstraints.py
index 16f4542..2591022 100644
--- a/src/censys_platform/models/nameconstraints.py
+++ b/src/censys_platform/models/nameconstraints.py
@@ -95,61 +95,60 @@ class NameConstraints(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "critical",
- "excluded_directory_names",
- "excluded_edi_party_names",
- "excluded_email_addresses",
- "excluded_ip_addresses",
- "excluded_names",
- "excluded_registered_ids",
- "excluded_uris",
- "permitted_directory_names",
- "permitted_edi_party_names",
- "permitted_email_addresses",
- "permitted_ip_addresses",
- "permitted_names",
- "permitted_registered_ids",
- "permitted_uris",
- ]
- nullable_fields = [
- "excluded_directory_names",
- "excluded_edi_party_names",
- "excluded_email_addresses",
- "excluded_ip_addresses",
- "excluded_names",
- "excluded_registered_ids",
- "excluded_uris",
- "permitted_directory_names",
- "permitted_edi_party_names",
- "permitted_email_addresses",
- "permitted_ip_addresses",
- "permitted_names",
- "permitted_registered_ids",
- "permitted_uris",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "critical",
+ "excluded_directory_names",
+ "excluded_edi_party_names",
+ "excluded_email_addresses",
+ "excluded_ip_addresses",
+ "excluded_names",
+ "excluded_registered_ids",
+ "excluded_uris",
+ "permitted_directory_names",
+ "permitted_edi_party_names",
+ "permitted_email_addresses",
+ "permitted_ip_addresses",
+ "permitted_names",
+ "permitted_registered_ids",
+ "permitted_uris",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "excluded_directory_names",
+ "excluded_edi_party_names",
+ "excluded_email_addresses",
+ "excluded_ip_addresses",
+ "excluded_names",
+ "excluded_registered_ids",
+ "excluded_uris",
+ "permitted_directory_names",
+ "permitted_edi_party_names",
+ "permitted_email_addresses",
+ "permitted_ip_addresses",
+ "permitted_names",
+ "permitted_registered_ids",
+ "permitted_uris",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/natsio.py b/src/censys_platform/models/natsio.py
index 5aaddeb..e03aa2b 100644
--- a/src/censys_platform/models/natsio.py
+++ b/src/censys_platform/models/natsio.py
@@ -67,47 +67,44 @@ class NatsIo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "auth_required",
- "cluster",
- "connect_urls",
- "domain",
- "git_commit",
- "go",
- "headers",
- "jetstream",
- "proto",
- "server_id",
- "server_name",
- "tls_available",
- "tls_required",
- "tls_verify",
- "version",
- "ws_connect_urls",
- ]
- nullable_fields = ["connect_urls", "ws_connect_urls"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "auth_required",
+ "cluster",
+ "connect_urls",
+ "domain",
+ "git_commit",
+ "go",
+ "headers",
+ "jetstream",
+ "proto",
+ "server_id",
+ "server_name",
+ "tls_available",
+ "tls_required",
+ "tls_verify",
+ "version",
+ "ws_connect_urls",
+ ]
+ )
+ nullable_fields = set(["connect_urls", "ws_connect_urls"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nbd.py b/src/censys_platform/models/nbd.py
index 3aaaa43..1666690 100644
--- a/src/censys_platform/models/nbd.py
+++ b/src/censys_platform/models/nbd.py
@@ -29,30 +29,25 @@ class Nbd(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["exports", "handshake_style", "policies"]
- nullable_fields = ["exports", "policies"]
- null_default_fields = []
-
+ optional_fields = set(["exports", "handshake_style", "policies"])
+ nullable_fields = set(["exports", "policies"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/network.py b/src/censys_platform/models/network.py
index c3e4d99..a254cb4 100644
--- a/src/censys_platform/models/network.py
+++ b/src/censys_platform/models/network.py
@@ -39,37 +39,27 @@ class Network(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "allocation_type",
- "cidrs",
- "created",
- "handle",
- "name",
- "updated",
- ]
- nullable_fields = ["cidrs"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["allocation_type", "cidrs", "created", "handle", "name", "updated"]
+ )
+ nullable_fields = set(["cidrs"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/networkcapabilities.py b/src/censys_platform/models/networkcapabilities.py
index 586c696..19588fe 100644
--- a/src/censys_platform/models/networkcapabilities.py
+++ b/src/censys_platform/models/networkcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,31 @@ class NetworkCapabilities(BaseModel):
ntp: Optional[int] = None
zero_configuration: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "dhcp_v6",
+ "dot11_configuration",
+ "dot1x_configurations",
+ "dynamic_dns",
+ "hostname_from_dhcp",
+ "ip_filter",
+ "ipv6",
+ "ntp",
+ "zero_configuration",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/nfsmountd.py b/src/censys_platform/models/nfsmountd.py
index a3986c4..f6e2892 100644
--- a/src/censys_platform/models/nfsmountd.py
+++ b/src/censys_platform/models/nfsmountd.py
@@ -23,30 +23,25 @@ class NfsMountd(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["export_lists"]
- nullable_fields = ["export_lists"]
- null_default_fields = []
-
+ optional_fields = set(["export_lists"])
+ nullable_fields = set(["export_lists"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nmea.py b/src/censys_platform/models/nmea.py
index 1460dcf..f6ea7c6 100644
--- a/src/censys_platform/models/nmea.py
+++ b/src/censys_platform/models/nmea.py
@@ -23,30 +23,25 @@ class Nmea(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["messages"]
- nullable_fields = ["messages"]
- null_default_fields = []
-
+ optional_fields = set(["messages"])
+ nullable_fields = set(["messages"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nmea_nmeamessage.py b/src/censys_platform/models/nmea_nmeamessage.py
index 1c687a4..c6c0cdb 100644
--- a/src/censys_platform/models/nmea_nmeamessage.py
+++ b/src/censys_platform/models/nmea_nmeamessage.py
@@ -31,30 +31,25 @@ class NmeaNmeaMessage(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["fields", "sentence_id", "talker_id", "talker_name"]
- nullable_fields = ["fields"]
- null_default_fields = []
-
+ optional_fields = set(["fields", "sentence_id", "talker_id", "talker_name"])
+ nullable_fields = set(["fields"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nodeinfov0.py b/src/censys_platform/models/nodeinfov0.py
index b7ce9d2..b5db706 100644
--- a/src/censys_platform/models/nodeinfov0.py
+++ b/src/censys_platform/models/nodeinfov0.py
@@ -43,39 +43,36 @@ class NodeInfoV0(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "features",
- "is_healthy",
- "latest_milestone",
- "latest_uncommitted_milestone",
- "name",
- "neighbors",
- "tips",
- "version",
- ]
- nullable_fields = ["features"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "features",
+ "is_healthy",
+ "latest_milestone",
+ "latest_uncommitted_milestone",
+ "name",
+ "neighbors",
+ "tips",
+ "version",
+ ]
+ )
+ nullable_fields = set(["features"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nodeinfov1.py b/src/censys_platform/models/nodeinfov1.py
index cde9ee7..b8bc198 100644
--- a/src/censys_platform/models/nodeinfov1.py
+++ b/src/censys_platform/models/nodeinfov1.py
@@ -40,38 +40,35 @@ class NodeInfoV1(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "confirmed_milestone_index",
- "features",
- "is_healthy",
- "latest_milestone_index",
- "name",
- "network_id",
- "version",
- ]
- nullable_fields = ["features"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "confirmed_milestone_index",
+ "features",
+ "is_healthy",
+ "latest_milestone_index",
+ "name",
+ "network_id",
+ "version",
+ ]
+ )
+ nullable_fields = set(["features"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/nodeinfov2.py b/src/censys_platform/models/nodeinfov2.py
index 0922c0e..c436448 100644
--- a/src/censys_platform/models/nodeinfov2.py
+++ b/src/censys_platform/models/nodeinfov2.py
@@ -64,46 +64,43 @@ class NodeInfoV2(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "decimals",
- "features",
- "is_healthy",
- "latest_milestone",
- "latest_uncommitted_milestone",
- "name",
- "network_name",
- "protocol_version",
- "subunit",
- "supported_protocol_versions",
- "ticker_symbol",
- "token_name",
- "token_supply",
- "unit",
- "version",
- ]
- nullable_fields = ["features", "supported_protocol_versions"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "decimals",
+ "features",
+ "is_healthy",
+ "latest_milestone",
+ "latest_uncommitted_milestone",
+ "name",
+ "network_name",
+ "protocol_version",
+ "subunit",
+ "supported_protocol_versions",
+ "ticker_symbol",
+ "token_name",
+ "token_supply",
+ "unit",
+ "version",
+ ]
+ )
+ nullable_fields = set(["features", "supported_protocol_versions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/noticereference.py b/src/censys_platform/models/noticereference.py
index 1e6d20b..eb3757f 100644
--- a/src/censys_platform/models/noticereference.py
+++ b/src/censys_platform/models/noticereference.py
@@ -25,30 +25,25 @@ class NoticeReference(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["notice_numbers", "organization"]
- nullable_fields = ["notice_numbers"]
- null_default_fields = []
-
+ optional_fields = set(["notice_numbers", "organization"])
+ nullable_fields = set(["notice_numbers"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ntlminfo.py b/src/censys_platform/models/ntlminfo.py
index b010dd1..6d4f423 100644
--- a/src/censys_platform/models/ntlminfo.py
+++ b/src/censys_platform/models/ntlminfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -51,3 +52,36 @@ class NtlmInfo(BaseModel):
os_version: Optional[str] = None
target_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "always_sign_supported",
+ "challenge_type",
+ "dns_domain_name",
+ "dns_server_name",
+ "dns_tree_name",
+ "encryption_128bit_supported",
+ "encryption_56bit_supported",
+ "netbios_computer_name",
+ "netbios_domain_name",
+ "ntlm1_supported",
+ "ntlm2_supported",
+ "ntlm_version",
+ "os_version",
+ "target_name",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ntp.py b/src/censys_platform/models/ntp.py
index f8cc957..23e1787 100644
--- a/src/censys_platform/models/ntp.py
+++ b/src/censys_platform/models/ntp.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .ntp_ntpheader import NTPNTPHeader, NTPNTPHeaderTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class NtpTypedDict(TypedDict):
class Ntp(BaseModel):
get_time_header: Optional[NTPNTPHeader] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["get_time_header"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ntp_ntpheader.py b/src/censys_platform/models/ntp_ntpheader.py
index e287153..c1b5b43 100644
--- a/src/censys_platform/models/ntp_ntpheader.py
+++ b/src/censys_platform/models/ntp_ntpheader.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,29 @@ class NTPNTPHeader(BaseModel):
version: Optional[int] = None
r"""The NTP version indicated in the server's response."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "leap_indicator",
+ "mode",
+ "poll",
+ "precision",
+ "reference_id",
+ "stratum",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ntrip.py b/src/censys_platform/models/ntrip.py
index 6139d7f..2f52cda 100644
--- a/src/censys_platform/models/ntrip.py
+++ b/src/censys_platform/models/ntrip.py
@@ -29,30 +29,25 @@ class Ntrip(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["data_streams", "server", "version"]
- nullable_fields = ["data_streams"]
- null_default_fields = []
-
+ optional_fields = set(["data_streams", "server", "version"])
+ nullable_fields = set(["data_streams"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ntrip_datastream.py b/src/censys_platform/models/ntrip_datastream.py
index 3a04f1f..c52d814 100644
--- a/src/censys_platform/models/ntrip_datastream.py
+++ b/src/censys_platform/models/ntrip_datastream.py
@@ -73,49 +73,46 @@ class NtripDataStream(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "authentication",
- "bitrate",
- "carrier_info",
- "caster_mount_point",
- "compression_or_encryption",
- "country_code",
- "data_format",
- "fee",
- "format_details",
- "generator",
- "latitude",
- "longitude",
- "misc",
- "nav_system",
- "network",
- "nmea",
- "solution",
- "source_identifier",
- ]
- nullable_fields = ["authentication"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "authentication",
+ "bitrate",
+ "carrier_info",
+ "caster_mount_point",
+ "compression_or_encryption",
+ "country_code",
+ "data_format",
+ "fee",
+ "format_details",
+ "generator",
+ "latitude",
+ "longitude",
+ "misc",
+ "nav_system",
+ "network",
+ "nmea",
+ "solution",
+ "source_identifier",
+ ]
+ )
+ nullable_fields = set(["authentication"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ollama.py b/src/censys_platform/models/ollama.py
index 52ab344..83070ab 100644
--- a/src/censys_platform/models/ollama.py
+++ b/src/censys_platform/models/ollama.py
@@ -29,30 +29,25 @@ class Ollama(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["models", "running_models", "version"]
- nullable_fields = ["models", "running_models"]
- null_default_fields = []
-
+ optional_fields = set(["models", "running_models", "version"])
+ nullable_fields = set(["models", "running_models"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ollama_model.py b/src/censys_platform/models/ollama_model.py
index 89f44b1..4d83447 100644
--- a/src/censys_platform/models/ollama_model.py
+++ b/src/censys_platform/models/ollama_model.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class OllamaModel(BaseModel):
size: Optional[int] = None
size_vram: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "digest",
+ "expires_at",
+ "family",
+ "model",
+ "name",
+ "parent_model",
+ "size",
+ "size_vram",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/onvif.py b/src/censys_platform/models/onvif.py
index 1cc0b4e..54a5866 100644
--- a/src/censys_platform/models/onvif.py
+++ b/src/censys_platform/models/onvif.py
@@ -27,30 +27,25 @@ class Onvif(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["hostname", "services"]
- nullable_fields = ["services"]
- null_default_fields = []
-
+ optional_fields = set(["hostname", "services"])
+ nullable_fields = set(["services"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/onvif_hostname.py b/src/censys_platform/models/onvif_hostname.py
index ed8b775..ee9f19d 100644
--- a/src/censys_platform/models/onvif_hostname.py
+++ b/src/censys_platform/models/onvif_hostname.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class OnvifHostname(BaseModel):
from_dhcp: Optional[bool] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["from_dhcp", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/onvifservice.py b/src/censys_platform/models/onvifservice.py
index a0760ce..ba53168 100644
--- a/src/censys_platform/models/onvifservice.py
+++ b/src/censys_platform/models/onvifservice.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .capabilities import Capabilities, CapabilitiesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -25,3 +26,27 @@ class OnvifService(BaseModel):
service_version_minor: Optional[int] = None
xaddr: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "capabilities",
+ "namespace",
+ "service_version_major",
+ "service_version_minor",
+ "xaddr",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/opcua.py b/src/censys_platform/models/opcua.py
index 9429e7b..15dade2 100644
--- a/src/censys_platform/models/opcua.py
+++ b/src/censys_platform/models/opcua.py
@@ -38,37 +38,34 @@ class OpcUa(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "endpoints",
- "max_chunk_size",
- "max_message_size",
- "protocol_version",
- "receive_buffer_size",
- "send_buffer_size",
- ]
- nullable_fields = ["endpoints"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "endpoints",
+ "max_chunk_size",
+ "max_message_size",
+ "protocol_version",
+ "receive_buffer_size",
+ "send_buffer_size",
+ ]
+ )
+ nullable_fields = set(["endpoints"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/opcua_description.py b/src/censys_platform/models/opcua_description.py
index 4417621..ff85e83 100644
--- a/src/censys_platform/models/opcua_description.py
+++ b/src/censys_platform/models/opcua_description.py
@@ -41,38 +41,35 @@ class OpcUaDescription(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "application_name",
- "application_type",
- "application_uri",
- "discovery_profile_uri",
- "discovery_urls",
- "gateway_server_uri",
- "product_uri",
- ]
- nullable_fields = ["discovery_urls"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "application_name",
+ "application_type",
+ "application_uri",
+ "discovery_profile_uri",
+ "discovery_urls",
+ "gateway_server_uri",
+ "product_uri",
+ ]
+ )
+ nullable_fields = set(["discovery_urls"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/opcua_endpoint.py b/src/censys_platform/models/opcua_endpoint.py
index 09167fd..8217751 100644
--- a/src/censys_platform/models/opcua_endpoint.py
+++ b/src/censys_platform/models/opcua_endpoint.py
@@ -45,39 +45,36 @@ class OpcUaEndpoint(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "endpoint_url",
- "security_level",
- "security_mode",
- "security_policy_uri",
- "serve_cert",
- "server",
- "transport_profile_uri",
- "user_identity_token",
- ]
- nullable_fields = ["user_identity_token"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "endpoint_url",
+ "security_level",
+ "security_mode",
+ "security_policy_uri",
+ "serve_cert",
+ "server",
+ "transport_profile_uri",
+ "user_identity_token",
+ ]
+ )
+ nullable_fields = set(["user_identity_token"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/opcua_localizedtext.py b/src/censys_platform/models/opcua_localizedtext.py
index e2a1aac..0e19856 100644
--- a/src/censys_platform/models/opcua_localizedtext.py
+++ b/src/censys_platform/models/opcua_localizedtext.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class OpcUaLocalizedText(BaseModel):
locale: Optional[str] = None
text: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["flags", "locale", "text"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/opcua_usertokenpolicy.py b/src/censys_platform/models/opcua_usertokenpolicy.py
index 372a84a..d553e22 100644
--- a/src/censys_platform/models/opcua_usertokenpolicy.py
+++ b/src/censys_platform/models/opcua_usertokenpolicy.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class OpcUaUserTokenPolicy(BaseModel):
security_policy_uri: Optional[str] = None
token_type: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "issued_token_type",
+ "issuer_endpoint_url",
+ "policy_id",
+ "security_policy_uri",
+ "token_type",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/opendirectory.py b/src/censys_platform/models/opendirectory.py
index c3e4cd1..b439bff 100644
--- a/src/censys_platform/models/opendirectory.py
+++ b/src/censys_platform/models/opendirectory.py
@@ -26,30 +26,25 @@ class OpenDirectory(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["files", "recursive"]
- nullable_fields = ["files"]
- null_default_fields = []
-
+ optional_fields = set(["files", "recursive"])
+ nullable_fields = set(["files"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/opendirectory_file.py b/src/censys_platform/models/opendirectory_file.py
index a195cf3..ae86e9b 100644
--- a/src/censys_platform/models/opendirectory_file.py
+++ b/src/censys_platform/models/opendirectory_file.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class OpenDirectoryFile(BaseModel):
suspicious_score: Optional[float] = None
type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "extension",
+ "last_modified",
+ "name",
+ "path",
+ "size",
+ "suspicious_score",
+ "type",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/openvpn.py b/src/censys_platform/models/openvpn.py
index 803aeb0..e398ce7 100644
--- a/src/censys_platform/models/openvpn.py
+++ b/src/censys_platform/models/openvpn.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class Openvpn(BaseModel):
accepts_v1: Optional[bool] = None
accepts_v2: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["accepts_v1", "accepts_v2"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/openvpnmgmt.py b/src/censys_platform/models/openvpnmgmt.py
index a841d46..0000bee 100644
--- a/src/censys_platform/models/openvpnmgmt.py
+++ b/src/censys_platform/models/openvpnmgmt.py
@@ -34,36 +34,33 @@ class OpenvpnMgmt(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "build_date",
- "features",
- "management_version",
- "open_vpn_version",
- "target_triple",
- ]
- nullable_fields = ["features"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "build_date",
+ "features",
+ "management_version",
+ "open_vpn_version",
+ "target_triple",
+ ]
+ )
+ nullable_fields = set(["features"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/oracle.py b/src/censys_platform/models/oracle.py
index 7af5f74..b503bac 100644
--- a/src/censys_platform/models/oracle.py
+++ b/src/censys_platform/models/oracle.py
@@ -80,43 +80,40 @@ class Oracle(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "accept_version",
- "connect_flags0",
- "connect_flags1",
- "did_resend",
- "global_service_options",
- "nsn_service_versions",
- "nsn_version",
- "refuse_error",
- "refuse_error_raw",
- "refuse_reason_app",
- "refuse_reason_sys",
- "refuse_version",
- ]
- nullable_fields = ["refuse_error"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "accept_version",
+ "connect_flags0",
+ "connect_flags1",
+ "did_resend",
+ "global_service_options",
+ "nsn_service_versions",
+ "nsn_version",
+ "refuse_error",
+ "refuse_error_raw",
+ "refuse_reason_app",
+ "refuse_reason_sys",
+ "refuse_version",
+ ]
+ )
+ nullable_fields = set(["refuse_error"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/oracle_descriptor.py b/src/censys_platform/models/oracle_descriptor.py
index 06e653b..7664440 100644
--- a/src/censys_platform/models/oracle_descriptor.py
+++ b/src/censys_platform/models/oracle_descriptor.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class OracleDescriptor(BaseModel):
value: Optional[str] = None
r"""The parsed value from the error received when the initial handshake is refused."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["key", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/organization.py b/src/censys_platform/models/organization.py
index fe2fa0c..8664b68 100644
--- a/src/censys_platform/models/organization.py
+++ b/src/censys_platform/models/organization.py
@@ -53,42 +53,39 @@ class Organization(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "abuse_contacts",
- "address",
- "admin_contacts",
- "city",
- "country",
- "handle",
- "name",
- "postal_code",
- "state",
- "street",
- "tech_contacts",
- ]
- nullable_fields = ["abuse_contacts", "admin_contacts", "tech_contacts"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "abuse_contacts",
+ "address",
+ "admin_contacts",
+ "city",
+ "country",
+ "handle",
+ "name",
+ "postal_code",
+ "state",
+ "street",
+ "tech_contacts",
+ ]
+ )
+ nullable_fields = set(["abuse_contacts", "admin_contacts", "tech_contacts"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/organizationcredits.py b/src/censys_platform/models/organizationcredits.py
index e815f05..9cc7b9c 100644
--- a/src/censys_platform/models/organizationcredits.py
+++ b/src/censys_platform/models/organizationcredits.py
@@ -33,30 +33,14 @@ class OrganizationCredits(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["credit_expirations"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/organizationdetails.py b/src/censys_platform/models/organizationdetails.py
index 02dd980..7aae356 100644
--- a/src/censys_platform/models/organizationdetails.py
+++ b/src/censys_platform/models/organizationdetails.py
@@ -6,8 +6,9 @@
OrganizationPreferences,
OrganizationPreferencesTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from datetime import datetime
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,19 @@ class OrganizationDetails(BaseModel):
member_counts: Optional[MemberCounts] = None
preferences: Optional[OrganizationPreferences] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["created_at", "member_counts", "preferences"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/organizationmember.py b/src/censys_platform/models/organizationmember.py
index b2cb260..717111b 100644
--- a/src/censys_platform/models/organizationmember.py
+++ b/src/censys_platform/models/organizationmember.py
@@ -54,30 +54,25 @@ class OrganizationMember(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["created_at", "first_login_time", "latest_login_time"]
- nullable_fields = ["roles"]
- null_default_fields = []
-
+ optional_fields = set(["created_at", "first_login_time", "latest_login_time"])
+ nullable_fields = set(["roles"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/organizationmemberslist.py b/src/censys_platform/models/organizationmemberslist.py
index b78f362..3348683 100644
--- a/src/censys_platform/models/organizationmemberslist.py
+++ b/src/censys_platform/models/organizationmemberslist.py
@@ -23,30 +23,14 @@ class OrganizationMembersList(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["members"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/organizationpreferences.py b/src/censys_platform/models/organizationpreferences.py
index beaa554..83e5550 100644
--- a/src/censys_platform/models/organizationpreferences.py
+++ b/src/censys_platform/models/organizationpreferences.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class OrganizationPreferences(BaseModel):
mfa_required: Optional[bool] = None
r"""Whether the organization has opted into multi-factor authentication."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ai_opt_in", "ai_training", "mfa_required"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/othername.py b/src/censys_platform/models/othername.py
index 0242c34..4dd5e44 100644
--- a/src/censys_platform/models/othername.py
+++ b/src/censys_platform/models/othername.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class OtherName(BaseModel):
value: Optional[str] = None
r"""The raw otherName value."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["id", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/paginationinfo.py b/src/censys_platform/models/paginationinfo.py
index 7c959ca..fd9527a 100644
--- a/src/censys_platform/models/paginationinfo.py
+++ b/src/censys_platform/models/paginationinfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class PaginationInfo(BaseModel):
next_page_token: Optional[str] = None
r"""The token to use to retrieve the next page of results."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["next_page_token"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pantiltzoomcapabilities.py b/src/censys_platform/models/pantiltzoomcapabilities.py
index 887f482..594b464 100644
--- a/src/censys_platform/models/pantiltzoomcapabilities.py
+++ b/src/censys_platform/models/pantiltzoomcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class PanTiltZoomCapabilities(BaseModel):
reverse: Optional[bool] = None
status_position: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "eflip",
+ "get_compatible_configurations",
+ "move_status",
+ "reverse",
+ "status_position",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pcanywhere.py b/src/censys_platform/models/pcanywhere.py
index 89858bb..a82064d 100644
--- a/src/censys_platform/models/pcanywhere.py
+++ b/src/censys_platform/models/pcanywhere.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .pcanywhere_status import PcAnywhereStatus, PcAnywhereStatusTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -23,3 +24,19 @@ class PcAnywhere(BaseModel):
r"""Full 'NR' query response"""
status: Optional[PcAnywhereStatus] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "nr", "status"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pcanywhere_status.py b/src/censys_platform/models/pcanywhere_status.py
index 6bc5e0d..ded6eb0 100644
--- a/src/censys_platform/models/pcanywhere_status.py
+++ b/src/censys_platform/models/pcanywhere_status.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class PcAnywhereStatus(BaseModel):
raw: Optional[str] = None
r"""Full 'ST' query response"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["in_use", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/peer.py b/src/censys_platform/models/peer.py
index 47c47d5..037e502 100644
--- a/src/censys_platform/models/peer.py
+++ b/src/censys_platform/models/peer.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class Peer(BaseModel):
type: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ip", "port", "public_key", "type", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pgbouncer.py b/src/censys_platform/models/pgbouncer.py
index 60608a2..b5dab1b 100644
--- a/src/censys_platform/models/pgbouncer.py
+++ b/src/censys_platform/models/pgbouncer.py
@@ -5,7 +5,8 @@
PgbouncerStartupCapabilities,
PgbouncerStartupCapabilitiesTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class PgbouncerTypedDict(TypedDict):
class Pgbouncer(BaseModel):
startup_capabilities: Optional[PgbouncerStartupCapabilities] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["startup_capabilities"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pgbouncer_startupcapabilities.py b/src/censys_platform/models/pgbouncer_startupcapabilities.py
index 17f2502..e0c951a 100644
--- a/src/censys_platform/models/pgbouncer_startupcapabilities.py
+++ b/src/censys_platform/models/pgbouncer_startupcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class PgbouncerStartupCapabilities(BaseModel):
v3: Optional[bool] = None
v4: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["v2", "v3", "v4"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pixelformat.py b/src/censys_platform/models/pixelformat.py
index dd6e2fa..ef8e8a6 100644
--- a/src/censys_platform/models/pixelformat.py
+++ b/src/censys_platform/models/pixelformat.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -68,3 +69,35 @@ class PixelFormat(BaseModel):
true_color: Optional[bool] = None
r"""If false, color maps are used"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "big_endian",
+ "bits_per_pixel",
+ "blue_max",
+ "blue_shift",
+ "depth",
+ "green_max",
+ "green_shift",
+ "padding1",
+ "padding2",
+ "padding3",
+ "red_max",
+ "red_shift",
+ "true_color",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/plexmediaserver.py b/src/censys_platform/models/plexmediaserver.py
index 02f05ee..d0ad4d4 100644
--- a/src/censys_platform/models/plexmediaserver.py
+++ b/src/censys_platform/models/plexmediaserver.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class PlexMediaServerTypedDict(TypedDict):
class PlexMediaServer(BaseModel):
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pop3.py b/src/censys_platform/models/pop3.py
index 27cec02..4131bac 100644
--- a/src/censys_platform/models/pop3.py
+++ b/src/censys_platform/models/pop3.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -14,3 +15,19 @@ class Pop3TypedDict(TypedDict):
class Pop3(BaseModel):
start_tls: Optional[str] = None
r"""The server's response to the STARTTLS command."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["start_tls"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/port.py b/src/censys_platform/models/port.py
index e7ea4a5..e880d8e 100644
--- a/src/censys_platform/models/port.py
+++ b/src/censys_platform/models/port.py
@@ -25,30 +25,25 @@ class Port(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["port", "protocol"]
- nullable_fields = ["protocol"]
- null_default_fields = []
-
+ optional_fields = set(["port", "protocol"])
+ nullable_fields = set(["protocol"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/portmap.py b/src/censys_platform/models/portmap.py
index bb2ad5f..085a6a6 100644
--- a/src/censys_platform/models/portmap.py
+++ b/src/censys_platform/models/portmap.py
@@ -27,30 +27,25 @@ class Portmap(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["v2_entries", "v3_entries"]
- nullable_fields = ["v2_entries", "v3_entries"]
- null_default_fields = []
-
+ optional_fields = set(["v2_entries", "v3_entries"])
+ nullable_fields = set(["v2_entries", "v3_entries"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/portmap_v2entry.py b/src/censys_platform/models/portmap_v2entry.py
index 3d43213..6287bcd 100644
--- a/src/censys_platform/models/portmap_v2entry.py
+++ b/src/censys_platform/models/portmap_v2entry.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class PortmapV2Entry(BaseModel):
shorthand: Optional[str] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["description", "port", "protocol", "shorthand", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/portmap_v3entry.py b/src/censys_platform/models/portmap_v3entry.py
index 500bf38..79a0208 100644
--- a/src/censys_platform/models/portmap_v3entry.py
+++ b/src/censys_platform/models/portmap_v3entry.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,28 @@ class PortmapV3Entry(BaseModel):
universal_address: Optional[str] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "description",
+ "network_id",
+ "owner",
+ "shorthand",
+ "universal_address",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/postgres.py b/src/censys_platform/models/postgres.py
index ba703c4..391497c 100644
--- a/src/censys_platform/models/postgres.py
+++ b/src/censys_platform/models/postgres.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,19 @@ class Postgres(BaseModel):
r"""The error received in response to a StartupMessage without providing the User field."""
supported_versions: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["protocol_error", "startup_error", "supported_versions"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pprof.py b/src/censys_platform/models/pprof.py
index 9c85a49..6488f3a 100644
--- a/src/censys_platform/models/pprof.py
+++ b/src/censys_platform/models/pprof.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -36,3 +37,31 @@ class Pprof(BaseModel):
threadcreate: Optional[int] = None
trace: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "allocs",
+ "block",
+ "cmdline",
+ "goroutine",
+ "heap",
+ "mutex",
+ "profile",
+ "threadcreate",
+ "trace",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pptp.py b/src/censys_platform/models/pptp.py
index 5484f01..f7a7533 100644
--- a/src/censys_platform/models/pptp.py
+++ b/src/censys_platform/models/pptp.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .pptp_responseinfo import PptpResponseInfo, PptpResponseInfoTypedDict
from .pptp_version import PptpVersion, PptpVersionTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -38,3 +39,31 @@ class Pptp(BaseModel):
result_message: Optional[PptpResponseInfo] = None
vendor: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "bearer_message",
+ "error_message",
+ "firmware",
+ "framing_message",
+ "hostname",
+ "maximum_channels",
+ "protocol",
+ "result_message",
+ "vendor",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pptp_responseinfo.py b/src/censys_platform/models/pptp_responseinfo.py
index 275dbdb..b8a70c7 100644
--- a/src/censys_platform/models/pptp_responseinfo.py
+++ b/src/censys_platform/models/pptp_responseinfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class PptpResponseInfo(BaseModel):
code: Optional[int] = None
meaning: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["code", "meaning"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/pptp_version.py b/src/censys_platform/models/pptp_version.py
index dd520e6..02e1d78 100644
--- a/src/censys_platform/models/pptp_version.py
+++ b/src/censys_platform/models/pptp_version.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class PptpVersion(BaseModel):
major: Optional[int] = None
minor: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["major", "minor"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/profinetcm.py b/src/censys_platform/models/profinetcm.py
index 946b441..d83ad43 100644
--- a/src/censys_platform/models/profinetcm.py
+++ b/src/censys_platform/models/profinetcm.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,21 @@ class ProfinetCm(BaseModel):
lookup_response_raw: Optional[str] = None
multiple_fragments: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["byte_order", "lookup_response_raw", "multiple_fragments"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus.py b/src/censys_platform/models/prometheus.py
index 69f9a55..67becc7 100644
--- a/src/censys_platform/models/prometheus.py
+++ b/src/censys_platform/models/prometheus.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .prometheus_response import PrometheusResponse, PrometheusResponseTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class PrometheusTypedDict(TypedDict):
class Prometheus(BaseModel):
response: Optional[PrometheusResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["response"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus_response.py b/src/censys_platform/models/prometheus_response.py
index 44b01b6..4180c51 100644
--- a/src/censys_platform/models/prometheus_response.py
+++ b/src/censys_platform/models/prometheus_response.py
@@ -65,43 +65,42 @@ class PrometheusResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "active_targets",
- "all_versions",
- "config_exposed",
- "dropped_targets",
- "go_versions",
- "prometheus_versions",
- ]
- nullable_fields = [
- "active_targets",
- "all_versions",
- "dropped_targets",
- "go_versions",
- "prometheus_versions",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "active_targets",
+ "all_versions",
+ "config_exposed",
+ "dropped_targets",
+ "go_versions",
+ "prometheus_versions",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "active_targets",
+ "all_versions",
+ "dropped_targets",
+ "go_versions",
+ "prometheus_versions",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/prometheus_response_activetarget.py b/src/censys_platform/models/prometheus_response_activetarget.py
index 91e00e7..b6c7c78 100644
--- a/src/censys_platform/models/prometheus_response_activetarget.py
+++ b/src/censys_platform/models/prometheus_response_activetarget.py
@@ -9,7 +9,8 @@
PrometheusResponseActiveTargetLabels,
PrometheusResponseActiveTargetLabelsTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -45,3 +46,28 @@ class PrometheusResponseActiveTarget(BaseModel):
scrape_url: Optional[str] = None
r"""URL that Prometheus scraped."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "discovered_labels",
+ "health",
+ "labels",
+ "last_error",
+ "last_scrape",
+ "scrape_url",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus_response_activetarget_discoveredlabels.py b/src/censys_platform/models/prometheus_response_activetarget_discoveredlabels.py
index 192ddfa..cfcfa67 100644
--- a/src/censys_platform/models/prometheus_response_activetarget_discoveredlabels.py
+++ b/src/censys_platform/models/prometheus_response_activetarget_discoveredlabels.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,19 @@ class PrometheusResponseActiveTargetDiscoveredLabels(BaseModel):
scheme: Optional[str] = None
r"""URL scheme."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["address", "job", "metrics_path", "scheme"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus_response_activetarget_labels.py b/src/censys_platform/models/prometheus_response_activetarget_labels.py
index a50cb0f..1e68351 100644
--- a/src/censys_platform/models/prometheus_response_activetarget_labels.py
+++ b/src/censys_platform/models/prometheus_response_activetarget_labels.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class PrometheusResponseActiveTargetLabels(BaseModel):
job: Optional[str] = None
r"""Job of target after relabelling has occurred."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["instance", "job"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus_response_droppedtarget.py b/src/censys_platform/models/prometheus_response_droppedtarget.py
index 34e96f6..f9a080c 100644
--- a/src/censys_platform/models/prometheus_response_droppedtarget.py
+++ b/src/censys_platform/models/prometheus_response_droppedtarget.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,19 @@ class PrometheusResponseDroppedTarget(BaseModel):
scheme: Optional[str] = None
r"""URL scheme."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["address", "job", "metrics_path", "scheme"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheus_response_prometheusversion.py b/src/censys_platform/models/prometheus_response_prometheusversion.py
index 4fe56a6..1093e5f 100644
--- a/src/censys_platform/models/prometheus_response_prometheusversion.py
+++ b/src/censys_platform/models/prometheus_response_prometheusversion.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class PrometheusResponsePrometheusVersion(BaseModel):
version: Optional[str] = None
r"""Version of Prometheus."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["go_version", "revision", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheusmetricfamily.py b/src/censys_platform/models/prometheusmetricfamily.py
index d1a2aaa..75e6e3d 100644
--- a/src/censys_platform/models/prometheusmetricfamily.py
+++ b/src/censys_platform/models/prometheusmetricfamily.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class PrometheusMetricFamily(BaseModel):
help: Optional[str] = None
name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["help", "name"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/prometheustarget.py b/src/censys_platform/models/prometheustarget.py
index f3a5e7a..24c0d72 100644
--- a/src/censys_platform/models/prometheustarget.py
+++ b/src/censys_platform/models/prometheustarget.py
@@ -26,30 +26,25 @@ class PrometheusTarget(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["metric_families"]
- nullable_fields = ["metric_families"]
- null_default_fields = []
-
+ optional_fields = set(["metric_families"])
+ nullable_fields = set(["metric_families"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/qcstatements.py b/src/censys_platform/models/qcstatements.py
index e3672b5..9ef6d32 100644
--- a/src/censys_platform/models/qcstatements.py
+++ b/src/censys_platform/models/qcstatements.py
@@ -29,30 +29,25 @@ class QcStatements(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["ids", "parsed"]
- nullable_fields = ["ids"]
- null_default_fields = []
-
+ optional_fields = set(["ids", "parsed"])
+ nullable_fields = set(["ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/qcstatements_monetaryvalue.py b/src/censys_platform/models/qcstatements_monetaryvalue.py
index 50473a8..8dbfc7c 100644
--- a/src/censys_platform/models/qcstatements_monetaryvalue.py
+++ b/src/censys_platform/models/qcstatements_monetaryvalue.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class QcStatementsMonetaryValue(BaseModel):
currency_number: Optional[int] = None
exponent: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["amount", "currency", "currency_number", "exponent"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/qcstatements_parsedstatements.py b/src/censys_platform/models/qcstatements_parsedstatements.py
index 643abd9..16555c1 100644
--- a/src/censys_platform/models/qcstatements_parsedstatements.py
+++ b/src/censys_platform/models/qcstatements_parsedstatements.py
@@ -53,46 +53,45 @@ class QcStatementsParsedStatements(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "etsi_compliance",
- "legislation",
- "limit",
- "pds_locations",
- "retention_period",
- "sscd",
- "types",
- ]
- nullable_fields = [
- "etsi_compliance",
- "legislation",
- "limit",
- "pds_locations",
- "retention_period",
- "sscd",
- "types",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "etsi_compliance",
+ "legislation",
+ "limit",
+ "pds_locations",
+ "retention_period",
+ "sscd",
+ "types",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "etsi_compliance",
+ "legislation",
+ "limit",
+ "pds_locations",
+ "retention_period",
+ "sscd",
+ "types",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/qcstatements_pdslocation.py b/src/censys_platform/models/qcstatements_pdslocation.py
index 7789678..a33e01f 100644
--- a/src/censys_platform/models/qcstatements_pdslocation.py
+++ b/src/censys_platform/models/qcstatements_pdslocation.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class QcStatementsPdsLocation(BaseModel):
language: Optional[str] = None
url: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["language", "url"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/qcstatements_qclegislation.py b/src/censys_platform/models/qcstatements_qclegislation.py
index 3c4d378..1ab7eed 100644
--- a/src/censys_platform/models/qcstatements_qclegislation.py
+++ b/src/censys_platform/models/qcstatements_qclegislation.py
@@ -22,30 +22,25 @@ class QCStatementsQCLegislation(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["country_codes"]
- nullable_fields = ["country_codes"]
- null_default_fields = []
-
+ optional_fields = set(["country_codes"])
+ nullable_fields = set(["country_codes"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/qcstatements_qctype.py b/src/censys_platform/models/qcstatements_qctype.py
index 3f4df38..ea488c3 100644
--- a/src/censys_platform/models/qcstatements_qctype.py
+++ b/src/censys_platform/models/qcstatements_qctype.py
@@ -22,30 +22,25 @@ class QcStatementsQcType(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["ids"]
- nullable_fields = ["ids"]
- null_default_fields = []
-
+ optional_fields = set(["ids"])
+ nullable_fields = set(["ids"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rdate.py b/src/censys_platform/models/rdate.py
index cfa76be..c3c6979 100644
--- a/src/censys_platform/models/rdate.py
+++ b/src/censys_platform/models/rdate.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
import pydantic
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -13,3 +14,19 @@ class RdateTypedDict(TypedDict):
class Rdate(BaseModel):
date_: Annotated[Optional[str], pydantic.Field(alias="date")] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["date"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp.py b/src/censys_platform/models/rdp.py
index f54d6bc..7759b16 100644
--- a/src/censys_platform/models/rdp.py
+++ b/src/censys_platform/models/rdp.py
@@ -6,7 +6,8 @@
from .rdp_protocolflags import RdpProtocolFlags, RdpProtocolFlagsTypedDict
from .rdp_securityprotocol import RdpSecurityProtocol, RdpSecurityProtocolTypedDict
from .rdp_version import RdpVersion, RdpVersionTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -35,3 +36,29 @@ class Rdp(BaseModel):
x224_cc_pdu_dstref: Optional[int] = None
x224_cc_pdu_srcref: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "certificate_info",
+ "connect_response",
+ "protocol_flags",
+ "selected_security_protocol",
+ "version",
+ "x224_cc_pdu_dstref",
+ "x224_cc_pdu_srcref",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_certificateinfo.py b/src/censys_platform/models/rdp_certificateinfo.py
index 6b2456e..c6981d5 100644
--- a/src/censys_platform/models/rdp_certificateinfo.py
+++ b/src/censys_platform/models/rdp_certificateinfo.py
@@ -26,30 +26,25 @@ class RdpCertificateInfo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["internal_x509_chain_fps", "proprietary_rsa_key"]
- nullable_fields = ["internal_x509_chain_fps"]
- null_default_fields = []
-
+ optional_fields = set(["internal_x509_chain_fps", "proprietary_rsa_key"])
+ nullable_fields = set(["internal_x509_chain_fps"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rdp_connectresponse.py b/src/censys_platform/models/rdp_connectresponse.py
index 5a1f3e9..60d62d9 100644
--- a/src/censys_platform/models/rdp_connectresponse.py
+++ b/src/censys_platform/models/rdp_connectresponse.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .rdp_domainparameters import RdpDomainParameters, RdpDomainParametersTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class RdpConnectResponse(BaseModel):
connect_id: Optional[int] = None
domain_parameters: Optional[RdpDomainParameters] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["connect_id", "domain_parameters"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_domainparameters.py b/src/censys_platform/models/rdp_domainparameters.py
index 4efe11c..a2b454e 100644
--- a/src/censys_platform/models/rdp_domainparameters.py
+++ b/src/censys_platform/models/rdp_domainparameters.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class RdpDomainParameters(BaseModel):
min_throughput: Optional[int] = None
num_priorities: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "domain_protocol_version",
+ "max_channel_ids",
+ "max_mcspdu_size",
+ "max_provider_height",
+ "max_token_ids",
+ "max_user_id_channels",
+ "min_throughput",
+ "num_priorities",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_embeddedrsacert.py b/src/censys_platform/models/rdp_embeddedrsacert.py
index ef65f1a..212a65e 100644
--- a/src/censys_platform/models/rdp_embeddedrsacert.py
+++ b/src/censys_platform/models/rdp_embeddedrsacert.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class RdpEmbeddedRSACert(BaseModel):
public_exponent: Optional[int] = None
signature: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "key_length",
+ "magic",
+ "max_bytes_datalen",
+ "modulus",
+ "modulus_bitlen",
+ "public_exponent",
+ "signature",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_protocolflags.py b/src/censys_platform/models/rdp_protocolflags.py
index 24522f4..1c33af1 100644
--- a/src/censys_platform/models/rdp_protocolflags.py
+++ b/src/censys_platform/models/rdp_protocolflags.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,27 @@ class RdpProtocolFlags(BaseModel):
restricted_admin_mode: Optional[bool] = None
restricted_auth_mode: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "dynvc_graphics_pipeline",
+ "extended_client_data_supported",
+ "neg_resp_reserved",
+ "restricted_admin_mode",
+ "restricted_auth_mode",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_securityprotocol.py b/src/censys_platform/models/rdp_securityprotocol.py
index de6b8be..5669a43 100644
--- a/src/censys_platform/models/rdp_securityprotocol.py
+++ b/src/censys_platform/models/rdp_securityprotocol.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -51,3 +52,36 @@ class RdpSecurityProtocol(BaseModel):
standard_rdp: Optional[bool] = None
tls: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "credssp",
+ "credssp_early_auth",
+ "error",
+ "error_bad_flags",
+ "error_hybrid_required",
+ "error_ssl_cert_missing",
+ "error_ssl_forbidden",
+ "error_ssl_required",
+ "error_ssl_user_auth_required",
+ "error_unknown",
+ "raw_value",
+ "rdstls",
+ "standard_rdp",
+ "tls",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rdp_version.py b/src/censys_platform/models/rdp_version.py
index b1ba02c..acece93 100644
--- a/src/censys_platform/models/rdp_version.py
+++ b/src/censys_platform/models/rdp_version.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class RdpVersion(BaseModel):
raw: Optional[str] = None
r"""Raw Version Response, Major version is stored in upper 2 bytes, minor in lower 2 bytes."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["major", "minor", "raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/realport.py b/src/censys_platform/models/realport.py
index 27bfefc..1dbf4f7 100644
--- a/src/censys_platform/models/realport.py
+++ b/src/censys_platform/models/realport.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class Realport(BaseModel):
unpatched_etherlite: Optional[bool] = None
vpd: Optional[Dict[str, str]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "hardware_id",
+ "hardware_version",
+ "num_ports",
+ "product_name",
+ "software_version",
+ "unpatched_etherlite",
+ "vpd",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/recordingcapabilities.py b/src/censys_platform/models/recordingcapabilities.py
index 91176fd..e5338a3 100644
--- a/src/censys_platform/models/recordingcapabilities.py
+++ b/src/censys_platform/models/recordingcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class RecordingCapabilities(BaseModel):
max_total_rate: Optional[int] = None
options: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "dynamic_recordings",
+ "dynamic_tracks",
+ "encoding",
+ "max_rate",
+ "max_recordings",
+ "max_recordings_job",
+ "max_total_rate",
+ "options",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/redis.py b/src/censys_platform/models/redis.py
index ca66459..3b54353 100644
--- a/src/censys_platform/models/redis.py
+++ b/src/censys_platform/models/redis.py
@@ -125,52 +125,49 @@ class Redis(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "arch_bits",
- "auth_response",
- "build_id",
- "commands",
- "commands_processed",
- "connections_received",
- "gcc_version",
- "git_sha1",
- "info_response",
- "major",
- "mem_allocator",
- "minor",
- "mode",
- "nonexistent_response",
- "os",
- "patch_level",
- "ping_response",
- "quit_response",
- "raw_command_output",
- "uptime",
- "used_memory",
- ]
- nullable_fields = ["commands", "raw_command_output"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "arch_bits",
+ "auth_response",
+ "build_id",
+ "commands",
+ "commands_processed",
+ "connections_received",
+ "gcc_version",
+ "git_sha1",
+ "info_response",
+ "major",
+ "mem_allocator",
+ "minor",
+ "mode",
+ "nonexistent_response",
+ "os",
+ "patch_level",
+ "ping_response",
+ "quit_response",
+ "raw_command_output",
+ "uptime",
+ "used_memory",
+ ]
+ )
+ nullable_fields = set(["commands", "raw_command_output"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/redis_rawoutput.py b/src/censys_platform/models/redis_rawoutput.py
index 5c693ea..f8cc38f 100644
--- a/src/censys_platform/models/redis_rawoutput.py
+++ b/src/censys_platform/models/redis_rawoutput.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class RedisRawOutputTypedDict(TypedDict):
class RedisRawOutput(BaseModel):
output: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["output"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/redline.py b/src/censys_platform/models/redline.py
index 606a152..a55c226 100644
--- a/src/censys_platform/models/redline.py
+++ b/src/censys_platform/models/redline.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class Redline(BaseModel):
settings_response: Optional[str] = None
transport: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["action_response", "settings_response", "transport"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/redlioncrimson.py b/src/censys_platform/models/redlioncrimson.py
index 06805a2..b202ae1 100644
--- a/src/censys_platform/models/redlioncrimson.py
+++ b/src/censys_platform/models/redlioncrimson.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,28 @@ class RedlionCrimson(BaseModel):
manufacturer: Optional[str] = None
model: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "configs_exposed",
+ "control_engine_status",
+ "current_software_level",
+ "execution_status",
+ "manufacturer",
+ "model",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/redlionweb.py b/src/censys_platform/models/redlionweb.py
index 1a69c64..b229a39 100644
--- a/src/censys_platform/models/redlionweb.py
+++ b/src/censys_platform/models/redlionweb.py
@@ -28,30 +28,25 @@ class RedlionWeb(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["enhanced_web_server", "log_names", "title"]
- nullable_fields = ["log_names"]
- null_default_fields = []
-
+ optional_fields = set(["enhanced_web_server", "log_names", "title"])
+ nullable_fields = set(["log_names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/reject.py b/src/censys_platform/models/reject.py
index 637b708..d70ce12 100644
--- a/src/censys_platform/models/reject.py
+++ b/src/censys_platform/models/reject.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -28,3 +29,19 @@ class Reject(BaseModel):
reason: Optional[str] = None
type: Optional[RejectType] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["reason", "type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/replaycapabilities.py b/src/censys_platform/models/replaycapabilities.py
index 7e7d666..877d057 100644
--- a/src/censys_platform/models/replaycapabilities.py
+++ b/src/censys_platform/models/replaycapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,21 @@ class ReplayCapabilities(BaseModel):
rtp_rtsp_tcp: Optional[bool] = None
session_timeout_range: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["reverse_playback", "rtp_rtsp_tcp", "session_timeout_range"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/representativeinfo.py b/src/censys_platform/models/representativeinfo.py
index abe36f2..311543c 100644
--- a/src/censys_platform/models/representativeinfo.py
+++ b/src/censys_platform/models/representativeinfo.py
@@ -39,35 +39,27 @@ class RepresentativeInfo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "excluded_ports",
- "reason",
- "represented_ports",
- "sampled_port",
- ]
- nullable_fields = ["excluded_ports", "represented_ports"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["excluded_ports", "reason", "represented_ports", "sampled_port"]
+ )
+ nullable_fields = set(["excluded_ports", "represented_ports"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopecertificateasset.py b/src/censys_platform/models/responseenvelopecertificateasset.py
index 8226ec7..8c1fcd8 100644
--- a/src/censys_platform/models/responseenvelopecertificateasset.py
+++ b/src/censys_platform/models/responseenvelopecertificateasset.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .certificateasset import CertificateAsset, CertificateAssetTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeCertificateAssetTypedDict(TypedDict):
class ResponseEnvelopeCertificateAsset(BaseModel):
result: Optional[CertificateAsset] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopecollection.py b/src/censys_platform/models/responseenvelopecollection.py
index bf903ff..6be6d2c 100644
--- a/src/censys_platform/models/responseenvelopecollection.py
+++ b/src/censys_platform/models/responseenvelopecollection.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .collection import Collection, CollectionTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeCollectionTypedDict(TypedDict):
class ResponseEnvelopeCollection(BaseModel):
result: Optional[Collection] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopecollectioneventsresponse.py b/src/censys_platform/models/responseenvelopecollectioneventsresponse.py
index 9bc9441..733b7ab 100644
--- a/src/censys_platform/models/responseenvelopecollectioneventsresponse.py
+++ b/src/censys_platform/models/responseenvelopecollectioneventsresponse.py
@@ -5,7 +5,8 @@
CollectionEventsResponse,
CollectionEventsResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class ResponseEnvelopeCollectionEventsResponseTypedDict(TypedDict):
class ResponseEnvelopeCollectionEventsResponse(BaseModel):
result: Optional[CollectionEventsResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopecreditusagereport.py b/src/censys_platform/models/responseenvelopecreditusagereport.py
index 8b18e0c..ae2d32c 100644
--- a/src/censys_platform/models/responseenvelopecreditusagereport.py
+++ b/src/censys_platform/models/responseenvelopecreditusagereport.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .creditusagereport import CreditUsageReport, CreditUsageReportTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeCreditUsageReportTypedDict(TypedDict):
class ResponseEnvelopeCreditUsageReport(BaseModel):
result: Optional[CreditUsageReport] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopehostasset.py b/src/censys_platform/models/responseenvelopehostasset.py
index f403082..3132581 100644
--- a/src/censys_platform/models/responseenvelopehostasset.py
+++ b/src/censys_platform/models/responseenvelopehostasset.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .hostasset import HostAsset, HostAssetTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeHostAssetTypedDict(TypedDict):
class ResponseEnvelopeHostAsset(BaseModel):
result: Optional[HostAsset] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopehostobservationresponse.py b/src/censys_platform/models/responseenvelopehostobservationresponse.py
index 825d208..d1bfbc1 100644
--- a/src/censys_platform/models/responseenvelopehostobservationresponse.py
+++ b/src/censys_platform/models/responseenvelopehostobservationresponse.py
@@ -5,7 +5,8 @@
HostObservationResponse,
HostObservationResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class ResponseEnvelopeHostObservationResponseTypedDict(TypedDict):
class ResponseEnvelopeHostObservationResponse(BaseModel):
result: Optional[HostObservationResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopehosttimeline.py b/src/censys_platform/models/responseenvelopehosttimeline.py
index 85bc159..76e61c5 100644
--- a/src/censys_platform/models/responseenvelopehosttimeline.py
+++ b/src/censys_platform/models/responseenvelopehosttimeline.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .hosttimeline import HostTimeline, HostTimelineTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeHostTimelineTypedDict(TypedDict):
class ResponseEnvelopeHostTimeline(BaseModel):
result: Optional[HostTimeline] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopelistcertificateasset.py b/src/censys_platform/models/responseenvelopelistcertificateasset.py
index 4accf02..3a0cc0f 100644
--- a/src/censys_platform/models/responseenvelopelistcertificateasset.py
+++ b/src/censys_platform/models/responseenvelopelistcertificateasset.py
@@ -23,30 +23,25 @@ class ResponseEnvelopeListCertificateAsset(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["result"]
- nullable_fields = ["result"]
- null_default_fields = []
-
+ optional_fields = set(["result"])
+ nullable_fields = set(["result"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopelistcollectionsresponsev1.py b/src/censys_platform/models/responseenvelopelistcollectionsresponsev1.py
index 2e82a17..e68318f 100644
--- a/src/censys_platform/models/responseenvelopelistcollectionsresponsev1.py
+++ b/src/censys_platform/models/responseenvelopelistcollectionsresponsev1.py
@@ -5,7 +5,8 @@
ListCollectionsResponseV1,
ListCollectionsResponseV1TypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class ResponseEnvelopeListCollectionsResponseV1TypedDict(TypedDict):
class ResponseEnvelopeListCollectionsResponseV1(BaseModel):
result: Optional[ListCollectionsResponseV1] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopelisthostasset.py b/src/censys_platform/models/responseenvelopelisthostasset.py
index 40d2fb4..85a3a60 100644
--- a/src/censys_platform/models/responseenvelopelisthostasset.py
+++ b/src/censys_platform/models/responseenvelopelisthostasset.py
@@ -23,30 +23,25 @@ class ResponseEnvelopeListHostAsset(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["result"]
- nullable_fields = ["result"]
- null_default_fields = []
-
+ optional_fields = set(["result"])
+ nullable_fields = set(["result"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopelistrawcertificateresponse.py b/src/censys_platform/models/responseenvelopelistrawcertificateresponse.py
index 3debcf5..8a48acd 100644
--- a/src/censys_platform/models/responseenvelopelistrawcertificateresponse.py
+++ b/src/censys_platform/models/responseenvelopelistrawcertificateresponse.py
@@ -26,30 +26,25 @@ class ResponseEnvelopeListRawCertificateResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["result"]
- nullable_fields = ["result"]
- null_default_fields = []
-
+ optional_fields = set(["result"])
+ nullable_fields = set(["result"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopelistsearchconvertqueryresponse.py b/src/censys_platform/models/responseenvelopelistsearchconvertqueryresponse.py
index 66a7900..d6ea9dd 100644
--- a/src/censys_platform/models/responseenvelopelistsearchconvertqueryresponse.py
+++ b/src/censys_platform/models/responseenvelopelistsearchconvertqueryresponse.py
@@ -26,30 +26,25 @@ class ResponseEnvelopeListSearchConvertQueryResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["result"]
- nullable_fields = ["result"]
- null_default_fields = []
-
+ optional_fields = set(["result"])
+ nullable_fields = set(["result"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopelistwebpropertyasset.py b/src/censys_platform/models/responseenvelopelistwebpropertyasset.py
index 06ea3ef..3601fef 100644
--- a/src/censys_platform/models/responseenvelopelistwebpropertyasset.py
+++ b/src/censys_platform/models/responseenvelopelistwebpropertyasset.py
@@ -23,30 +23,25 @@ class ResponseEnvelopeListWebpropertyAsset(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["result"]
- nullable_fields = ["result"]
- null_default_fields = []
-
+ optional_fields = set(["result"])
+ nullable_fields = set(["result"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/responseenvelopeorganizationcredits.py b/src/censys_platform/models/responseenvelopeorganizationcredits.py
index 4f51c6b..82de543 100644
--- a/src/censys_platform/models/responseenvelopeorganizationcredits.py
+++ b/src/censys_platform/models/responseenvelopeorganizationcredits.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .organizationcredits import OrganizationCredits, OrganizationCreditsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeOrganizationCreditsTypedDict(TypedDict):
class ResponseEnvelopeOrganizationCredits(BaseModel):
result: Optional[OrganizationCredits] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopeorganizationdetails.py b/src/censys_platform/models/responseenvelopeorganizationdetails.py
index 7995685..32c0987 100644
--- a/src/censys_platform/models/responseenvelopeorganizationdetails.py
+++ b/src/censys_platform/models/responseenvelopeorganizationdetails.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .organizationdetails import OrganizationDetails, OrganizationDetailsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeOrganizationDetailsTypedDict(TypedDict):
class ResponseEnvelopeOrganizationDetails(BaseModel):
result: Optional[OrganizationDetails] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopeorganizationmemberslist.py b/src/censys_platform/models/responseenvelopeorganizationmemberslist.py
index 2152618..cd523d5 100644
--- a/src/censys_platform/models/responseenvelopeorganizationmemberslist.py
+++ b/src/censys_platform/models/responseenvelopeorganizationmemberslist.py
@@ -5,7 +5,8 @@
OrganizationMembersList,
OrganizationMembersListTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class ResponseEnvelopeOrganizationMembersListTypedDict(TypedDict):
class ResponseEnvelopeOrganizationMembersList(BaseModel):
result: Optional[OrganizationMembersList] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopesearchaggregateresponse.py b/src/censys_platform/models/responseenvelopesearchaggregateresponse.py
index 31a0e78..a7bf0b8 100644
--- a/src/censys_platform/models/responseenvelopesearchaggregateresponse.py
+++ b/src/censys_platform/models/responseenvelopesearchaggregateresponse.py
@@ -5,7 +5,8 @@
SearchAggregateResponse,
SearchAggregateResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class ResponseEnvelopeSearchAggregateResponseTypedDict(TypedDict):
class ResponseEnvelopeSearchAggregateResponse(BaseModel):
result: Optional[SearchAggregateResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopesearchqueryresponse.py b/src/censys_platform/models/responseenvelopesearchqueryresponse.py
index de2829a..77454f6 100644
--- a/src/censys_platform/models/responseenvelopesearchqueryresponse.py
+++ b/src/censys_platform/models/responseenvelopesearchqueryresponse.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .searchqueryresponse import SearchQueryResponse, SearchQueryResponseTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeSearchQueryResponseTypedDict(TypedDict):
class ResponseEnvelopeSearchQueryResponse(BaseModel):
result: Optional[SearchQueryResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopethreatslistresponse.py b/src/censys_platform/models/responseenvelopethreatslistresponse.py
index 6826c6a..095e21b 100644
--- a/src/censys_platform/models/responseenvelopethreatslistresponse.py
+++ b/src/censys_platform/models/responseenvelopethreatslistresponse.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .threatslistresponse import ThreatsListResponse, ThreatsListResponseTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeThreatsListResponseTypedDict(TypedDict):
class ResponseEnvelopeThreatsListResponse(BaseModel):
result: Optional[ThreatsListResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopetrackedscan.py b/src/censys_platform/models/responseenvelopetrackedscan.py
index 1406260..94abe22 100644
--- a/src/censys_platform/models/responseenvelopetrackedscan.py
+++ b/src/censys_platform/models/responseenvelopetrackedscan.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .trackedscan import TrackedScan, TrackedScanTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeTrackedScanTypedDict(TypedDict):
class ResponseEnvelopeTrackedScan(BaseModel):
result: Optional[TrackedScan] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopeusercredits.py b/src/censys_platform/models/responseenvelopeusercredits.py
index 42c210f..80e3035 100644
--- a/src/censys_platform/models/responseenvelopeusercredits.py
+++ b/src/censys_platform/models/responseenvelopeusercredits.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .usercredits import UserCredits, UserCreditsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeUserCreditsTypedDict(TypedDict):
class ResponseEnvelopeUserCredits(BaseModel):
result: Optional[UserCredits] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopevaluecountsresponse.py b/src/censys_platform/models/responseenvelopevaluecountsresponse.py
index 800c464..8b0be08 100644
--- a/src/censys_platform/models/responseenvelopevaluecountsresponse.py
+++ b/src/censys_platform/models/responseenvelopevaluecountsresponse.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .valuecountsresponse import ValueCountsResponse, ValueCountsResponseTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeValueCountsResponseTypedDict(TypedDict):
class ResponseEnvelopeValueCountsResponse(BaseModel):
result: Optional[ValueCountsResponse] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/responseenvelopewebpropertyasset.py b/src/censys_platform/models/responseenvelopewebpropertyasset.py
index 2d03481..f78e3d6 100644
--- a/src/censys_platform/models/responseenvelopewebpropertyasset.py
+++ b/src/censys_platform/models/responseenvelopewebpropertyasset.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .webpropertyasset import WebpropertyAsset, WebpropertyAssetTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -13,3 +14,19 @@ class ResponseEnvelopeWebpropertyAssetTypedDict(TypedDict):
class ResponseEnvelopeWebpropertyAsset(BaseModel):
result: Optional[WebpropertyAsset] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["result"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/reversednsresolved.py b/src/censys_platform/models/reversednsresolved.py
index 09b724c..a4821e9 100644
--- a/src/censys_platform/models/reversednsresolved.py
+++ b/src/censys_platform/models/reversednsresolved.py
@@ -25,30 +25,25 @@ class ReverseDNSResolved(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["names", "resolve_time"]
- nullable_fields = ["names"]
- null_default_fields = []
-
+ optional_fields = set(["names", "resolve_time"])
+ nullable_fields = set(["names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rifatron.py b/src/censys_platform/models/rifatron.py
index 0010794..556d376 100644
--- a/src/censys_platform/models/rifatron.py
+++ b/src/censys_platform/models/rifatron.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class RifatronTypedDict(TypedDict):
class Rifatron(BaseModel):
model: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["model"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ripple.py b/src/censys_platform/models/ripple.py
index 8a9509a..bc5a0a5 100644
--- a/src/censys_platform/models/ripple.py
+++ b/src/censys_platform/models/ripple.py
@@ -4,7 +4,8 @@
from .rippleclioresults import RippleClioResults, RippleClioResultsTypedDict
from .rippledpublicresults import RippledPublicResults, RippledPublicResultsTypedDict
from .ripplepeerresults import RipplePeerResults, RipplePeerResultsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Ripple(BaseModel):
rippled_peer: Optional[RipplePeerResults] = None
rippled_public: Optional[RippledPublicResults] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ripple_clio", "rippled_peer", "rippled_public"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rippleclioresults.py b/src/censys_platform/models/rippleclioresults.py
index 9a34be3..3afdd26 100644
--- a/src/censys_platform/models/rippleclioresults.py
+++ b/src/censys_platform/models/rippleclioresults.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class RippleClioResults(BaseModel):
validated: Optional[bool] = None
validation_quorum: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["clio_version", "rippled_version", "validated", "validation_quorum"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rippledpublicresults.py b/src/censys_platform/models/rippledpublicresults.py
index cec5cf0..6862cca 100644
--- a/src/censys_platform/models/rippledpublicresults.py
+++ b/src/censys_platform/models/rippledpublicresults.py
@@ -44,39 +44,36 @@ class RippledPublicResults(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "build_version",
- "hostid",
- "network_id",
- "peers",
- "ports",
- "pubkey_node",
- "server_state",
- "validation_quorum",
- ]
- nullable_fields = ["ports"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "build_version",
+ "hostid",
+ "network_id",
+ "peers",
+ "ports",
+ "pubkey_node",
+ "server_state",
+ "validation_quorum",
+ ]
+ )
+ nullable_fields = set(["ports"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ripplepeerresults.py b/src/censys_platform/models/ripplepeerresults.py
index 02944d8..54e634b 100644
--- a/src/censys_platform/models/ripplepeerresults.py
+++ b/src/censys_platform/models/ripplepeerresults.py
@@ -41,38 +41,35 @@ class RipplePeerResults(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "build_version",
- "peer_crawler_response_version",
- "peers",
- "pubkey_node",
- "publisher_list",
- "server_state",
- "validator_sites",
- ]
- nullable_fields = ["peers", "publisher_list", "validator_sites"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "build_version",
+ "peer_crawler_response_version",
+ "peers",
+ "pubkey_node",
+ "publisher_list",
+ "server_state",
+ "validator_sites",
+ ]
+ )
+ nullable_fields = set(["peers", "publisher_list", "validator_sites"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/risk.py b/src/censys_platform/models/risk.py
index 4a35ff6..946b6b0 100644
--- a/src/censys_platform/models/risk.py
+++ b/src/censys_platform/models/risk.py
@@ -76,41 +76,38 @@ class Risk(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "confidence",
- "cvss",
- "evidence",
- "id",
- "metrics",
- "name",
- "risk_source",
- "severity",
- "source",
- "year",
- ]
- nullable_fields = ["evidence"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "confidence",
+ "cvss",
+ "evidence",
+ "id",
+ "metrics",
+ "name",
+ "risk_source",
+ "severity",
+ "source",
+ "year",
+ ]
+ )
+ nullable_fields = set(["evidence"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rlogin.py b/src/censys_platform/models/rlogin.py
index b0df948..77176ee 100644
--- a/src/censys_platform/models/rlogin.py
+++ b/src/censys_platform/models/rlogin.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class Rlogin(BaseModel):
software: Optional[str] = None
software_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["error", "operating_system", "software", "software_version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rocketmq.py b/src/censys_platform/models/rocketmq.py
index 153bc18..e6b1b83 100644
--- a/src/censys_platform/models/rocketmq.py
+++ b/src/censys_platform/models/rocketmq.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .rocketmq_clusterinfo import RocketmqClusterInfo, RocketmqClusterInfoTypedDict
from .rocketmq_topiclist import RocketmqTopicList, RocketmqTopicListTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class Rocketmq(BaseModel):
topics: Optional[RocketmqTopicList] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cluster_info", "topics", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rocketmq_clusterinfo.py b/src/censys_platform/models/rocketmq_clusterinfo.py
index e24b1e0..c8da33e 100644
--- a/src/censys_platform/models/rocketmq_clusterinfo.py
+++ b/src/censys_platform/models/rocketmq_clusterinfo.py
@@ -5,7 +5,8 @@
RocketmqResponseHeader,
RocketmqResponseHeaderTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class RocketmqClusterInfo(BaseModel):
header: Optional[RocketmqResponseHeader] = None
payload: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["header", "payload"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rocketmq_responseheader.py b/src/censys_platform/models/rocketmq_responseheader.py
index b025e49..5ec8c51 100644
--- a/src/censys_platform/models/rocketmq_responseheader.py
+++ b/src/censys_platform/models/rocketmq_responseheader.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class RocketmqResponseHeader(BaseModel):
opaque: Optional[int] = None
serialize_type_current_rpc: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["code", "flag", "language", "opaque", "serialize_type_current_rpc"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rocketmq_topiclist.py b/src/censys_platform/models/rocketmq_topiclist.py
index 53dc6c2..b68fde7 100644
--- a/src/censys_platform/models/rocketmq_topiclist.py
+++ b/src/censys_platform/models/rocketmq_topiclist.py
@@ -29,30 +29,25 @@ class RocketmqTopicList(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["header", "topic_list"]
- nullable_fields = ["topic_list"]
- null_default_fields = []
-
+ optional_fields = set(["header", "topic_list"])
+ nullable_fields = set(["topic_list"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rootstore.py b/src/censys_platform/models/rootstore.py
index ff6d147..5346595 100644
--- a/src/censys_platform/models/rootstore.py
+++ b/src/censys_platform/models/rootstore.py
@@ -70,39 +70,36 @@ class RootStore(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "chains",
- "ever_valid",
- "had_trusted_path",
- "has_trusted_path",
- "in_revocation_set",
- "is_valid",
- "parents",
- "type",
- ]
- nullable_fields = ["chains", "parents"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "chains",
+ "ever_valid",
+ "had_trusted_path",
+ "has_trusted_path",
+ "in_revocation_set",
+ "is_valid",
+ "parents",
+ "type",
+ ]
+ )
+ nullable_fields = set(["chains", "parents"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/rootstore_chain.py b/src/censys_platform/models/rootstore_chain.py
index 3f18f45..81e1a95 100644
--- a/src/censys_platform/models/rootstore_chain.py
+++ b/src/censys_platform/models/rootstore_chain.py
@@ -22,30 +22,25 @@ class RootStoreChain(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["sha256fp"]
- nullable_fields = ["sha256fp"]
- null_default_fields = []
-
+ optional_fields = set(["sha256fp"])
+ nullable_fields = set(["sha256fp"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/routeupdated.py b/src/censys_platform/models/routeupdated.py
index 59bfa6a..3300544 100644
--- a/src/censys_platform/models/routeupdated.py
+++ b/src/censys_platform/models/routeupdated.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .autonomoussystem import AutonomousSystem, AutonomousSystemTypedDict
from .fielddiff import FieldDiff, FieldDiffTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class RouteUpdated(BaseModel):
diff: Optional[Dict[str, FieldDiff]] = None
route: Optional[AutonomousSystem] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["diff", "route"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/routing.py b/src/censys_platform/models/routing.py
index c283877..1e21d95 100644
--- a/src/censys_platform/models/routing.py
+++ b/src/censys_platform/models/routing.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,21 @@ class Routing(BaseModel):
organization: Optional[str] = None
r"""The name of the organization managning the autonomous system."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["asn", "bgp_prefix", "country_code", "description", "name", "organization"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rsacryptographickey.py b/src/censys_platform/models/rsacryptographickey.py
index 0f8623d..cdcbb8c 100644
--- a/src/censys_platform/models/rsacryptographickey.py
+++ b/src/censys_platform/models/rsacryptographickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class RSACryptographicKey(BaseModel):
length: Optional[int] = None
modulus: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["exponent", "length", "modulus"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rsapublickey.py b/src/censys_platform/models/rsapublickey.py
index ce8dce6..347b75a 100644
--- a/src/censys_platform/models/rsapublickey.py
+++ b/src/censys_platform/models/rsapublickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class RsaPublicKey(BaseModel):
modulus: Optional[str] = None
r"""The RSA key's modulus (n) in big-endian encoding."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["exponent", "length", "modulus"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/rtsp.py b/src/censys_platform/models/rtsp.py
index 1e3b80c..a5ecbab 100644
--- a/src/censys_platform/models/rtsp.py
+++ b/src/censys_platform/models/rtsp.py
@@ -31,30 +31,25 @@ class Rtsp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["auth", "commands", "server", "www_auth"]
- nullable_fields = ["commands"]
- null_default_fields = []
-
+ optional_fields = set(["auth", "commands", "server", "www_auth"])
+ nullable_fields = set(["commands"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/s7.py b/src/censys_platform/models/s7.py
index 2ce1188..e7a7389 100644
--- a/src/censys_platform/models/s7.py
+++ b/src/censys_platform/models/s7.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -51,3 +52,36 @@ class S7(BaseModel):
serial_number: Optional[str] = None
system: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "copyright",
+ "cpu_profile",
+ "firmware",
+ "hardware",
+ "location",
+ "memory_serial_number",
+ "module",
+ "module_id",
+ "module_type",
+ "oem_id",
+ "plant_id",
+ "reserved_for_os",
+ "serial_number",
+ "system",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/saprouter.py b/src/censys_platform/models/saprouter.py
index 8d80b79..3e1c2eb 100644
--- a/src/censys_platform/models/saprouter.py
+++ b/src/censys_platform/models/saprouter.py
@@ -6,7 +6,8 @@
SapRouterRouterVersionInfo,
SapRouterRouterVersionInfoTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class SapRouter(BaseModel):
router_info: Optional[SapRouterRouterInfo] = None
router_version_info: Optional[SapRouterRouterVersionInfo] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["router_info", "router_version_info"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/saprouter_clientinfo.py b/src/censys_platform/models/saprouter_clientinfo.py
index ea398f4..0138f42 100644
--- a/src/censys_platform/models/saprouter_clientinfo.py
+++ b/src/censys_platform/models/saprouter_clientinfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -27,3 +28,21 @@ class SapRouterClientInfo(BaseModel):
service: Optional[str] = None
traced: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["connected", "connected_on", "id", "routed", "service", "traced"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/saprouter_routerinfo.py b/src/censys_platform/models/saprouter_routerinfo.py
index c358464..c3175c9 100644
--- a/src/censys_platform/models/saprouter_routerinfo.py
+++ b/src/censys_platform/models/saprouter_routerinfo.py
@@ -47,40 +47,37 @@ class SapRouterRouterInfo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "connected_client_info",
- "num_clients",
- "parent_pid",
- "parent_port",
- "pid",
- "port",
- "routtab_relative_directory",
- "sap_router_absolute_directory",
- "started_on",
- ]
- nullable_fields = ["connected_client_info"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "connected_client_info",
+ "num_clients",
+ "parent_pid",
+ "parent_port",
+ "pid",
+ "port",
+ "routtab_relative_directory",
+ "sap_router_absolute_directory",
+ "started_on",
+ ]
+ )
+ nullable_fields = set(["connected_client_info"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/saprouter_routerversioninfo.py b/src/censys_platform/models/saprouter_routerversioninfo.py
index 5857550..f8aa808 100644
--- a/src/censys_platform/models/saprouter_routerversioninfo.py
+++ b/src/censys_platform/models/saprouter_routerversioninfo.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class SapRouterRouterVersionInfo(BaseModel):
release: Optional[int] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "release", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/scadaview.py b/src/censys_platform/models/scadaview.py
index 193780f..d2f84dd 100644
--- a/src/censys_platform/models/scadaview.py
+++ b/src/censys_platform/models/scadaview.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class ScadaView(BaseModel):
description: Optional[str] = None
title: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["description", "title"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/scpi.py b/src/censys_platform/models/scpi.py
index 0470fb5..2719a19 100644
--- a/src/censys_platform/models/scpi.py
+++ b/src/censys_platform/models/scpi.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Scpi(BaseModel):
model: Optional[str] = None
serial: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["firmware", "manufacturer", "model", "serial"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/screenshot.py b/src/censys_platform/models/screenshot.py
index 76d50a7..e6331d3 100644
--- a/src/censys_platform/models/screenshot.py
+++ b/src/censys_platform/models/screenshot.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class Screenshot(BaseModel):
handle: Optional[str] = None
phash: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["extracted_text", "handle", "phash"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/searchaggregateinputbody.py b/src/censys_platform/models/searchaggregateinputbody.py
index f7e4000..fa3cfec 100644
--- a/src/censys_platform/models/searchaggregateinputbody.py
+++ b/src/censys_platform/models/searchaggregateinputbody.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,19 @@ class SearchAggregateInputBody(BaseModel):
filter_by_query: Optional[bool] = False
r"""Controls whether aggregation results are limited to values that match the query. When true, only field values that satisfy the query constraints are included in aggregation counts. When false, aggregation includes all field values from records that match the query, even if those specific field values don't match the query constraints. For example, if the query is 'host.services.protocol=SSH' and you are aggregating by 'host.services.port' - when true, only shows SSH ports; when false, shows all ports on hosts that have SSH services."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["count_by_level", "filter_by_query"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/searchaggregateresponse.py b/src/censys_platform/models/searchaggregateresponse.py
index 2b4a34a..57b0ce2 100644
--- a/src/censys_platform/models/searchaggregateresponse.py
+++ b/src/censys_platform/models/searchaggregateresponse.py
@@ -32,30 +32,14 @@ class SearchAggregateResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["buckets"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/searchcapabilities.py b/src/censys_platform/models/searchcapabilities.py
index acdc665..4568810 100644
--- a/src/censys_platform/models/searchcapabilities.py
+++ b/src/censys_platform/models/searchcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class SearchCapabilities(BaseModel):
general_start_events: Optional[bool] = None
metadata_search: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["general_start_events", "metadata_search"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/searchconvertqueryinputbody.py b/src/censys_platform/models/searchconvertqueryinputbody.py
index 8768a56..b8b1669 100644
--- a/src/censys_platform/models/searchconvertqueryinputbody.py
+++ b/src/censys_platform/models/searchconvertqueryinputbody.py
@@ -18,30 +18,14 @@ class SearchConvertQueryInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["queries"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/searchconvertqueryresponse.py b/src/censys_platform/models/searchconvertqueryresponse.py
index a8cb10f..823cfdc 100644
--- a/src/censys_platform/models/searchconvertqueryresponse.py
+++ b/src/censys_platform/models/searchconvertqueryresponse.py
@@ -59,30 +59,25 @@ class SearchConvertQueryResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["alternative_queries", "comments", "converted_query"]
- nullable_fields = ["alternative_queries", "comments", "errors", "targets"]
- null_default_fields = []
-
+ optional_fields = set(["alternative_queries", "comments", "converted_query"])
+ nullable_fields = set(["alternative_queries", "comments", "errors", "targets"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/searchqueryhit.py b/src/censys_platform/models/searchqueryhit.py
index 7cb1f4b..3732d3e 100644
--- a/src/censys_platform/models/searchqueryhit.py
+++ b/src/censys_platform/models/searchqueryhit.py
@@ -7,7 +7,8 @@
HostAssetWithMatchedServicesTypedDict,
)
from .webpropertyasset import WebpropertyAsset, WebpropertyAssetTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class SearchQueryHit(BaseModel):
host_v1: Optional[HostAssetWithMatchedServices] = None
webproperty_v1: Optional[WebpropertyAsset] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["certificate_v1", "host_v1", "webproperty_v1"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/searchqueryinputbody.py b/src/censys_platform/models/searchqueryinputbody.py
index 2f352aa..c9986a4 100644
--- a/src/censys_platform/models/searchqueryinputbody.py
+++ b/src/censys_platform/models/searchqueryinputbody.py
@@ -39,30 +39,25 @@ class SearchQueryInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["fields", "page_size", "page_token"]
- nullable_fields = ["fields", "page_size"]
- null_default_fields = []
-
+ optional_fields = set(["fields", "page_size", "page_token"])
+ nullable_fields = set(["fields", "page_size"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/searchqueryresponse.py b/src/censys_platform/models/searchqueryresponse.py
index 81b2f9e..55d75d2 100644
--- a/src/censys_platform/models/searchqueryresponse.py
+++ b/src/censys_platform/models/searchqueryresponse.py
@@ -29,30 +29,14 @@ class SearchQueryResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["hits"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/searchvaluecountsinputbody.py b/src/censys_platform/models/searchvaluecountsinputbody.py
index d7f6513..710bb39 100644
--- a/src/censys_platform/models/searchvaluecountsinputbody.py
+++ b/src/censys_platform/models/searchvaluecountsinputbody.py
@@ -24,30 +24,25 @@ class SearchValueCountsInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["query"]
- nullable_fields = ["and_count_conditions"]
- null_default_fields = []
-
+ optional_fields = set(["query"])
+ nullable_fields = set(["and_count_conditions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/securitycapabilities.py b/src/censys_platform/models/securitycapabilities.py
index 16bbc35..519f5d7 100644
--- a/src/censys_platform/models/securitycapabilities.py
+++ b/src/censys_platform/models/securitycapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -63,3 +64,40 @@ class SecurityCapabilities(BaseModel):
username_token: Optional[bool] = None
x509_token: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "access_policy_config",
+ "default_access_policy",
+ "dot1x",
+ "http_digest",
+ "kerberos_token",
+ "max_password_length",
+ "max_username_length",
+ "max_users",
+ "onboard_key_generation",
+ "rel_token",
+ "remote_user_handling",
+ "saml_token",
+ "supported_eap_methods",
+ "tls_1_0",
+ "tls_1_1",
+ "tls_1_2",
+ "username_token",
+ "x509_token",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ser2net.py b/src/censys_platform/models/ser2net.py
index 97784b0..5059fc4 100644
--- a/src/censys_platform/models/ser2net.py
+++ b/src/censys_platform/models/ser2net.py
@@ -5,7 +5,8 @@
Ser2NetSerialParameters,
Ser2NetSerialParametersTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -28,3 +29,21 @@ class Ser2Net(BaseModel):
software: Optional[str] = None
software_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["device", "os", "serial_parameters", "software", "software_version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ser2net_serialparameters.py b/src/censys_platform/models/ser2net_serialparameters.py
index ba55ed3..df0e01d 100644
--- a/src/censys_platform/models/ser2net_serialparameters.py
+++ b/src/censys_platform/models/ser2net_serialparameters.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Ser2NetSerialParameters(BaseModel):
parity: Optional[str] = None
stop_bits: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["baud_rate", "data_bits", "parity", "stop_bits"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/serverconfig.py b/src/censys_platform/models/serverconfig.py
index ad93a81..161c9c7 100644
--- a/src/censys_platform/models/serverconfig.py
+++ b/src/censys_platform/models/serverconfig.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class ServerConfig(BaseModel):
recording_allowed: Optional[bool] = None
welcome_text: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "allow_html",
+ "image_message_length",
+ "max_bandwidth",
+ "max_users",
+ "message_length",
+ "recording_allowed",
+ "welcome_text",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/serversync.py b/src/censys_platform/models/serversync.py
index d6a0d18..a7391bb 100644
--- a/src/censys_platform/models/serversync.py
+++ b/src/censys_platform/models/serversync.py
@@ -28,30 +28,25 @@ class ServerSync(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["max_bandwidth", "permissions", "welcome_text"]
- nullable_fields = ["permissions"]
- null_default_fields = []
-
+ optional_fields = set(["max_bandwidth", "permissions", "welcome_text"])
+ nullable_fields = set(["permissions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/service.py b/src/censys_platform/models/service.py
index 7eae657..bc33d18 100644
--- a/src/censys_platform/models/service.py
+++ b/src/censys_platform/models/service.py
@@ -36,6 +36,7 @@
from .fox import Fox, FoxTypedDict
from .ftp import Ftp, FtpTypedDict
from .gearman import Gearman, GearmanTypedDict
+from .hajime import Hajime, HajimeTypedDict
from .hidvertx import HidVertx, HidVertxTypedDict
from .hikvision import Hikvision, HikvisionTypedDict
from .ibmnje import Ibmnje, IbmnjeTypedDict
@@ -186,6 +187,7 @@ class ServiceTypedDict(TypedDict):
fox: NotRequired[FoxTypedDict]
ftp: NotRequired[FtpTypedDict]
gearman: NotRequired[GearmanTypedDict]
+ hajime: NotRequired[HajimeTypedDict]
hardware: NotRequired[Nullable[List[AttributeTypedDict]]]
hid_vertx: NotRequired[HidVertxTypedDict]
hikvision: NotRequired[HikvisionTypedDict]
@@ -360,6 +362,8 @@ class Service(BaseModel):
gearman: Optional[Gearman] = None
+ hajime: Optional[Hajime] = None
+
hardware: OptionalNullable[List[Attribute]] = UNSET
hid_vertx: Optional[HidVertx] = None
@@ -564,178 +568,178 @@ class Service(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "activemq",
- "amqp",
- "any_connect",
- "asterisk_manager_interface",
- "bacnet",
- "banner",
- "banner_hash_sha256",
- "banner_hex",
- "cert",
- "checkpoint_topology",
- "chromecast",
- "cisco_ipsla",
- "cmore",
- "coap",
- "crestron_cp3",
- "crestron_din_ap2",
- "cwmp",
- "darkcomet",
- "darkgate",
- "dcerpc",
- "dhcpdiscover",
- "dnp3",
- "dns",
- "dtls",
- "dvr_ip",
- "eip",
- "elf_file",
- "endpoints",
- "epmd",
- "etcd",
- "ethereum",
- "exposures",
- "fox",
- "ftp",
- "gearman",
- "hardware",
- "hid_vertx",
- "hikvision",
- "ibmnje",
- "ike",
- "imap",
- "iota",
- "ip",
- "ipmi",
- "ipp",
- "iscsi",
- "ja4tscan",
- "jarm",
- "krpc",
- "l2tp",
- "labels",
- "ldap",
- "lpd",
- "mdns",
- "memcached",
- "mikrotik_winbox",
- "minecraft",
- "misconfigs",
- "mms",
- "modbus",
- "monero_p2p",
- "mongodb",
- "mqtt",
- "mssql",
- "murmur",
- "mysql",
- "nats_io",
- "nbd",
- "nfs_mountd",
- "nmea",
- "ntp",
- "ntrip",
- "onc",
- "onvif",
- "opc_ua",
- "openvpn",
- "openvpn_mgmt",
- "operating_systems",
- "oracle",
- "pc_anywhere",
- "pgbouncer",
- "pop3",
- "port",
- "portmap",
- "postgres",
- "pptp",
- "profinet_cm",
- "protocol",
- "rdate",
- "rdp",
- "realport",
- "redis",
- "redline",
- "redlion_crimson",
- "representative_info",
- "rifatron",
- "ripple",
- "rlogin",
- "rocketmq",
- "rtsp",
- "s7",
- "sap_router",
- "scan_time",
- "scpi",
- "screenshots",
- "ser2net",
- "seven_days_to_die",
- "sip",
- "skinny",
- "smb",
- "smtp",
- "snmp",
- "socks",
- "software",
- "spice",
- "ssdp",
- "ssh",
- "steam",
- "tacacs_plus",
- "team_viewer",
- "telnet",
- "threats",
- "tibia",
- "tls",
- "tplink_kasa",
- "transport_protocol",
- "unitronics_pcom",
- "upnp",
- "ventrilo",
- "vnc",
- "vulns",
- "weblogic_t3",
- "winrm",
- "ws_discovery",
- "x11",
- "zeromq",
- ]
- nullable_fields = [
- "endpoints",
- "exposures",
- "hardware",
- "labels",
- "misconfigs",
- "operating_systems",
- "screenshots",
- "software",
- "threats",
- "vulns",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "activemq",
+ "amqp",
+ "any_connect",
+ "asterisk_manager_interface",
+ "bacnet",
+ "banner",
+ "banner_hash_sha256",
+ "banner_hex",
+ "cert",
+ "checkpoint_topology",
+ "chromecast",
+ "cisco_ipsla",
+ "cmore",
+ "coap",
+ "crestron_cp3",
+ "crestron_din_ap2",
+ "cwmp",
+ "darkcomet",
+ "darkgate",
+ "dcerpc",
+ "dhcpdiscover",
+ "dnp3",
+ "dns",
+ "dtls",
+ "dvr_ip",
+ "eip",
+ "elf_file",
+ "endpoints",
+ "epmd",
+ "etcd",
+ "ethereum",
+ "exposures",
+ "fox",
+ "ftp",
+ "gearman",
+ "hajime",
+ "hardware",
+ "hid_vertx",
+ "hikvision",
+ "ibmnje",
+ "ike",
+ "imap",
+ "iota",
+ "ip",
+ "ipmi",
+ "ipp",
+ "iscsi",
+ "ja4tscan",
+ "jarm",
+ "krpc",
+ "l2tp",
+ "labels",
+ "ldap",
+ "lpd",
+ "mdns",
+ "memcached",
+ "mikrotik_winbox",
+ "minecraft",
+ "misconfigs",
+ "mms",
+ "modbus",
+ "monero_p2p",
+ "mongodb",
+ "mqtt",
+ "mssql",
+ "murmur",
+ "mysql",
+ "nats_io",
+ "nbd",
+ "nfs_mountd",
+ "nmea",
+ "ntp",
+ "ntrip",
+ "onc",
+ "onvif",
+ "opc_ua",
+ "openvpn",
+ "openvpn_mgmt",
+ "operating_systems",
+ "oracle",
+ "pc_anywhere",
+ "pgbouncer",
+ "pop3",
+ "port",
+ "portmap",
+ "postgres",
+ "pptp",
+ "profinet_cm",
+ "protocol",
+ "rdate",
+ "rdp",
+ "realport",
+ "redis",
+ "redline",
+ "redlion_crimson",
+ "representative_info",
+ "rifatron",
+ "ripple",
+ "rlogin",
+ "rocketmq",
+ "rtsp",
+ "s7",
+ "sap_router",
+ "scan_time",
+ "scpi",
+ "screenshots",
+ "ser2net",
+ "seven_days_to_die",
+ "sip",
+ "skinny",
+ "smb",
+ "smtp",
+ "snmp",
+ "socks",
+ "software",
+ "spice",
+ "ssdp",
+ "ssh",
+ "steam",
+ "tacacs_plus",
+ "team_viewer",
+ "telnet",
+ "threats",
+ "tibia",
+ "tls",
+ "tplink_kasa",
+ "transport_protocol",
+ "unitronics_pcom",
+ "upnp",
+ "ventrilo",
+ "vnc",
+ "vulns",
+ "weblogic_t3",
+ "winrm",
+ "ws_discovery",
+ "x11",
+ "zeromq",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "endpoints",
+ "exposures",
+ "hardware",
+ "labels",
+ "misconfigs",
+ "operating_systems",
+ "screenshots",
+ "software",
+ "threats",
+ "vulns",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/serviceid.py b/src/censys_platform/models/serviceid.py
index 9cb5aab..c4c6f67 100644
--- a/src/censys_platform/models/serviceid.py
+++ b/src/censys_platform/models/serviceid.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,19 @@ class ServiceID(BaseModel):
protocol: Optional[str] = None
transport_protocol: Optional[ServiceIDTransportProtocol] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ip", "port", "protocol", "transport_protocol"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/servicescan.py b/src/censys_platform/models/servicescan.py
index e0dfb21..dd6b91f 100644
--- a/src/censys_platform/models/servicescan.py
+++ b/src/censys_platform/models/servicescan.py
@@ -33,6 +33,7 @@
from .fox import Fox, FoxTypedDict
from .ftp import Ftp, FtpTypedDict
from .gearman import Gearman, GearmanTypedDict
+from .hajime import Hajime, HajimeTypedDict
from .hidvertx import HidVertx, HidVertxTypedDict
from .hikvision import Hikvision, HikvisionTypedDict
from .ibmnje import Ibmnje, IbmnjeTypedDict
@@ -173,6 +174,7 @@ class ServiceScanTypedDict(TypedDict):
fox: NotRequired[FoxTypedDict]
ftp: NotRequired[FtpTypedDict]
gearman: NotRequired[GearmanTypedDict]
+ hajime: NotRequired[HajimeTypedDict]
hid_vertx: NotRequired[HidVertxTypedDict]
hikvision: NotRequired[HikvisionTypedDict]
ibmnje: NotRequired[IbmnjeTypedDict]
@@ -331,6 +333,8 @@ class ServiceScan(BaseModel):
gearman: Optional[Gearman] = None
+ hajime: Optional[Hajime] = None
+
hid_vertx: Optional[HidVertx] = None
hikvision: Optional[Hikvision] = None
@@ -519,155 +523,153 @@ class ServiceScan(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "activemq",
- "amqp",
- "any_connect",
- "asterisk_manager_interface",
- "bacnet",
- "banner",
- "banner_hash_sha256",
- "checkpoint_topology",
- "chromecast",
- "cisco_ipsla",
- "cmore",
- "coap",
- "crestron_cp3",
- "crestron_din_ap2",
- "cwmp",
- "darkcomet",
- "darkgate",
- "dcerpc",
- "dhcpdiscover",
- "dnp3",
- "dns",
- "dtls",
- "dvr_ip",
- "eip",
- "elf_file",
- "epmd",
- "etcd",
- "ethereum",
- "fox",
- "ftp",
- "gearman",
- "hid_vertx",
- "hikvision",
- "ibmnje",
- "ike",
- "imap",
- "iota",
- "ip",
- "ipmi",
- "ipp",
- "is_success",
- "iscsi",
- "krpc",
- "l2tp",
- "ldap",
- "lpd",
- "mdns",
- "memcached",
- "mikrotik_winbox",
- "minecraft",
- "mms",
- "modbus",
- "monero_p2p",
- "mongodb",
- "mqtt",
- "mssql",
- "murmur",
- "mysql",
- "nats_io",
- "nbd",
- "nfs_mountd",
- "nmea",
- "ntp",
- "ntrip",
- "onc",
- "onvif",
- "opc_ua",
- "openvpn",
- "openvpn_mgmt",
- "oracle",
- "pc_anywhere",
- "pgbouncer",
- "pop3",
- "port",
- "portmap",
- "postgres",
- "pptp",
- "profinet_cm",
- "protocol",
- "rdate",
- "rdp",
- "realport",
- "redis",
- "redline",
- "redlion_crimson",
- "representative_info",
- "rifatron",
- "ripple",
- "rlogin",
- "rocketmq",
- "rtsp",
- "s7",
- "sap_router",
- "scan_time",
- "scpi",
- "screenshots",
- "ser2net",
- "seven_days_to_die",
- "sip",
- "skinny",
- "smb",
- "smtp",
- "snmp",
- "socks",
- "spice",
- "ssdp",
- "ssh",
- "steam",
- "tacacs_plus",
- "team_viewer",
- "telnet",
- "tibia",
- "tls",
- "tplink_kasa",
- "transport_protocol",
- "unitronics_pcom",
- "upnp",
- "ventrilo",
- "vnc",
- "weblogic_t3",
- "winrm",
- "ws_discovery",
- "x11",
- "zeromq",
- ]
- nullable_fields = ["screenshots"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "activemq",
+ "amqp",
+ "any_connect",
+ "asterisk_manager_interface",
+ "bacnet",
+ "banner",
+ "banner_hash_sha256",
+ "checkpoint_topology",
+ "chromecast",
+ "cisco_ipsla",
+ "cmore",
+ "coap",
+ "crestron_cp3",
+ "crestron_din_ap2",
+ "cwmp",
+ "darkcomet",
+ "darkgate",
+ "dcerpc",
+ "dhcpdiscover",
+ "dnp3",
+ "dns",
+ "dtls",
+ "dvr_ip",
+ "eip",
+ "elf_file",
+ "epmd",
+ "etcd",
+ "ethereum",
+ "fox",
+ "ftp",
+ "gearman",
+ "hajime",
+ "hid_vertx",
+ "hikvision",
+ "ibmnje",
+ "ike",
+ "imap",
+ "iota",
+ "ip",
+ "ipmi",
+ "ipp",
+ "is_success",
+ "iscsi",
+ "krpc",
+ "l2tp",
+ "ldap",
+ "lpd",
+ "mdns",
+ "memcached",
+ "mikrotik_winbox",
+ "minecraft",
+ "mms",
+ "modbus",
+ "monero_p2p",
+ "mongodb",
+ "mqtt",
+ "mssql",
+ "murmur",
+ "mysql",
+ "nats_io",
+ "nbd",
+ "nfs_mountd",
+ "nmea",
+ "ntp",
+ "ntrip",
+ "onc",
+ "onvif",
+ "opc_ua",
+ "openvpn",
+ "openvpn_mgmt",
+ "oracle",
+ "pc_anywhere",
+ "pgbouncer",
+ "pop3",
+ "port",
+ "portmap",
+ "postgres",
+ "pptp",
+ "profinet_cm",
+ "protocol",
+ "rdate",
+ "rdp",
+ "realport",
+ "redis",
+ "redline",
+ "redlion_crimson",
+ "representative_info",
+ "rifatron",
+ "ripple",
+ "rlogin",
+ "rocketmq",
+ "rtsp",
+ "s7",
+ "sap_router",
+ "scan_time",
+ "scpi",
+ "screenshots",
+ "ser2net",
+ "seven_days_to_die",
+ "sip",
+ "skinny",
+ "smb",
+ "smtp",
+ "snmp",
+ "socks",
+ "spice",
+ "ssdp",
+ "ssh",
+ "steam",
+ "tacacs_plus",
+ "team_viewer",
+ "telnet",
+ "tibia",
+ "tls",
+ "tplink_kasa",
+ "transport_protocol",
+ "unitronics_pcom",
+ "upnp",
+ "ventrilo",
+ "vnc",
+ "weblogic_t3",
+ "winrm",
+ "ws_discovery",
+ "x11",
+ "zeromq",
+ ]
+ )
+ nullable_fields = set(["screenshots"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/servicescanned.py b/src/censys_platform/models/servicescanned.py
index 1b31188..80ffbce 100644
--- a/src/censys_platform/models/servicescanned.py
+++ b/src/censys_platform/models/servicescanned.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .fielddiff import FieldDiff, FieldDiffTypedDict
from .servicescan import ServiceScan, ServiceScanTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class ServiceScanned(BaseModel):
diff: Optional[Dict[str, FieldDiff]] = None
scan: Optional[ServiceScan] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["diff", "scan"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/sevendaystodie.py b/src/censys_platform/models/sevendaystodie.py
index 6367b8f..0d2cffb 100644
--- a/src/censys_platform/models/sevendaystodie.py
+++ b/src/censys_platform/models/sevendaystodie.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class SevenDaysToDie(BaseModel):
steam_id: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "game_name",
+ "game_type",
+ "region",
+ "server_url",
+ "server_version",
+ "steam_id",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/signature.py b/src/censys_platform/models/signature.py
index 534663f..999348b 100644
--- a/src/censys_platform/models/signature.py
+++ b/src/censys_platform/models/signature.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .keyalgorithm import KeyAlgorithm, KeyAlgorithmTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -28,3 +29,19 @@ class Signature(BaseModel):
value: Optional[str] = None
r"""Contents of the signature."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["self_signed", "signature_algorithm", "valid", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/signedcertificatetimestamp.py b/src/censys_platform/models/signedcertificatetimestamp.py
index 5dd80c6..2b147fe 100644
--- a/src/censys_platform/models/signedcertificatetimestamp.py
+++ b/src/censys_platform/models/signedcertificatetimestamp.py
@@ -5,7 +5,8 @@
SignedCertificateTimestampSignature,
SignedCertificateTimestampSignatureTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -25,3 +26,19 @@ class SignedCertificateTimestamp(BaseModel):
timestamp: Optional[str] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["log_id", "signature", "timestamp", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/signedcertificatetimestamp_signature.py b/src/censys_platform/models/signedcertificatetimestamp_signature.py
index 261835b..5ec517d 100644
--- a/src/censys_platform/models/signedcertificatetimestamp_signature.py
+++ b/src/censys_platform/models/signedcertificatetimestamp_signature.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class SignedCertificateTimestampSignature(BaseModel):
signature: Optional[str] = None
signature_algorithm: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["hash_algorithm", "signature", "signature_algorithm"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/sip.py b/src/censys_platform/models/sip.py
index a541dee..4785b9c 100644
--- a/src/censys_platform/models/sip.py
+++ b/src/censys_platform/models/sip.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -25,3 +26,19 @@ class Sip(BaseModel):
version: Optional[str] = None
r"""SIP version"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["code", "server", "status", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/skinny.py b/src/censys_platform/models/skinny.py
index 30802d4..3461506 100644
--- a/src/censys_platform/models/skinny.py
+++ b/src/censys_platform/models/skinny.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class SkinnyTypedDict(TypedDict):
class Skinny(BaseModel):
response: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["response"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smb.py b/src/censys_platform/models/smb.py
index 83f0d16..54b1aa1 100644
--- a/src/censys_platform/models/smb.py
+++ b/src/censys_platform/models/smb.py
@@ -5,7 +5,8 @@
from .smb_sessionsetuplog import SmbSessionSetupLog, SmbSessionSetupLogTypedDict
from .smb_smbcapabilities import SmbSmbCapabilities, SmbSmbCapabilitiesTypedDict
from .smb_smbversions import SmbSmbVersions, SmbSmbVersionsTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -48,3 +49,31 @@ class Smb(BaseModel):
smb_version: Optional[SmbSmbVersions] = None
smbv1_support: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "group_name",
+ "has_ntlm",
+ "native_os",
+ "negotiation_log",
+ "ntlm",
+ "session_setup_log",
+ "smb_capabilities",
+ "smb_version",
+ "smbv1_support",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smb_headerlog.py b/src/censys_platform/models/smb_headerlog.py
index adc7bf2..ccec7b3 100644
--- a/src/censys_platform/models/smb_headerlog.py
+++ b/src/censys_platform/models/smb_headerlog.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class SmbHeaderLog(BaseModel):
protocol_id: Optional[str] = None
status: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["command", "credits", "flags", "protocol_id", "status"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smb_negotiationlog.py b/src/censys_platform/models/smb_negotiationlog.py
index b9c28fd..cb53edb 100644
--- a/src/censys_platform/models/smb_negotiationlog.py
+++ b/src/censys_platform/models/smb_negotiationlog.py
@@ -44,39 +44,36 @@ class SmbNegotiationLog(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "authentication_types",
- "capabilities",
- "dialect_revision",
- "header_log",
- "security_mode",
- "server_guid",
- "server_start_time",
- "system_time",
- ]
- nullable_fields = ["authentication_types"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "authentication_types",
+ "capabilities",
+ "dialect_revision",
+ "header_log",
+ "security_mode",
+ "server_guid",
+ "server_start_time",
+ "system_time",
+ ]
+ )
+ nullable_fields = set(["authentication_types"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/smb_sessionsetuplog.py b/src/censys_platform/models/smb_sessionsetuplog.py
index b7e7e15..756c25c 100644
--- a/src/censys_platform/models/smb_sessionsetuplog.py
+++ b/src/censys_platform/models/smb_sessionsetuplog.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .smb_headerlog import SmbHeaderLog, SmbHeaderLogTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,21 @@ class SmbSessionSetupLog(BaseModel):
setup_flags: Optional[int] = None
target_name: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["header_log", "negotiate_flags", "setup_flags", "target_name"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smb_smbcapabilities.py b/src/censys_platform/models/smb_smbcapabilities.py
index b36040e..2a49579 100644
--- a/src/censys_platform/models/smb_smbcapabilities.py
+++ b/src/censys_platform/models/smb_smbcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,29 @@ class SmbSmbCapabilities(BaseModel):
smb_persistent_handle_support: Optional[bool] = None
r"""Server supports persistent handles"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "smb_dfs_support",
+ "smb_directory_leasing_support",
+ "smb_encryption_support",
+ "smb_leasing_support",
+ "smb_multichan_support",
+ "smb_multicredit_support",
+ "smb_persistent_handle_support",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smb_smbversions.py b/src/censys_platform/models/smb_smbversions.py
index cb3e534..0f2ff35 100644
--- a/src/censys_platform/models/smb_smbversions.py
+++ b/src/censys_platform/models/smb_smbversions.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,19 @@ class SmbSmbVersions(BaseModel):
version_string: Optional[str] = None
r"""Full SMB Version String"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["major", "minor", "revision", "version_string"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/smtp.py b/src/censys_platform/models/smtp.py
index 0f7fd59..3e4af1e 100644
--- a/src/censys_platform/models/smtp.py
+++ b/src/censys_platform/models/smtp.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class SMTP(BaseModel):
start_tls: Optional[str] = None
r"""The server's response to the STARTTLS command."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ehlo", "start_tls"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/snmp.py b/src/censys_platform/models/snmp.py
index 7811386..b67e4ce 100644
--- a/src/censys_platform/models/snmp.py
+++ b/src/censys_platform/models/snmp.py
@@ -38,36 +38,27 @@ class Snmp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "engine",
- "oid_interfaces",
- "oid_physical",
- "oid_system",
- "versions",
- ]
- nullable_fields = ["versions"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["engine", "oid_interfaces", "oid_physical", "oid_system", "versions"]
+ )
+ nullable_fields = set(["versions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/snmp_engine.py b/src/censys_platform/models/snmp_engine.py
index 421c48d..53e78ba 100644
--- a/src/censys_platform/models/snmp_engine.py
+++ b/src/censys_platform/models/snmp_engine.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
import pydantic
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -37,3 +38,31 @@ class SnmpEngine(BaseModel):
raw_id: Optional[str] = None
rfc3411: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "description",
+ "engine_boots",
+ "engine_time",
+ "format",
+ "format_data",
+ "organization",
+ "pen",
+ "raw_id",
+ "rfc3411",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/snmp_interfaces.py b/src/censys_platform/models/snmp_interfaces.py
index 8dd4000..2a75b84 100644
--- a/src/censys_platform/models/snmp_interfaces.py
+++ b/src/censys_platform/models/snmp_interfaces.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -14,3 +15,19 @@ class SnmpInterfacesTypedDict(TypedDict):
class SnmpInterfaces(BaseModel):
num_ifaces: Optional[int] = None
r"""1.3.6.1.2.1.2.1 - Number of network interfaces"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["num_ifaces"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/snmp_physical.py b/src/censys_platform/models/snmp_physical.py
index 213ad1c..3f0fd05 100644
--- a/src/censys_platform/models/snmp_physical.py
+++ b/src/censys_platform/models/snmp_physical.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,29 @@ class SnmpPhysical(BaseModel):
software_rev: Optional[str] = None
r"""1.3.6.1.2.1.47.1.1.1.1.10 - Software revision string"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "firmware_rev",
+ "hardware_rev",
+ "mfg_name",
+ "model_name",
+ "name",
+ "serial_num",
+ "software_rev",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/snmp_system.py b/src/censys_platform/models/snmp_system.py
index 8b41af7..8022e4c 100644
--- a/src/censys_platform/models/snmp_system.py
+++ b/src/censys_platform/models/snmp_system.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .snmp_system_services import SnmpSystemServices, SnmpSystemServicesTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -43,3 +44,29 @@ class SnmpSystem(BaseModel):
r"""1.3.6.1.2.1.1.2 - Vendor ID"""
services: Optional[SnmpSystemServices] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "contact",
+ "desc",
+ "init_time",
+ "location",
+ "name",
+ "object_id",
+ "services",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/snmp_system_services.py b/src/censys_platform/models/snmp_system_services.py
index 69c1782..7377cec 100644
--- a/src/censys_platform/models/snmp_system_services.py
+++ b/src/censys_platform/models/snmp_system_services.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -44,3 +45,29 @@ class SnmpSystemServices(BaseModel):
layer_7: Optional[bool] = None
r"""Applications (e.g. mail relays)"""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "layer_1",
+ "layer_2",
+ "layer_3",
+ "layer_4",
+ "layer_5",
+ "layer_6",
+ "layer_7",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/socks.py b/src/censys_platform/models/socks.py
index 32ba663..615e5f9 100644
--- a/src/censys_platform/models/socks.py
+++ b/src/censys_platform/models/socks.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,26 @@ class Socks(BaseModel):
preferred_authentication_value: Optional[int] = None
socks_version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "no_authentication_required",
+ "preferred_authentication",
+ "preferred_authentication_value",
+ "socks_version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/spice.py b/src/censys_platform/models/spice.py
index aa50606..3de92bc 100644
--- a/src/censys_platform/models/spice.py
+++ b/src/censys_platform/models/spice.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class Spice(BaseModel):
tls_only: Optional[bool] = None
x509_public_key: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["major_version", "minor_version", "tls_only", "x509_public_key"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssdp.py b/src/censys_platform/models/ssdp.py
index 2b679f2..3520290 100644
--- a/src/censys_platform/models/ssdp.py
+++ b/src/censys_platform/models/ssdp.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .http_repeatedheaders import HTTPRepeatedHeaders, HTTPRepeatedHeadersTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class Ssdp(BaseModel):
headers: Optional[Dict[str, HTTPRepeatedHeaders]] = None
upnp_url: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["headers", "upnp_url"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssh.py b/src/censys_platform/models/ssh.py
index ddda3f9..40679af 100644
--- a/src/censys_platform/models/ssh.py
+++ b/src/censys_platform/models/ssh.py
@@ -8,7 +8,8 @@
from .ssh_endpointid import SSHEndpointID, SSHEndpointIDTypedDict
from .ssh_kexinitmessage import SSHKexInitMessage, SSHKexInitMessageTypedDict
from .ssh_serverhostkey import SSHServerHostKey, SSHServerHostKeyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -31,3 +32,27 @@ class SSH(BaseModel):
kex_init_message: Optional[SSHKexInitMessage] = None
server_host_key: Optional[SSHServerHostKey] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "algorithm_selection",
+ "endpoint_id",
+ "hassh_fingerprint",
+ "kex_init_message",
+ "server_host_key",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssh_algorithmselection.py b/src/censys_platform/models/ssh_algorithmselection.py
index 510fb16..c2e2f1e 100644
--- a/src/censys_platform/models/ssh_algorithmselection.py
+++ b/src/censys_platform/models/ssh_algorithmselection.py
@@ -5,7 +5,8 @@
SSHAlgorithmSelectionDirectionAlgorithms,
SSHAlgorithmSelectionDirectionAlgorithmsTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,26 @@ class SSHAlgorithmSelection(BaseModel):
server_to_client_alg_group: Optional[SSHAlgorithmSelectionDirectionAlgorithms] = (
None
)
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "client_to_server_alg_group",
+ "host_key_algorithm",
+ "kex_algorithm",
+ "server_to_client_alg_group",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssh_algorithmselection_directionalgorithms.py b/src/censys_platform/models/ssh_algorithmselection_directionalgorithms.py
index 5112a2f..d56046e 100644
--- a/src/censys_platform/models/ssh_algorithmselection_directionalgorithms.py
+++ b/src/censys_platform/models/ssh_algorithmselection_directionalgorithms.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class SSHAlgorithmSelectionDirectionAlgorithms(BaseModel):
compression: Optional[str] = None
mac: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cipher", "compression", "mac"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssh_endpointid.py b/src/censys_platform/models/ssh_endpointid.py
index a4f8bf7..1b7c1f1 100644
--- a/src/censys_platform/models/ssh_endpointid.py
+++ b/src/censys_platform/models/ssh_endpointid.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class SSHEndpointID(BaseModel):
raw: Optional[str] = None
software_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["comment", "protocol_version", "raw", "software_version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ssh_kexinitmessage.py b/src/censys_platform/models/ssh_kexinitmessage.py
index 1a349c7..f492efe 100644
--- a/src/censys_platform/models/ssh_kexinitmessage.py
+++ b/src/censys_platform/models/ssh_kexinitmessage.py
@@ -72,53 +72,52 @@ class SSHKexInitMessage(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "client_to_server_ciphers",
- "client_to_server_compression",
- "client_to_server_languages",
- "client_to_server_macs",
- "first_kex_follows",
- "host_key_algorithms",
- "kex_algorithms",
- "server_to_client_ciphers",
- "server_to_client_compression",
- "server_to_client_languages",
- "server_to_client_macs",
- ]
- nullable_fields = [
- "client_to_server_ciphers",
- "client_to_server_compression",
- "client_to_server_languages",
- "client_to_server_macs",
- "host_key_algorithms",
- "kex_algorithms",
- "server_to_client_ciphers",
- "server_to_client_compression",
- "server_to_client_languages",
- "server_to_client_macs",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "client_to_server_ciphers",
+ "client_to_server_compression",
+ "client_to_server_languages",
+ "client_to_server_macs",
+ "first_kex_follows",
+ "host_key_algorithms",
+ "kex_algorithms",
+ "server_to_client_ciphers",
+ "server_to_client_compression",
+ "server_to_client_languages",
+ "server_to_client_macs",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "client_to_server_ciphers",
+ "client_to_server_compression",
+ "client_to_server_languages",
+ "client_to_server_macs",
+ "host_key_algorithms",
+ "kex_algorithms",
+ "server_to_client_ciphers",
+ "server_to_client_compression",
+ "server_to_client_languages",
+ "server_to_client_macs",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ssh_serverhostkey.py b/src/censys_platform/models/ssh_serverhostkey.py
index 0bb3601..b340591 100644
--- a/src/censys_platform/models/ssh_serverhostkey.py
+++ b/src/censys_platform/models/ssh_serverhostkey.py
@@ -8,7 +8,8 @@
Ed25519CryptographicKeyTypedDict,
)
from .rsacryptographickey import RSACryptographicKey, RSACryptographicKeyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,28 @@ class SSHServerHostKey(BaseModel):
fingerprint_sha256: Optional[str] = None
rsa_public_key: Optional[RSACryptographicKey] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "certkey_public_key",
+ "dsa_public_key",
+ "ecdsa_public_key",
+ "ed25519_public_key",
+ "fingerprint_sha256",
+ "rsa_public_key",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/status.py b/src/censys_platform/models/status.py
index 7610c6c..c9ced8a 100644
--- a/src/censys_platform/models/status.py
+++ b/src/censys_platform/models/status.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Status(BaseModel):
running: Optional[int] = None
total: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["available_workers", "function", "running", "total"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/steam.py b/src/censys_platform/models/steam.py
index db940e5..4e348ea 100644
--- a/src/censys_platform/models/steam.py
+++ b/src/censys_platform/models/steam.py
@@ -89,54 +89,51 @@ class Steam(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "broadcasting_active",
- "connect_port",
- "content_cache_port",
- "download_lan_peer_group",
- "enabled_services",
- "euniverse",
- "games_running",
- "hostname",
- "ip_addresses",
- "is64bit",
- "mac_addresses",
- "min_version",
- "ostype",
- "public_ip_address",
- "remoteplay_active",
- "screen_locked",
- "steam_deck",
- "steam_version",
- "supported_services",
- "users",
- "version",
- "vr_active",
- "vr_link_caps",
- ]
- nullable_fields = ["ip_addresses", "mac_addresses", "users"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "broadcasting_active",
+ "connect_port",
+ "content_cache_port",
+ "download_lan_peer_group",
+ "enabled_services",
+ "euniverse",
+ "games_running",
+ "hostname",
+ "ip_addresses",
+ "is64bit",
+ "mac_addresses",
+ "min_version",
+ "ostype",
+ "public_ip_address",
+ "remoteplay_active",
+ "screen_locked",
+ "steam_deck",
+ "steam_version",
+ "supported_services",
+ "users",
+ "version",
+ "vr_active",
+ "vr_link_caps",
+ ]
+ )
+ nullable_fields = set(["ip_addresses", "mac_addresses", "users"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/subjectkeyinfo.py b/src/censys_platform/models/subjectkeyinfo.py
index e722f9e..d4de89c 100644
--- a/src/censys_platform/models/subjectkeyinfo.py
+++ b/src/censys_platform/models/subjectkeyinfo.py
@@ -6,7 +6,8 @@
from .keyalgorithm import KeyAlgorithm, KeyAlgorithmTypedDict
from .rsapublickey import RsaPublicKey, RsaPublicKeyTypedDict
from .unrecognizedpublickey import UnrecognizedPublicKey, UnrecognizedPublicKeyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -34,3 +35,28 @@ class SubjectKeyInfo(BaseModel):
rsa: Optional[RsaPublicKey] = None
unrecognized: Optional[UnrecognizedPublicKey] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "dsa",
+ "ecdsa",
+ "fingerprint_sha256",
+ "key_algorithm",
+ "rsa",
+ "unrecognized",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/systemcapabilities.py b/src/censys_platform/models/systemcapabilities.py
index 2a117a4..2588311 100644
--- a/src/censys_platform/models/systemcapabilities.py
+++ b/src/censys_platform/models/systemcapabilities.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -42,3 +43,33 @@ class SystemCapabilities(BaseModel):
system_backup: Optional[bool] = None
system_logging: Optional[bool] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "discovery_bye",
+ "discovery_resolve",
+ "firmware_upgrade",
+ "http_firmware_upgrade",
+ "http_support_information",
+ "http_system_backup",
+ "http_system_logging",
+ "remote_discovery",
+ "storage_configuration",
+ "system_backup",
+ "system_logging",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/tacacsplus.py b/src/censys_platform/models/tacacsplus.py
index a98d01a..6b39e0d 100644
--- a/src/censys_platform/models/tacacsplus.py
+++ b/src/censys_platform/models/tacacsplus.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -30,3 +31,29 @@ class TacacsPlus(BaseModel):
type: Optional[int] = None
version: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "data_length",
+ "flags",
+ "obfuscated",
+ "seq_num",
+ "session_id",
+ "type",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/target.py b/src/censys_platform/models/target.py
index 15af440..4c97108 100644
--- a/src/censys_platform/models/target.py
+++ b/src/censys_platform/models/target.py
@@ -40,44 +40,37 @@ class Target(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "alias",
- "auths",
- "dns_portals",
- "errors",
- "name",
- "private_portals",
- "public_portals",
- ]
- nullable_fields = [
- "auths",
- "dns_portals",
- "errors",
- "private_portals",
- "public_portals",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "alias",
+ "auths",
+ "dns_portals",
+ "errors",
+ "name",
+ "private_portals",
+ "public_portals",
+ ]
+ )
+ nullable_fields = set(
+ ["auths", "dns_portals", "errors", "private_portals", "public_portals"]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/teamviewer.py b/src/censys_platform/models/teamviewer.py
index ff85d3b..3b7b63c 100644
--- a/src/censys_platform/models/teamviewer.py
+++ b/src/censys_platform/models/teamviewer.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class TeamViewerTypedDict(TypedDict):
class TeamViewer(BaseModel):
response: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["response"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/telnet.py b/src/censys_platform/models/telnet.py
index 9cabe53..11177f4 100644
--- a/src/censys_platform/models/telnet.py
+++ b/src/censys_platform/models/telnet.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel, Nullable
+from censys_platform.types import BaseModel, Nullable, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Telnet(BaseModel):
will: Optional[Dict[str, Nullable[str]]] = None
wont: Optional[Dict[str, Nullable[str]]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["do", "dont", "will", "wont"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/textmessage.py b/src/censys_platform/models/textmessage.py
index f82429d..4dfeb00 100644
--- a/src/censys_platform/models/textmessage.py
+++ b/src/censys_platform/models/textmessage.py
@@ -34,30 +34,25 @@ class TextMessage(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["actor", "channel_id", "message", "session", "tree_id"]
- nullable_fields = ["channel_id", "session", "tree_id"]
- null_default_fields = []
-
+ optional_fields = set(["actor", "channel_id", "message", "session", "tree_id"])
+ nullable_fields = set(["channel_id", "session", "tree_id"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threat.py b/src/censys_platform/models/threat.py
index 2f5a2dc..5caf341 100644
--- a/src/censys_platform/models/threat.py
+++ b/src/censys_platform/models/threat.py
@@ -63,41 +63,38 @@ class Threat(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "actors",
- "confidence",
- "details",
- "evidence",
- "id",
- "malware",
- "name",
- "source",
- "tactic",
- "type",
- ]
- nullable_fields = ["actors", "evidence", "tactic", "type"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "actors",
+ "confidence",
+ "details",
+ "evidence",
+ "id",
+ "malware",
+ "name",
+ "source",
+ "tactic",
+ "type",
+ ]
+ )
+ nullable_fields = set(["actors", "evidence", "tactic", "type"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threat_actor.py b/src/censys_platform/models/threat_actor.py
index a028c75..df60e2f 100644
--- a/src/censys_platform/models/threat_actor.py
+++ b/src/censys_platform/models/threat_actor.py
@@ -34,36 +34,27 @@ class ThreatActor(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "all_names",
- "id",
- "malpedia_group_id",
- "mitre_group_id",
- "primary_name",
- ]
- nullable_fields = ["all_names"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["all_names", "id", "malpedia_group_id", "mitre_group_id", "primary_name"]
+ )
+ nullable_fields = set(["all_names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threat_details.py b/src/censys_platform/models/threat_details.py
index 11f1672..a5d1d5b 100644
--- a/src/censys_platform/models/threat_details.py
+++ b/src/censys_platform/models/threat_details.py
@@ -31,35 +31,27 @@ class ThreatDetails(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "campaign_id",
- "campaign_theme",
- "control_servers",
- "version",
- ]
- nullable_fields = ["control_servers"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["campaign_id", "campaign_theme", "control_servers", "version"]
+ )
+ nullable_fields = set(["control_servers"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threat_malware.py b/src/censys_platform/models/threat_malware.py
index f8e844c..9b4bd92 100644
--- a/src/censys_platform/models/threat_malware.py
+++ b/src/censys_platform/models/threat_malware.py
@@ -34,36 +34,27 @@ class ThreatMalware(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "all_names",
- "id",
- "last_updated_at",
- "malpedia_id",
- "primary_name",
- ]
- nullable_fields = ["all_names"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["all_names", "id", "last_updated_at", "malpedia_id", "primary_name"]
+ )
+ nullable_fields = set(["all_names"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threatlistitem.py b/src/censys_platform/models/threatlistitem.py
index df5e04c..7c2235a 100644
--- a/src/censys_platform/models/threatlistitem.py
+++ b/src/censys_platform/models/threatlistitem.py
@@ -61,30 +61,25 @@ class ThreatListItem(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["added_at", "description", "name", "references"]
- nullable_fields = ["references"]
- null_default_fields = []
-
+ optional_fields = set(["added_at", "description", "name", "references"])
+ nullable_fields = set(["references"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/threatslistresponse.py b/src/censys_platform/models/threatslistresponse.py
index 16d425a..eff76c1 100644
--- a/src/censys_platform/models/threatslistresponse.py
+++ b/src/censys_platform/models/threatslistresponse.py
@@ -19,30 +19,14 @@ class ThreatsListResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["threats"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/tibia.py b/src/censys_platform/models/tibia.py
index 981a9d9..c0c0328 100644
--- a/src/censys_platform/models/tibia.py
+++ b/src/censys_platform/models/tibia.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -33,3 +34,30 @@ class Tibia(BaseModel):
url: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "client_version",
+ "location",
+ "login_ip",
+ "login_port",
+ "name",
+ "server",
+ "url",
+ "version",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/tls.py b/src/censys_platform/models/tls.py
index 830a93d..0f5c99e 100644
--- a/src/censys_platform/models/tls.py
+++ b/src/censys_platform/models/tls.py
@@ -68,38 +68,35 @@ class TLS(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "cipher_selected",
- "fingerprint_sha256",
- "ja3s",
- "ja4s",
- "presented_chain",
- "version_selected",
- "versions",
- ]
- nullable_fields = ["presented_chain", "versions"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "cipher_selected",
+ "fingerprint_sha256",
+ "ja3s",
+ "ja4s",
+ "presented_chain",
+ "version_selected",
+ "versions",
+ ]
+ )
+ nullable_fields = set(["presented_chain", "versions"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/tls_chain.py b/src/censys_platform/models/tls_chain.py
index b0aefb4..7e63f83 100644
--- a/src/censys_platform/models/tls_chain.py
+++ b/src/censys_platform/models/tls_chain.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class TLSChain(BaseModel):
subject_dn: Optional[str] = None
r"""Distinguished name of the entity that the certificate belongs to."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["fingerprint_sha256", "issuer_dn", "subject_dn"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/tls_versiondata.py b/src/censys_platform/models/tls_versiondata.py
index d96e929..465690c 100644
--- a/src/censys_platform/models/tls_versiondata.py
+++ b/src/censys_platform/models/tls_versiondata.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -32,3 +33,19 @@ class TLSVersionData(BaseModel):
ja4s: Optional[str] = None
version: Optional[Version] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ja3s", "ja4s", "version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/torservicedescriptor.py b/src/censys_platform/models/torservicedescriptor.py
index 0faf40e..5107e7f 100644
--- a/src/censys_platform/models/torservicedescriptor.py
+++ b/src/censys_platform/models/torservicedescriptor.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class TorServiceDescriptor(BaseModel):
hash_bits: Optional[int] = None
onion: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["algorithm_name", "hash", "hash_bits", "onion"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/tplinkkasa.py b/src/censys_platform/models/tplinkkasa.py
index 905eb21..ac4d6f9 100644
--- a/src/censys_platform/models/tplinkkasa.py
+++ b/src/censys_platform/models/tplinkkasa.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -54,3 +55,37 @@ class TplinkKasa(BaseModel):
sw_ver: Optional[str] = None
updating: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "active_mode",
+ "brightness",
+ "dev_name",
+ "err_code",
+ "feature",
+ "hw_ver",
+ "icon_hash",
+ "led_off",
+ "mic_type",
+ "model",
+ "on_time",
+ "relay_state",
+ "rssi",
+ "sw_ver",
+ "updating",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/trackedscan.py b/src/censys_platform/models/trackedscan.py
index d781473..022688c 100644
--- a/src/censys_platform/models/trackedscan.py
+++ b/src/censys_platform/models/trackedscan.py
@@ -39,36 +39,27 @@ class TrackedScan(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "completed",
- "create_time",
- "target",
- "tasks",
- "tracked_scan_id",
- ]
- nullable_fields = ["tasks"]
- null_default_fields = []
-
+ optional_fields = set(
+ ["completed", "create_time", "target", "tasks", "tracked_scan_id"]
+ )
+ nullable_fields = set(["tasks"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/trackedscan_scantarget.py b/src/censys_platform/models/trackedscan_scantarget.py
index c10abf2..ddcf4c6 100644
--- a/src/censys_platform/models/trackedscan_scantarget.py
+++ b/src/censys_platform/models/trackedscan_scantarget.py
@@ -11,7 +11,8 @@
TrackedScanScanTargetHostPortTypedDict,
)
from .weborigin import WebOrigin, WebOriginTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -31,3 +32,21 @@ class TrackedScanScanTarget(BaseModel):
service_id: Optional[ServiceID] = None
web_origin: Optional[WebOrigin] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["host_port", "hostname_port", "service_id", "web_origin"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/trackedscan_scantarget_hostnameport.py b/src/censys_platform/models/trackedscan_scantarget_hostnameport.py
index 2413f58..db90fff 100644
--- a/src/censys_platform/models/trackedscan_scantarget_hostnameport.py
+++ b/src/censys_platform/models/trackedscan_scantarget_hostnameport.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class TrackedScanScanTargetHostnamePort(BaseModel):
hostname: Optional[str] = None
port: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["hostname", "port"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/trackedscan_scantarget_hostport.py b/src/censys_platform/models/trackedscan_scantarget_hostport.py
index a55a796..07098a8 100644
--- a/src/censys_platform/models/trackedscan_scantarget_hostport.py
+++ b/src/censys_platform/models/trackedscan_scantarget_hostport.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class TrackedScanScanTargetHostPort(BaseModel):
ip: Optional[str] = None
port: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["ip", "port"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/trackedscan_task.py b/src/censys_platform/models/trackedscan_task.py
index d90cbac..2ddaec9 100644
--- a/src/censys_platform/models/trackedscan_task.py
+++ b/src/censys_platform/models/trackedscan_task.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from enum import Enum
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -29,3 +30,19 @@ class TrackedScanTask(BaseModel):
status: Optional[TrackedScanTaskStatus] = None
update_time: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["description", "status", "update_time"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/unitronicspcom.py b/src/censys_platform/models/unitronicspcom.py
index 309073b..a8e99b9 100644
--- a/src/censys_platform/models/unitronicspcom.py
+++ b/src/censys_platform/models/unitronicspcom.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -39,3 +40,32 @@ class UnitronicsPcom(BaseModel):
unique_id: Optional[int] = None
unit_id: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "buffer_size",
+ "hardware_version",
+ "model",
+ "model_executor",
+ "model_op_executor",
+ "name",
+ "os_build",
+ "os_version",
+ "unique_id",
+ "unit_id",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/unrecognizedpublickey.py b/src/censys_platform/models/unrecognizedpublickey.py
index d44c7e7..4e77340 100644
--- a/src/censys_platform/models/unrecognizedpublickey.py
+++ b/src/censys_platform/models/unrecognizedpublickey.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -12,3 +13,19 @@ class UnrecognizedPublicKeyTypedDict(TypedDict):
class UnrecognizedPublicKey(BaseModel):
raw: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["raw"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/updatememberroleinputbody.py b/src/censys_platform/models/updatememberroleinputbody.py
index e88ec76..5a2f714 100644
--- a/src/censys_platform/models/updatememberroleinputbody.py
+++ b/src/censys_platform/models/updatememberroleinputbody.py
@@ -24,30 +24,14 @@ class UpdateMemberRoleInputBody(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["roles"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/upnp.py b/src/censys_platform/models/upnp.py
index d5adabf..03ec180 100644
--- a/src/censys_platform/models/upnp.py
+++ b/src/censys_platform/models/upnp.py
@@ -34,30 +34,25 @@ class Upnp(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["devices", "endpoint", "headers", "spec"]
- nullable_fields = ["devices"]
- null_default_fields = []
-
+ optional_fields = set(["devices", "endpoint", "headers", "spec"])
+ nullable_fields = set(["devices"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/upnp_device.py b/src/censys_platform/models/upnp_device.py
index 2bc65e7..18f193c 100644
--- a/src/censys_platform/models/upnp_device.py
+++ b/src/censys_platform/models/upnp_device.py
@@ -67,46 +67,43 @@ class UpnpDevice(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "device_type",
- "friendly_name",
- "id",
- "manufacturer",
- "manufacturer_url",
- "model_description",
- "model_name",
- "model_number",
- "model_url",
- "parent_id",
- "presentation_url",
- "serial_number",
- "service_list",
- "udn",
- "upc",
- ]
- nullable_fields = ["service_list"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "device_type",
+ "friendly_name",
+ "id",
+ "manufacturer",
+ "manufacturer_url",
+ "model_description",
+ "model_name",
+ "model_number",
+ "model_url",
+ "parent_id",
+ "presentation_url",
+ "serial_number",
+ "service_list",
+ "udn",
+ "upc",
+ ]
+ )
+ nullable_fields = set(["service_list"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/upnp_service.py b/src/censys_platform/models/upnp_service.py
index d834501..a8fbca2 100644
--- a/src/censys_platform/models/upnp_service.py
+++ b/src/censys_platform/models/upnp_service.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class UpnpService(BaseModel):
service_id: Optional[str] = None
service_type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["control_url", "event_sub_url", "scpd_url", "service_id", "service_type"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/upnp_specversion.py b/src/censys_platform/models/upnp_specversion.py
index a5fab06..8ce1395 100644
--- a/src/censys_platform/models/upnp_specversion.py
+++ b/src/censys_platform/models/upnp_specversion.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class UpnpSpecVersion(BaseModel):
major: Optional[str] = None
minor: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["major", "minor"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/user.py b/src/censys_platform/models/user.py
index 9533708..c04f49d 100644
--- a/src/censys_platform/models/user.py
+++ b/src/censys_platform/models/user.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class User(BaseModel):
auth_key_id: Optional[str] = None
steamid: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["auth_key_id", "steamid"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/usercredits.py b/src/censys_platform/models/usercredits.py
index e138926..9de4b9c 100644
--- a/src/censys_platform/models/usercredits.py
+++ b/src/censys_platform/models/usercredits.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from datetime import datetime
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -20,3 +21,19 @@ class UserCredits(BaseModel):
resets_at: Optional[datetime] = None
r"""The date that the user's credits will be reset."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["resets_at"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/usernotice.py b/src/censys_platform/models/usernotice.py
index 6591673..e3d9299 100644
--- a/src/censys_platform/models/usernotice.py
+++ b/src/censys_platform/models/usernotice.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .noticereference import NoticeReference, NoticeReferenceTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -16,3 +17,19 @@ class UserNotice(BaseModel):
explicit_text: Optional[str] = None
notice_reference: Optional[NoticeReference] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["explicit_text", "notice_reference"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/v3_accountmanagement_list_org_membersop.py b/src/censys_platform/models/v3_accountmanagement_list_org_membersop.py
index 444ad21..e07f0dc 100644
--- a/src/censys_platform/models/v3_accountmanagement_list_org_membersop.py
+++ b/src/censys_platform/models/v3_accountmanagement_list_org_membersop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeOrganizationMembersList,
ResponseEnvelopeOrganizationMembersListTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -38,6 +39,22 @@ class V3AccountmanagementListOrgMembersRequest(BaseModel):
] = None
r"""Pagination token for retrieving the next page of results"""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["page_size", "page_token"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3AccountmanagementListOrgMembersResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_accountmanagement_org_detailsop.py b/src/censys_platform/models/v3_accountmanagement_org_detailsop.py
index f4ba825..9435ad7 100644
--- a/src/censys_platform/models/v3_accountmanagement_org_detailsop.py
+++ b/src/censys_platform/models/v3_accountmanagement_org_detailsop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeOrganizationDetails,
ResponseEnvelopeOrganizationDetailsTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,6 +31,22 @@ class V3AccountmanagementOrgDetailsRequest(BaseModel):
] = False
r"""Whether to include how many members are in this organization, split by role."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["include_member_counts"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3AccountmanagementOrgDetailsResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_crud_createop.py b/src/censys_platform/models/v3_collections_crud_createop.py
index 059e7b2..b031d81 100644
--- a/src/censys_platform/models/v3_collections_crud_createop.py
+++ b/src/censys_platform/models/v3_collections_crud_createop.py
@@ -6,8 +6,9 @@
ResponseEnvelopeCollection,
ResponseEnvelopeCollectionTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3CollectionsCrudCreateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudCreateRequestTypedDict(TypedDict):
organization_id: NotRequired[str]
@@ -41,6 +58,22 @@ class V3CollectionsCrudCreateRequest(BaseModel):
FieldMetadata(request=RequestMetadata(media_type="application/json")),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "CrudCreateInputBody"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudCreateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_crud_deleteop.py b/src/censys_platform/models/v3_collections_crud_deleteop.py
index 9fb11e2..d58014e 100644
--- a/src/censys_platform/models/v3_collections_crud_deleteop.py
+++ b/src/censys_platform/models/v3_collections_crud_deleteop.py
@@ -1,8 +1,9 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -17,6 +18,22 @@ class V3CollectionsCrudDeleteGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudDeleteRequestTypedDict(TypedDict):
collection_uid: str
@@ -37,6 +54,22 @@ class V3CollectionsCrudDeleteRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudDeleteResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_crud_getop.py b/src/censys_platform/models/v3_collections_crud_getop.py
index f5c8886..c18b132 100644
--- a/src/censys_platform/models/v3_collections_crud_getop.py
+++ b/src/censys_platform/models/v3_collections_crud_getop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeCollection,
ResponseEnvelopeCollectionTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3CollectionsCrudGetGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudGetRequestTypedDict(TypedDict):
collection_uid: str
@@ -41,6 +58,22 @@ class V3CollectionsCrudGetRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudGetResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_crud_listop.py b/src/censys_platform/models/v3_collections_crud_listop.py
index 1e9a757..ae2b529 100644
--- a/src/censys_platform/models/v3_collections_crud_listop.py
+++ b/src/censys_platform/models/v3_collections_crud_listop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeListCollectionsResponseV1,
ResponseEnvelopeListCollectionsResponseV1TypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3CollectionsCrudListGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudListRequestTypedDict(TypedDict):
organization_id: NotRequired[str]
@@ -50,6 +67,22 @@ class V3CollectionsCrudListRequest(BaseModel):
] = None
r"""amount of results to return per page"""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "page_token", "page_size"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudListResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_crud_updateop.py b/src/censys_platform/models/v3_collections_crud_updateop.py
index cb97b49..165a311 100644
--- a/src/censys_platform/models/v3_collections_crud_updateop.py
+++ b/src/censys_platform/models/v3_collections_crud_updateop.py
@@ -6,13 +6,14 @@
ResponseEnvelopeCollection,
ResponseEnvelopeCollectionTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import (
FieldMetadata,
PathParamMetadata,
QueryParamMetadata,
RequestMetadata,
)
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -27,6 +28,22 @@ class V3CollectionsCrudUpdateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudUpdateRequestTypedDict(TypedDict):
collection_uid: str
@@ -53,6 +70,22 @@ class V3CollectionsCrudUpdateRequest(BaseModel):
FieldMetadata(request=RequestMetadata(media_type="application/json")),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "CrudUpdateInputBody"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsCrudUpdateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_list_eventsop.py b/src/censys_platform/models/v3_collections_list_eventsop.py
index 66e1172..47a5491 100644
--- a/src/censys_platform/models/v3_collections_list_eventsop.py
+++ b/src/censys_platform/models/v3_collections_list_eventsop.py
@@ -30,6 +30,22 @@ class V3CollectionsListEventsGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class ChangeTypes(str, Enum):
ASSET = "asset"
@@ -125,40 +141,39 @@ class V3CollectionsListEventsRequest(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "organization_id",
- "page_size",
- "page_token",
- "change_types",
- "asset_change_types",
- "status_change_types",
- "start_time",
- "end_time",
- ]
- nullable_fields = ["change_types", "asset_change_types", "status_change_types"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "organization_id",
+ "page_size",
+ "page_token",
+ "change_types",
+ "asset_change_types",
+ "status_change_types",
+ "start_time",
+ "end_time",
+ ]
+ )
+ nullable_fields = set(
+ ["change_types", "asset_change_types", "status_change_types"]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/v3_collections_search_aggregateop.py b/src/censys_platform/models/v3_collections_search_aggregateop.py
index ef9f13f..bffd765 100644
--- a/src/censys_platform/models/v3_collections_search_aggregateop.py
+++ b/src/censys_platform/models/v3_collections_search_aggregateop.py
@@ -9,13 +9,14 @@
SearchAggregateInputBody,
SearchAggregateInputBodyTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import (
FieldMetadata,
PathParamMetadata,
QueryParamMetadata,
RequestMetadata,
)
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,6 +31,22 @@ class V3CollectionsSearchAggregateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsSearchAggregateRequestTypedDict(TypedDict):
collection_uid: str
@@ -56,6 +73,22 @@ class V3CollectionsSearchAggregateRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsSearchAggregateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_collections_search_queryop.py b/src/censys_platform/models/v3_collections_search_queryop.py
index fd5661e..50c5b22 100644
--- a/src/censys_platform/models/v3_collections_search_queryop.py
+++ b/src/censys_platform/models/v3_collections_search_queryop.py
@@ -6,13 +6,14 @@
ResponseEnvelopeSearchQueryResponseTypedDict,
)
from .searchqueryinputbody import SearchQueryInputBody, SearchQueryInputBodyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import (
FieldMetadata,
PathParamMetadata,
QueryParamMetadata,
RequestMetadata,
)
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -27,6 +28,22 @@ class V3CollectionsSearchQueryGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsSearchQueryRequestTypedDict(TypedDict):
collection_uid: str
@@ -53,6 +70,22 @@ class V3CollectionsSearchQueryRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3CollectionsSearchQueryResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_certificate_list_postop.py b/src/censys_platform/models/v3_globaldata_asset_certificate_list_postop.py
index b92b68d..3a9b73d 100644
--- a/src/censys_platform/models/v3_globaldata_asset_certificate_list_postop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_certificate_list_postop.py
@@ -9,8 +9,9 @@
ResponseEnvelopeListCertificateAsset,
ResponseEnvelopeListCertificateAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataAssetCertificateListPostGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateListPostRequestTypedDict(TypedDict):
asset_certificate_list_input_body: AssetCertificateListInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataAssetCertificateListPostRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateListPostResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_certificate_list_raw_postop.py b/src/censys_platform/models/v3_globaldata_asset_certificate_list_raw_postop.py
index 8dcae29..ceb9676 100644
--- a/src/censys_platform/models/v3_globaldata_asset_certificate_list_raw_postop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_certificate_list_raw_postop.py
@@ -9,8 +9,9 @@
ResponseEnvelopeListRawCertificateResponse,
ResponseEnvelopeListRawCertificateResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataAssetCertificateListRawPostGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateListRawPostRequestTypedDict(TypedDict):
asset_certificate_list_input_body: AssetCertificateListInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataAssetCertificateListRawPostRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateListRawPostResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_certificate_rawop.py b/src/censys_platform/models/v3_globaldata_asset_certificate_rawop.py
index fd60d22..e90d3d4 100644
--- a/src/censys_platform/models/v3_globaldata_asset_certificate_rawop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_certificate_rawop.py
@@ -1,9 +1,10 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
import httpx
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -18,6 +19,22 @@ class V3GlobaldataAssetCertificateRawGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateRawRequestTypedDict(TypedDict):
certificate_id: str
@@ -38,6 +55,22 @@ class V3GlobaldataAssetCertificateRawRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateRawResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_certificateop.py b/src/censys_platform/models/v3_globaldata_asset_certificateop.py
index 31d6c91..23f51a3 100644
--- a/src/censys_platform/models/v3_globaldata_asset_certificateop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_certificateop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeCertificateAsset,
ResponseEnvelopeCertificateAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3GlobaldataAssetCertificateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateRequestTypedDict(TypedDict):
certificate_id: str
@@ -41,6 +58,22 @@ class V3GlobaldataAssetCertificateRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetCertificateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_host_list_postop.py b/src/censys_platform/models/v3_globaldata_asset_host_list_postop.py
index 867d18e..f579441 100644
--- a/src/censys_platform/models/v3_globaldata_asset_host_list_postop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_host_list_postop.py
@@ -9,8 +9,9 @@
ResponseEnvelopeListHostAsset,
ResponseEnvelopeListHostAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataAssetHostListPostGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostListPostRequestTypedDict(TypedDict):
asset_host_list_input_body: AssetHostListInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataAssetHostListPostRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostListPostResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_host_timelineop.py b/src/censys_platform/models/v3_globaldata_asset_host_timelineop.py
index 743b3b7..c59acc7 100644
--- a/src/censys_platform/models/v3_globaldata_asset_host_timelineop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_host_timelineop.py
@@ -5,9 +5,10 @@
ResponseEnvelopeHostTimeline,
ResponseEnvelopeHostTimelineTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
from datetime import datetime
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3GlobaldataAssetHostTimelineGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostTimelineRequestTypedDict(TypedDict):
host_id: str
@@ -56,6 +73,22 @@ class V3GlobaldataAssetHostTimelineRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostTimelineResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_hostop.py b/src/censys_platform/models/v3_globaldata_asset_hostop.py
index a688302..a8da11f 100644
--- a/src/censys_platform/models/v3_globaldata_asset_hostop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_hostop.py
@@ -5,9 +5,10 @@
ResponseEnvelopeHostAsset,
ResponseEnvelopeHostAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
from datetime import datetime
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3GlobaldataAssetHostGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostRequestTypedDict(TypedDict):
host_id: str
@@ -50,6 +67,22 @@ class V3GlobaldataAssetHostRequest(BaseModel):
] = None
r"""RFC3339 Timestamp to view a host at a specific point in time. Must be a valid RFC3339 string. Ensure that you suffix the date with T00:00:00Z or a specific time."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "at_time"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetHostResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_webproperty_list_postop.py b/src/censys_platform/models/v3_globaldata_asset_webproperty_list_postop.py
index b325fe2..d715cb5 100644
--- a/src/censys_platform/models/v3_globaldata_asset_webproperty_list_postop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_webproperty_list_postop.py
@@ -9,8 +9,9 @@
ResponseEnvelopeListWebpropertyAsset,
ResponseEnvelopeListWebpropertyAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataAssetWebpropertyListPostGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetWebpropertyListPostRequestTypedDict(TypedDict):
asset_webproperty_list_input_body: AssetWebpropertyListInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataAssetWebpropertyListPostRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetWebpropertyListPostResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_asset_webpropertyop.py b/src/censys_platform/models/v3_globaldata_asset_webpropertyop.py
index bf32a85..38190aa 100644
--- a/src/censys_platform/models/v3_globaldata_asset_webpropertyop.py
+++ b/src/censys_platform/models/v3_globaldata_asset_webpropertyop.py
@@ -5,9 +5,10 @@
ResponseEnvelopeWebpropertyAsset,
ResponseEnvelopeWebpropertyAssetTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
from datetime import datetime
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3GlobaldataAssetWebpropertyGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetWebpropertyRequestTypedDict(TypedDict):
webproperty_id: str
@@ -50,6 +67,22 @@ class V3GlobaldataAssetWebpropertyRequest(BaseModel):
] = None
r"""RFC3339 Timestamp to view a webproperty at a specific point in time. Must be a valid RFC3339 string. Ensure that you suffix the date with T00:00:00Z or a specific time"""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "at_time"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataAssetWebpropertyResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_scans_getop.py b/src/censys_platform/models/v3_globaldata_scans_getop.py
index 39bf3e2..c93a685 100644
--- a/src/censys_platform/models/v3_globaldata_scans_getop.py
+++ b/src/censys_platform/models/v3_globaldata_scans_getop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeTrackedScan,
ResponseEnvelopeTrackedScanTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3GlobaldataScansGetGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataScansGetRequestTypedDict(TypedDict):
scan_id: str
@@ -41,6 +58,22 @@ class V3GlobaldataScansGetRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataScansGetResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_scans_rescanop.py b/src/censys_platform/models/v3_globaldata_scans_rescanop.py
index c118431..7a7e374 100644
--- a/src/censys_platform/models/v3_globaldata_scans_rescanop.py
+++ b/src/censys_platform/models/v3_globaldata_scans_rescanop.py
@@ -6,8 +6,9 @@
ResponseEnvelopeTrackedScanTypedDict,
)
from .scansrescaninputbody import ScansRescanInputBody, ScansRescanInputBodyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3GlobaldataScansRescanGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataScansRescanRequestTypedDict(TypedDict):
scans_rescan_input_body: ScansRescanInputBodyTypedDict
@@ -41,6 +58,22 @@ class V3GlobaldataScansRescanRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataScansRescanResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_search_aggregateop.py b/src/censys_platform/models/v3_globaldata_search_aggregateop.py
index b280f19..fa3ca1a 100644
--- a/src/censys_platform/models/v3_globaldata_search_aggregateop.py
+++ b/src/censys_platform/models/v3_globaldata_search_aggregateop.py
@@ -9,8 +9,9 @@
SearchAggregateInputBody,
SearchAggregateInputBodyTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataSearchAggregateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchAggregateRequestTypedDict(TypedDict):
search_aggregate_input_body: SearchAggregateInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataSearchAggregateRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchAggregateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_search_convertop.py b/src/censys_platform/models/v3_globaldata_search_convertop.py
index 9740888..f737380 100644
--- a/src/censys_platform/models/v3_globaldata_search_convertop.py
+++ b/src/censys_platform/models/v3_globaldata_search_convertop.py
@@ -9,8 +9,9 @@
SearchConvertQueryInputBody,
SearchConvertQueryInputBodyTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3GlobaldataSearchConvertGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchConvertRequestTypedDict(TypedDict):
search_convert_query_input_body: SearchConvertQueryInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3GlobaldataSearchConvertRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchConvertResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_globaldata_search_queryop.py b/src/censys_platform/models/v3_globaldata_search_queryop.py
index 5eb9114..da59084 100644
--- a/src/censys_platform/models/v3_globaldata_search_queryop.py
+++ b/src/censys_platform/models/v3_globaldata_search_queryop.py
@@ -6,8 +6,9 @@
ResponseEnvelopeSearchQueryResponseTypedDict,
)
from .searchqueryinputbody import SearchQueryInputBody, SearchQueryInputBodyTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -22,6 +23,22 @@ class V3GlobaldataSearchQueryGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchQueryRequestTypedDict(TypedDict):
search_query_input_body: SearchQueryInputBodyTypedDict
@@ -41,6 +58,22 @@ class V3GlobaldataSearchQueryRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. If omitted, the request will be processed using the authenticated user's free wallet where applicable. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3GlobaldataSearchQueryResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_threathunting_get_host_observations_with_certificateop.py b/src/censys_platform/models/v3_threathunting_get_host_observations_with_certificateop.py
index 1b07a39..bc394d5 100644
--- a/src/censys_platform/models/v3_threathunting_get_host_observations_with_certificateop.py
+++ b/src/censys_platform/models/v3_threathunting_get_host_observations_with_certificateop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeHostObservationResponse,
ResponseEnvelopeHostObservationResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3ThreathuntingGetHostObservationsWithCertificateGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingGetHostObservationsWithCertificateRequestTypedDict(TypedDict):
certificate_id: str
@@ -89,6 +106,32 @@ class V3ThreathuntingGetHostObservationsWithCertificateRequest(BaseModel):
] = None
r"""Number of results per page. Maximum 100, defaults to 100 if not specified"""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ [
+ "organization_id",
+ "start_time",
+ "end_time",
+ "port",
+ "protocol",
+ "page_token",
+ "page_size",
+ ]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingGetHostObservationsWithCertificateResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_threathunting_scans_discoveryop.py b/src/censys_platform/models/v3_threathunting_scans_discoveryop.py
index 63b320e..60a01a8 100644
--- a/src/censys_platform/models/v3_threathunting_scans_discoveryop.py
+++ b/src/censys_platform/models/v3_threathunting_scans_discoveryop.py
@@ -9,8 +9,9 @@
ScansDiscoveryInputBody,
ScansDiscoveryInputBodyTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3ThreathuntingScansDiscoveryGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingScansDiscoveryRequestTypedDict(TypedDict):
scans_discovery_input_body: ScansDiscoveryInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3ThreathuntingScansDiscoveryRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingScansDiscoveryResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_threathunting_scans_getop.py b/src/censys_platform/models/v3_threathunting_scans_getop.py
index e03a754..2224ad4 100644
--- a/src/censys_platform/models/v3_threathunting_scans_getop.py
+++ b/src/censys_platform/models/v3_threathunting_scans_getop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeTrackedScan,
ResponseEnvelopeTrackedScanTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3ThreathuntingScansGetGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingScansGetRequestTypedDict(TypedDict):
scan_id: str
@@ -41,6 +58,22 @@ class V3ThreathuntingScansGetRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingScansGetResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_threathunting_threats_listop.py b/src/censys_platform/models/v3_threathunting_threats_listop.py
index 5b9e4c4..b812a3b 100644
--- a/src/censys_platform/models/v3_threathunting_threats_listop.py
+++ b/src/censys_platform/models/v3_threathunting_threats_listop.py
@@ -5,8 +5,9 @@
ResponseEnvelopeThreatsListResponse,
ResponseEnvelopeThreatsListResponseTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -21,6 +22,22 @@ class V3ThreathuntingThreatsListGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingThreatsListRequestTypedDict(TypedDict):
organization_id: NotRequired[str]
@@ -42,6 +59,22 @@ class V3ThreathuntingThreatsListRequest(BaseModel):
] = None
r"""Optional CenQL filter to constrain threats list"""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id", "query"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingThreatsListResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/v3_threathunting_value_countsop.py b/src/censys_platform/models/v3_threathunting_value_countsop.py
index 1845688..9ad12fa 100644
--- a/src/censys_platform/models/v3_threathunting_value_countsop.py
+++ b/src/censys_platform/models/v3_threathunting_value_countsop.py
@@ -9,8 +9,9 @@
SearchValueCountsInputBody,
SearchValueCountsInputBodyTypedDict,
)
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
from censys_platform.utils import FieldMetadata, QueryParamMetadata, RequestMetadata
+from pydantic import model_serializer
from typing import Dict, List, Optional
from typing_extensions import Annotated, NotRequired, TypedDict
@@ -25,6 +26,22 @@ class V3ThreathuntingValueCountsGlobals(BaseModel):
FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
] = None
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingValueCountsRequestTypedDict(TypedDict):
search_value_counts_input_body: SearchValueCountsInputBodyTypedDict
@@ -44,6 +61,22 @@ class V3ThreathuntingValueCountsRequest(BaseModel):
] = None
r"""The ID of a Censys organization to associate the request with. See the [Getting Started docs](https://docs.censys.com/reference/get-started#step-3-find-and-use-your-organization-id-optional) for more information."""
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["organization_id"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
+
class V3ThreathuntingValueCountsResponseTypedDict(TypedDict):
headers: Dict[str, List[str]]
diff --git a/src/censys_platform/models/validation.py b/src/censys_platform/models/validation.py
index 8b8e6e3..9fdfd09 100644
--- a/src/censys_platform/models/validation.py
+++ b/src/censys_platform/models/validation.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .rootstore import RootStore, RootStoreTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -22,3 +23,19 @@ class Validation(BaseModel):
microsoft: Optional[RootStore] = None
nss: Optional[RootStore] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["apple", "chrome", "microsoft", "nss"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/validityperiod.py b/src/censys_platform/models/validityperiod.py
index 3a64e9f..479f79d 100644
--- a/src/censys_platform/models/validityperiod.py
+++ b/src/censys_platform/models/validityperiod.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class ValidityPeriod(BaseModel):
not_before: Optional[str] = None
r"""An RFC-3339-formatted timestamp before which the certificate is not valid."""
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["length_seconds", "not_after", "not_before"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/valuecountsresponse.py b/src/censys_platform/models/valuecountsresponse.py
index 24dda6c..7210ad9 100644
--- a/src/censys_platform/models/valuecountsresponse.py
+++ b/src/censys_platform/models/valuecountsresponse.py
@@ -16,30 +16,14 @@ class ValueCountsResponse(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = []
- nullable_fields = ["and_count_results"]
- null_default_fields = []
-
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
+ if val != UNSET_SENTINEL:
m[k] = val
return m
diff --git a/src/censys_platform/models/ventrilo.py b/src/censys_platform/models/ventrilo.py
index bdcd74d..fc8a40b 100644
--- a/src/censys_platform/models/ventrilo.py
+++ b/src/censys_platform/models/ventrilo.py
@@ -26,30 +26,25 @@ class Ventrilo(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["attributes", "messages"]
- nullable_fields = ["attributes", "messages"]
- null_default_fields = []
-
+ optional_fields = set(["attributes", "messages"])
+ nullable_fields = set(["attributes", "messages"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/ventrilo_header.py b/src/censys_platform/models/ventrilo_header.py
index f7e9a4a..1f09774 100644
--- a/src/censys_platform/models/ventrilo_header.py
+++ b/src/censys_platform/models/ventrilo_header.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,19 @@ class VentriloHeader(BaseModel):
id: Optional[int] = None
total_length: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["cmd", "data_key", "header_key", "id", "total_length"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/ventrilo_message.py b/src/censys_platform/models/ventrilo_message.py
index 4c9366c..347e1a6 100644
--- a/src/censys_platform/models/ventrilo_message.py
+++ b/src/censys_platform/models/ventrilo_message.py
@@ -2,7 +2,8 @@
from __future__ import annotations
from .ventrilo_header import VentriloHeader, VentriloHeaderTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -19,3 +20,19 @@ class VentriloMessage(BaseModel):
error: Optional[str] = None
header: Optional[VentriloHeader] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["body", "error", "header"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/vnc.py b/src/censys_platform/models/vnc.py
index dc9f935..177d5bb 100644
--- a/src/censys_platform/models/vnc.py
+++ b/src/censys_platform/models/vnc.py
@@ -45,37 +45,34 @@ class Vnc(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "connection_failed_reason",
- "desktop_name",
- "pixel_encoding",
- "screen_info",
- "security_types",
- "version",
- ]
- nullable_fields = ["security_types"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "connection_failed_reason",
+ "desktop_name",
+ "pixel_encoding",
+ "screen_info",
+ "security_types",
+ "version",
+ ]
+ )
+ nullable_fields = set(["security_types"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/vnc_keyvalue.py b/src/censys_platform/models/vnc_keyvalue.py
index dc1f320..cfef571 100644
--- a/src/censys_platform/models/vnc_keyvalue.py
+++ b/src/censys_platform/models/vnc_keyvalue.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class VncKeyValue(BaseModel):
name: Optional[str] = None
value: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["name", "value"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/vuln.py b/src/censys_platform/models/vuln.py
index b828518..759e193 100644
--- a/src/censys_platform/models/vuln.py
+++ b/src/censys_platform/models/vuln.py
@@ -80,42 +80,39 @@ class Vuln(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "confidence",
- "cwes",
- "evidence",
- "id",
- "kev",
- "metrics",
- "name",
- "risk_source",
- "severity",
- "source",
- "year",
- ]
- nullable_fields = ["cwes", "evidence", "kev"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "confidence",
+ "cwes",
+ "evidence",
+ "id",
+ "kev",
+ "metrics",
+ "name",
+ "risk_source",
+ "severity",
+ "source",
+ "year",
+ ]
+ )
+ nullable_fields = set(["cwes", "evidence", "kev"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/weblogict3.py b/src/censys_platform/models/weblogict3.py
index ae7e979..bf8543a 100644
--- a/src/censys_platform/models/weblogict3.py
+++ b/src/censys_platform/models/weblogict3.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class WeblogicT3(BaseModel):
error_message: Optional[str] = None
weblogic_version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["error", "error_message", "weblogic_version"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/weborigin.py b/src/censys_platform/models/weborigin.py
index 2e0af14..7d9b4db 100644
--- a/src/censys_platform/models/weborigin.py
+++ b/src/censys_platform/models/weborigin.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -15,3 +16,19 @@ class WebOrigin(BaseModel):
hostname: Optional[str] = None
port: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["hostname", "port"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/webproperty.py b/src/censys_platform/models/webproperty.py
index 5234ee8..719f1a6 100644
--- a/src/censys_platform/models/webproperty.py
+++ b/src/censys_platform/models/webproperty.py
@@ -73,56 +73,55 @@ class Webproperty(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "cert",
- "endpoints",
- "exposures",
- "hardware",
- "hostname",
- "jarm",
- "labels",
- "misconfigs",
- "operating_systems",
- "port",
- "scan_time",
- "software",
- "threats",
- "tls",
- "vulns",
- ]
- nullable_fields = [
- "endpoints",
- "exposures",
- "hardware",
- "labels",
- "misconfigs",
- "operating_systems",
- "software",
- "threats",
- "vulns",
- ]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "cert",
+ "endpoints",
+ "exposures",
+ "hardware",
+ "hostname",
+ "jarm",
+ "labels",
+ "misconfigs",
+ "operating_systems",
+ "port",
+ "scan_time",
+ "software",
+ "threats",
+ "tls",
+ "vulns",
+ ]
+ )
+ nullable_fields = set(
+ [
+ "endpoints",
+ "exposures",
+ "hardware",
+ "labels",
+ "misconfigs",
+ "operating_systems",
+ "software",
+ "threats",
+ "vulns",
+ ]
+ )
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/whois.py b/src/censys_platform/models/whois.py
index 0b8be04..f260dff 100644
--- a/src/censys_platform/models/whois.py
+++ b/src/censys_platform/models/whois.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .network import Network, NetworkTypedDict
from .organization import Organization, OrganizationTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class Whois(BaseModel):
network: Optional[Network] = None
organization: Optional[Organization] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["network", "organization"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/whoisupdated.py b/src/censys_platform/models/whoisupdated.py
index 8862993..4508bc8 100644
--- a/src/censys_platform/models/whoisupdated.py
+++ b/src/censys_platform/models/whoisupdated.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .fielddiff import FieldDiff, FieldDiffTypedDict
from .whois import Whois, WhoisTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -17,3 +18,19 @@ class WhoisUpdated(BaseModel):
diff: Optional[Dict[str, FieldDiff]] = None
whois: Optional[Whois] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["diff", "whois"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/winrm.py b/src/censys_platform/models/winrm.py
index 6001802..4a52614 100644
--- a/src/censys_platform/models/winrm.py
+++ b/src/censys_platform/models/winrm.py
@@ -26,30 +26,25 @@ class Winrm(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["auth_types", "ntlm_info"]
- nullable_fields = ["auth_types"]
- null_default_fields = []
-
+ optional_fields = set(["auth_types", "ntlm_info"])
+ nullable_fields = set(["auth_types"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/worker.py b/src/censys_platform/models/worker.py
index 8a4e621..a24542e 100644
--- a/src/censys_platform/models/worker.py
+++ b/src/censys_platform/models/worker.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,19 @@ class Worker(BaseModel):
functions: Optional[str] = None
ip: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["client_id", "fd", "functions", "ip"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/wsdiscovery.py b/src/censys_platform/models/wsdiscovery.py
index 99b66af..beb514c 100644
--- a/src/censys_platform/models/wsdiscovery.py
+++ b/src/censys_platform/models/wsdiscovery.py
@@ -31,30 +31,25 @@ class WsDiscovery(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = ["addresses", "metadata_version", "scopes", "types"]
- nullable_fields = ["addresses", "scopes", "types"]
- null_default_fields = []
-
+ optional_fields = set(["addresses", "metadata_version", "scopes", "types"])
+ nullable_fields = set(["addresses", "scopes", "types"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/models/x11.py b/src/censys_platform/models/x11.py
index 0faaa13..383238c 100644
--- a/src/censys_platform/models/x11.py
+++ b/src/censys_platform/models/x11.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -21,3 +22,21 @@ class X11(BaseModel):
vendor: Optional[str] = None
version: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["refusal_reason", "requires_authentication", "vendor", "version"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/zeromq.py b/src/censys_platform/models/zeromq.py
index 7ecd666..52e8b9b 100644
--- a/src/censys_platform/models/zeromq.py
+++ b/src/censys_platform/models/zeromq.py
@@ -3,7 +3,8 @@
from __future__ import annotations
from .zeromq_greeting import ZeromqGreeting, ZeromqGreetingTypedDict
from .zeromq_handshake import ZeromqHandshake, ZeromqHandshakeTypedDict
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Dict, Optional
from typing_extensions import NotRequired, TypedDict
@@ -23,3 +24,21 @@ class Zeromq(BaseModel):
subscription_data: Optional[str] = None
subscription_match: Optional[Dict[str, bool]] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["greeting", "handshake", "subscription_data", "subscription_match"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/zeromq_greeting.py b/src/censys_platform/models/zeromq_greeting.py
index 9ce3898..430679f 100644
--- a/src/censys_platform/models/zeromq_greeting.py
+++ b/src/censys_platform/models/zeromq_greeting.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -24,3 +25,21 @@ class ZeromqGreeting(BaseModel):
version_major: Optional[int] = None
version_minor: Optional[int] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(
+ ["as_server", "mechanism", "signature", "version_major", "version_minor"]
+ )
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/zeromq_handshake.py b/src/censys_platform/models/zeromq_handshake.py
index 2a2d6e7..0683354 100644
--- a/src/censys_platform/models/zeromq_handshake.py
+++ b/src/censys_platform/models/zeromq_handshake.py
@@ -1,7 +1,8 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
-from censys_platform.types import BaseModel
+from censys_platform.types import BaseModel, UNSET_SENTINEL
+from pydantic import model_serializer
from typing import Optional
from typing_extensions import NotRequired, TypedDict
@@ -18,3 +19,19 @@ class ZeromqHandshake(BaseModel):
ready: Optional[bool] = None
socket_type: Optional[str] = None
+
+ @model_serializer(mode="wrap")
+ def serialize_model(self, handler):
+ optional_fields = set(["raw", "ready", "socket_type"])
+ serialized = handler(self)
+ m = {}
+
+ for n, f in type(self).model_fields.items():
+ k = f.alias or n
+ val = serialized.get(k)
+
+ if val != UNSET_SENTINEL:
+ if val is not None or k not in optional_fields:
+ m[k] = val
+
+ return m
diff --git a/src/censys_platform/models/zlint.py b/src/censys_platform/models/zlint.py
index ed3e53c..04dcd89 100644
--- a/src/censys_platform/models/zlint.py
+++ b/src/censys_platform/models/zlint.py
@@ -54,38 +54,35 @@ class ZLint(BaseModel):
@model_serializer(mode="wrap")
def serialize_model(self, handler):
- optional_fields = [
- "errors_present",
- "failed_lints",
- "fatals_present",
- "notices_present",
- "timestamp",
- "version",
- "warnings_present",
- ]
- nullable_fields = ["failed_lints"]
- null_default_fields = []
-
+ optional_fields = set(
+ [
+ "errors_present",
+ "failed_lints",
+ "fatals_present",
+ "notices_present",
+ "timestamp",
+ "version",
+ "warnings_present",
+ ]
+ )
+ nullable_fields = set(["failed_lints"])
serialized = handler(self)
-
m = {}
for n, f in type(self).model_fields.items():
k = f.alias or n
val = serialized.get(k)
- serialized.pop(k, None)
-
- optional_nullable = k in optional_fields and k in nullable_fields
- is_set = (
- self.__pydantic_fields_set__.intersection({n})
- or k in null_default_fields
- ) # pylint: disable=no-member
-
- if val is not None and val != UNSET_SENTINEL:
- m[k] = val
- elif val != UNSET_SENTINEL and (
- not k in optional_fields or (optional_nullable and is_set)
- ):
- m[k] = val
+ is_nullable_and_explicitly_set = (
+ k in nullable_fields
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
+ )
+
+ if val != UNSET_SENTINEL:
+ if (
+ val is not None
+ or k not in optional_fields
+ or is_nullable_and_explicitly_set
+ ):
+ m[k] = val
return m
diff --git a/src/censys_platform/utils/__init__.py b/src/censys_platform/utils/__init__.py
index 56164cf..c906e1e 100644
--- a/src/censys_platform/utils/__init__.py
+++ b/src/censys_platform/utils/__init__.py
@@ -1,10 +1,22 @@
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
-from typing import TYPE_CHECKING
+from typing import TYPE_CHECKING, Callable, TypeVar
from importlib import import_module
+import asyncio
import builtins
import sys
+_T = TypeVar("_T")
+
+
+async def run_sync_in_thread(func: Callable[..., _T], *args) -> _T:
+ """Run a synchronous function in a thread pool to avoid blocking the event loop."""
+ if sys.version_info >= (3, 9):
+ return await asyncio.to_thread(func, *args)
+ loop = asyncio.get_event_loop()
+ return await loop.run_in_executor(None, func, *args)
+
+
if TYPE_CHECKING:
from .annotations import get_discriminator
from .datetimes import parse_datetime
@@ -41,7 +53,6 @@
validate_decimal,
validate_float,
validate_int,
- validate_open_enum,
)
from .url import generate_url, template_url, remove_suffix
from .values import (
@@ -102,7 +113,6 @@
"validate_const",
"validate_float",
"validate_int",
- "validate_open_enum",
"cast_partial",
]
@@ -155,7 +165,6 @@
"validate_const": ".serializers",
"validate_float": ".serializers",
"validate_int": ".serializers",
- "validate_open_enum": ".serializers",
"cast_partial": ".values",
}
diff --git a/src/censys_platform/utils/enums.py b/src/censys_platform/utils/enums.py
index c3bc13c..3324e1b 100644
--- a/src/censys_platform/utils/enums.py
+++ b/src/censys_platform/utils/enums.py
@@ -2,6 +2,10 @@
import enum
import sys
+from typing import Any
+
+from pydantic_core import core_schema
+
class OpenEnumMeta(enum.EnumMeta):
# The __call__ method `boundary` kwarg was added in 3.11 and must be present
@@ -72,3 +76,59 @@ def __call__(
)
except ValueError:
return value
+
+ def __new__(mcs, name, bases, namespace, **kwargs):
+ cls = super().__new__(mcs, name, bases, namespace, **kwargs)
+
+ # Add __get_pydantic_core_schema__ to make open enums work correctly
+ # in union discrimination. In strict mode (used by Pydantic for unions),
+ # only known enum values match. In lax mode, unknown values are accepted.
+ def __get_pydantic_core_schema__(
+ cls_inner: Any, _source_type: Any, _handler: Any
+ ) -> core_schema.CoreSchema:
+ # Create a validator that only accepts known enum values (for strict mode)
+ def validate_strict(v: Any) -> Any:
+ if isinstance(v, cls_inner):
+ return v
+ # Use the parent EnumMeta's __call__ which raises ValueError for unknown values
+ return enum.EnumMeta.__call__(cls_inner, v)
+
+ # Create a lax validator that accepts unknown values
+ def validate_lax(v: Any) -> Any:
+ if isinstance(v, cls_inner):
+ return v
+ try:
+ return enum.EnumMeta.__call__(cls_inner, v)
+ except ValueError:
+ # Return the raw value for unknown enum values
+ return v
+
+ # Determine the base type schema (str or int)
+ is_int_enum = False
+ for base in cls_inner.__mro__:
+ if base is int:
+ is_int_enum = True
+ break
+ if base is str:
+ break
+
+ base_schema = (
+ core_schema.int_schema()
+ if is_int_enum
+ else core_schema.str_schema()
+ )
+
+ # Use lax_or_strict_schema:
+ # - strict mode: only known enum values match (raises ValueError for unknown)
+ # - lax mode: accept any value, return enum member or raw value
+ return core_schema.lax_or_strict_schema(
+ lax_schema=core_schema.chain_schema(
+ [base_schema, core_schema.no_info_plain_validator_function(validate_lax)]
+ ),
+ strict_schema=core_schema.chain_schema(
+ [base_schema, core_schema.no_info_plain_validator_function(validate_strict)]
+ ),
+ )
+
+ setattr(cls, "__get_pydantic_core_schema__", classmethod(__get_pydantic_core_schema__))
+ return cls
diff --git a/src/censys_platform/utils/requestbodies.py b/src/censys_platform/utils/requestbodies.py
index d5240dd..1de32b6 100644
--- a/src/censys_platform/utils/requestbodies.py
+++ b/src/censys_platform/utils/requestbodies.py
@@ -44,15 +44,15 @@ def serialize_request_body(
serialized_request_body = SerializedRequestBody(media_type)
- if re.match(r"(application|text)\/.*?\+*json.*", media_type) is not None:
+ if re.match(r"^(application|text)\/([^+]+\+)*json.*", media_type) is not None:
serialized_request_body.content = marshal_json(request_body, request_body_type)
- elif re.match(r"multipart\/.*", media_type) is not None:
+ elif re.match(r"^multipart\/.*", media_type) is not None:
(
serialized_request_body.media_type,
serialized_request_body.data,
serialized_request_body.files,
) = serialize_multipart_form(media_type, request_body)
- elif re.match(r"application\/x-www-form-urlencoded.*", media_type) is not None:
+ elif re.match(r"^application\/x-www-form-urlencoded.*", media_type) is not None:
serialized_request_body.data = serialize_form_data(request_body)
elif isinstance(request_body, (bytes, bytearray, io.BytesIO, io.BufferedReader)):
serialized_request_body.content = request_body
diff --git a/src/censys_platform/utils/serializers.py b/src/censys_platform/utils/serializers.py
index 378a14c..14321eb 100644
--- a/src/censys_platform/utils/serializers.py
+++ b/src/censys_platform/utils/serializers.py
@@ -102,26 +102,6 @@ def validate_int(b):
return int(b)
-def validate_open_enum(is_int: bool):
- def validate(e):
- if e is None:
- return None
-
- if isinstance(e, Unset):
- return e
-
- if is_int:
- if not isinstance(e, int):
- raise ValueError("Expected int")
- else:
- if not isinstance(e, str):
- raise ValueError("Expected string")
-
- return e
-
- return validate
-
-
def validate_const(v):
def validate(c):
# Optional[T] is a Union[T, None]