@aws-amplify/analytics
Version:
Analytics category of aws-amplify
48 lines (47 loc) • 1.58 kB
TypeScript
import { IdentifyUserInput } from '../types';
/**
* Sends information about a user to Pinpoint. Sending user information allows you to associate a user to their user
* profile and activities or actions in your application. Activity can be tracked across devices & platforms by using
* the same `userId`.
*
* @param {IdentifyUserInput} params The input object used to construct requests sent to Pinpoint's UpdateEndpoint
* API.
*
* @throws service: {@link UpdateEndpointException} - Thrown when the underlying Pinpoint service returns an error.
* @throws validation: {@link AnalyticsValidationErrorCode} - Thrown when the provided parameters or library
* configuration is incorrect.
*
* @returns A promise that will resolve when the operation is complete.
*
* @example
* ```ts
* // Identify a user with Pinpoint
* await identifyUser({
* userId,
* userProfile: {
* email: 'userEmail@example.com'
* customProperties: {
* phoneNumber: ['555-555-5555'],
* },
* }
* });
* ```
*
* @example
* ```ts
* // Identify a user with Pinpoint with some additional demographics
* await identifyUser({
* userId,
* userProfile: {
* email: 'userEmail@example.com'
* customProperties: {
* phoneNumber: ['555-555-5555'],
* },
* demographic: {
* platform: 'ios',
* timezone: 'America/Los_Angeles'
* }
* }
* });
*/
export declare const identifyUser: ({ userId, userProfile, options, }: IdentifyUserInput) => Promise<void>;