I want to mutate the ATGs of a gene, but I also want to not influence the original function of the protein. May I know whether there are criteria for selecting substitution of codon?
You need to provide a bit more information on what you are trying to do. For many amino acids there are multiple codons that code the same amino acid, so you can readily change those to a different codon and have the same amino acid in the protein. However ATG encodes methionine and there are no alternate methionine codons. There are however similar amino acids which often can be found in nature instead of methionine. You could try one of those but you can't be absolutely certain if it will work until you try.
However the above answer is for codons internal to the protein. If you are referring to the ATG start codon, then the answer is quite different. GUG is the most common alternate start codon in bacteria, so you could try that. However if you are expressing in eukaryotic systems I don't alternate start codons are very common (although others in the Researchgate community may be more knowledgeable about that than I am)