def METHOD_NAME(self):
    city_finder = f"https://recyclecoach.com/wp-json/rec/v1/cities?find={self.city}, {self.state}"
    res = requests.get(city_finder)
    city_data = res.json()
    if len(city_data["cities"]) == 1:
        self.project_id = city_data["cities"][0]["project_id"]
        self.district_id = city_data["cities"][0]["district_id"]
        self.stage = float(city_data["cities"][0]["stage"])
        if self.stage < 3:
            raise Exception(
                "Found your city, but it is not yet supported fully by recycle coach."
            )
    elif len(city_data["cities"]) > 1:
        for city in city_data["cities"]:
            if city["city_nm"].upper() == self.city.upper():
                self.project_id = city["project_id"]
                self.district_id = city["district_id"]
                self.stage = float(city["stage"])
                return True
        # not sure what to do with ambiguity here
        # print(json.dumps(city_data['cities'], indent=4))
        raise Exception(
            "Could not determine district or project, Debug here to find your discrict and project_id"
        )