If an API call is made as part of a workflow that executes server-side, we also make the call a second time when evaluating the workflow client-side as we have to reevaluate the inputs when the call is not in cache. The value from the client-side API call is then cached so that it won't be made again with the same parameters.
Check out our manual entry here for more information on server and client-side actions.