Importing a bunch of btc private keys into bitcoin core, then monitoring and sweeping them all to another address? I'm trying to build a service where I import a bunch of pirvate keys into bitcoin core or some other software if you recommend a better solution. Once the private keys are imported, I want to monitor these addresses and if anything is positive have it send it to another wallet address I own.

The solution I came up with was import the private keys with importprivkey api call, but does this take multiple private keys or do I have to loop through them?

Once I import these private keys into my wallet. I want to be able to detect if one of the following occurs:


if the entire wallet balance is greater than .001
or if 1 hour passes


Then, send all coins in the wallet to another address. My questions are:


Is there a service to monitor the bitcoin balance, or do I just have to make a cron job to query it every second?
When using sendtoaddress api call, do I have to specify a change address? 
How do other people usually solve this problem?
When using sendtoaddress api call, do I have to specify a change address?


No, it generates a new key pair and sends the balance to it. This key pair is stored in your wallet.dat file.