Alokai

deleteProductReview

Delete a product review.

It deletes a review from commercetools by sending a request to its GraphQL API. By default, it uses the deleteReviewDefaultQuery GraphQL query.

Vue Storefont ships with a built-in mechanism ensuring reviews belonging to authenticated users can only be deleted by their authors. The method will throw an error when used to delete a review added by another user.

Signature

declare function deleteProductReview(
	context: CommercetoolsIntegrationContext,
	params: DeleteReviewParams,
	customQuery?: CustomQuery
): Promise<DeleteReviewResponse>;

Parameters

NameRequiredTypeDescription
contextRequiredCommercetoolsIntegrationContext
paramsRequiredDeleteReviewParams
customQueryOptionalCustomQuery

Returns

Returns a representation of the DeleteReviewResponse.

Referenced Types

Examples

Deleting a product review.

const { review } = await sdk.commerce.deleteProductReview({
  id: 'c9e9a3c8-547f-4bc0-907d-4805423e803b',
  version: 1
});

Creating a custom GraphQL query for the method in middleware.config.ts.

export const integrations = {
    ct: {
      // ...
      customQueries: {
        'delete-product-review-custom-query': ({ query, variables, metadata }) => ({
           variables: Object.assign(variables, metadata?.variables),
           query: `
             mutation deleteReview($id: String, $version: Long!) {
               review: deleteReview(id: $id, version: $version) {
                 ${metadata?.fields}
               }
             }
           `
        }),
      }
    }
  }
};

Deleting a product review and selecting response fields using the custom GraphQL query from the previous example. Notice how we are using the type parameter to overwrite the default response interface.

const { review } = await sdk.commerce.deleteProductReview({
  id: 'c9e9a3c8-547f-4bc0-907d-4805423e803b',
  version: 1
}, {
  deleteReview: 'delete-product-review-custom-query',
  metadata: { fields: 'id,version' }
});

On this page