IMPORTANT: All deprecated functionality will be removed on November 15, 2025. If you have any questions or need assistance with the migration, please contact our support team.
We are deprecating several Quest-related GraphQL types, fields, and input filters as part of our migration to an improved Quest reporting system (reportV2 and findQuests). These changes streamline Quest data retrieval and provide better support for multiple Quest selections.
Deprecated Items
1. Query Fields on
QuestsResponsequestDetails(first: Int, after: String): QuestDetailsConnection- Status: Deprecated
-
Replacement: Use
findQuestsand/orreportV2instead -
Reason: Being replaced with a more efficient implementation that supports querying multiple Quests simultaneously
report(filter: QuestFilterInput!): QuestReportResponse!- Status: Deprecated
-
Replacement: Use
reportV2instead -
Reason: The new
reportV2provides enhanced filtering capabilities and better data aggregation
2. Input Type:
QuestFilterInputThe entire
QuestFilterInput type is being deprecated and replaced by QuestFilterInputV2.Deprecated Fields:
questSourceId: String!-
Replacement: Use
questSourceIds: [String!]!(plural) inQuestFilterInputV2 -
Note: The new field accepts multiple Quest IDs, enabling multi-Quest reporting
questRevisionNumber: Int-
Replacement: None -
reportV2always returns data for the latest Quest revision -
Note: Revision tracking is now handled automatically
tags: [String!]-
Replacement: Use the filtering options in
reportV2 -
Note: Filtering by tags is still supported but through the new input structure
teamIds: [ID!]-
Replacement: Use the filtering options in
reportV2 - Note: Filtering by teams is still supported but through the new input structure
3. Response Fields on
QuestReportResponseAll fields on
QuestReportResponse are deprecated in favor of reportV2:-
details: QuestDetails!→ UsereportV2.quests -
objectiveCompletion(...)→ UsereportV2.objectiveCompletion -
objectiveAccuracy(...)→ UsereportV2.objectiveAccuracy -
securityConceptObjectiveCompletion(...)→ UsereportV2.securityConceptObjectiveCompletion -
learners: QuestLearners→ UsereportV2.learners
Migration Guide
Before (Deprecated - Single Quest)
query {
quests {
report(filter: {
questSourceId: "quest-123"
questRevisionNumber: 5
tags: ["engineering"]
teamIds: ["team-1", "team-2"]
}) {
details {
name
status
}
objectiveCompletion(first: 10) {
edges {
node {
category
completionRate
}
}
}
learners {
objectiveAssignedLearners(first: 20) {
edges {
node {
name
email
}
}
}
}
}
}
}After (Recommended - Multiple Quests Support)
query {
quests {
reportV2(filter: {
questSourceIds: ["quest-123", "quest-456"]
tags: ["engineering"]
teamIds: ["team-1", "team-2"]
}) {
quests {
edges {
node {
name
status
}
}
}
objectiveCompletion(first: 10) {
edges {
node {
category
allLearnersCompletedRate
}
}
}
learners {
objectiveAssignedLearners(first: 20) {
edges {
node {
name
email
}
}
}
}
}
}
}
Key Differences
-
Multiple Quests:
reportV2accepts multiple Quest IDs viaquestSourceIds(plural) -
Automatic Latest Revision: No need to specify
questRevisionNumber- the latest revision is always used -
Enhanced Fields: Some completion fields have been renamed (e.g.,
completionRate→allLearnersCompletedRate) -
Filtering: Tag and team filtering is handled through the new filter structure in
reportV2
Backward Compatibility
The deprecated fields and types will continue to function until November 1, 2025. However, we strongly recommend migrating to reportV2 and findQuests as soon as possible to:
- Take advantage of multi-Quest reporting
- Ensure uninterrupted service after the deprecation date
- Benefit from improved performance and data accuracy
Action Required
Please update your API integrations to use:
-
findQuestsfor retrieving Quest details -
reportV2withQuestFilterInputV2for Quest reporting data
Comments
0 comments
Please sign in to leave a comment.