diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 3949a0bb..f04d4aeb 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: ab657d60-207e-43a4-8cc8-692a672950ed management: - docChecksum: 2dbdfb7ae284b953d36e3c6ef1ea20bd + docChecksum: 66d16def8e7c31756be5c5d40cbfd70e docVersion: 0.0.1 - speakeasyVersion: 1.788.1 - generationVersion: 2.915.1 - releaseVersion: 0.37.1 - configChecksum: f62f905fc023ea64f30c8a3de2731901 + speakeasyVersion: 1.789.1 + generationVersion: 2.916.4 + releaseVersion: 0.37.2 + configChecksum: ef3bfaf9e5798ca72ede9b2d66dd6361 repoURL: https://github.com/dubinc/dub-python.git installationURL: https://github.com/dubinc/dub-python.git published: true persistentEdits: - generation_id: 8e5fb9f9-872d-499a-b121-d79ec56e98dd - pristine_commit_hash: 9e906bdee1d530c6a3126efaaff7caa3f9c79839 - pristine_tree_hash: 65afc5cadb1f563cd1c5c43d3d4cdb6d1100f89b + generation_id: 66c2bdb2-507b-4562-b80e-c25fe441fb66 + pristine_commit_hash: d217d83ae0b16ab67285e1c96e40f96b42be1575 + pristine_tree_hash: 74eb271d5ba7197c770038931504ac110254f055 features: python: additionalDependencies: 1.1.0 @@ -170,8 +170,8 @@ trackedFiles: pristine_git_object: ecb29dd1594f184f404bc8fe33b44bf83302b076 docs/models/components/commissioncreatedeventstatus.md: id: 04f0294fc936 - last_write_checksum: sha1:ad742aaa630b8d9bdcba39bbb76ee9ed1c8f25be - pristine_git_object: aae5d3676b6c844331f4cbfeaee6a92a2dbe1ae2 + last_write_checksum: sha1:bbf039ffc2c7d3af8a5a09b9b5fbc8959b04bad9 + pristine_git_object: 702b43f253af367861be1b9ba42acd4500c16c99 docs/models/components/commissioncreatedeventtype.md: id: ddc7eee92ee4 last_write_checksum: sha1:a2b60ff8ee7e5504e56d5e104c15ed0480275f1a @@ -190,8 +190,8 @@ trackedFiles: pristine_git_object: b21cd4146cfca6022dbe79c19f0d28419b89c681 docs/models/components/data.md: id: 3f89c52c2b17 - last_write_checksum: sha1:d1581a95067bfd8986109aac929c6a43b7b7ab23 - pristine_git_object: c920a8b7510bd5c9e94db8535f6780272cc11fe0 + last_write_checksum: sha1:d6af35be5a5de6ccabf2d00f464c8babf0714269 + pristine_git_object: d170e9761feac3abf48d0bc9817302551016bd97 docs/models/components/defaultpayoutmethod.md: id: 1dcb6d396efc last_write_checksum: sha1:dfebdb2b7f0e9f1661f3ff84fffbd227b5953c2c @@ -266,16 +266,16 @@ trackedFiles: pristine_git_object: c00fd77470f5c2537bd9141b9adc9603aef4fb12 docs/models/components/leadcreatedeventlink.md: id: d1fdc73e508c - last_write_checksum: sha1:f8dc7740c705362ab9fc6d1b2210af9ab0ef0aaa - pristine_git_object: 7a33fb88d14ccea06e8fcd21473676e299b00cc3 + last_write_checksum: sha1:5299ccd5c67d92ce43ccf51b4caa6b49b393429f + pristine_git_object: 427968a9821342fb8251571f7d5f653239ac15fb docs/models/components/leadcreatedeventtestvariants.md: id: e622aaafbdb2 last_write_checksum: sha1:c9d089df6ede382873f0aa22f99e891c04505899 pristine_git_object: 8656ab10e2cd8c41389faaab6d6d5f811c9a831e docs/models/components/link.md: id: 9e6e1afe0cdc - last_write_checksum: sha1:bb920ecf9fbf1df732407a44d70c463c1c2f2bfe - pristine_git_object: c5b6966933f2418fe528b9eeb7c6332e8fd2398c + last_write_checksum: sha1:d300abd0591598c4e28537c6ea8b6209b00db235 + pristine_git_object: 32b1f8df47997602a616d278dc2f41217eed7506 docs/models/components/linkclickedevent.md: id: 767542b3e0d4 last_write_checksum: sha1:865a60284c908f4bd0e3686188fae9f831a367a9 @@ -454,8 +454,8 @@ trackedFiles: pristine_git_object: e6c76a83af2dd8cba960af2c2676e0ecaf154cf2 docs/models/components/salecreatedeventlink.md: id: 065e0e115654 - last_write_checksum: sha1:4b305c73e0a03c2cb4e82ac6de6962f605ced7e1 - pristine_git_object: a85eca8a6ec3b1e516753623e60bc9898f1fa47e + last_write_checksum: sha1:53f940b78a4f0fea0441224231468ff0aff6f8aa + pristine_git_object: 42f1a367227b23f7cd9d77506d98c10546533753 docs/models/components/salecreatedeventpartner.md: id: 462199a2a5e6 last_write_checksum: sha1:90635ab7bc0157f43bf1165a55fc7fdfabbfaa71 @@ -690,8 +690,8 @@ trackedFiles: pristine_git_object: a45d6ad28e42aa2c1c0d3c6c709ff657ef112bca docs/models/operations/bulkupdatecommissionscommissionsstatus.md: id: 58b839b9d013 - last_write_checksum: sha1:1e591002195b6acbc69f42258b1d868a1bf649cb - pristine_git_object: f511f39aa61313e65596114c8eccf531b91a047d + last_write_checksum: sha1:30a4a2c5828d0ebc62980a0775692020d8923761 + pristine_git_object: 1a8331ca565b45b6fb358a2a545f98f78d5c1783 docs/models/operations/bulkupdatecommissionsrequestbody.md: id: cb7fd7fa5416 last_write_checksum: sha1:f9e0e91c7ad028e40bde42b4cb2b5e5b8801a57f @@ -1258,8 +1258,8 @@ trackedFiles: pristine_git_object: d1ea6dea561a82a6257b11cc0b6794e5b8f139e0 docs/models/operations/listcommissionsstatus.md: id: 5204c1cc3f78 - last_write_checksum: sha1:84e385a88b698a50c3315549a888b2262e198054 - pristine_git_object: 4f84dedfda61d55a1cac2f4437eac15e1b8ada47 + last_write_checksum: sha1:908f73f55ce10a17d4e8944ad26ee46693295b9f + pristine_git_object: 9a31a6b4be8bf726e170b24809725d313015e5b9 docs/models/operations/listcommissionstype.md: id: a21b21168f76 last_write_checksum: sha1:894b2599b60d33b1f50ac304fd0d4fd544a931e8 @@ -1302,16 +1302,16 @@ trackedFiles: pristine_git_object: ffa3489052aef7dd2c4386803374cca24287b2de docs/models/operations/listeventsresponsebodyeventslink.md: id: d544f505505c - last_write_checksum: sha1:1c85ab8f2ab45b5e2228c6756d674bcf304125bb - pristine_git_object: 8479d139035b488f878bf6e400e850c7e6710d15 + last_write_checksum: sha1:05fdc4858a0f8dba03a177513188a752de05ea9e + pristine_git_object: cc369be3598459aeb4642b71cb7d375dbc3fb437 docs/models/operations/listeventsresponsebodyeventstestvariants.md: id: ac50617ce887 last_write_checksum: sha1:f5726b6a7f440e32817549afc4e9aec0dc1e2b90 pristine_git_object: 78f5f5589119cb09bd9d4fdd61cc9e3845862feb docs/models/operations/listeventsresponsebodylink.md: id: 5e90a6cbcc3d - last_write_checksum: sha1:5f4cb61a754f3ed0f65173de4c88630473028dd5 - pristine_git_object: 3332ffbb54613d338cd1f774e3b87d8a9e199145 + last_write_checksum: sha1:129adf0d4281685fbcf1286aafb1d226befe8601 + pristine_git_object: 24c3d593722a6ab63316ba3bcd9845a74a99148e docs/models/operations/listeventsresponsebodytestvariants.md: id: 7d3c1dde9c57 last_write_checksum: sha1:e9701d0dd4e9278f3491b5817031117135ddacb3 @@ -1382,8 +1382,8 @@ trackedFiles: pristine_git_object: 2cec0408eeb83ac81325aff77f4830aadb55d12e docs/models/operations/listpartnersrequest.md: id: 349c06dcc3d5 - last_write_checksum: sha1:5d28be7e3cc0191e9dfb645857fe6addc1853871 - pristine_git_object: 8d55395af69519521075a0dc3ad83153c2a8131d + last_write_checksum: sha1:fdc20aadb1c0dd4b5ecd7b4ae683ab6b7e76cbfb + pristine_git_object: ebe2c1200c4c590e82cfebc080c6f82342cbfd2c docs/models/operations/listpartnersresponsebody.md: id: e60469e13fe9 last_write_checksum: sha1:46debe516d41d9ac1f81b1f1cf06545342e1e07b @@ -1490,8 +1490,8 @@ trackedFiles: pristine_git_object: 5fa53438f1cd7cc2447c6fa76d0d7ec949fe8cbc docs/models/operations/queryparamstatus.md: id: cf4731785401 - last_write_checksum: sha1:7f0bdcadbd794c7933bdacf0044583c9a830cae2 - pristine_git_object: c69b0b75c68c055bbda23b08c4561e50e5261e6e + last_write_checksum: sha1:d065422177ab9c15ae84007497f9baf63697158a + pristine_git_object: 3ed07a47e99ddbda071c6e781218a6058cec758c docs/models/operations/queryparamtagids.md: id: 6872958eb323 last_write_checksum: sha1:7cfeeedc790c8e5ccd7c64fedeca103bfbaec7d1 @@ -1598,8 +1598,8 @@ trackedFiles: pristine_git_object: b77faf95c3784cc483b1c52c8c958dd22cff939c docs/models/operations/responsebodylink.md: id: d15f831813d7 - last_write_checksum: sha1:9ca6fe8ad64a38de891dd400d4d68dd3cb19fbfa - pristine_git_object: b9361a6c0b688e8d30cc82bb27273c1692175322 + last_write_checksum: sha1:a092bea8aee72d141309b01f290c23a410c20cb6 + pristine_git_object: af9c47354e9aa96738e09e9f972fbce4ae17d938 docs/models/operations/responsebodypaymentprocessor.md: id: b6fe3aac607d last_write_checksum: sha1:2cb59373f164499e0e1763f9d73cd7347a4781c4 @@ -1750,8 +1750,8 @@ trackedFiles: pristine_git_object: 03a177ccc3d7300555b0a4ff3eddc2ba854a7c4b docs/models/operations/updatecommissionstatus.md: id: 89160707cc65 - last_write_checksum: sha1:01b5eb875902eb54771222d26755fddd26e5269b - pristine_git_object: b8b2ab4c05668a1bdc7db7d4d85f40108953aa29 + last_write_checksum: sha1:3fb768f721974165ac4d95b3f0b232dcebb351b3 + pristine_git_object: 9d9caed0e401d30710ec5535d0ada86644fc975a docs/models/operations/updatecommissiontype.md: id: 62a460f0fff7 last_write_checksum: sha1:b585402e7efd10f63c1280018a6750939b51689f @@ -1954,8 +1954,8 @@ trackedFiles: pristine_git_object: 0694fc0429fe2e082727e6847677957b9027e81e pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:33cb3c06e06bb4fd36b25bd84e7db81992fb5dc2 - pristine_git_object: c720c3654a148db72abcc78b4a6a51e581bd1ae7 + last_write_checksum: sha1:4e62dec3d93e7544a5d4954578ab74681521751a + pristine_git_object: bb2dd4c9e81f56ef1dea8ab4c79f48bf7b3d5bfa scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:98ab0adc36f1ccd31422544b0dd94e008aa47804 @@ -1982,8 +1982,8 @@ trackedFiles: pristine_git_object: ea5bc2d7f189075f453b6e70c60f2eaa418ff18e src/dub/_version.py: id: 2e88e1f01047 - last_write_checksum: sha1:07cfbf134935d3e5d53a5b557bff1e27af3d7459 - pristine_git_object: 212d9f9c1524ffaec8db5e67729a2153d6edd032 + last_write_checksum: sha1:bb86e49d01017483737a591590c44ae95cb3d6cd + pristine_git_object: 318b3248addd8a291b77911f9cc6b64713ad62d6 src/dub/analytics.py: id: b7a4fa47e744 last_write_checksum: sha1:483eac9a8044989991e4e6edf968ac9e8e0998cc @@ -2094,8 +2094,8 @@ trackedFiles: pristine_git_object: aa84354d71f3872288504601aadca30702e0d441 src/dub/models/components/commissioncreatedevent.py: id: b2f4948f1e5a - last_write_checksum: sha1:a316ab728b5b37b378b1c545c80c32992f00d4be - pristine_git_object: fa78e6e1756e7cb91a4de8cfb803c244616c95ae + last_write_checksum: sha1:536cac266b8947591a2acdbeb00b39dd57fb34ea + pristine_git_object: ee411d89a6e72918846ce2f524811d3ad480f4b3 src/dub/models/components/domainschema.py: id: b6034ff0c3c8 last_write_checksum: sha1:11548fc2e146c8c6f3380d190628ed468cb5bd61 @@ -2106,12 +2106,12 @@ trackedFiles: pristine_git_object: 158c38f3552545e24a802a31e5be8e09095c1cd7 src/dub/models/components/leadcreatedevent.py: id: 4a52002988a6 - last_write_checksum: sha1:21624eb6080779ac98991f1911e4c211f76ab17a - pristine_git_object: 3ea2e5d6a2739b7f08ba1d6bc52b30642d48c28a + last_write_checksum: sha1:a27aa3b099211baf3e4fec72e016306ff6c180a4 + pristine_git_object: ba8a5887d8324766bde573fbb479fd0dfd6bda27 src/dub/models/components/linkclickedevent.py: id: 99d302fd7046 - last_write_checksum: sha1:b74813b2c5a61276dcdc9f49bc53d6443c6e41dd - pristine_git_object: 6f9487dbb8e8776070aeab1cecb5e5c11e7f9b9b + last_write_checksum: sha1:230a8f711af72c82fd69e5ab87d032271bfd4270 + pristine_git_object: 7387efa4e9fa636e059f660c11f198f6d8e4c233 src/dub/models/components/linkerrorschema.py: id: 1b6e28417f64 last_write_checksum: sha1:3aab0fc168159e4e5cb67a23510cb67fa4804047 @@ -2130,8 +2130,8 @@ trackedFiles: pristine_git_object: 20e3f40a4aa7b1a84e5798dc3dc453cc085ee70a src/dub/models/components/linkwebhookevent.py: id: c3defe8645fa - last_write_checksum: sha1:282636add626153be3e64e64dc44555390303e16 - pristine_git_object: 2a2c067191ed6b6357d4c475003e38dc380e14b4 + last_write_checksum: sha1:31ea66f93106833727f1ea340476404b2c06dbe6 + pristine_git_object: 4bdc00231eb332fba4b8c84e8cbe8cc6dc7b773f src/dub/models/components/partneranalyticscount.py: id: 36ce3721a8b0 last_write_checksum: sha1:8ac790bb4bd9770e3664aa3ee98da5bddaa5ef71 @@ -2154,8 +2154,8 @@ trackedFiles: pristine_git_object: dbf5e3b8722e8eaca19ee6caf3c1e55e591b6fbe src/dub/models/components/salecreatedevent.py: id: 216d1319967a - last_write_checksum: sha1:5222cdc38f8d227ce6c308a35b5bfb015f808895 - pristine_git_object: e03ef12e8db37957fdeeb51828638474ae0a824b + last_write_checksum: sha1:9ae756f26362f82851baaa16e14defb7fd02b5c0 + pristine_git_object: d0f623c933a920a56e24726b327440bd8058e2b6 src/dub/models/components/security.py: id: 4db1b42b747c last_write_checksum: sha1:63fc7ade491e00d45ed5bf960ddaf441cbd4a836 @@ -2246,8 +2246,8 @@ trackedFiles: pristine_git_object: 6c72d6311e7721dea31d594a6e84ae7b6853c18d src/dub/models/operations/bulkupdatecommissions.py: id: f5196005fc88 - last_write_checksum: sha1:dca8d59e6e48d2db33266604d99799c74d140871 - pristine_git_object: d315ba0b5387bffab061250f289dfde3b4ea5c62 + last_write_checksum: sha1:167ba7c0dd0f47436f41d9419e68183c1960e63c + pristine_git_object: cd0d2e0452c159d12f9e901269ef2fb9279a3791 src/dub/models/operations/bulkupdatelinks.py: id: 1b783486b117 last_write_checksum: sha1:06cf8c69a1d57058f07db101135e22f5b75467ad @@ -2346,16 +2346,16 @@ trackedFiles: pristine_git_object: 542271b059e73aa560a573c34f8dcc3ec494acc1 src/dub/models/operations/listcommissions.py: id: 992f4436b681 - last_write_checksum: sha1:4bb170f7ffbc172f39164374272ad9d411c34196 - pristine_git_object: e3c5272bdc4e1d3a14c451723341bb33018cf6da + last_write_checksum: sha1:5aea885c3ecc5d695464af19c4a4d8e0192549b5 + pristine_git_object: 32e21598e91ad648288fd70a8253d1982fc573af src/dub/models/operations/listdomains.py: id: d32b3e207565 last_write_checksum: sha1:d51ab77dc9cf5174a7c002bd7478b800f92cbf06 pristine_git_object: 2b1047289ac8171c7cbcbfe72a9a2620424d5d6d src/dub/models/operations/listevents.py: id: e65c95de179b - last_write_checksum: sha1:8b15910fb286ab5b0b6f371f99be220193093383 - pristine_git_object: 4e15393447d12aa32df641e1f87fc0152d1c2cc0 + last_write_checksum: sha1:676ddc29ad2f7025d188ff11ffb3a59040d7b285 + pristine_git_object: 3e578d865c40c9203b21f4ce92c788b8b13cbb62 src/dub/models/operations/listfolders.py: id: 42dbcd5bbad8 last_write_checksum: sha1:354dcb51fcbf90e8e41a07d3e2abf5ecf58349cb @@ -2366,8 +2366,8 @@ trackedFiles: pristine_git_object: 209fe43782da49da46e69934bc3176583a548498 src/dub/models/operations/listpartners.py: id: f5459d336462 - last_write_checksum: sha1:979943b8cff7c9b61940545e8de1897749c3a23d - pristine_git_object: a58c4f977c57ee2a3a4a9cbd2cb5e10483af8c2c + last_write_checksum: sha1:b433294deb7c956d3b9bce226d658df0596f3d29 + pristine_git_object: 82fa418844b621d6507d0c6f050ca8968e2d99d4 src/dub/models/operations/listpayouts.py: id: d5cd6d0e4a39 last_write_checksum: sha1:5e8d199b98e026f9965b2afaa4591a663b343dde @@ -2406,8 +2406,8 @@ trackedFiles: pristine_git_object: acc1f10741edea231a3a31f38004de2798733c7f src/dub/models/operations/updatecommission.py: id: 5efb92f68d93 - last_write_checksum: sha1:b1765ac757a747afbcf55460d64bbaaf6a8f2490 - pristine_git_object: 745888a32ab9b530352097208d758646b86c3dbf + last_write_checksum: sha1:d5feff9fd8efa27f508bac7bc8b1bc9c0d53d25e + pristine_git_object: 8b613f149b99b25827ca4544eec38f25fabe107b src/dub/models/operations/updatecustomer.py: id: 5487589e4e19 last_write_checksum: sha1:abfcc3c5706856a5c4dc7627f43569e61669bf26 @@ -2486,16 +2486,16 @@ trackedFiles: pristine_git_object: a9a640a1a7048736383f96c67c6290c86bf536ee src/dub/utils/__init__.py: id: 697102dbf447 - last_write_checksum: sha1:1970816f2234ecb8785798240b0edced961de971 - pristine_git_object: 0498cb8dabf249b39609f81fb10cddc30f1b78b5 + last_write_checksum: sha1:53c9544397bbc534c45a228feac3cdb2e9017fe6 + pristine_git_object: 7af3b82cf95edc2901bc85b2624c54f39b7f9724 src/dub/utils/annotations.py: id: ab0a38758bc4 last_write_checksum: sha1:a4824ad65f730303e4e1e3ec1febf87b4eb46dbc pristine_git_object: 12e0aa4f1151bb52474cc02e88397329b90703f6 src/dub/utils/datetimes.py: id: d9b823b8d64d - last_write_checksum: sha1:c721e4123000e7dc61ec52b28a739439d9e17341 - pristine_git_object: a6c52cd61bbe2d459046c940ce5e8c469f2f0664 + last_write_checksum: sha1:fa47d54c549ff9b95496ce91930fadfb04a36be9 + pristine_git_object: adad24762cf452d137abe94fda0fd26224cef593 src/dub/utils/dynamic_imports.py: id: fdd579e44ae0 last_write_checksum: sha1:a1940c63feb8eddfd8026de53384baf5056d5dcc @@ -4166,7 +4166,7 @@ examples: application/json: {"error": {"code": "internal_server_error", "message": "The requested resource was not found.", "doc_url": "https://dub.co/docs/api-reference/errors#internal-server_error"}} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Python SDK Changes:\n* `dub.track.lead()`: \n * `request.event_quantity` **Changed** (Breaking ⚠️)\n" +releaseNotes: "## Python SDK Changes:\n* `dub.events.list()`: `response.[]` **Changed** (Breaking ⚠️)\n* `dub.commissions.list()`: \n * `request.status` **Changed**\n * `response.[].status.enum(hold)` **Added** (Breaking ⚠️)\n* `dub.commissions.update()`: `response.status.enum(hold)` **Added** (Breaking ⚠️)\n* `dub.commissions.update_many()`: `response.[].status.enum(hold)` **Added** (Breaking ⚠️)\n" generatedFiles: - .gitattributes - .vscode/settings.json diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 391a1a1d..d0540fdc 100755 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false python: - version: 0.37.1 + version: 0.37.2 additionalDependencies: dev: {} main: {} @@ -46,6 +46,7 @@ python: constFieldCasing: upper defaultErrorName: SDKError description: Python Client SDK Generated by Speakeasy + durationFormat: false enableCustomCodeRegions: false enumFormat: enum errorSchemaValidation: true @@ -94,3 +95,4 @@ python: sseFlatResponse: false templateVersion: v2 useAsyncHooks: false + uuidFormat: false diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index c87ae7d3..513fa146 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.788.1 +speakeasyVersion: 1.789.1 sources: dub: sourceNamespace: dub - sourceRevisionDigest: sha256:aa8a69666b758b046f458555621251fb4107f0f7d41d46883b213fbccc684613 - sourceBlobDigest: sha256:1db2f6a1f12ab282952cc9e95372144ad368c786d836cfa18437492a95b8213c + sourceRevisionDigest: sha256:bf8404dc073f7481767f611426d716d6c376a285db692b906e541c832c8e695f + sourceBlobDigest: sha256:fd746515355ebb5577ab077c898e91c6f692584acf1b9205c97955a09d5811a4 tags: - latest - 0.0.1 @@ -11,10 +11,10 @@ targets: my-first-target: source: dub sourceNamespace: dub - sourceRevisionDigest: sha256:aa8a69666b758b046f458555621251fb4107f0f7d41d46883b213fbccc684613 - sourceBlobDigest: sha256:1db2f6a1f12ab282952cc9e95372144ad368c786d836cfa18437492a95b8213c + sourceRevisionDigest: sha256:bf8404dc073f7481767f611426d716d6c376a285db692b906e541c832c8e695f + sourceBlobDigest: sha256:fd746515355ebb5577ab077c898e91c6f692584acf1b9205c97955a09d5811a4 codeSamplesNamespace: code-samples-python-my-first-target - codeSamplesRevisionDigest: sha256:6f77db4e8a2163a9becfce617ae93e9d2e18f1b94dd68d2236b847d85a39e8f7 + codeSamplesRevisionDigest: sha256:d93481efb757d07f5a52666da2d21f31feeb64c3d6261da489aa440b2c8a0e73 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/RELEASES.md b/RELEASES.md index 621370b4..af939372 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1566,4 +1566,14 @@ Based on: ### Generated - [python v0.37.1] . ### Releases -- [PyPI v0.37.1] https://pypi.org/project/dub/0.37.1 - . \ No newline at end of file +- [PyPI v0.37.1] https://pypi.org/project/dub/0.37.1 - . + +## 2026-07-10 03:46:07 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.789.1 (2.916.4) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.37.2] . +### Releases +- [PyPI v0.37.2] https://pypi.org/project/dub/0.37.2 - . \ No newline at end of file diff --git a/docs/models/components/commissioncreatedeventstatus.md b/docs/models/components/commissioncreatedeventstatus.md index aae5d367..702b43f2 100644 --- a/docs/models/components/commissioncreatedeventstatus.md +++ b/docs/models/components/commissioncreatedeventstatus.md @@ -19,4 +19,5 @@ value = CommissionCreatedEventStatus.PENDING | `REFUNDED` | refunded | | `DUPLICATE` | duplicate | | `FRAUD` | fraud | -| `CANCELED` | canceled | \ No newline at end of file +| `CANCELED` | canceled | +| `HOLD` | hold | \ No newline at end of file diff --git a/docs/models/components/data.md b/docs/models/components/data.md index c920a8b7..d170e976 100644 --- a/docs/models/components/data.md +++ b/docs/models/components/data.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[components.LinkWebhookEventTestVariants](../../models/components/linkwebhookeventtestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/components/leadcreatedeventlink.md b/docs/models/components/leadcreatedeventlink.md index 7a33fb88..427968a9 100644 --- a/docs/models/components/leadcreatedeventlink.md +++ b/docs/models/components/leadcreatedeventlink.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[components.LeadCreatedEventTestVariants](../../models/components/leadcreatedeventtestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/components/link.md b/docs/models/components/link.md index c5b69669..32b1f8df 100644 --- a/docs/models/components/link.md +++ b/docs/models/components/link.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[components.LinkClickedEventTestVariants](../../models/components/linkclickedeventtestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/components/salecreatedeventlink.md b/docs/models/components/salecreatedeventlink.md index a85eca8a..42f1a367 100644 --- a/docs/models/components/salecreatedeventlink.md +++ b/docs/models/components/salecreatedeventlink.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[components.SaleCreatedEventTestVariants](../../models/components/salecreatedeventtestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/operations/bulkupdatecommissionscommissionsstatus.md b/docs/models/operations/bulkupdatecommissionscommissionsstatus.md index f511f39a..1a8331ca 100644 --- a/docs/models/operations/bulkupdatecommissionscommissionsstatus.md +++ b/docs/models/operations/bulkupdatecommissionscommissionsstatus.md @@ -19,4 +19,5 @@ value = BulkUpdateCommissionsCommissionsStatus.PENDING | `REFUNDED` | refunded | | `DUPLICATE` | duplicate | | `FRAUD` | fraud | -| `CANCELED` | canceled | \ No newline at end of file +| `CANCELED` | canceled | +| `HOLD` | hold | \ No newline at end of file diff --git a/docs/models/operations/listcommissionsstatus.md b/docs/models/operations/listcommissionsstatus.md index 4f84dedf..9a31a6b4 100644 --- a/docs/models/operations/listcommissionsstatus.md +++ b/docs/models/operations/listcommissionsstatus.md @@ -19,4 +19,5 @@ value = ListCommissionsStatus.PENDING | `REFUNDED` | refunded | | `DUPLICATE` | duplicate | | `FRAUD` | fraud | -| `CANCELED` | canceled | \ No newline at end of file +| `CANCELED` | canceled | +| `HOLD` | hold | \ No newline at end of file diff --git a/docs/models/operations/listeventsresponsebodyeventslink.md b/docs/models/operations/listeventsresponsebodyeventslink.md index 8479d139..cc369be3 100644 --- a/docs/models/operations/listeventsresponsebodyeventslink.md +++ b/docs/models/operations/listeventsresponsebodyeventslink.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[operations.ResponseBodyTestVariants](../../models/operations/responsebodytestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/operations/listeventsresponsebodylink.md b/docs/models/operations/listeventsresponsebodylink.md index 3332ffbb..24c3d593 100644 --- a/docs/models/operations/listeventsresponsebodylink.md +++ b/docs/models/operations/listeventsresponsebodylink.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[operations.ListEventsResponseBodyEventsTestVariants](../../models/operations/listeventsresponsebodyeventstestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/operations/listpartnersrequest.md b/docs/models/operations/listpartnersrequest.md index 8d55395a..ebe2c120 100644 --- a/docs/models/operations/listpartnersrequest.md +++ b/docs/models/operations/listpartnersrequest.md @@ -12,6 +12,6 @@ | `sort_order` | [Optional[operations.ListPartnersQueryParamSortOrder]](../../models/operations/listpartnersqueryparamsortorder.md) | :heavy_minus_sign: | The sort order. The default is `desc`. | desc | | `email` | *Optional[str]* | :heavy_minus_sign: | Filter the partner list based on the partner's `email`. The value must be a string. Takes precedence over `search`. | panic@thedis.co | | `tenant_id` | *Optional[str]* | :heavy_minus_sign: | Filter the partner list based on the partner's `tenantId`. The value must be a string. Takes precedence over `email` and `search`. | 1K0NM7HCN944PEMZ3CQPH43H8 | -| `search` | *Optional[str]* | :heavy_minus_sign: | A search query to filter partners by ID, name, email, or link. | john | +| `search` | *Optional[str]* | :heavy_minus_sign: | A search query to filter partners by ID, name, email, or company name. | john | | `page` | *Optional[float]* | :heavy_minus_sign: | The page number for pagination. | 1 | | `page_size` | *Optional[float]* | :heavy_minus_sign: | The number of items per page. | 50 | \ No newline at end of file diff --git a/docs/models/operations/queryparamstatus.md b/docs/models/operations/queryparamstatus.md index c69b0b75..3ed07a47 100644 --- a/docs/models/operations/queryparamstatus.md +++ b/docs/models/operations/queryparamstatus.md @@ -21,4 +21,5 @@ value = QueryParamStatus.PENDING | `REFUNDED` | refunded | | `DUPLICATE` | duplicate | | `FRAUD` | fraud | -| `CANCELED` | canceled | \ No newline at end of file +| `CANCELED` | canceled | +| `HOLD` | hold | \ No newline at end of file diff --git a/docs/models/operations/responsebodylink.md b/docs/models/operations/responsebodylink.md index b9361a6c..af9c4735 100644 --- a/docs/models/operations/responsebodylink.md +++ b/docs/models/operations/responsebodylink.md @@ -15,9 +15,9 @@ | `program_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the program the short link is associated with. | | | `partner_id` | *Nullable[str]* | :heavy_check_mark: | The ID of the partner the short link is associated with. | | | `archived` | *bool* | :heavy_check_mark: | N/A | | -| `expires_at` | *str* | :heavy_check_mark: | N/A | | +| `expires_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `expired_url` | *Nullable[str]* | :heavy_check_mark: | N/A | | -| `disabled_at` | *str* | :heavy_check_mark: | N/A | | +| `disabled_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `password` | *Nullable[str]* | :heavy_check_mark: | The password required to access the destination URL of the short link. | | | `proxy` | *bool* | :heavy_check_mark: | N/A | | | `title` | *Nullable[str]* | :heavy_check_mark: | The title of the short link. Will be used for Custom Link Previews if `proxy` is true. | | @@ -41,8 +41,8 @@ | `utm_term` | *Nullable[str]* | :heavy_check_mark: | The UTM term of the short link. | | | `utm_content` | *Nullable[str]* | :heavy_check_mark: | The UTM content of the short link. | | | `test_variants` | List[[operations.ListEventsResponseBodyTestVariants](../../models/operations/listeventsresponsebodytestvariants.md)] | :heavy_minus_sign: | An array of A/B test URLs and the percentage of traffic to send to each URL. | [
{
"url": "https://example.com/variant-1",
"percentage": 50
},
{
"url": "https://example.com/variant-2",
"percentage": 50
}
] | -| `test_started_at` | *str* | :heavy_check_mark: | N/A | | -| `test_completed_at` | *str* | :heavy_check_mark: | N/A | | +| `test_started_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | +| `test_completed_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `user_id` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `workspace_id` | *str* | :heavy_check_mark: | The workspace ID of the short link. | | | `clicks` | *Optional[float]* | :heavy_minus_sign: | The number of clicks on the short link. | | @@ -50,7 +50,7 @@ | `conversions` | *Optional[float]* | :heavy_minus_sign: | The number of leads that converted to paying customers. | | | `sales` | *Optional[float]* | :heavy_minus_sign: | The total number of sales (includes recurring sales) generated by the short link. | | | `sale_amount` | *Optional[float]* | :heavy_minus_sign: | The total dollar value of sales (in cents) generated by the short link. | | -| `last_clicked` | *str* | :heavy_check_mark: | N/A | | +| `last_clicked` | *Nullable[str]* | :heavy_check_mark: | N/A | | | `created_at` | *str* | :heavy_check_mark: | N/A | | | `updated_at` | *str* | :heavy_check_mark: | N/A | | | ~~`tag_id`~~ | *Nullable[str]* | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link. | | diff --git a/docs/models/operations/updatecommissionstatus.md b/docs/models/operations/updatecommissionstatus.md index b8b2ab4c..9d9caed0 100644 --- a/docs/models/operations/updatecommissionstatus.md +++ b/docs/models/operations/updatecommissionstatus.md @@ -19,4 +19,5 @@ value = UpdateCommissionStatus.PENDING | `REFUNDED` | refunded | | `DUPLICATE` | duplicate | | `FRAUD` | fraud | -| `CANCELED` | canceled | \ No newline at end of file +| `CANCELED` | canceled | +| `HOLD` | hold | \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index c720c365..bb2dd4c9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "dub" -version = "0.37.1" +version = "0.37.2" description = "Python Client SDK Generated by Speakeasy" authors = [{ name = "Speakeasy" },] readme = "README-PYPI.md" diff --git a/src/dub/_version.py b/src/dub/_version.py index 212d9f9c..318b3248 100644 --- a/src/dub/_version.py +++ b/src/dub/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "dub" -__version__: str = "0.37.1" +__version__: str = "0.37.2" __openapi_doc_version__: str = "0.0.1" -__gen_version__: str = "2.915.1" -__user_agent__: str = "speakeasy-sdk/python 0.37.1 2.915.1 0.0.1 dub" +__gen_version__: str = "2.916.4" +__user_agent__: str = "speakeasy-sdk/python 0.37.2 2.916.4 0.0.1 dub" try: if __package__ is not None: diff --git a/src/dub/models/components/commissioncreatedevent.py b/src/dub/models/components/commissioncreatedevent.py index fa78e6e1..ee411d89 100644 --- a/src/dub/models/components/commissioncreatedevent.py +++ b/src/dub/models/components/commissioncreatedevent.py @@ -29,6 +29,7 @@ class CommissionCreatedEventStatus(str, Enum): DUPLICATE = "duplicate" FRAUD = "fraud" CANCELED = "canceled" + HOLD = "hold" class CommissionCreatedEventPartnerTypedDict(TypedDict): diff --git a/src/dub/models/components/leadcreatedevent.py b/src/dub/models/components/leadcreatedevent.py index 3ea2e5d6..ba8a5887 100644 --- a/src/dub/models/components/leadcreatedevent.py +++ b/src/dub/models/components/leadcreatedevent.py @@ -243,9 +243,9 @@ class LeadCreatedEventLinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -286,12 +286,12 @@ class LeadCreatedEventLinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -342,11 +342,11 @@ class LeadCreatedEventLink(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -410,16 +410,16 @@ class LeadCreatedEventLink(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -484,7 +484,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -502,7 +504,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) diff --git a/src/dub/models/components/linkclickedevent.py b/src/dub/models/components/linkclickedevent.py index 6f9487db..7387efa4 100644 --- a/src/dub/models/components/linkclickedevent.py +++ b/src/dub/models/components/linkclickedevent.py @@ -121,9 +121,9 @@ class LinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -164,12 +164,12 @@ class LinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -220,11 +220,11 @@ class Link(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -288,16 +288,16 @@ class Link(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -362,7 +362,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -380,7 +382,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) diff --git a/src/dub/models/components/linkwebhookevent.py b/src/dub/models/components/linkwebhookevent.py index 2a2c0671..4bdc0023 100644 --- a/src/dub/models/components/linkwebhookevent.py +++ b/src/dub/models/components/linkwebhookevent.py @@ -57,9 +57,9 @@ class DataTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -100,12 +100,12 @@ class DataTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -156,11 +156,11 @@ class Data(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -224,16 +224,16 @@ class Data(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -298,7 +298,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -316,7 +318,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) diff --git a/src/dub/models/components/salecreatedevent.py b/src/dub/models/components/salecreatedevent.py index e03ef12e..d0f623c9 100644 --- a/src/dub/models/components/salecreatedevent.py +++ b/src/dub/models/components/salecreatedevent.py @@ -243,9 +243,9 @@ class SaleCreatedEventLinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -286,12 +286,12 @@ class SaleCreatedEventLinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -342,11 +342,11 @@ class SaleCreatedEventLink(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -410,16 +410,16 @@ class SaleCreatedEventLink(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -484,7 +484,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -502,7 +504,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) diff --git a/src/dub/models/operations/bulkupdatecommissions.py b/src/dub/models/operations/bulkupdatecommissions.py index d315ba0b..cd0d2e04 100644 --- a/src/dub/models/operations/bulkupdatecommissions.py +++ b/src/dub/models/operations/bulkupdatecommissions.py @@ -39,6 +39,7 @@ class BulkUpdateCommissionsCommissionsStatus(str, Enum): DUPLICATE = "duplicate" FRAUD = "fraud" CANCELED = "canceled" + HOLD = "hold" class BulkUpdateCommissionsResponseBodyTypedDict(TypedDict): diff --git a/src/dub/models/operations/listcommissions.py b/src/dub/models/operations/listcommissions.py index e3c5272b..32e21598 100644 --- a/src/dub/models/operations/listcommissions.py +++ b/src/dub/models/operations/listcommissions.py @@ -30,6 +30,7 @@ class QueryParamStatus(str, Enum): DUPLICATE = "duplicate" FRAUD = "fraud" CANCELED = "canceled" + HOLD = "hold" class ListCommissionsQueryParamSortBy(str, Enum): @@ -281,6 +282,7 @@ class ListCommissionsStatus(str, Enum): DUPLICATE = "duplicate" FRAUD = "fraud" CANCELED = "canceled" + HOLD = "hold" class ListCommissionsPartnerTypedDict(TypedDict): diff --git a/src/dub/models/operations/listevents.py b/src/dub/models/operations/listevents.py index 4e153934..3e578d86 100644 --- a/src/dub/models/operations/listevents.py +++ b/src/dub/models/operations/listevents.py @@ -595,9 +595,9 @@ class ListEventsResponseBodyLinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -638,12 +638,12 @@ class ListEventsResponseBodyLinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -696,11 +696,11 @@ class ListEventsResponseBodyLink(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -764,16 +764,16 @@ class ListEventsResponseBodyLink(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -838,7 +838,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -856,7 +858,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) @@ -1411,9 +1416,9 @@ class ResponseBodyLinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -1454,12 +1459,12 @@ class ResponseBodyLinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -1512,11 +1517,11 @@ class ResponseBodyLink(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -1580,16 +1585,16 @@ class ResponseBodyLink(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -1654,7 +1659,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -1672,7 +1679,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) @@ -2115,9 +2125,9 @@ class ListEventsResponseBodyEventsLinkTypedDict(TypedDict): partner_id: Nullable[str] r"""The ID of the partner the short link is associated with.""" archived: bool - expires_at: str + expires_at: Nullable[str] expired_url: Nullable[str] - disabled_at: str + disabled_at: Nullable[str] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" proxy: bool @@ -2158,12 +2168,12 @@ class ListEventsResponseBodyEventsLinkTypedDict(TypedDict): r"""The UTM term of the short link.""" utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: str - test_completed_at: str + test_started_at: Nullable[str] + test_completed_at: Nullable[str] user_id: Nullable[str] workspace_id: str r"""The workspace ID of the short link.""" - last_clicked: str + last_clicked: Nullable[str] created_at: str updated_at: str tag_id: Nullable[str] @@ -2214,11 +2224,11 @@ class ListEventsResponseBodyEventsLink(BaseModel): archived: bool - expires_at: Annotated[str, pydantic.Field(alias="expiresAt")] + expires_at: Annotated[Nullable[str], pydantic.Field(alias="expiresAt")] expired_url: Annotated[Nullable[str], pydantic.Field(alias="expiredUrl")] - disabled_at: Annotated[str, pydantic.Field(alias="disabledAt")] + disabled_at: Annotated[Nullable[str], pydantic.Field(alias="disabledAt")] password: Nullable[str] r"""The password required to access the destination URL of the short link.""" @@ -2282,16 +2292,16 @@ class ListEventsResponseBodyEventsLink(BaseModel): utm_content: Nullable[str] r"""The UTM content of the short link.""" - test_started_at: Annotated[str, pydantic.Field(alias="testStartedAt")] + test_started_at: Annotated[Nullable[str], pydantic.Field(alias="testStartedAt")] - test_completed_at: Annotated[str, pydantic.Field(alias="testCompletedAt")] + test_completed_at: Annotated[Nullable[str], pydantic.Field(alias="testCompletedAt")] user_id: Annotated[Nullable[str], pydantic.Field(alias="userId")] workspace_id: Annotated[str, pydantic.Field(alias="workspaceId")] r"""The workspace ID of the short link.""" - last_clicked: Annotated[str, pydantic.Field(alias="lastClicked")] + last_clicked: Annotated[Nullable[str], pydantic.Field(alias="lastClicked")] created_at: Annotated[str, pydantic.Field(alias="createdAt")] @@ -2356,7 +2366,9 @@ def serialize_model(self, handler): "tenantId", "programId", "partnerId", + "expiresAt", "expiredUrl", + "disabledAt", "password", "title", "description", @@ -2374,7 +2386,10 @@ def serialize_model(self, handler): "utm_term", "utm_content", "testVariants", + "testStartedAt", + "testCompletedAt", "userId", + "lastClicked", "tagId", ] ) diff --git a/src/dub/models/operations/listpartners.py b/src/dub/models/operations/listpartners.py index a58c4f97..82fa4188 100644 --- a/src/dub/models/operations/listpartners.py +++ b/src/dub/models/operations/listpartners.py @@ -64,7 +64,7 @@ class ListPartnersRequestTypedDict(TypedDict): tenant_id: NotRequired[str] r"""Filter the partner list based on the partner's `tenantId`. The value must be a string. Takes precedence over `email` and `search`.""" search: NotRequired[str] - r"""A search query to filter partners by ID, name, email, or link.""" + r"""A search query to filter partners by ID, name, email, or company name.""" page: NotRequired[float] r"""The page number for pagination.""" page_size: NotRequired[float] @@ -122,7 +122,7 @@ class ListPartnersRequest(BaseModel): Optional[str], FieldMetadata(query=QueryParamMetadata(style="form", explode=True)), ] = None - r"""A search query to filter partners by ID, name, email, or link.""" + r"""A search query to filter partners by ID, name, email, or company name.""" page: Annotated[ Optional[float], diff --git a/src/dub/models/operations/updatecommission.py b/src/dub/models/operations/updatecommission.py index 745888a3..8b613f14 100644 --- a/src/dub/models/operations/updatecommission.py +++ b/src/dub/models/operations/updatecommission.py @@ -149,6 +149,7 @@ class UpdateCommissionStatus(str, Enum): DUPLICATE = "duplicate" FRAUD = "fraud" CANCELED = "canceled" + HOLD = "hold" class UpdateCommissionPartnerTypedDict(TypedDict): diff --git a/src/dub/utils/__init__.py b/src/dub/utils/__init__.py index 0498cb8d..7af3b82c 100644 --- a/src/dub/utils/__init__.py +++ b/src/dub/utils/__init__.py @@ -15,7 +15,7 @@ async def run_sync_in_thread(func: Callable[..., _T], *args) -> _T: if TYPE_CHECKING: from .annotations import get_discriminator - from .datetimes import parse_datetime + from .datetimes import parse_datetime, parse_duration from .enums import OpenEnumMeta from .headers import get_headers, get_response_headers from .metadata import ( @@ -70,6 +70,7 @@ async def run_sync_in_thread(func: Callable[..., _T], *args) -> _T: "get_default_logger", "get_discriminator", "parse_datetime", + "parse_duration", "get_global_from_env", "get_headers", "get_pydantic_model", @@ -122,6 +123,7 @@ async def run_sync_in_thread(func: Callable[..., _T], *args) -> _T: "get_default_logger": ".logger", "get_discriminator": ".annotations", "parse_datetime": ".datetimes", + "parse_duration": ".datetimes", "get_global_from_env": ".values", "get_headers": ".headers", "get_pydantic_model": ".serializers", diff --git a/src/dub/utils/datetimes.py b/src/dub/utils/datetimes.py index a6c52cd6..adad2476 100644 --- a/src/dub/utils/datetimes.py +++ b/src/dub/utils/datetimes.py @@ -1,8 +1,10 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" -from datetime import datetime +from datetime import datetime, timedelta import sys +from pydantic import TypeAdapter + def parse_datetime(datetime_string: str) -> datetime: """ @@ -21,3 +23,15 @@ def parse_datetime(datetime_string: str) -> datetime: datetime_string = datetime_string[:-1] + "+00:00" return datetime.fromisoformat(datetime_string) + + +_DURATION_ADAPTER = TypeAdapter(timedelta) + + +def parse_duration(duration_string: str) -> timedelta: + """ + Convert an ISO 8601 duration string (e.g. "PT1H30M") into a timedelta. + The standard library has no ISO 8601 duration parser, so this delegates to + pydantic, which is already a runtime dependency of the SDK. + """ + return _DURATION_ADAPTER.validate_python(duration_string)