1

I have a mobile application which uses data from a REST API, and needs an API key for that particular user to access what it needs. The problem is that the API keys are anything but short.

9baa92910b304f8c9eeb39c3c0319b21

Even MORE of a problem is that the application may need a lot of these API keys depending on what the user is looking for.

Copy-Paste is REALLY hard on mobile devices. What are the alternatives? The only thing I can think of is some sort of shortener, but I don't know how that would work.

Any help is greatly appreciated!

  • How is user notified of the key? What about special URL to open your app with user key in parameter? – Frantisek Kossuth Nov 8 '14 at 19:40
  • The API key is actually on an external service, Rollbar, which is a completely separate company which I have no control of. The users have a specific API key for every project which they can see on the access tokens page. So I can't think of how that would work. – naiveai Nov 9 '14 at 5:55
  • Almost the same issue had occured with IP addresses, then they implemented DNS. Sorry, this is a technical solution, not usability one, still it has great impact on UX of your app. – Alexey Kolchenko Nov 9 '14 at 10:44
  • Does rollbar display the API key as a QR code? If not, ask them to add that feature. – longneck Nov 11 '14 at 4:19
1

A couple of solutions may help you here but it depends on the level of control you have over the user flow between the app providing the key and your app receiving it.

  1. QR Codes
    If the user is getting an API key from a service in a desktop browser to passing this to your mobile app you could consider implementing QR codes in the desktop view and a reader in your app. This cuts out the need to type in long keys.

    Give them the option to still enter manually in case they can easily copy and paste.

  2. Link to your app
    You could consider using a URL scheme to pass the API token to your app. Clicking a link on the site or in an email would pass the code directly to the app.

These all depend on whether you can control the flow. If you cannot then the simplest and most desirable solution is to simply allow your users to authenticate your app with the api provider and your app do all the work.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.