Can the discount be restricted to certain collections?

Yes — you can limit ambassador discount codes to specific collections.

In Settings, find Discount applies to, choose Specific collections, and pick the collections you want. Click Save at the bottom of the page. Existing ambassador codes are updated automatically, so you don't have to touch them one by one.

The Discount applies to setting with specific collections selected

Restricting to individual products or SKUs isn't supported today, and neither are exclusion lists. If you need to cover just a few products, the usual workaround is to put them in their own collection and select that.

One Shopify limitation to know about: Shopify doesn't allow an order-level discount code to be converted into a product-level one. Any codes created before you made this change need to be recreated — here's how: Reset a discount code for an ambassador.