Is there other API’s that I can use to achieve this? I would like to have whole control on the HTML markup (what user see), and then use some JavaScript calls to make user following my site without navigate away. Is this possible?

Remember that with Web Intents you don’t have to navigate the user away from your page, you can open them in a pop-up window over the top of your page.

If you want to have a custom, inline follow experience, you’ll need to build an application using the OAuth API and have the user authorize your website (to do an inline follow a user needs to be authorized.)

Thanks Ben. You are right, the user was not navigate away. It is a pop-up. I just want to have a “one click” experience for the users (just like the follow button with iFrame). Two follow up questions:

Seems that OAuth API is the only option for now to achieve this. For a user signed in, is it possible use the existing authentication?

For example, if a user already signed in to twitter (on twitter.com), is it possible I use the existing authentication on my site and add user as a follower without request the user to sign in again?

Do I need to contact Twitter to add my app to the allowed list (if it exist) before using the OAuth API?

A user doesn’t need to log in again, but they do need to authorize your application to use their account. You only need to do that once, after which you store the access token credentials on your side.

Follow-up question:
Using O-auth, could we combine follow on twitter functionality with other services? For example, a custom ‘Follow’ button with clear messaging/iconography that triggers a follow request in my own web service (follow this topic on ‘MySite.com’), as well as a follow request on twitter?

Or alternatively, a follow button that exposes multiple options on click. For example:
‘Follow’
(menu on click):

I think so long as you’re clear to the user what is happening, yes. You can integrate “Follow on Twitter” actions wherever makes sense within your UI.

I’d advise caution combining separate systems too tightly though: If a user later unfollows a person on Twitter but finds they’re still following them on your site, there could be confusion. But certainly chaining actions together is something you can do once you’re authed.