Importing a bunch of btc private keys into bitcoin core, then monitoring and sweeping them all to another address?
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.