Customer Profile
A customer profile contains the data that Login with Amazon applications can access regarding a particular customer. This includes: a unique ID for the user; the user's name, the user's email address, and their postal code. This data is divided into three scopes: profile
, profile:user_id
and postal_code
.
When you request an access token, you can request multiple access scopes
by separating them with a space (for example, profile postal_code
). When your request is granted, it will specify the scope(s) returned.
profile
The profile
scope includes a user's name and email address. With access to the customer's profile, you can uniquely identify them when they login, and you can communicate with them via email. The profile data is returned in JSON format and consists of three parts: the user_id
, the email
, and the name
. The user_id
is assigned by Amazon, and uniquely identifies the user's account. The email
is the email address that they have registered with Amazon. For example:
{
"email" : "johndoe@gmail.com",
"name" : "John Doe",
"user_id" : "amzn1.account.K2LI23KL2LK2"
}
When a website or app requests access to the profile
scope, the user will be presented with a consent screen
the first time they login. The consent screen shows the information requested and their current values. The user must consent to share this information in order for login to complete. After the user consents, that consent is recorded and future attempts to login with the same scope will not present a consent screen.
profile:user_id
The second access scope is profile:user_id
. profile:user_id
only includes the user_id
field of the profile. This uniquely identifies the user but does not provide their name, email address, or postal code. Because no personal information is requested, the user will not be presented with a consent screen the first time they log in.
Every company that creates websites or apps for Login with Amazon gets the same user_id
for a customer. However, when a customer logs in to another company's app or site, the user_id
will be different. This is so user_id
cannot be used to track customers across the Web.
postal_code
The third access scope is the postal_code
scope. This includes the user's zip/postal code number from their primary shipping address. The postal code provides valuable location data that allows you to tune your offerings and understand your customers better. For example:
{
"user_id" : "amzn1.account.K2LI23KL2LK2"
"email" : "johndoe@gmail.com",
"name" : "John Doe",
"postal_code": "98101",
}
When an app requests access to the postal_code
scope, alone or in concert with the profile
or profile:user_id
scope, the user will have to consent to share the information.
Last updated: Nov 25, 2020