Skip to content

feat: regenerate client from corrected OpenAPI spec#24

Merged
mekilis merged 1 commit into
mainfrom
sdk-regen-spec-fixes
Jul 20, 2026
Merged

feat: regenerate client from corrected OpenAPI spec#24
mekilis merged 1 commit into
mainfrom
sdk-regen-spec-fixes

Conversation

@mekilis

@mekilis mekilis commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Regenerates the Python client from the corrected Convoy OpenAPI spec produced by fix(docs): OpenAPI spec fidelity for generated SDK clients convoy#2742 (nullable object/map handling, bearer auth security scheme, JSON-only onboard, portal link endpoints_metadata nullability).
  • Nullable object/map schemas now generate as *_type_0 union models, replacing the previous non-nullable model classes.

Test plan

  • Local suite: 29/29 passing
  • Wide smoke against the QA harness passed

Note

High Risk
Wide generated-surface changes plus bulk onboard wire format and enum renames are breaking for SDK consumers; auth-related AuthRoleType renames can break role checks at runtime.

Overview
Regenerates the Convoy Python client from an updated OpenAPI spec so generated types and HTTP calls match the API more closely.

Bulk onboard no longer accepts a raw File with application/octet-stream. The onboard helpers now take an optional ModelsBulkOnboardRequest and POST JSON (body.to_dict(), Content-Type: application/json).

Nullable object/map fields are modeled as separate *_type_0 types (e.g. event data, custom headers, JSON schemas, filter bulk-update maps). Public exports in models/__init__.py were updated to those names, so imports of the old symbol names will break.

API error envelopes across many *Response400/401/404 models now type data as HandlersStubType0 | None | Unset, with to_dict/from_dict that preserve JSON null and fall back when data is not a stub object.

Enums were reshaped by the generator: AuthRoleType members drop the ROLE_ prefix (e.g. API instead of ROLE_API), and some config header enums add alternate members such as VALUE_1 for empty-string variants.

Reviewed by Cursor Bugbot for commit b1e01e5. Bugbot is set up for automated code reviews on this repo. Configure here.

regenerated the python client from the spec produced by frain-dev/convoy#2742,
which fixes nullable object/map handling, the bearer auth security scheme,
json-only onboard, and portal link endpoints_metadata nullability.

nullable object/map schemas now generate as *_type_0 union models, replacing
the previous non-nullable model classes.
@mekilis
mekilis merged commit 9cc5279 into main Jul 20, 2026
3 checks passed
@mekilis
mekilis deleted the sdk-regen-spec-fixes branch July 20, 2026 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant