Ethers decode/get information about collection and token from Etherscan transaction

I am using Ethers and I am listening to Open Sea contract to get latest sales. The problem that I know how to get transaction hash, how to get price etc. but I do not know how can I get collection details and ID of the token that was sold. Is it even possible to get it? Where is it stored. I see something like this:

  args: [
    '0x0000000000000000000000000000000000000000000000000000000000000000',
    '0x57caab574ab5d945029c09beac5bfd9f39f669513c7d4dea0941a96c1017a80e',
    '0x1D6F2F0356B3DefAdf14b1a0F8A3Dcda89367D68',
    '0x78f0269f5b1Ca914c8c58993f41181f89e212B27',
    BigNumber { _hex: '0x1bc16d674ec80000', _isBigNumber: true },      
    '0x5c5321ae45550685308a405827575e3d6b4a84aa000000000000000000000000',
    buyHash: '0x0000000000000000000000000000000000000000000000000000000000000000',
    sellHash: '0x57caab574ab5d945029c09beac5bfd9f39f669513c7d4dea0941a96c1017a80e',
    maker: '0x1D6F2F0356B3DefAdf14b1a0F8A3Dcda89367D68',
    taker: '0x78f0269f5b1Ca914c8c58993f41181f89e212B27',
    price: BigNumber { _hex: '0x1bc16d674ec80000', _isBigNumber: true },
    metadata: '0x5c5321ae45550685308a405827575e3d6b4a84aa000000000000000000000000'
  ]

I know I can get price from it. But where is information about collection or collection address or something? Is it stored in metadata? If yes how can I decode it?

I know that I can go to transaction like here – https://etherscan.io/tx/0xe29462cd6cd6cfcf2f05a3139de1aead4fc9e84d8966ad9a5227b996eb90c33d but I want to get it from contract listener in ethers.