Is there an API (probably provided by Twitter but not necessarily) that will give me the Twitter username for each email address I give it?
Official response from Twitter on this issue is here - http://code.google.com/p/twitter-api/issues/detail?id=353
"This API method is offered in a closed beta at this time, and we are not accepting new partners. However, we're working on the long-term strategy for this method and will keep you in mind when we decide to open it up again. I am sorry for the inconvenience this may cause in the meantime, and please let me know if you have any other questions."
To my knowledge, the Twitter API doesn't expose or otherwise give access to the email address.
I understand your needs, as I also wish this were available, but I believe this is the decision Twitter went with.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
You would think that people would have answered this questions dozens or even hundreds of times, but to my surprise it seems that people perhaps are not interested in this in iOS development?
I am creating an app (Xcode, Swift 4) that is going to require people to login. The credentials once they are verified are going to be stored in a database of sorts, but before the account exists users must sign up. The registration process is supposed to consist of an email verification and later a phone number verification.
How can I verify someone's email address using a confirmation email sent from the app or some server attached to the app? I specifically do not want to use outside libraries such as Parse or Firebase that I have found online. If there is a library in the Apple Dev API that I am missing I would greatly appreciate a nudge in the right direction.
Thank you to anyone who can help me out.
You can't programmatically send an email on behalf of the user, using user's credentials and targeting user's SMTP server choice. Even if you figured out a trick to it, Apple would never allow it in the App Store due to user privacy & security risks.
You could try putting an entire stack of code into your app to communicate with your own SMTP server, using hardcoded credentials in your app, but to do so securely is a lot of work, and I suspect it'd be a lot of work in general.
Your best bet is to just have your app communicate (NSURLSession) with your server to send up user's registration info and have the server then do whatever it needs, including emailing the user a confirmation email.
These tutorials may help you:
iOS Registration Form Example using PHP and MySQL
User login and register/sign up example using Swift on iOS.
As for how to have your server send a text message, see this SO answer
(Assuming you have some type of server management knowledge)
yes you don't need to Firebase or Parse to achieve that but it's pain free :(
Do you want a Server or (Google Cloud Functions or AWS Lambda)?
(Keep in mind that your app 'd need to talk to each choice via HTTP or HTTPS request).
(you can get that VM anywhere AWS EC2, Google Cloud VM, Digital Ocean)
Let's start with the server, you need to create some REST API and running it from a specific port 80 or 443(secured one). Instead of learning a new language, you can use Swift (look at library such as Vapor that would help create that rest api, or check for other library).
**if you are not using swift, then use javascript (Node.js library such as Express would help you create that api) **
Email or Phone Verification Logic (server side, your api has a specific route that handles verification):
(look for library that let's send email on the server side. )
in this route/path you'd receive from your app a Dictionary that contains an email or phone number
compute some random number
2 cases here: (email) send an email to the user's email with a message body containing that random code. (phone number) you using Twillio api to send code via text message.
To end your api route/path's response, send this random code to app ( cache it into UserDefault or whatever you preferred, because when the user inputs the received code, you need to verify it (since the code generated from server side is cached, I mean now you get the gist )
Managing that VM:
keep vm port lock from the outside meaning firewall
you need to update the system
what if your system reboots (what happens to your api)
what if you get a lot of requests at once (you should have load balancing))
Cloud functions or AWS Lambda (ELB + Api Gateway + Lambda instead):
no need to manage a server
can't use swift, you'd need to learn javascript or python
same Verification logic applies here
To secure connection between from your app to your api, look at JWT Token, you need to make sure nobody else can't access any routes from your api
One of my clients have a situation to pay their website user directly from platform account to user. I can do it by using their transfer payment API.
But, my client want to pay to user's email so that user can have option to perform rest of the action.
I went through their API documentation but don't see anything related to do that. Does anyone have similar experience or know anything related to do that?
Stripe's API doesn't have anything like that, but it is something you may be able to build into your application.
I think you might want to contact Stripe Support and fill them in on your use case and see if they can offer you some specific suggestions.
I am working on a tool inside of a current iOS app that I only want to be available to a handful of people. The company email addresses are all gmail.
How can I make the app work in a way that, You sign into your google account, and on the server end it will check if you have access or not. If you do, it will then move on to the tool page.
Does Google API have anything on this?
Thanks in advance
Google App Engine has the Users API which you can use to allow people to log in with a Google Account. You can the write server side code to cross check the logged in email address against your whitelist (which may or may not be configurable), and only allow access if the emails match.
Is that the kind of thing you mean?
I've been told to use Oauth2.0, but I don't understand what I am to do with it on either side.
I would specifically like to achieve the persistent login that Facebook and Twitter maintain in their respective iOS apps.
PLEASE give me a specific answer (and hopefully an example too!)
I know that this may be achieve with Oauth2.0, but I have been unable to find an example as to how (even after extensive research- if I could find the answer I wouldn't be asking the question here.)
Thank you in advance!
-John
I would like my application to programmatically update my user's gmail/google talk status on their behalf but I dont want to store their password because of the privacy risk
Does anyone know if/how it is possible to use Oauth or some other form of authentication that does not require password storage.
The Google data api docs I have seen support a range of services but dont seem to support Google Talk/Gmail beyond the Google Contacts api.
The Google Talk API seems to explicitly state that username and password are required but I could be mistaken
If it helps, my application is built on App Engine so I can at least use the built in user class to determine their username and email without storing their password but this doesnt seem to give me access to the user's status
Any tips or pointers to apps/code that seems to accomplish this would be helpful. Thanks!
This may not be what you are looking for but it might be a step in the right direction for you.
"the Google Contacts Data API now supports OAuth."
http://groups.google.com/group/oauth/browse_thread/thread/75ee6d973930c791
The post says that "This is our first step towards OAuth enabling all Google Data APIs." And it's quite old so maybe they'll have information about the Gmail API.
Hope it helps.