What kind of authenticate/ authorize / token I need to post something on twitter? And few basics questions



I would like to use

  • only rest & java & unirest (lib for requests)

I dont like to

  • use: any other libs or other frameworks
  • have any web page
  • my app to open browser or something
  • have gui

Just pure code and nothing else

I have 2 questions:

  1. Can sb guide me what kind of authentication / authorizing / token I need to post something on twitter stream? (Like humans doing it but via code)
  2. Is creating bearer token (Application-only authentication) the best way to see others people twitter stream? ( I already did this one)
  3. Why there are:
    Application-Only Authentication,
    3-Legged OAuth,
    PIN-Based OAuth,
    xAuth,OAuth Echo

and also things like
GET oauth/authenticate
GET oauth/authorize
POST oauth/access_token
POST oauth/request_token
Whats the difference?