title: Is a corrupted file an Invalid Argument?
body: <p>I'm programming a service with a team. The service receives a file as a byte array and returns a response. We are expecting a specific type of file (PDF, WORD, EXCEL, TXT, etc)</p>
  
  <p>We are discussing what type of exception throws if the file is corrupted or invalid (a 0 bytes PDF file for example).</p>
  
  <p>We are using gRPC as the communication protocol, so I'm thinking in return an Invalid Argument status code, but some coworker disagrees with me and proposes to use the Unknown status code.</p>
  
  <p>Which scenarios allow me to use the Invalid Argument status code?</p>