Hi. I think the issue here is in your app configuration. Due to the way Twitter OAuth apps are presently configured, you need to provide a dummy callback URL in your app configuration or else the API will restrict you to OOB (pin-based) auth only.
To fix this, head to the Apps Dashboard and add “https://example.com” as your app’s callback URL (or your own URL if you prefer — it won’t actually get requested.)
Ben