Each Page that has its own content should get its own canonical URL. It sounds like each of the pages your mention have their own content and should get their own canonical URL:
Note that I included the full absolute URL including
https://example.com/ because the canonical link should always be absolute.
The times that you want the same canonical for different URLs is when they have the same content. For example:
In other words when there are differences in URLs that serve the same page, one of those URLs should be designated as the canonical URL. Those differences could be caused by:
- alternate domains and subdomains
- alternate protocols
- alternate spellings and capitalization
- copied code
- trailing slashes
- default directory documents
- pretty URL rules
- tracking parameters
When you create your XML sitemap, you should only include the canonical URLs. Google doesn't want to see non-canonical, duplicate, or redirecting URLs in your XML sitemap.