27 #include <olp/authentication/AppleSignInProperties.h>
28 #include <olp/authentication/AuthenticationApi.h>
29 #include <olp/authentication/AuthenticationCredentials.h>
30 #include <olp/authentication/AuthenticationSettings.h>
31 #include <olp/authentication/AuthorizeRequest.h>
32 #include <olp/authentication/SignInResult.h>
33 #include <olp/authentication/SignInUserResult.h>
34 #include <olp/authentication/SignOutResult.h>
35 #include <olp/authentication/SignUpResult.h>
36 #include <olp/authentication/Types.h>
37 #include <olp/core/client/ApiResponse.h>
38 #include <olp/core/client/CancellationToken.h>
39 #include <boost/optional.hpp>
49 namespace authentication {
50 class AuthenticationClientImpl;
68 boost::optional<std::string> scope{boost::none};
76 boost::optional<std::string> device_id{boost::none};
85 std::chrono::seconds expires_in{0};
109 unsigned int expires_in{0};
157 unsigned int expires_in{0};
205 bool marketing_enabled{
false};
261 unsigned int expires_in{0};
345 client::CancellationToken SignInHereUser(
370 client::CancellationToken SignInFederated(
393 client::CancellationToken SignInFacebook(
417 client::CancellationToken SignInArcGis(
461 client::CancellationToken SignInRefresh(
482 client::CancellationToken SignUpHereUser(
509 client::CancellationToken AcceptTerms(
511 const std::
string& reacceptance_token,
533 client::CancellationToken SignOut(
535 const std::
string& user_access_token,
552 client::CancellationToken IntrospectApp(std::
string access_token,
571 client::CancellationToken Authorize(std::
string access_token,
596 client::CancellationToken GetMyAccount(std::
string access_token,
600 std::shared_ptr<AuthenticationClientImpl> impl_;
The Apple sign-in properties.
Definition: AppleSignInProperties.h:30
Provides programmatic access to the HERE Account Authentication Service.
Definition: AuthenticationClient.h:59
AuthenticationClient(AuthenticationSettings settings)
Creates the AuthenticationClient instance.
Callback< SignOutResult > SignOutUserCallback
The callback type of the user sign-out response.
Definition: AuthenticationClient.h:286
Callback< SignInUserResult > SignInUserCallback
The callback type of the user sign-in response.
Definition: AuthenticationClient.h:274
AuthenticationClient & operator=(const AuthenticationClient &)=delete
A copy assignment operator.
Callback< SignInResult > SignInClientCallback
The callback type of the client sign-in response.
Definition: AuthenticationClient.h:268
AuthenticationClient(const AuthenticationClient &)=delete
A copy constructor.
AuthenticationClient(AuthenticationClient &&) noexcept
A default move constructor.
Callback< SignUpResult > SignUpCallback
The callback type of the user sign-up response.
Definition: AuthenticationClient.h:280
The access key ID and access key secret that you got from the HERE Account as a part of the onboardin...
Definition: AuthenticationCredentials.h:45
Encapsulates the fields required to make a policy decision for a given request context against the HE...
Definition: AuthorizeRequest.h:47
Represents a request outcome.
Definition: ApiResponse.h:65
Callback< AuthorizeResult > AuthorizeCallback
Called when the user decision request is completed.
Definition: Types.h:52
Callback< model::UserAccountInfoResponse > UserAccountInfoCallback
Called when the get user account request is completed.
Definition: Types.h:58
Callback< IntrospectAppResult > IntrospectAppCallback
Called when the user introspect app request is completed.
Definition: Types.h:46
std::function< void(Response< ResultType >)> Callback
The callback template type.
Definition: Types.h:40
Rules all the other namespaces.
Definition: AppleSignInProperties.h:24
The federated (Facebook, Google, ArcGIS) sign-in properties structure.
Definition: AuthenticationClient.h:116
std::string access_token
(Required) A valid Facebook, Google, or ArcGIS access token obtained from the Facebook,...
Definition: AuthenticationClient.h:121
std::string language
The code of the language that you speak in the ISO 639-1 alpha-2 format.
Definition: AuthenticationClient.h:139
std::string email
Your valid email address.
Definition: AuthenticationClient.h:147
std::string country_code
The code of the country in which you live in the ISO 3166-1 alpha-3 format.
Definition: AuthenticationClient.h:130
Used to generate a new access token and contains token values returned as a response to the user sign...
Definition: AuthenticationClient.h:236
std::string refresh_token
(Required) The refresh token value returned in the response of the user sign-in operation.
Definition: AuthenticationClient.h:251
std::string access_token
(Required) The access token value returned as a response to the user sign-in operation.
Definition: AuthenticationClient.h:243
General properties used to sign in with client credentials.
Definition: AuthenticationClient.h:64
Used to create a new HERE account for the specified user with the email and password that are your lo...
Definition: AuthenticationClient.h:164
std::string email
(Required) Your valid email address.
Definition: AuthenticationClient.h:168
std::string language
(Required) The code of the language that you speak in the ISO 639-1 alpha-2 format.
Definition: AuthenticationClient.h:200
std::string password
(Required) Your plain-text password.
Definition: AuthenticationClient.h:173
std::string date_of_birth
(Required) Your date of birth in the following format: dd/mm/yyyy.
Definition: AuthenticationClient.h:178
std::string phone_number
(Optional) Your valid phone number.
Definition: AuthenticationClient.h:212
std::string last_name
(Required) Your last name.
Definition: AuthenticationClient.h:188
std::string first_name
(Required) Your first name.
Definition: AuthenticationClient.h:183
std::string realm
(Optional) The realm in which you want to create the user.
Definition: AuthenticationClient.h:222
std::string country_code
(Required) The code of the country in which you live in the ISO 3166-1 alpha-3 format.
Definition: AuthenticationClient.h:194
std::string invite_token
(Optional) The valid Authorization Invite Token with a payload that matches the user email and reques...
Definition: AuthenticationClient.h:229
The user sign-in properties struct.
Definition: AuthenticationClient.h:91
std::string password
(Required) Your plain-text password.
Definition: AuthenticationClient.h:100
std::string email
(Required) Your valid email address.
Definition: AuthenticationClient.h:95
Configures the TokenEndpoint instance.
Definition: AuthenticationSettings.h:49