Google EventTicketClass cannot remove HeroImage once sent
17:43 03 Dec 2025

I have the debugging code below in an otherwise working service class to create and update Google Wallet Passes

I am completely unable to remove the HeroImage once one is sent as part of the insert.

If I attempt to patch, I get two errors:

  • WITH ['updateMask' => 'heroImage'] the error is: 'google-api-php-client.ERROR: Service parameter unknown {"service":"walletobjects","resource":"eventticketclass","method":"update","parameter":"updateMask"} []'
  • WITHOUT ['updateMask' => 'heroImage'] the error says I have an "empty patch bdoy"

If I attempt to update my entire class and use setHeroImage(null) it won't work, as it is typecast to an Image class. Trying to feed it empty class info just fails further down the chain

How can I remove a HeroImage via the Client API?

My libraries are:

    "google/apiclient": "^2.15",
    "google/apiclient-services": "~0.300",

        $patchClass = new Walletobjects\EventTicketClass([
        'heroImage' => new Walletobjects\Image,  // or null
    ]);

    try {
        return $this->service->eventticketclass->patch(
            "{$this->issuerId}.{$classSuffix}",
            $patchClass,
            //            ['updateMask' => 'heroImage']
        );

    } catch (Exception $ex) {
        throw new Exception("An issue occurred while updating your Google Wallet Class: {$classSuffix} ::".$ex->getErrors()[0]['message']);
    }
google-wallet eventticketclass