Update OpenAPI spec (b098f28) - #108
Conversation
Greptile SummaryThe PR synchronizes the canonical OpenAPI contract to upstream revision
Confidence Score: 4/5The 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
|
| parameters: | ||
| - name: organization_id | ||
| required: true | ||
| in: path | ||
| description: The ID of the organization. | ||
| schema: | ||
| type: string | ||
| example: org_01EHWNCE74X7JSDV0X3SZ3KJNY | ||
| responses: | ||
| '200': | ||
| description: OK |
There was a problem hiding this 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
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!
SDK compatibility report❌ Matrix result:
Missing diagnostics
Changes by domain
|
| 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 |
|
superseded by #109 |
🤖 I see new OpenAPI changes beep boop
Automated update from https://github.com/workos/workos/tree/b098f28a1d85a657ff00b37287a5303a9e549a93
Source PRs
Changes