For those not fluent in internet-ese, the semantics are something like "The subject under discussion has an aesthetic I want to emulate"; if I saw a picture of someone wearing an outfit I like, I might type "#goals", or if I was actually talking with my voice I'd pronounce that as "hashtag goals". The fact that I'm effectively just expressing an emotion makes me think that it's an interjection, but I'm not sure.
There are different approaches to such innovations in part of speech tagsets (for an overview see this answer to "A List of Parts of Speech"). You can treat it as a "symbol" (a special class for internet speech related things, in Universal Dependencies), as "other" (a quite typical approach), or, as you propose, as an interjection.
Whatever you decide, make your decision and your reasoning behind it clear in the documentation of your corpus.
Disclaimer: I know little of syntax, so don't take this as an expert viewpoint. (I would not advise accepting this answer.)
I don't think it's really possible to give any single analysis. "Goals" is normally a noun, and I see no reason why that wouldn't be true in this context. Nouns can play many syntactic roles, and in a one-word utterance, there isn't a lot that pins down what the role of the word is.
I found a document on Martin J. Packer's website that provides some discussion of the syntax of one-word utterances (holophrasis). It mentions David McNeill, who argues that single-word utterances by children should be understood as having grammatical relations that are not overtly expressed. But even if we assume there is an underlying syntactic structure like this to "#goals", I see no way of knowing exactly what this internal structure is. "Goals" could be seen as expressing the idea "These are my goals" (where the word is syntactically part of a predicate) or "I have these goals" (where the word is syntactically part of a direct object). (Of course, there are also many multiple-word sentences that have multiple possible syntactic parses.)
I don't really know what "interjection" means as a syntactic term. It seems to me that it might be a placeholder categorization for things that don't fit in well in other categories.