Skip to Content

mutatingPostResolveHook Configuration

Published: October 19, 2021

Mutating postResolve Hooks let you rewrite the response of an Operation. You've got access to the Request Context as well as the input, so it's possible to use these as a means to manipulating the Response of an Operation.

Here's an example:

const wunderGraphHooks = ConfigureWunderGraphHooks({
queries: {
Missions: {
async mutatingPostResolve(ctx: Context, input: MissionsInput, response: MissionsResponse) {
return {
...response,
data: {
...response.data,
missions: response.data?.missions?.filter(mission => mission.id === "Telstar")
}
}
}
}
},
})

In this case, we're filtering the missions of the Response Object using a static name. However, it's also possible to create one or more hook Variables so that you can dynamically manipulate the response based on the user inputs. These inputs can be validated using the JSON Schema directive.


Product

Subscribe to our newsletter!

Stay informed when great things happen! Get the latest news about APIs, GraphQL and more straight into your mailbox.

© 2021 WunderGraph