How to obtain the phone number when reading facebook contacts - api

I thought it was impossible to read phone numbers of contacts using facebook APIs, but "Facebook for HTC Sense" android application is syncing all that information to my local agenda.
Somebody knows how are they implementing this feature?

Is it for people you already have in your contacts? It's possible they are just cross-referencing other pieces of information (like email) against your local contact info.
Because phone number isn't a field in the graph nor is it one in the corresponding FQL table.

The fql fields are "cell" and "other_phone" but they are not available unless your app is whitelisted like obviously their iphone/android apps are. You can request those fields but they will return back null values, confirming those are the fields (requesting fields that don't exist throws errors).

Related

WhatsApp Business api cloud: How do I register a Customer's phonenumber via api?

Currently, I am using WhatsApp Business api cloud on one of my web project, I would like to register a customer's phone number but via api instead through meta, developer platform like following:
"Here is the image to register customer's number in the meta developer platform"
I want do this:
(managing the phone numbers)
but via api, and later of that send the verification code via api as well.
If someone can help me , telling me if that is possible and sharing documentation or the endpoint I would appreciate it very much, I've been looking at the documentation and postman's examples for 2 days without any success.
I'm sorry I didn't share the pictures directly, it is my first question on Stackoverflow
Thanks in advance,
Greetings!
I guess you are using WhatsApp provided a test phone number in From, you need to read this, https://developers.facebook.com/docs/whatsapp/cloud-api/get-started#sent-test-message
Enter the recipient phone number you would like to message in the To field. Ensure the number is correct, and that you want to add it to your list of 5 possible message recipients —as you add phone numbers, follow the prompts on the screen to verify you have access to them. Once this number has been added, it cannot be removed from your list.
Note: This limitation is only for WhatsApp-provided test phone numbers. Real phone numbers that you register do not have a limit on the number of recipients.
You don't need to register receivers' phone numbers if you are using your own real business phone number in the sender's phone number.

SMS Retriever API - phone picker source

Does Google's SMS Retriever API get the list of phone numbers from the SIM lines on the user's device (which means that it's similar to TelephonyManager), or from the user's Google Play account?
I'm the product manager at Google for this API. Yes, as of the latest version of Play Services, the Phone Selector shows both the phone number for the device from the TelephonyManager (if it can be parsed as as a valid phone number) as well as recent phone numbers for the active Google Accounts on the device.
This is not directly addressed from the docs but if we infer from this statement in the Obtain the user's phone number:
Often, it is the best user experience to use the hint picker to prompt
the user to choose from the phone numbers stored on the device and
thereby avoid having to manually type a phone number
we can deduce that SMS Retriever API gets the contacts from your device.
Update
Please look at #Steven Soneff's answer
The numbers are retrieved from Smart Lock for Passwords on Android. They are retrieved if the user already stored it using Smart Lock else they will be empty. You may also ask the user to store the number for future use-cases using Smart Lock for Passwords.

How to sync registered users in database with iPhone contacts

Imagine an iphone app that automatically registers users on the first start according to their phone identity (e.g. phone number*) on a server database.
Afterwards, users should see which of their friends already use the app, i.e. which of their contacts are registered on the DB.
An obvious solution would be to always send a select-request to the DB containing all of the users contacts, everytime the user refreshs his or her friend list. As a result, the user retrieves the list of their registered contacts (friends).
Is there any better way to realize this synchronization between the user management on the server and the contacts in the user's address book. Sending multiple select-requests (each user for every refresh) with dozens of phone numbers might not be performant at all.
Example:
WhatsApp is actually a good example for this scenario. You can add new contacts to your address book and WhatsApp automatically refreshs your WhatsApp friend list according to your phone book. I really like this idea because the user don't need to create an account manually.
*I know about the problems of using phone numbers in AppStore apps, so this question really focusses on the architectural problem.
EDIT
this comment (Whatsapp contacts syncronization) describes the mentioned simple approach. but is this really the smartest way?

Services that get facebook emails

I've noticed that my android phone, the iphone, outlook.com, and yahoo mail all can import my friends' email addresses (and sometimes phone numbers) from facebook. However, I don't see anywhere in the documentation of the API to suggest that you can get email.
Do these services have special agreements with Facebook or am I just not finding the specific api for "contact" importing? I've not had any luck using "email" field with friends api.
Any ideas?
These services have some special agreements with Facebook and thus are able to retrieve the Email Ids of the Friends of the User. Most of them don't allow further exporting of data obtained from there directly.
And as per Email Permissions documentation here it clearly states that for App Developers
Note: There is no way for apps to obtain email addresses for a user's friends.
As per the phone number, there is no access to it no matter what permission. You may though ask the user to fill those for you.

API for "People" contact data

I'm working on a Win8 metro signup flow and would like to be able to seamlessly pull, using the user-provided phone #, a photo and display name from the built-in "People" app. I'm having trouble finding documentation/code outside of ContactPicker (which isn't what I need).
Couple questions:
Is there an API to pull contact data that would be present in the "People" app?
If so, is there a way to configure capabilities to avoid interrupting the user with a modal "Ok for app xyz to access your address book"?
Thanks.
Confirmed that there is no API to pull contacts programmatically.
You can't pull contacts without permission, it's a security feature. You CAN interrogate the contact data users pick via the Contact Picker though.
You therefore have to ask the user to pick contacts relevant to your task, call the single / multiple contact picker then once picked, you can interrogate the contacts as much as you want. They have phone numbers, emails, locations all the data you might want hanging off those.
As far as I can tell, there's no way to maintain a persistent link to them though, so store that data while you can.