Turns out I was approving the wrong CA in approve_tokens I wanted to approve a different spender address than the account.address I was originally using.
approve_tokens
account.address