From 0fa87343c2229fda8aa03a21678bee85fbce000a Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Mon, 2 Mar 2026 00:41:52 +0000 Subject: [PATCH 1/2] ## Python SDK Changes: * `dub.payouts.list()`: `response.[]` **Changed** * `dub.bounties.list_submissions()`: * `request.sort_by` **Changed** * `response.[]` **Changed** * `dub.bounties.approve_submission()`: `response` **Changed** * `dub.bounties.reject_submission()`: `response` **Changed** --- .speakeasy/gen.lock | 88 ++++++++++--------- .speakeasy/gen.yaml | 2 +- .speakeasy/workflow.lock | 13 ++- RELEASES.md | 12 ++- .../approvebountysubmissionresponsebody.md | 2 + .../listbountysubmissionsqueryparamsortby.md | 9 +- .../listbountysubmissionsresponsebody.md | 2 + .../operations/listpayoutsresponsebody.md | 2 + docs/models/operations/method.md | 10 +++ .../rejectbountysubmissionresponsebody.md | 2 + pyproject.toml | 2 +- src/dub/_version.py | 6 +- src/dub/models/operations/__init__.py | 3 + .../operations/approvebountysubmission.py | 40 ++++++++- .../operations/listbountysubmissions.py | 43 ++++++++- src/dub/models/operations/listpayouts.py | 16 +++- .../operations/rejectbountysubmission.py | 42 ++++++++- src/dub/sdk.py | 2 +- 18 files changed, 230 insertions(+), 66 deletions(-) create mode 100644 docs/models/operations/method.md diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 6517a4bb..1a1f772d 100755 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,35 +1,35 @@ lockVersion: 2.0.0 id: ab657d60-207e-43a4-8cc8-692a672950ed management: - docChecksum: 7007bb2fb88a04d97a37a20894bcee00 + docChecksum: e01b162d171154072a9f97fc9a5a1007 docVersion: 0.0.1 - speakeasyVersion: 1.728.0 - generationVersion: 2.839.0 - releaseVersion: 0.35.5 - configChecksum: 431e1fa830e75930206e56ccae5a409a + speakeasyVersion: 1.736.3 + generationVersion: 2.845.15 + releaseVersion: 0.35.6 + configChecksum: 364d3d28a81981509ce45bcebb72e836 repoURL: https://github.com/dubinc/dub-python.git installationURL: https://github.com/dubinc/dub-python.git published: true persistentEdits: - generation_id: a37bfbab-9370-4890-882d-fcccd58d21ce - pristine_commit_hash: cae25ccb3a1862c6d4c638ad088df140f6431a45 - pristine_tree_hash: 7fff2d6dca6cbfe1485ae53d9a391658fb805e95 + generation_id: 297ea9da-f4e6-489f-bec0-203010b205ce + pristine_commit_hash: 763019258f8b46f5bbff0a1b9f9d514d49b793d9 + pristine_tree_hash: a983cc9722e0f1e9a0f7e58f7b54d029703e06f4 features: python: additionalDependencies: 1.0.0 constsAndDefaults: 1.0.7 - core: 6.0.12 + core: 6.0.15 defaultEnabledRetries: 0.2.0 deprecations: 3.0.2 enumUnions: 0.1.0 envVarSecurityUsage: 0.3.2 errors: 3.3.5 - examples: 3.0.2 + examples: 3.0.3 flattening: 3.1.1 globalSecurity: 3.0.5 globalSecurityCallbacks: 1.0.0 globalSecurityFlattening: 1.0.0 - globalServerURLs: 3.2.0 + globalServerURLs: 3.2.1 ignores: 3.0.1 includes: 3.0.0 nameOverrides: 3.0.3 @@ -614,8 +614,8 @@ trackedFiles: pristine_git_object: 0582adea33dd81473859875b5769b0c11bd63c28 docs/models/operations/approvebountysubmissionresponsebody.md: id: 319a8704a6fe - last_write_checksum: sha1:bca9f9ec8343ecb4eccaff507ddb6a7aad161aae - pristine_git_object: fea0ecc7b7144be8eb9060516d4da1b0755e6561 + last_write_checksum: sha1:0243888656e04381098dd7371d14f1d9c6cff5d4 + pristine_git_object: a577a3605641bb563f6bd1ca9f78da22e283dc9a docs/models/operations/approvebountysubmissionstatus.md: id: 8322200a0483 last_write_checksum: sha1:e10fd04224e4f9e348f7358796c5da5ce8c733a8 @@ -1114,8 +1114,8 @@ trackedFiles: pristine_git_object: ae8393fa123a7f6bc39a30fb8a9055f601fdbe18 docs/models/operations/listbountysubmissionsqueryparamsortby.md: id: 1db6f01a0a12 - last_write_checksum: sha1:962358f4cae9eb22b06dae766a976a9e287186d6 - pristine_git_object: e35c5cbe9d5e499910afc0786de4ef7fd89a6b77 + last_write_checksum: sha1:8d04a7ac94f2649d050138ccfc1df2b53ea30771 + pristine_git_object: 33a12140ba2ac1904ca1958a6bb21cfc8510d35b docs/models/operations/listbountysubmissionsqueryparamsortorder.md: id: fd9f9a7cd1d5 last_write_checksum: sha1:00f0b03c7e19fa32908d7d5ec858f6c7ce0f112e @@ -1130,8 +1130,8 @@ trackedFiles: pristine_git_object: 4b3a0f38118db6b1bc5cd96b29dafd499c68fe43 docs/models/operations/listbountysubmissionsresponsebody.md: id: 82e7d60f5d44 - last_write_checksum: sha1:4c191cf89a7f6e0966d4953e981949dc5bb7461d - pristine_git_object: 1c794293b5fba696247abce57bd9c132e94b34e0 + last_write_checksum: sha1:89683a5c2127e5d273a762c62e5250474ff4a489 + pristine_git_object: 42e450d8d001079363d3d805b4016ce15c6b80ac docs/models/operations/listbountysubmissionsstatus.md: id: 854ef71b7c73 last_write_checksum: sha1:f9ef13aa317e4e9fc3babcbff27cfadb378c4685 @@ -1306,12 +1306,16 @@ trackedFiles: pristine_git_object: bda37963c912d9bec644467f4c56ab7e30ace5e9 docs/models/operations/listpayoutsresponsebody.md: id: 7eac2cde93d6 - last_write_checksum: sha1:0b195b45aaa19a747a67ca7da971f0907872cedd - pristine_git_object: 14fe6ebdcd41e76d5a952e0d3149339f0ac675e6 + last_write_checksum: sha1:6d7d36051460f305dea10f7b164f8dd1a43578e7 + pristine_git_object: 7ed9da3e465035d9f830b35a8aa0e58babfa33d7 docs/models/operations/listpayoutsstatus.md: id: a852acab83fa last_write_checksum: sha1:02f9081198ad1d1659e937b6b2257e7a4d7a8a77 pristine_git_object: 73099d8b04756529d882332025bc48c1544cb12f + docs/models/operations/method.md: + id: 178c7f8a9cc1 + last_write_checksum: sha1:179b41c404932813d92a053a86c916940901f623 + pristine_git_object: 0deeb57c99c92b91c4c1099f98115d277d88046f docs/models/operations/mode.md: id: 5895da0fc5be last_write_checksum: sha1:8989ae3954942c26d90512c2151c884147a7b4cc @@ -1402,8 +1406,8 @@ trackedFiles: pristine_git_object: cfc8810f954caf07e23006fd475a4fb29feb5a79 docs/models/operations/rejectbountysubmissionresponsebody.md: id: c80cd0172778 - last_write_checksum: sha1:07d79068fbca92f1fac418476dd7fca3fe8d0a03 - pristine_git_object: 2f193dd479e779e48fd42e15cd36d56adaae4e9e + last_write_checksum: sha1:529ad44302c310f0c14b3092f83743099cc0f259 + pristine_git_object: a5095e60da6c4958098d18ab068bbfe51a7d245f docs/models/operations/rejectbountysubmissionstatus.md: id: 14acb015a882 last_write_checksum: sha1:050085c62e112a823cec6d1e7290be4680f8945d @@ -1782,8 +1786,8 @@ trackedFiles: pristine_git_object: d722e610557dc0704b6ece9349e7f41fc2cf4546 pyproject.toml: id: 5d07e7d72637 - last_write_checksum: sha1:5161549584f13a1e104423ceb91d914beefbcad6 - pristine_git_object: 631b81c3e65320129fc42d87e79ba143212ab577 + last_write_checksum: sha1:0ee0ab7ff660442451d764a3f1ef5b7a6d440360 + pristine_git_object: fc51efb3d3f0e97125c10353446e497ecc59f81f scripts/prepare_readme.py: id: e0c5957a6035 last_write_checksum: sha1:98ab0adc36f1ccd31422544b0dd94e008aa47804 @@ -1810,8 +1814,8 @@ trackedFiles: pristine_git_object: 350406f1a5b2eabd1ca7e8ea2621fdca5096e0e5 src/dub/_version.py: id: 2e88e1f01047 - last_write_checksum: sha1:677a3ec802eded96f53bec0fb3ac0129f70d0e89 - pristine_git_object: ee39c6a79055251af5d35fca84fc9bd40c29e540 + last_write_checksum: sha1:7ca2db994fcc41d6c19a1eaa69b3dddde72fb2dd + pristine_git_object: a3fa8087ab133c57b5daa193587bb266b9c6745b src/dub/analytics.py: id: b7a4fa47e744 last_write_checksum: sha1:fc568d8b515db82aa4f803714232aaea69d874a0 @@ -2050,12 +2054,12 @@ trackedFiles: pristine_git_object: c5c21f4174ffac88df195bd1ed27a89e8ce1b5d6 src/dub/models/operations/__init__.py: id: 933db6318765 - last_write_checksum: sha1:9d884edcefa49dc66a5d72fd26879e50124c6fa2 - pristine_git_object: 0b66bbe29885e845546a6f1a4c590e620b6a106e + last_write_checksum: sha1:a17cf6a11f0436f3b816e46dbb6f19197749f6e9 + pristine_git_object: 501dcc138b175e4b17f489756488d8ef563506e2 src/dub/models/operations/approvebountysubmission.py: id: bb43baeb1a3f - last_write_checksum: sha1:a279aad4023ae2d87fbf6ef45e9b79718bad0f87 - pristine_git_object: b3178c8cd615a10aa1687f6af6dddcaf086318f5 + last_write_checksum: sha1:daf794887b012683c0529c977b336174304f95d2 + pristine_git_object: 0d2667225d7c2eac7c75118cf5f056ae299d3ab9 src/dub/models/operations/banpartner.py: id: 444fc7f56f49 last_write_checksum: sha1:2aec5e876b16569b7e4dc8ff84c1fb2a80c617e6 @@ -2158,8 +2162,8 @@ trackedFiles: pristine_git_object: abb64cfbc531528803e34679f7fa751910d2441e src/dub/models/operations/listbountysubmissions.py: id: 763262897cc0 - last_write_checksum: sha1:07612c12be6c85de1c496ca6ba41e77829b73abe - pristine_git_object: dc65ae8c584fa6045112e2bf039522dbd8ec1f2e + last_write_checksum: sha1:c178f2c03e6e72b6fceab195089e568835205ee3 + pristine_git_object: 4dad93612b994699eede5482ffa95123c8a0b979 src/dub/models/operations/listcommissions.py: id: 992f4436b681 last_write_checksum: sha1:c74596dc1d1a501035817f4a645b0c9191f8fdd5 @@ -2182,16 +2186,16 @@ trackedFiles: pristine_git_object: 693dfdac8f268cf21a96f6a37ce7294ea3e039a7 src/dub/models/operations/listpayouts.py: id: d5cd6d0e4a39 - last_write_checksum: sha1:77f3f4dad8aac1b27ece6f3cc42accc8efb28744 - pristine_git_object: f1f5f1b6cc7dffa269226c8f2c50f602279dc3c5 + last_write_checksum: sha1:3d88e76b0e5a53a9a2957b5a45c4087d4e98a9ff + pristine_git_object: 95607298b548348af43ab5d5b5cd98f1edbd2dc0 src/dub/models/operations/registerdomain.py: id: d228522511ae last_write_checksum: sha1:34cf1fc360e9dc6957152e103bb073ba8dc29497 pristine_git_object: 30ab4d06dc1812a0c97af6c57252835e1ab00a2b src/dub/models/operations/rejectbountysubmission.py: id: 417e94427b88 - last_write_checksum: sha1:db5caaac963801a745ffe9bbca3352e5829f825b - pristine_git_object: de781f4a24fe9ab973ef7d71b961d201a8c6ae35 + last_write_checksum: sha1:284e073622d92d4081fa7f82b7849cac1de891fe + pristine_git_object: 0855e7ebb0de6bfae12ea1529e9120b6ddc2c4f0 src/dub/models/operations/retrieveanalytics.py: id: d4bcf92cd8c8 last_write_checksum: sha1:724bb2067e16a996c3089bda3e96c9dc0e11a808 @@ -2262,8 +2266,8 @@ trackedFiles: pristine_git_object: 329cd9ba519f01ea5160751fe26a6db5e25eeccc src/dub/sdk.py: id: 5d28a0e32a00 - last_write_checksum: sha1:87396a62bc43ee215898b4e58816f5695fad96fa - pristine_git_object: d6d95bf1751418d0151c388447c02576d1ff1134 + last_write_checksum: sha1:8a13fef66f664c772c4b13b110e274d821fcde5c + pristine_git_object: 24933f1bebe6c34513cffd78d88e227d9f4c5709 src/dub/sdkconfiguration.py: id: fa9f969a69de last_write_checksum: sha1:22402c25c87674d65277af59eb3239f2e9744db3 @@ -3634,7 +3638,7 @@ examples: pageSize: 50 responses: "200": - application/json: [{"id": "", "bountyId": "", "partnerId": "", "description": null, "urls": ["", "", ""], "files": [], "status": "rejected", "performanceCount": 7252.47, "createdAt": "1730788726599", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""}] + application/json: [{"id": "", "bountyId": "", "partnerId": "", "description": null, "urls": ["", "", ""], "files": [], "status": "rejected", "performanceCount": 7252.47, "socialMetricCount": null, "createdAt": "1730788726599", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""}] "400": application/json: {"error": {"code": "bad_request", "message": "The requested resource was not found.", "doc_url": "https://dub.co/docs/api-reference/errors#bad-request"}} "401": @@ -3661,7 +3665,7 @@ examples: submissionId: "" responses: "200": - application/json: {"id": "", "bountyId": "", "partnerId": "", "description": "braid probe where", "urls": [], "files": [], "status": "rejected", "performanceCount": 1758.64, "createdAt": "1734899747469", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""} + application/json: {"id": "", "bountyId": "", "partnerId": "", "description": "braid probe where", "urls": [], "files": [], "status": "rejected", "performanceCount": 1758.64, "socialMetricCount": 12079, "createdAt": "1734899747469", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""} "400": application/json: {"error": {"code": "bad_request", "message": "The requested resource was not found.", "doc_url": "https://dub.co/docs/api-reference/errors#bad-request"}} "401": @@ -3688,7 +3692,7 @@ examples: submissionId: "" responses: "200": - application/json: {"id": "", "bountyId": "", "partnerId": "", "description": "concentration blah safely inspection", "urls": ["", ""], "files": [], "status": "approved", "performanceCount": 6879.81, "createdAt": "1731452499894", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""} + application/json: {"id": "", "bountyId": "", "partnerId": "", "description": "concentration blah safely inspection", "urls": ["", ""], "files": [], "status": "approved", "performanceCount": 6879.81, "socialMetricCount": 128513, "createdAt": "1731452499894", "completedAt": "", "reviewedAt": "", "rejectionReason": "", "rejectionNote": ""} "400": application/json: {"error": {"code": "bad_request", "message": "The requested resource was not found.", "doc_url": "https://dub.co/docs/api-reference/errors#bad-request"}} "401": @@ -3740,7 +3744,7 @@ examples: pageSize: 50 responses: "200": - application/json: [{"id": "", "invoiceId": "", "amount": 8380.38, "currency": "Vatu", "status": "failed", "periodStart": "", "periodEnd": "", "createdAt": "1726484173323", "initiatedAt": "", "paidAt": "", "mode": "external", "partner": {"id": "", "name": "", "email": "Nadia.Witting@hotmail.com", "image": "https://loremflickr.com/1570/1793?lock=8489777555645461", "payoutsEnabledAt": "", "country": "Kenya", "tenantId": ""}}] + application/json: [{"id": "", "invoiceId": "", "amount": 8380.38, "currency": "Vatu", "status": "failed", "periodStart": "", "periodEnd": "", "createdAt": "1726484173323", "initiatedAt": "", "paidAt": "", "mode": "external", "method": "paypal", "partner": {"id": "", "name": "", "email": "Nadia.Witting@hotmail.com", "image": "https://loremflickr.com/1570/1793?lock=8489777555645461", "payoutsEnabledAt": "", "country": "Kenya", "tenantId": ""}}] "400": application/json: {"error": {"code": "bad_request", "message": "The requested resource was not found.", "doc_url": "https://dub.co/docs/api-reference/errors#bad-request"}} "401": @@ -3761,7 +3765,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.links.upsert()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.tags.create()`: \n * `request.color.enum(gray)` **Added**\n * `response.color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.get()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.update()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.create_many()`: `response.[].union(LinkSchema).tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.update_many()`: `response.[].tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.create()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.events.list()`: `response.[].union(sale).link.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.links.list()`: `response.[].tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.tags.list()`: `response.[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.partners.upsert_link()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.tags.update()`: \n * `request_body.color.enum(gray)` **Added**\n * `response.color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.partners.create_link()`: `response.tags[].color.enum(gray)` **Added** (Breaking ⚠️)\n* `dub.analytics.retrieve()`: `response.union(Array)[].folder_id` **Added**\n* `dub.partners.analytics()`: `response.union(Array)[].folder_id` **Added**\n" +releaseNotes: "## Python SDK Changes:\n* `dub.payouts.list()`: `response.[]` **Changed**\n* `dub.bounties.list_submissions()`: \n * `request.sort_by` **Changed**\n * `response.[]` **Changed**\n* `dub.bounties.approve_submission()`: `response` **Changed**\n* `dub.bounties.reject_submission()`: `response` **Changed**\n" generatedFiles: - .gitattributes - .vscode/settings.json diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 758841e1..0336b9d8 100755 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false python: - version: 0.35.5 + version: 0.35.6 additionalDependencies: dev: {} main: {} diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 3e6c702a..fac61294 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,21 +1,20 @@ -speakeasyVersion: 1.728.0 +speakeasyVersion: 1.736.3 sources: dub: sourceNamespace: dub - sourceRevisionDigest: sha256:f8da375124ffea8156bb04da0496d60d8a14e75146e2534fa31005772fecf75e - sourceBlobDigest: sha256:4182b72c2891ce5345ccdc87a9bb4ea8710bc8fea6b3683baa70fdfcc9565256 + sourceRevisionDigest: sha256:b4a665da9706062ec4b3b5357c43e1362af8cc7f974fc6e8819176df9d6add00 + sourceBlobDigest: sha256:538e7fe319f31d0539240aa4492a76bbf2252389b9ee5ad2ea512bfc2e1ec788 tags: - latest - - speakeasy-sdk-regen-1771461763 - 0.0.1 targets: my-first-target: source: dub sourceNamespace: dub - sourceRevisionDigest: sha256:f8da375124ffea8156bb04da0496d60d8a14e75146e2534fa31005772fecf75e - sourceBlobDigest: sha256:4182b72c2891ce5345ccdc87a9bb4ea8710bc8fea6b3683baa70fdfcc9565256 + sourceRevisionDigest: sha256:b4a665da9706062ec4b3b5357c43e1362af8cc7f974fc6e8819176df9d6add00 + sourceBlobDigest: sha256:538e7fe319f31d0539240aa4492a76bbf2252389b9ee5ad2ea512bfc2e1ec788 codeSamplesNamespace: code-samples-python-my-first-target - codeSamplesRevisionDigest: sha256:d753ec485bdf84e7b3b9ab9775cff8ba82dcea9c13dbb630b773011e8a60ff26 + codeSamplesRevisionDigest: sha256:a665820bc9c82e9686582e37d4d23cd47ca94faada46b74f8081b0a3b1c18107 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/RELEASES.md b/RELEASES.md index 67152144..0d366585 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1516,4 +1516,14 @@ Based on: ### Generated - [python v0.35.5] . ### Releases -- [PyPI v0.35.5] https://pypi.org/project/dub/0.35.5 - . \ No newline at end of file +- [PyPI v0.35.5] https://pypi.org/project/dub/0.35.5 - . + +## 2026-03-02 00:40:21 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.736.3 (2.845.15) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v0.35.6] . +### Releases +- [PyPI v0.35.6] https://pypi.org/project/dub/0.35.6 - . \ No newline at end of file diff --git a/docs/models/operations/approvebountysubmissionresponsebody.md b/docs/models/operations/approvebountysubmissionresponsebody.md index fea0ecc7..a577a360 100644 --- a/docs/models/operations/approvebountysubmissionresponsebody.md +++ b/docs/models/operations/approvebountysubmissionresponsebody.md @@ -15,6 +15,8 @@ The approved bounty submission. | `files` | List[[operations.ApproveBountySubmissionFiles](../../models/operations/approvebountysubmissionfiles.md)] | :heavy_check_mark: | The files uploaded for the submission | | `status` | [operations.ApproveBountySubmissionStatus](../../models/operations/approvebountysubmissionstatus.md) | :heavy_check_mark: | The status of the submission | | `performance_count` | *Nullable[float]* | :heavy_check_mark: | The performance count of the submission | +| `social_metric_count` | *Nullable[int]* | :heavy_check_mark: | The social metric count (views or likes) for the social content | +| `social_metrics_last_synced_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The date and time the submission's social metrics were last synced | | `created_at` | *str* | :heavy_check_mark: | The date and time the submission was created | | `completed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was completed | | `reviewed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was reviewed | diff --git a/docs/models/operations/listbountysubmissionsqueryparamsortby.md b/docs/models/operations/listbountysubmissionsqueryparamsortby.md index e35c5cbe..33a12140 100644 --- a/docs/models/operations/listbountysubmissionsqueryparamsortby.md +++ b/docs/models/operations/listbountysubmissionsqueryparamsortby.md @@ -5,7 +5,8 @@ The field to sort the submissions by. ## Values -| Name | Value | -| ------------------- | ------------------- | -| `COMPLETED_AT` | completedAt | -| `PERFORMANCE_COUNT` | performanceCount | \ No newline at end of file +| Name | Value | +| --------------------- | --------------------- | +| `COMPLETED_AT` | completedAt | +| `PERFORMANCE_COUNT` | performanceCount | +| `SOCIAL_METRIC_COUNT` | socialMetricCount | \ No newline at end of file diff --git a/docs/models/operations/listbountysubmissionsresponsebody.md b/docs/models/operations/listbountysubmissionsresponsebody.md index 1c794293..42e450d8 100644 --- a/docs/models/operations/listbountysubmissionsresponsebody.md +++ b/docs/models/operations/listbountysubmissionsresponsebody.md @@ -13,6 +13,8 @@ | `files` | List[[operations.Files](../../models/operations/files.md)] | :heavy_check_mark: | The files uploaded for the submission | | `status` | [operations.ListBountySubmissionsStatus](../../models/operations/listbountysubmissionsstatus.md) | :heavy_check_mark: | The status of the submission | | `performance_count` | *Nullable[float]* | :heavy_check_mark: | The performance count of the submission | +| `social_metric_count` | *Nullable[int]* | :heavy_check_mark: | The social metric count (views or likes) for the social content | +| `social_metrics_last_synced_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The date and time the submission's social metrics were last synced | | `created_at` | *str* | :heavy_check_mark: | The date and time the submission was created | | `completed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was completed | | `reviewed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was reviewed | diff --git a/docs/models/operations/listpayoutsresponsebody.md b/docs/models/operations/listpayoutsresponsebody.md index 14fe6ebd..7ed9da3e 100644 --- a/docs/models/operations/listpayoutsresponsebody.md +++ b/docs/models/operations/listpayoutsresponsebody.md @@ -18,5 +18,7 @@ | `paid_at` | *Nullable[str]* | :heavy_check_mark: | N/A | | `failure_reason` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | `mode` | [Nullable[operations.ListPayoutsMode]](../../models/operations/listpayoutsmode.md) | :heavy_check_mark: | N/A | +| `method` | [Nullable[operations.Method]](../../models/operations/method.md) | :heavy_check_mark: | N/A | +| `trace_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | `partner` | [operations.ListPayoutsPartner](../../models/operations/listpayoutspartner.md) | :heavy_check_mark: | N/A | | `user` | [OptionalNullable[operations.User]](../../models/operations/user.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/method.md b/docs/models/operations/method.md new file mode 100644 index 00000000..0deeb57c --- /dev/null +++ b/docs/models/operations/method.md @@ -0,0 +1,10 @@ +# Method + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `CONNECT` | connect | +| `STABLECOIN` | stablecoin | +| `PAYPAL` | paypal | \ No newline at end of file diff --git a/docs/models/operations/rejectbountysubmissionresponsebody.md b/docs/models/operations/rejectbountysubmissionresponsebody.md index 2f193dd4..a5095e60 100644 --- a/docs/models/operations/rejectbountysubmissionresponsebody.md +++ b/docs/models/operations/rejectbountysubmissionresponsebody.md @@ -15,6 +15,8 @@ The rejected bounty submission. | `files` | List[[operations.RejectBountySubmissionFiles](../../models/operations/rejectbountysubmissionfiles.md)] | :heavy_check_mark: | The files uploaded for the submission | | `status` | [operations.RejectBountySubmissionStatus](../../models/operations/rejectbountysubmissionstatus.md) | :heavy_check_mark: | The status of the submission | | `performance_count` | *Nullable[float]* | :heavy_check_mark: | The performance count of the submission | +| `social_metric_count` | *Nullable[int]* | :heavy_check_mark: | The social metric count (views or likes) for the social content | +| `social_metrics_last_synced_at` | *OptionalNullable[str]* | :heavy_minus_sign: | The date and time the submission's social metrics were last synced | | `created_at` | *str* | :heavy_check_mark: | The date and time the submission was created | | `completed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was completed | | `reviewed_at` | *Nullable[str]* | :heavy_check_mark: | The date and time the submission was reviewed | diff --git a/pyproject.toml b/pyproject.toml index 631b81c3..fc51efb3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "dub" -version = "0.35.5" +version = "0.35.6" 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 ee39c6a7..a3fa8087 100644 --- a/src/dub/_version.py +++ b/src/dub/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "dub" -__version__: str = "0.35.5" +__version__: str = "0.35.6" __openapi_doc_version__: str = "0.0.1" -__gen_version__: str = "2.839.0" -__user_agent__: str = "speakeasy-sdk/python 0.35.5 2.839.0 0.0.1 dub" +__gen_version__: str = "2.845.15" +__user_agent__: str = "speakeasy-sdk/python 0.35.6 2.845.15 0.0.1 dub" try: if __package__ is not None: diff --git a/src/dub/models/operations/__init__.py b/src/dub/models/operations/__init__.py index 0b66bbe2..501dcc13 100644 --- a/src/dub/models/operations/__init__.py +++ b/src/dub/models/operations/__init__.py @@ -404,6 +404,7 @@ ListPayoutsResponseBody, ListPayoutsResponseBodyTypedDict, ListPayoutsStatus, + Method, User, UserTypedDict, ) @@ -865,6 +866,7 @@ "ListPayoutsResponseBody", "ListPayoutsResponseBodyTypedDict", "ListPayoutsStatus", + "Method", "Mode", "One", "Options", @@ -1386,6 +1388,7 @@ "ListPayoutsResponseBody": ".listpayouts", "ListPayoutsResponseBodyTypedDict": ".listpayouts", "ListPayoutsStatus": ".listpayouts", + "Method": ".listpayouts", "User": ".listpayouts", "UserTypedDict": ".listpayouts", "RegisterDomainRequestBody": ".registerdomain", diff --git a/src/dub/models/operations/approvebountysubmission.py b/src/dub/models/operations/approvebountysubmission.py index b3178c8c..0d266722 100644 --- a/src/dub/models/operations/approvebountysubmission.py +++ b/src/dub/models/operations/approvebountysubmission.py @@ -140,6 +140,8 @@ class ApproveBountySubmissionResponseBodyTypedDict(TypedDict): r"""The status of the submission""" performance_count: Nullable[float] r"""The performance count of the submission""" + social_metric_count: Nullable[int] + r"""The social metric count (views or likes) for the social content""" created_at: str r"""The date and time the submission was created""" completed_at: Nullable[str] @@ -150,6 +152,8 @@ class ApproveBountySubmissionResponseBodyTypedDict(TypedDict): r"""The reason for rejecting the submission""" rejection_note: Nullable[str] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: NotRequired[Nullable[str]] + r"""The date and time the submission's social metrics were last synced""" class ApproveBountySubmissionResponseBody(BaseModel): @@ -181,6 +185,11 @@ class ApproveBountySubmissionResponseBody(BaseModel): ] r"""The performance count of the submission""" + social_metric_count: Annotated[ + Nullable[int], pydantic.Field(alias="socialMetricCount") + ] + r"""The social metric count (views or likes) for the social content""" + created_at: Annotated[str, pydantic.Field(alias="createdAt")] r"""The date and time the submission was created""" @@ -196,17 +205,46 @@ class ApproveBountySubmissionResponseBody(BaseModel): rejection_note: Annotated[Nullable[str], pydantic.Field(alias="rejectionNote")] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: Annotated[ + OptionalNullable[str], pydantic.Field(alias="socialMetricsLastSyncedAt") + ] = UNSET + r"""The date and time the submission's social metrics were last synced""" + @model_serializer(mode="wrap") def serialize_model(self, handler): + optional_fields = set(["socialMetricsLastSyncedAt"]) + nullable_fields = set( + [ + "description", + "urls", + "files", + "performanceCount", + "socialMetricCount", + "socialMetricsLastSyncedAt", + "completedAt", + "reviewedAt", + "rejectionReason", + "rejectionNote", + ] + ) serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): k = f.alias or n val = serialized.get(k) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) if val != UNSET_SENTINEL: - m[k] = val + 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/dub/models/operations/listbountysubmissions.py b/src/dub/models/operations/listbountysubmissions.py index dc65ae8c..4dad9361 100644 --- a/src/dub/models/operations/listbountysubmissions.py +++ b/src/dub/models/operations/listbountysubmissions.py @@ -1,7 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from dub.types import BaseModel, Nullable, UNSET_SENTINEL +from dub.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL from dub.utils import FieldMetadata, PathParamMetadata, QueryParamMetadata from enum import Enum import pydantic @@ -24,6 +24,7 @@ class ListBountySubmissionsQueryParamSortBy(str, Enum): COMPLETED_AT = "completedAt" PERFORMANCE_COUNT = "performanceCount" + SOCIAL_METRIC_COUNT = "socialMetricCount" class ListBountySubmissionsQueryParamSortOrder(str, Enum): @@ -180,6 +181,8 @@ class ListBountySubmissionsResponseBodyTypedDict(TypedDict): r"""The status of the submission""" performance_count: Nullable[float] r"""The performance count of the submission""" + social_metric_count: Nullable[int] + r"""The social metric count (views or likes) for the social content""" created_at: str r"""The date and time the submission was created""" completed_at: Nullable[str] @@ -190,6 +193,8 @@ class ListBountySubmissionsResponseBodyTypedDict(TypedDict): r"""The reason for rejecting the submission""" rejection_note: Nullable[str] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: NotRequired[Nullable[str]] + r"""The date and time the submission's social metrics were last synced""" class ListBountySubmissionsResponseBody(BaseModel): @@ -219,6 +224,11 @@ class ListBountySubmissionsResponseBody(BaseModel): ] r"""The performance count of the submission""" + social_metric_count: Annotated[ + Nullable[int], pydantic.Field(alias="socialMetricCount") + ] + r"""The social metric count (views or likes) for the social content""" + created_at: Annotated[str, pydantic.Field(alias="createdAt")] r"""The date and time the submission was created""" @@ -234,17 +244,46 @@ class ListBountySubmissionsResponseBody(BaseModel): rejection_note: Annotated[Nullable[str], pydantic.Field(alias="rejectionNote")] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: Annotated[ + OptionalNullable[str], pydantic.Field(alias="socialMetricsLastSyncedAt") + ] = UNSET + r"""The date and time the submission's social metrics were last synced""" + @model_serializer(mode="wrap") def serialize_model(self, handler): + optional_fields = set(["socialMetricsLastSyncedAt"]) + nullable_fields = set( + [ + "description", + "urls", + "files", + "performanceCount", + "socialMetricCount", + "socialMetricsLastSyncedAt", + "completedAt", + "reviewedAt", + "rejectionReason", + "rejectionNote", + ] + ) serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): k = f.alias or n val = serialized.get(k) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) if val != UNSET_SENTINEL: - m[k] = val + 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/dub/models/operations/listpayouts.py b/src/dub/models/operations/listpayouts.py index f1f5f1b6..95607298 100644 --- a/src/dub/models/operations/listpayouts.py +++ b/src/dub/models/operations/listpayouts.py @@ -154,6 +154,12 @@ class ListPayoutsMode(str, Enum): EXTERNAL = "external" +class Method(str, Enum): + CONNECT = "connect" + STABLECOIN = "stablecoin" + PAYPAL = "paypal" + + class ListPayoutsPartnerTypedDict(TypedDict): id: str r"""The partner's unique ID on Dub.""" @@ -271,9 +277,11 @@ class ListPayoutsResponseBodyTypedDict(TypedDict): initiated_at: Nullable[str] paid_at: Nullable[str] mode: Nullable[ListPayoutsMode] + method: Nullable[Method] partner: ListPayoutsPartnerTypedDict description: NotRequired[Nullable[str]] failure_reason: NotRequired[Nullable[str]] + trace_id: NotRequired[Nullable[str]] user: NotRequired[Nullable[UserTypedDict]] @@ -300,6 +308,8 @@ class ListPayoutsResponseBody(BaseModel): mode: Nullable[ListPayoutsMode] + method: Nullable[Method] + partner: ListPayoutsPartner description: OptionalNullable[str] = UNSET @@ -308,11 +318,13 @@ class ListPayoutsResponseBody(BaseModel): OptionalNullable[str], pydantic.Field(alias="failureReason") ] = UNSET + trace_id: Annotated[OptionalNullable[str], pydantic.Field(alias="traceId")] = UNSET + user: OptionalNullable[User] = UNSET @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = set(["description", "failureReason", "user"]) + optional_fields = set(["description", "failureReason", "traceId", "user"]) nullable_fields = set( [ "invoiceId", @@ -323,6 +335,8 @@ def serialize_model(self, handler): "paidAt", "failureReason", "mode", + "method", + "traceId", "user", ] ) diff --git a/src/dub/models/operations/rejectbountysubmission.py b/src/dub/models/operations/rejectbountysubmission.py index de781f4a..0855e7eb 100644 --- a/src/dub/models/operations/rejectbountysubmission.py +++ b/src/dub/models/operations/rejectbountysubmission.py @@ -1,7 +1,7 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from dub.types import BaseModel, Nullable, UNSET_SENTINEL +from dub.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL from dub.utils import FieldMetadata, PathParamMetadata, RequestMetadata from enum import Enum import pydantic @@ -148,6 +148,8 @@ class RejectBountySubmissionResponseBodyTypedDict(TypedDict): r"""The status of the submission""" performance_count: Nullable[float] r"""The performance count of the submission""" + social_metric_count: Nullable[int] + r"""The social metric count (views or likes) for the social content""" created_at: str r"""The date and time the submission was created""" completed_at: Nullable[str] @@ -158,6 +160,8 @@ class RejectBountySubmissionResponseBodyTypedDict(TypedDict): r"""The reason for rejecting the submission""" rejection_note: Nullable[str] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: NotRequired[Nullable[str]] + r"""The date and time the submission's social metrics were last synced""" class RejectBountySubmissionResponseBody(BaseModel): @@ -189,6 +193,11 @@ class RejectBountySubmissionResponseBody(BaseModel): ] r"""The performance count of the submission""" + social_metric_count: Annotated[ + Nullable[int], pydantic.Field(alias="socialMetricCount") + ] + r"""The social metric count (views or likes) for the social content""" + created_at: Annotated[str, pydantic.Field(alias="createdAt")] r"""The date and time the submission was created""" @@ -204,17 +213,46 @@ class RejectBountySubmissionResponseBody(BaseModel): rejection_note: Annotated[Nullable[str], pydantic.Field(alias="rejectionNote")] r"""The note for rejecting the submission""" + social_metrics_last_synced_at: Annotated[ + OptionalNullable[str], pydantic.Field(alias="socialMetricsLastSyncedAt") + ] = UNSET + r"""The date and time the submission's social metrics were last synced""" + @model_serializer(mode="wrap") def serialize_model(self, handler): + optional_fields = set(["socialMetricsLastSyncedAt"]) + nullable_fields = set( + [ + "description", + "urls", + "files", + "performanceCount", + "socialMetricCount", + "socialMetricsLastSyncedAt", + "completedAt", + "reviewedAt", + "rejectionReason", + "rejectionNote", + ] + ) serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): k = f.alias or n val = serialized.get(k) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) if val != UNSET_SENTINEL: - m[k] = val + 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/dub/sdk.py b/src/dub/sdk.py index d6d95bf1..24933f1b 100644 --- a/src/dub/sdk.py +++ b/src/dub/sdk.py @@ -70,8 +70,8 @@ def __init__( self, token: Union[str, Callable[[], str]], server_idx: Optional[int] = None, - server_url: Optional[str] = None, url_params: Optional[Dict[str, str]] = None, + server_url: Optional[str] = None, client: Optional[HttpClient] = None, async_client: Optional[AsyncHttpClient] = None, retry_config: OptionalNullable[RetryConfig] = UNSET, From ce8125655b8031ed06fa59cd34c7eb92dd2136f5 Mon Sep 17 00:00:00 2001 From: "speakeasy-github[bot]" <128539517+speakeasy-github[bot]@users.noreply.github.com> Date: Mon, 2 Mar 2026 00:42:00 +0000 Subject: [PATCH 2/2] empty commit to trigger [run-tests] workflow