def METHOD_NAME(self) -> typing.Tuple[bool, typing.Optional[str]]:
    sync_status = False
    error_msg = None
    api_token = live_settings.GRAFANA_CLOUD_ONCALL_TOKEN
    if api_token is None:
        logger.warning("Unable to sync with cloud. GRAFANA_CLOUD_ONCALL_TOKEN is not set")
        error_msg = "GRAFANA_CLOUD_ONCALL_TOKEN is not set"
    existing_emails = [user.email for user in User.objects.all() if user.is_notification_allowed]
    matching_users = []
    users_url = create_engine_url("api/v1/users", override_base=GRAFANA_CLOUD_ONCALL_API_URL)
    fetch_next_page = True
    users_fetched = True
    page = 1
    while fetch_next_page:
        try:
            url = urljoin(users_url, f"?page={page}&short=true&roles=0&roles=1")
            r = requests.get(url, headers={"AUTHORIZATION": api_token}, timeout=5)
            if r.status_code != 200:
                logger.warning(
                    f"Unable to fetch page {page} while sync_users_with_cloud. Response status code {r.status_code}"
                )
                error_msg = f"Non-200 HTTP code. Got {r.status_code}"
                users_fetched = False
                break
            data = r.json()
            matching_users.extend(list(filter(lambda u: (u["email"] in existing_emails), data["results"])))
            page += 1
            if data["next"] is None:
                fetch_next_page = False
        except requests.exceptions.RequestException as e:
            logger.warning(f"Unable to sync users with cloud. Request exception {str(e)}")
            error_msg = "Unable to sync with cloud"
            users_fetched = False
            break
    if users_fetched:
        with transaction.atomic():
            cloud_users_identities_to_create = []
            for user in matching_users:
                cloud_users_identities_to_create.append(
                    CloudUserIdentity(
                        cloud_id=user["id"],
                        email=user["email"],
                        phone_number_verified=user["is_phone_number_verified"],
                    )
                )
            CloudUserIdentity.objects.all().delete()
            CloudUserIdentity.objects.bulk_create(cloud_users_identities_to_create, batch_size=1000)
        sync_status = True
    return sync_status, error_msg