"""Intercom helpers.""" from typing import List from intercom.client import Client from handle_user_changes import config from handle_user_changes.utils import retry if config.ENABLE_INTERCOM_USER_UPDATE: intercom_client = Client(personal_access_token=config.INTERCOM_ACCESS_TOKEN) @retry() def upsert_users(users: List[dict], job_id: str or None = None): """Batch upsert (insert or update) users to intercom. Args: users (List[dict]): Set of user's profile information. job_id (str or None): Intercom batch job ID. """ result = intercom_client.users.submit_bulk_job(create_items=users, job_id=job_id) return result.id