How do you determine whether Bitcoin Core is synced fully or not from the RPC API?
Use getblockchaininfo and check the value of the initialblockdownload field. If it is true, BItcoin Core is still syncing. If it is false, it is done syncing (or very very close to done).