Skip to content

Update OpenAPI spec (b098f28) - #108

Closed
workos-sdk-automation[bot] wants to merge 1 commit into
mainfrom
update-spec-20260818-124911-32138743580
Closed

Update OpenAPI spec (b098f28)#108
workos-sdk-automation[bot] wants to merge 1 commit into
mainfrom
update-spec-20260818-124911-32138743580

Conversation

@workos-sdk-automation

Copy link
Copy Markdown
Contributor

🤖 I see new OpenAPI changes beep boop

Automated update from https://github.com/workos/workos/tree/b098f28a1d85a657ff00b37287a5303a9e549a93

Source PRs

  • workos/workos#68965
  • workos/workos#68966
Changes



├─┬Paths
│ ├──[➕] revoke (11557:3)
│ ├──[➕] it_contacts (11217:3)
│ ├──[➕] {contact_id} (11372:3)
│ └──[➕] invite (11444:3)
├─┬Tags
│ └──[➕] organizations.it-contacts (20222:5)
└─┬Components
  ├──[➕] schemas/CreateItContactDto (21531:7)
  ├──[➕] schemas/InviteItContactDto (21541:7)
  ├──[➕] schemas/ItContactList (36065:7)
  └──[➕] schemas/ItContact (36032:7)


| Document Element | Total Changes | Breaking Changes |
|------------------|---------------|------------------|
| paths            | 4             | 0                |
| tags             | 1             | 0                |
| components       | 4             | 0                |

Date: 08/18/26 | Commit: Update OpenAPI spec from workos/workos@b098f28a1d85a657ff00b37287a5303a9e549a93

- **Total Changes**: _9_
- **Additions**: _9_

@greptile-apps

greptile-apps Bot commented Aug 18, 2026

Copy link
Copy Markdown

Greptile Summary

The PR synchronizes the canonical OpenAPI contract to upstream revision b098f28, adding organization IT-contact lifecycle endpoints and their request, resource, and list schemas.

  • Adds list, create, delete, invite, and revoke operations for organization IT contacts.
  • Adds CreateItContactDto, InviteItContactDto, ItContact, and ItContactList.
  • Adds the organizations.it-contacts tag and advances the synchronization marker.

Confidence Score: 4/5

The PR appears safe to merge, with a non-blocking contract gap that prevents generated clients from using the IT-contact list's pagination cursors.

The new lifecycle operations and schemas are internally referenced, but the list method exposes cursor metadata without corresponding cursor request parameters.

Files Needing Attention: spec/open-api-spec.yaml

Important Files Changed

Filename Overview
spec/open-api-spec.yaml Adds the complete organization IT-contact API surface and schemas, but the list operation does not expose inputs for its response cursors.
.last-synced-sha Advances the opaque upstream synchronization marker to the revision identified by the automated update.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  Organization[Organization] --> List[List IT contacts]
  Organization --> Create[Create IT contact]
  Create --> Contact[IT contact]
  Contact --> Invite[Invite to Admin Portal]
  Invite --> Revoke[Revoke invitation]
  Contact --> Delete[Delete IT contact]
Loading
Prompt To Fix All With AI
### Issue 1
spec/open-api-spec.yaml:11221-11231
**Pagination cursors lack inputs**

The response exposes `before` and `after` cursors, but this operation only accepts `organization_id`. Generated clients therefore cannot submit a returned cursor to navigate beyond the initial IT-contact page.

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Reviews (1): Last reviewed commit: "Update OpenAPI spec from workos/workos@b..." | Re-trigger Greptile

Comment thread spec/open-api-spec.yaml
Comment on lines +11221 to +11231
parameters:
- name: organization_id
required: true
in: path
description: The ID of the organization.
schema:
type: string
example: org_01EHWNCE74X7JSDV0X3SZ3KJNY
responses:
'200':
description: OK

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Pagination cursors lack inputs

The response exposes before and after cursors, but this operation only accepts organization_id. Generated clients therefore cannot submit a returned cursor to navigate beyond the initial IT-contact page.

Knowledge Base Used: WorkOS API OpenAPI specification

Prompt To Fix With AI
This is a comment left during a code review.
Path: spec/open-api-spec.yaml
Line: 11221-11231

Comment:
**Pagination cursors lack inputs**

The response exposes `before` and `after` cursors, but this operation only accepts `organization_id`. Generated clients therefore cannot submit a returned cursor to navigate beyond the initial IT-contact page.

**Knowledge Base Used:** [WorkOS API OpenAPI specification](https://app.greptile.com/workos/-/custom-context/knowledge-base/workos/openapi-spec/-/docs/api-openapi-spec.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

github-actions Bot added a commit that referenced this pull request Aug 18, 2026
@github-actions

Copy link
Copy Markdown
Contributor

SDK compatibility report

❌ Matrix result: failure

📄 View full code diff

Language Breaking Soft-risk Additive
dotnet n/a n/a n/a
go 0 0 31
ios 0 0 0
kotlin 0 1 36
php 3 0 31
python n/a n/a n/a
ruby 1 1 28
rust 0 0 31

Missing diagnostics

  • dotnet: compat-report.json missing
  • python: compat-report.json missing

Changes by domain

Domain Breaking Soft-risk Additive Languages
CreateDataIntegrationAuthMethods 3 php
CreatePasswordResetToken 1 1 kotlin, ruby
OrganizationsItContacts 14 go, kotlin, php, ruby, rust
ItContact 13 go, kotlin, php, ruby, rust
InviteItContact 9 go, kotlin, php, ruby, rust
OrganizationsItContactService 6 go, kotlin, php, ruby
CreateItContact 3 kotlin, php, ruby, rust
CreateOrganizationItContactParams 2 rust
Client 1 go, kotlin, php, ruby
WaitlistUser 1 go, php, ruby, rust
WorkOS 1 php, ruby

Breaking (4)

CreateDataIntegrationAuthMethods

1 enum, 2 enum values removed
Symbol Kind Languages
CreateDataIntegrationAuthMethods enum php
CreateDataIntegrationAuthMethods.ApiKey enum value php
CreateDataIntegrationAuthMethods.OAuth enum value php

CreatePasswordResetToken

Removed methods (1)

Method Languages
CreatePasswordResetToken ruby

Soft-risk (1)

CreatePasswordResetToken

1 field removed
Symbol Kind Languages
CreatePasswordResetToken.email field kotlin, ruby

Additive (50)

Client

Change Languages
Client.OrganizationsItContacts added (function) go
📄 workos.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb

CreateItContact

Change Languages
CreateItContact added (type) kotlin
📄 src/main/kotlin/com/workos/models/CreateItContact.kt
php
📄 lib/Resource/CreateItContact.php
ruby
📄 lib/workos/organizations_it_contacts/create_it_contact.rb
rust
📄 src/models/create_it_contact.rs
CreateItContactInviteParams added (service) rust
📄 src/resources/organizations_it_contacts.rs
CreateItContactInviteParams.new(body) added (function) rust
📄 src/resources/organizations_it_contacts.rs

CreateOrganizationItContactParams

Change Languages
CreateOrganizationItContactParams added (service) rust
📄 src/resources/organizations_it_contacts.rs
CreateOrganizationItContactParams.new(body) added (function) rust
📄 src/resources/organizations_it_contacts.rs

InviteItContact

Change Languages
InviteItContact added (type) kotlin
📄 src/main/kotlin/com/workos/models/InviteItContact.kt
php
📄 lib/Resource/InviteItContact.php
ruby
📄 lib/workos/organizations_it_contacts/invite_it_contact.rb
rust
📄 src/models/invite_it_contact.rs
InviteItContactIntents added (enum) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.BringYourOwnKey added (enum value) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.DirectorySync added (enum value) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.DomainVerification added (enum value) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.JsonEnumDefaultValue added (enum value) kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
InviteItContactIntents.LogStreams added (enum value) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.SSO added (enum value) go
📄 enums.go
kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
php
📄 lib/Resource/InviteItContactIntents.php
ruby
📄 lib/workos/types/invite_it_contact_intents.rb
rust
📄 src/enums/invite_it_contact_intents.rs
InviteItContactIntents.Unknown added (enum value) kotlin
📄 src/main/kotlin/com/workos/types/InviteItContactIntents.kt
rust
📄 src/enums/invite_it_contact_intents.rs

ItContact

Change Languages
ItContact added (type) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContact.created_at added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContact.email added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContact.id added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContact.object added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContact.updated_at added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContact.kt
php
📄 lib/Resource/ItContact.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact.rb
rust
📄 src/models/it_contact.rs
ItContactList added (type) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactList.kt
php
📄 lib/Resource/ItContactList.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact_list.rb
rust
📄 src/models/it_contact_list.rs
ItContactList.data added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactList.kt
php
📄 lib/Resource/ItContactList.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact_list.rb
rust
📄 src/models/it_contact_list.rs
ItContactList.list_metadata added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactList.kt
php
📄 lib/Resource/ItContactList.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact_list.rb
rust
📄 src/models/it_contact_list.rs
ItContactList.object added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactList.kt
php
📄 lib/Resource/ItContactList.php
ruby
📄 lib/workos/organizations_it_contacts/it_contact_list.rb
rust
📄 src/models/it_contact_list.rs
ItContactListListMetadata added (type) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactListListMetadata.kt
php
📄 lib/Resource/ItContactListListMetadata.php
rust
📄 src/models/it_contact_list_list_metadata.rs
ItContactListListMetadata.after added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactListListMetadata.kt
php
📄 lib/Resource/ItContactListListMetadata.php
rust
📄 src/models/it_contact_list_list_metadata.rs
ItContactListListMetadata.before added (field) go
📄 models.go
kotlin
📄 src/main/kotlin/com/workos/models/ItContactListListMetadata.kt
php
📄 lib/Resource/ItContactListListMetadata.php
rust
📄 src/models/it_contact_list_list_metadata.rs

OrganizationsItContacts

Change Languages
OrganizationsItContacts.createItContactInviteSuspend(organizationId, contactId, intents, requestOptions?) added (function) kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContacts.createOrganizationItContact(organizationId, email, options?) added (function) php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb
OrganizationsItContacts.createSuspend(organizationId, email, requestOptions?) added (function) kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContacts.deleteOrganizationItContact(organizationId, contactId, options?) added (function) php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb
OrganizationsItContacts.deleteSuspend(organizationId, contactId, requestOptions?) added (function) kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContacts.listOrganizationItContacts(organizationId, options?) added (function) php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb
OrganizationsItContacts.listSuspend(organizationId, requestOptions?) added (function) kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContacts.revokeItContactSuspend(organizationId, contactId, requestOptions?) added (function) kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContactsApi added (type) rust
📄 src/resources/organizations_it_contacts.rs
OrganizationsItContactsApi.client added (field) rust
📄 src/resources/organizations_it_contacts.rs
OrganizationsItContactsCreateItContactInviteParams added (type) go
📄 organizations_it_contacts.go
OrganizationsItContactsCreateItContactInviteParams.intents added (field) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/models/InviteItContact.kt
php
📄 lib/Resource/InviteItContact.php
ruby
📄 lib/workos/organizations_it_contacts/invite_it_contact.rb
rust
📄 src/models/invite_it_contact.rs
OrganizationsItContactsCreateParams added (type) go
📄 organizations_it_contacts.go
OrganizationsItContactsCreateParams.email added (field) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/models/CreateItContact.kt
php
📄 lib/Resource/CreateItContact.php
ruby
📄 lib/workos/organizations_it_contacts/create_it_contact.rb
rust
📄 src/models/create_it_contact.rs

OrganizationsItContactService

Change Languages
OrganizationsItContactService added (service) go
📄 organizations_it_contacts.go
OrganizationsItContactService.Create(organizationID, params, opts) added (function) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContactService.CreateItContactInvite(organizationID, contactID, params, opts) added (function) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb
OrganizationsItContactService.Delete(organizationID, contactID, opts) added (function) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContactService.List(organizationID, opts) added (function) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
OrganizationsItContactService.RevokeItContact(organizationID, contactID, opts) added (function) go
📄 organizations_it_contacts.go
kotlin
📄 src/main/kotlin/com/workos/organizationsitcontacts/OrganizationsItContacts.kt
php
📄 lib/Service/OrganizationsItContacts.php
ruby
📄 lib/workos/organizations_it_contacts.rb

WaitlistUser

Change Languages
WaitlistUser.additional_fields added (field) go
📄 models.go
php
📄 lib/Resource/WaitlistUser.php
ruby
📄 lib/workos/shared/waitlist_user.rb
rust
📄 src/models/waitlist_user.rs

WorkOS

Change Languages
WorkOS.organizationsItContacts added (function) php
📄 lib/WorkOS.php
ruby
📄 lib/workos/client.rb

@gjtorikian

Copy link
Copy Markdown
Collaborator

superseded by #109

@gjtorikian gjtorikian closed this Aug 18, 2026
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.

1 participant