I totally agree with you. Its awkward to use my actual login with
basic authentication. The API should provide its own means of
authentication.
An api key or token is more common. Have a look at
http://developer.37signals.com/basecamp/
. I really like their approach. The token is enabled in your account
settings. You can always generate a new token if you believe your
token was compromised. No need to change my actual password. The token
is used with basic authentication. Just use the token as username and
write whatever you like for the password.