update api & add clear data function