Overview
We have a number of deprecated resolvers in our GraphQL API tooling that we plan to remove on 1/6/2025 that may impact your integrations if you're currently utilizing. Below we outline the specific mutations and fields that will be deprecated that will require update or replacement to avoid failures. If you have any questions or concerns about these updates please don't hesitate to reach out via support ticket.
For additional reference you can see the section here in our GraphiQL documentation that describes how to identify and handle deprecated resolvers. Additionally, an overview of APIs and GraphQL can be found in the Kuali API Documentation article.
Mutations that will no longer work
The below mutations have been replaced and if still utilized should be replaced by the below referenced mutation to avoid failures:
- setAppDataSharing (use shareApp instead)
- invokeIntegration (use invokeSendIntegration instead)
- setIntegrationDataSharing (use shareIntegration instead)
- updateWorkflowSettings (use updateAllWorkflowSettings instead)
Fields on resolvers that currently return “null”
These are subfields on resolvers that don’t return any data which you may be referencing (although unlikely). Once we remove it will cause any queries that include these fields to fail. To resolve you will need to stop referencing these fields in the query or update to replacement if available:
- action.publishUrlPath (urlPaths are no longer supported. Please use appId)
- app.description (this data is no longer being used)
- app.requireUser (this functionality has been replaced by PolicyGroups)
- app.publishUrlPath (we now use id based urls)
- app.publishAnonymousUrlPath (we now used id based urls)
- app.publishListViewPath (we now use id based urls)
Fields that currently return a value
These are subfields on resolvers that do currently return valid data but will be deprecated and require updates. Once removed it will cause any queries that include these fields to fail. To fix you will need to change the queries to use the below specified replacement fields:
- app.firstTableId (no longer needed)
- app.draft (moved to app.dataset.draft)
- app.formId (moved to app.dataset.formId)
- app.formContainerId (moved to app.dataset.formContainerId)
- app.documentListConfig (moved to app.dataset.documentListConfig)
- app.labelSize (moved to app.dataset.labelSize)
- app.paginated (moved to app.dataset.paginated)
- app.showNewFormButton (moved to app.dataset.showNewFormButton)
- app.autoStartNewForm (moved to app.dataset.autoStartNewForm)
- app.changeTypes (moved to app.dataset.changeTypes)
- app.workflowViewerOnSubmission (moved to app.dataset.workflowViewerOnSubmission)
- app.workflowId (moved to app.dataset.workflowId)
- app.groupIds (this functionality has been replaced by PolicyGroups)
- app.dataSharedWith (use app.sharedWithOthers instead)
- app.appsSharingDataWithMe (use apps.sharedWithMe instead)
- app.publishVersion (moved to app.dataset.publishVersion)
- app.allowExport (moved to app.dataset.allowExport)
- app.submissionsDisabled (moved to app.dataset.submissionsDisabled)
- app.form (this is named poorly please use formContainer to request the formContainer this will eventually contain the actual form)
- sharedApp.pages (renamed to datasets)
- form.fullSchema (please use form.schema instead as it contains the entire expanded schema)
roles (this method will be deprecated) - invokeFetchIntegration (use integration.invoke instead)
- integration.dataSharedWith (use sharedWithOthers instead)
Comments
0 comments
Article is closed for comments.