For a transfer of ether from account_A to account_B to take place, a transaction must be created authorizing the transfer and then signed with the private keys associated with account_A -- i.e., by (one of) the owners of account_A. If this weren't the case, it would be possible for anyone to transfer ether from into their own accounts!
If you are the owner of account_A, then you can sign the transaction on your own machine and then submit it to other nodes for inclusion in a block through your own node or via an API. Alternately, I believe some centralized exchanges allow you to send transactions from the accounts they have created in your name. And there may also be some centralized wallets for ethereum that also provide API access, but I wouldn't know.