Allow API-based user authentication via Github Token


I would like to add CircleCI support to a project that requires API-based access to CircleCI and GitHub. For Travis, which the project already supports, I can pass the Travis API a Github token and get a TravisCI API token back. Thus, the user is logged in just by approving my GitHub application can have access to their account – The only requirement is that the user has to have logged in once manually to Travis via Browser (so that the User allows the Travis application access to his or her Github).

I’d like to be able to do the same thing with CircleCI, so that my existing project supports both. Right now, the only way to perform CircleCI API functions on behalf of a user is to ask them to go extract an API key from and give it to your application. This is way too tedious when they could just auth with Github.

I want users to visit my site, click “Login with GitHub,” approve that my registered GitHub application can access their account when GitHub prompts them, and then have access to all kinds of cool additional features they couldn’t do with CircleCI or GitHub alone.

Please let us make CircleCI more awesome by making it easier to integrate with other services!


I would also just add that if this programmatic ability to authenticate a CircleCI user and automatically get an API key were possible, many of your other integrations would become self-service… e.g. Slack or Hipchat could build their own integration vs. waiting on you all to create or maintain each feature.


What about this feature ?