Sync and Watch COntract Events is not capturing an event

Following the Rarible clone tutorial, my Marketplace.sol contract is raising the event
"event itemSold(uint256 id, address buyer, uint256 askingPrice); " but the table “SoldItems” in Moralis is not been updated and is not throwing any error.

I also have this cloud function:
Moralis.Cloud.beforeSave(“SoldItems”, async (request) => {
const query = new Moralis.Query(“ItemsForSale”);
query.equalTo(“uid”, request.object.get(‘uid’));
const item = await query.first();
if(item) {
request.object.set(‘item’, item);
item.set(‘isSold’, true);
await item.save();

  const userQuery = new Moralis.Query(Moralis.user);
  userQuery.equalTo('accounts', request.object.get('buyer'));
  const userObject = await userQuery.first({useMasterKey: true});
  if(userObject) {
      request.object.set('user', userObject);
  }
}

});

Any Idea what could be wrong?

Thanks

can you provide the details about what you added to that event sync? topic, abi

Topic: itemSold(uint256, address, uint256)

Abi: {
“anonymous”: false,
“inputs”: [
{
“indexed”: false,
“internalType”: “uint256”,
“name”: “id”,
“type”: “uint256”
},
{
“indexed”: false,
“internalType”: “address”,
“name”: “buyer”,
“type”: “address”
},
{
“indexed”: false,
“internalType”: “uint256”,
“name”: “askingPrice”,
“type”: “uint256”
}
],
“name”: “itemSold”,
“type”: “event”
}

TableName: SoldItems

the topic should be without spaces: itemSold(uint256,address,uint256)

Even without the spaces is still not working, either way I am using another event with this topic:
“itemAdded(uint256, uint256, address, uint256)”. It is with spaces but this one is working. Not idea why the “itemSold” is not been captured