Returning null from a GraphQL mutation in type-graphql
![Photo by Taylor Vick on Unsplash](/_next/image?url=%2Fimages%2Frandom-blog-covers%2Ftaylor-vick-M5tzZtFCOfs-unsplash.jpg&w=1920&q=75)
Null is not a GraphQL type so to return null from a GraphQL mutation you have to return a GraphQL type that is nullable. All GraphQL types are nullable by default so you can just return a bool in the schema but return void from the implementation.
It shouldn't be too common to have a null response though, even for a mutation it could be better to return a state of the created item.
// With type-graph ql you have to set the schema type nullable (Boolean!) AND set the nullable option to true
@Mutation(returns => Boolean!, {nullable: true})
@Authorized()
async deployBranch(
@Arg('deploySpecificBranchRequest', { nullable: false }) deploySpecificBranchRequest: DeploySpecificBranchRequest,
@Ctx() ctx: Context
): Promise<void> {
if (ctx && ctx.userId) {
// some implementation in here
}
}