For a microservice to be idempotent it must produce the same output if given the same inputs.
Or in other words, it is idempotent if it's logic can be invoked more than once and produce only one side effect.
https://microservices.io/patterns/communication-style/idempotent-consumer.html