Your question is a good one, since I hadn't thought about it before. I had to consider a long time.
Both are correct, but they each might be used more in certain situations.
If I am talking generally about someone's time, with few or no restrictions, I would say "When is it a good time to call you?"
If I was referring to a particular day or a definition period of time, I would more probably say "When is a good time to call you?"
If I'm irritated that I can't reach someone and want to emphasize that fact, I might say "When is it EVER a good time to call you?"
Note that I could have switched the two forms in either situation and still be correct. I am referring to a tendency, not a strict rule of grammar.