It is actually a legitimate question. So, let's go ahead and break it down. You have frequently noticed that some people in academia, businesses or for job postings call it Farsi or Persian Farsi. Some folks go even further down the road, and in order to find the right speakers of the language for their own purposes and needs, try to shed more light on it, customize it a little bit more and suggest it as Iranian Farsi! Although you might say this last combination brings with it more clarity to what we are trying to say, it is not recommended at all!
Still confusing, I know! Bear with me. So, what is finally the correct way to say it? Okay, let's put it this way: What do you call the language which is spoken in Italy? Of course you know it, it is called Italian. But how do people in Italy actually name their own language? If you are curious to know, they call it Italiano (or Italiana). Now, if you are in Italy, you should definitely use the word Italiano. But if you are in the United States, you call it Italian because this is how we use the word in English, right? Even an Italian does the same. If s/he is here in the States, s/he would tell you: I speak Italian not Italiano, makes sense?
So, by the same token, people in Iran call the language "Farsi", not Persian while they are in Iran, but the same people, if they are in the States, they call it, or better say, they should call it "Persian" as it is the English word for Farsi, and so should we when we refer to the language that is spoken in Iran.
Your next legitimate question: But I have heard many Iranian nationals in the States or in the west who call it Farsi, how come? And you heard it right. Since it is widely spoken in social media and specially with the globalization in place, they may do so. However, if you want to articulate it in an official/academic setting or in an article, a book, or in a presentation, "Persian" is the right word.
On the other hand, Iranians are very sensitive to call it the "correct" way, that is the word Persian, outside of Iran for two main reasons:
First, it goes back to the great civilization they rightly cherish at the time when their great empire was called "Persia" and the language named after it as Persian, and that is why we now use the word "Persian" in English. Second, It distinguishes Persian from other versions of the Farsi language as it is spoken in Afghanistan which is called "Dari' or some prefer to say it as "Dari Farsi", or what is spoken in Tajikistan called "Tajiki". People in these three countries may understand each other, for the most part, but the three variants of the language are differentiated from each other by sentence structure, dialect, vocabulary usage and even verb conjugation. So, if you just call the language "Farsi", it may not be that clear which specific region you are referring to; however, expressing the word as "Persian" precisely indicates the language which is spoken in Iran.
* Copyright notice: You may use this post by adding the source and the URL link to the page.
Learn Foreign Languages
with Professional Native Speaker Instructors
Find out more here.