Skip to content

chore: 🐝 Update SDK - Generate 0.3.0 - #43

Merged
adithyasamavedhi-ttd merged 4 commits into
mainfrom
speakeasy-sdk-regen-1788369003
Sep 3, 2026
Merged

chore: 🐝 Update SDK - Generate 0.3.0#43
adithyasamavedhi-ttd merged 4 commits into
mainfrom
speakeasy-sdk-regen-1788369003

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown

SDK update

Versioning

Version Bump Type: [patch] - 🤖 (automated)

Tip

If updates to your OpenAPI document introduce breaking changes, be sure to update the info.version field to trigger the correct version bump.
Speakeasy supports manual control of SDK versioning through multiple methods.

Python SDK Changes:

  • base_data_client.advertiser.ingest_advertiser_data():
    • request.ttd_auth Removed (Breaking ⚠️)
    • response.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
    • error.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
  • base_data_client.third_party.ingest_third_party_data():
    • request.ttd_auth Removed (Breaking ⚠️)
    • response.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
    • error.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
  • base_data_client.ip_address.ingest_first_party_ip_address_data():
    • request.ttd_auth Removed (Breaking ⚠️)
    • response.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
    • error.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
  • base_data_client.ip_address.ingest_third_party_ip_address_data():
    • request.ttd_auth Removed (Breaking ⚠️)
    • response.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
    • error.failed_lines[].error_code.enum(invalid_timestamp_utc) Added (Breaking ⚠️)
  • base_data_client.offline_conversion.ingest_offline_conversion_data(): request.ttd_auth Removed (Breaking ⚠️)
  • base_data_client.deletion_opt_out.data_subject_request_advertiser_data(): request.ttd_auth Removed (Breaking ⚠️)
  • base_data_client.deletion_opt_out.data_subject_request_merchant_data(): request.ttd_auth Removed (Breaking ⚠️)
  • base_data_client.deletion_opt_out.data_subject_request_third_party_data(): request.ttd_auth Removed (Breaking ⚠️)

View full SDK changelog

OpenAPI Change Summary
├──[+] security (1412:5)
├─┬Paths
│ ├─┬/providerapi/offlineconversion
│ │ └─┬POST
│ │   └──[-] parameters (262:9)❌ 
│ ├─┬/data/deletion-optout/merchant
│ │ └─┬POST
│ │   └──[-] parameters (386:9)❌ 
│ ├─┬/data/thirdparty
│ │ └─┬POST
│ │   └──[-] parameters (88:9)❌ 
│ ├─┬/data/firstpartyipaddress
│ │ └─┬POST
│ │   └──[-] parameters (150:9)❌ 
│ ├─┬/data/deletion-optout/advertiser
│ │ └─┬POST
│ │   └──[-] parameters (324:9)❌ 
│ ├─┬/data/deletion-optout/thirdparty
│ │ └─┬POST
│ │   └──[-] parameters (448:9)❌ 
│ ├─┬/data/thirdpartyipaddress
│ │ └─┬POST
│ │   └──[-] parameters (206:9)❌ 
│ └─┬/data/advertiser
│   └─┬POST
│     └──[-] parameters (26:9)❌ 
└─┬Components
  ├──[+] securitySchemes (1407:7)
  ├─┬ThirdPartyDataResponseErrorCode
  │ └──[+] enum (1299:11)
  ├─┬AdvertiserDataResponseErrorCode
  │ └──[+] enum (577:11)
  └─┬IPAddressDataResponseErrorCode
    └──[+] enum (804:11)
Document Element Total Changes Breaking Changes
paths 8 8
components 4 0

View full report

Linting Report 0 errors, 0 warnings, 1 hints

View full report

PYTHON CHANGELOG

core: 6.0.36 - 2026-08-12

🐝 New Features

Based on Speakeasy CLI 1.794.0

Last updated by Speakeasy workflow

* `base_data_client.advertiser.ingest_advertiser_data()`: 
  *  `request.ttd_auth` **Removed** (Breaking ⚠️)
  *  `response.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
  *  `error.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
* `base_data_client.third_party.ingest_third_party_data()`: 
  *  `request.ttd_auth` **Removed** (Breaking ⚠️)
  *  `response.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
  *  `error.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
* `base_data_client.ip_address.ingest_first_party_ip_address_data()`: 
  *  `request.ttd_auth` **Removed** (Breaking ⚠️)
  *  `response.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
  *  `error.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
* `base_data_client.ip_address.ingest_third_party_ip_address_data()`: 
  *  `request.ttd_auth` **Removed** (Breaking ⚠️)
  *  `response.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
  *  `error.failed_lines[].error_code.enum(invalid_timestamp_utc)` **Added** (Breaking ⚠️)
* `base_data_client.offline_conversion.ingest_offline_conversion_data()`:  `request.ttd_auth` **Removed** (Breaking ⚠️)
* `base_data_client.deletion_opt_out.data_subject_request_advertiser_data()`:  `request.ttd_auth` **Removed** (Breaking ⚠️)
* `base_data_client.deletion_opt_out.data_subject_request_merchant_data()`:  `request.ttd_auth` **Removed** (Breaking ⚠️)
* `base_data_client.deletion_opt_out.data_subject_request_third_party_data()`:  `request.ttd_auth` **Removed** (Breaking ⚠️)
@github-actions
github-actions Bot requested a review from a team September 2, 2026 17:11
@github-actions github-actions Bot added the patch Patch version bump label Sep 2, 2026
@adithyasamavedhi-ttd adithyasamavedhi-ttd changed the title chore: 🐝 Update SDK - Generate 0.3.1 chore: 🐝 Update SDK - Generate 0.3.0 Sep 2, 2026
@adithyasamavedhi-ttd adithyasamavedhi-ttd added minor Minor version bump and removed patch Patch version bump labels Sep 2, 2026
The regen hoisted ttd_auth from a per-request arg to a BaseDataClient
constructor param, but the hand-written ClientConfig had no field for it.
from_config() rebuilds via fields(config), so it silently produced an
unauthenticated client.

Add ttd_auth to ClientConfig, recovering it from sdk_configuration.security.
A callable credential is rewrapped rather than called, so reading .config
never triggers a token refresh and rotation survives a round trip.

The same hoist left every documented example calling the SDK with an
argument it no longer accepts. Move ttd_auth to the client constructor
throughout, and drop it from the docs/sdks parameter tables.

USAGE.md had also been committed with six unresolved merge-conflict blocks
from the generator's persistent-edits merge; resolved here.

Also fixes a pre-existing README bug where RetryConfig was passed
positionally after a keyword argument, which does not parse.
@adithyasamavedhi-ttd
adithyasamavedhi-ttd force-pushed the speakeasy-sdk-regen-1788369003 branch from bf42f01 to 3fddc22 Compare September 2, 2026 22:51
Every code block in the READMEs, USAGE.md and docs/sdks/* is now executable
by copy-paste. Verified by running all 42 blocks against a mocked transport
and by hitting the live Data API.

- Replace `with DataClient(...) as client:` with plain instantiation.
  DataClient is a wrapper and does not implement the context manager
  protocol; only the inner BaseDataClient does, so every one of these
  raised TypeError.
- docs/sdks/* now import DataClient rather than BaseDataClient, which is
  not exported from ttd_data and raised ImportError.
- Pass user_id_array_metadata_format in the offline conversion example.
  The API rejects user_id_array without it; the parameter is optional in
  the schema, so only a live request surfaced this.
- The async example now awaits ingest_advertiser_data_async. It called the
  sync method inside async def main() and awaited nothing.
- Rewrite the Resource Management section, which claimed DataClient
  implements the context manager protocol.
- Hoist ttd_auth to the constructor, fix a positional-after-keyword
  RetryConfig call, and add a missing typing import.
ttd_auth moved from the call site to the DataClient constructor, so each of
these raised TypeError on its first request. Call sites carried different
token values (valid, invalid, empty), so each was hoisted into its own
client rather than rewritten uniformly.

Also drops `with DataClient(...)`, which DataClient does not support; only
the inner BaseDataClient implements the context manager protocol.

Verified against a live Data API: test_local.py 13/13, test_patch_hook.py
8/8, local_uid2_ingest_e2e.py exit 0 with all four PII-dropping assertions
passing.
@adithyasamavedhi-ttd
adithyasamavedhi-ttd force-pushed the speakeasy-sdk-regen-1788369003 branch from ee90982 to f950fce Compare September 2, 2026 23:27
@adithyasamavedhi-ttd

Copy link
Copy Markdown
Contributor

Local tests:
Screenshot 2026-09-02 at 4 44 01 PM

@adithyasamavedhi-ttd
adithyasamavedhi-ttd merged commit d29d67f into main Sep 3, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor Minor version bump

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants