Maxim #1: If you are going to lose the battle, don't fight it
Product Managers are bombarded with asks both from internal stakeholders and customers. The volume of asks always exceeds available resources, so most of the time, the answer to asks is going to some polite form of no. When evaluating asks, product managers should determine if saying no to an ask is a losing battle. For most asks, the end result of saying no or not now is going to be that ask isn't fulfilled.
However, there is a category of asks for things you do not want to do, but you will lose the battle in the end. The stakeholder or the customer has enough pull, or the ask is important enough to them that you will end up agreeing to it. Most product managers will not consider what the end result is going to be and politely say no, but if you are going to lose this battle in the end, it's better not to fight it. You end up annoying your stakeholders for no gain. If you are going to lose in the end, better to agree upfront and spend your energy on managing expectations on delivery time frame.
I learned this lesson when I was responsible for deciding on fixing security issues for an on-premise enterprise software product. Customers would run security scans and flag vulnerabilities in third-party software packages that were part of our offering. Often, the vulnerability related to functionality of the third party that we did even use. Initially, I thought the best course was to say we would not fix these issues because they were non-issues, and fixing them by upgrading third-party packages took engineering time. Pushing back on these asks was a losing approach, particularly with large financial institution customers with extensive internal security rules. Whether my assessment was correct did not matter. The security team at a large financial institution was not going to permit the presence of software with known vulnerabilities. Better to acknowledge the issue, agree to fix it, and negotiate a reasonable time frame.
While security issues are a clear-cut example, any ask can fall number this maxim. If multiple stakeholders are saying feature X is their number #1 priority, but you know it's expensive to build and have doubts about revenue impact, you should really consider if it's a winnable battle, and you also reflect on why you have a different read on the business impact. Saying no to this ask will be expensive politically and require you to present a compelling alternative of what you will build instead. If this is a battle you are ultimately going to lose in the end, it's better not to fight it. Perhaps you should only debate timing or scope.
You will both save yourself grief and be perceived better inside the company if you don't fight battles you can not win. Knowing which battles are unwinnable takes experience as a product manager and a deep knowledge of how your larger organization functions, but it's a skill worth building.