Do they have to tell me why I was fired? Generally, if you don't have a union, your boss does not have to tell you (verbally or in writing) why you were fired.
If you have union protection, you must be notified in writing of any discipline, including being fired, and given the opportunity to appeal (contact your shop steward or local union immediately). Some states have a requirement to give former employees a letter about their work history. Check your state to see your rights.
Service letters give the dates of your employment and some general statement about why your employment ended (for example: termination for poor attendance, lay off, etc). Usually, the information is not specific or detailed about your situation. It is often vague, which is frustrating because you want a real answer about your situation. You may have to request the letter in writing. The states laws differ in what they say and, in some cases, don't cover all employees.
If you work in a state that makes employers give service letters, get one every time you leave a job. It's a good record to have.
If you work in a state that doesn't have a law, you may be able to get a letter by asking for it. If your former company won't give you one, you can send them a letter stating why they said they were firing you and asking them to reply if your letter is incorrect.
You can also see if your state has a law permitting former employees to see their personnel file. There may be something in your file about why you were fired.