from typing import Dict, List from apollo_utils.job.clients.base.client import BaseApiClient from juno_email_messages.clients.base_config import ApiConfig from juno_email_messages.constants import Service class ApolloClientConfig(ApiConfig): service = Service.APOLLO class ApolloClient(ApolloClientConfig, BaseApiClient): def get_markets(self, extended: bool = True) -> Dict[str, str]: result = self.send_request("api/markets/", get_json=True, extended=extended) result = {i["code"]: i["name"] for i in result} if "_gl" in result: result["worldwide"] = result["_gl"] return result def get_users_emails(self, user_id_list: List[str]) -> Dict[str, str]: result = self.send_request("api/users/emails/", get_json=True, id=user_id_list) return {i["user_id"]: i["email"] for i in result["items"]}