Skip to content

feat(generated): Add Pipes operations and models#122

Merged
workos-sdk-automation[bot] merged 3 commits into
mainfrom
oagen/batch-80e7e47d
Jul 2, 2026
Merged

feat(generated): Add Pipes operations and models#122
workos-sdk-automation[bot] merged 3 commits into
mainfrom
oagen/batch-80e7e47d

Conversation

@workos-sdk-automation

@workos-sdk-automation workos-sdk-automation Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Summary

feat(pipes): Add Pipes operations and models

  • Added model DataIntegrationCredentialsDto.
  • Added model CustomProviderDefinition.
  • Added model CreateDataIntegration.
  • Added model UpdateCustomProviderDefinition.
  • Added model UpdateDataIntegration.
  • Added model DataIntegration.
  • Added model DataIntegrationList.
  • Added model DataIntegrationListListMetadata.
  • Added model DataIntegrationCredential.
  • Added model DataIntegrationCustomProvider.
  • Added enum DataIntegrationCredentialsType.
  • Added enum CustomProviderDefinitionAuthenticateVia.
  • Added enum UpdateCustomProviderDefinitionAuthenticateVia.
  • Added enum DataIntegrationState.
  • Added enum DataIntegrationCredentialType.
  • Added enum DataIntegrationCustomProviderAuthenticateVia.
  • Added endpoint GET /data-integrations.
  • Added endpoint POST /data-integrations.
  • Added endpoint GET /data-integrations/{slug}.
  • Added endpoint PUT /data-integrations/{slug}.
  • Added endpoint DELETE /data-integrations/{slug}.
  • Added endpoint POST /user_management/users/{user_id}/connected_accounts/{slug}.
  • Added endpoint PUT /user_management/users/{user_id}/connected_accounts/{slug}.

Triggered by workos/openapi-spec@e350eb0

BEGIN_COMMIT_OVERRIDE
feat(pipes): Add Pipes operations and models (#122)
END_COMMIT_OVERRIDE

@greptile-apps

greptile-apps Bot commented Jul 2, 2026

Copy link
Copy Markdown

Greptile Summary

This PR adds generated Pipes support for data integrations. The main changes are:

  • New Pipes client operations for data integration CRUD.
  • New connected account import and update operations.
  • Generated models and enums for data integration credentials, custom providers, states, and list metadata.
  • New fixtures and endpoint tests for the generated Pipes APIs.

Confidence Score: 4/5

The generated Pipes surface is mostly straightforward, but the update model has a payload serialization issue that prevents one documented operation from being expressed.

The review is focused on generated models and endpoints, with a concrete serialization mismatch identified in the update data integration request body.

src/models/update_data_integration.rs

T-Rex T-Rex Logs

What T-Rex did

  • Reproduced a focused Rust test showing UpdateDataIntegration serializes with scopes None and omits the scopes field from the JSON.
  • Compared base and head test runs; the base run failed to compile due to missing DTOs and methods, while the head run compiled and produced detailed per-endpoint request/response logs.
  • Observed that the base test again fails to compile due to missing DTOs and methods, while the head test passes and shows POST and PUT requests to a specific encoded URL, including the full JSON body and successful ConnectedAccount deserialization.
  • Verified that a baseline test failure on base due to missing fixtures is resolved on head, where the same test passes (1 passed; 0 failed).

View all artifacts

T-Rex Ran code and verified through T-Rex

Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
src/models/update_data_integration.rs:17-18
**Cannot reset scopes**
`scopes` is documented as accepting `null` to reset provider defaults, but `Option<Vec<String>>` with `skip_serializing_if = "Option::is_none"` omits `None` instead of serializing JSON `null`. Calling `UpdateDataIntegration { scopes: None, .. }` sends no `scopes` field, so callers cannot perform the reset operation exposed by this model.

Reviews (1): Last reviewed commit: "chore(generated): add release notes frag..." | Re-trigger Greptile

Comment on lines +17 to +18
#[serde(skip_serializing_if = "Option::is_none", default)]
pub scopes: Option<Vec<String>>,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Cannot reset scopes
scopes is documented as accepting null to reset provider defaults, but Option<Vec<String>> with skip_serializing_if = "Option::is_none" omits None instead of serializing JSON null. Calling UpdateDataIntegration { scopes: None, .. } sends no scopes field, so callers cannot perform the reset operation exposed by this model.

Artifacts

Repro: focused Rust test source that serializes UpdateDataIntegration with scopes None

  • Contains supporting evidence from the run (text/x-rust; charset=utf-8).

Repro: cargo test output showing serialized JSON omits scopes

  • Keeps the command output available without making the summary code-heavy.

View artifacts

T-Rex Ran code and verified through T-Rex

Prompt To Fix With AI
This is a comment left during a code review.
Path: src/models/update_data_integration.rs
Line: 17-18

Comment:
**Cannot reset scopes**
`scopes` is documented as accepting `null` to reset provider defaults, but `Option<Vec<String>>` with `skip_serializing_if = "Option::is_none"` omits `None` instead of serializing JSON `null`. Calling `UpdateDataIntegration { scopes: None, .. }` sends no `scopes` field, so callers cannot perform the reset operation exposed by this model.

How can I resolve this? If you propose a fix, please make it concise.

@workos-sdk-automation
workos-sdk-automation Bot merged commit 889e6af into main Jul 2, 2026
5 checks passed
@workos-sdk-automation
workos-sdk-automation Bot deleted the oagen/batch-80e7e47d branch July 2, 2026 16:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

0 participants