Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Page updated Apr 29, 2024

Record events

AWS will end support for Amazon Pinpoint on October 30, 2026,, and is no longer accepting any new users as of May 20 (see the linked doc). The guidance is to use AWS End User Messaging for push notifications and SMS, Amazon Simple Email Service for sending emails, Amazon Connect for campaigns, journeys, endpoints, and engagement analytics. Pinpoint recommends Amazon Kinesis for event collection and mobile analytics.

Recording Custom Events

To record custom events call the record API:

import { record } from 'aws-amplify/analytics';
record({
name: 'albumVisit',
});

Analytics events are buffered in memory and periodically sent to the service and not saved locally between application sessions. If the session is ended before a buffered event is sent, it will be lost. Use the flushEvents API to manually send buffered events to the service.

Record a Custom Event with Attributes

The record API lets you add additional attributes to an event. For example, to record artist information with an albumVisit event:

import { record } from 'aws-amplify/analytics';
record({
name: 'albumVisit',
attributes: { genre: '', artist: '' },
});

Recorded events will be buffered and periodically sent to Pinpoint.

Record Engagement Metrics

Metrics can also be added to an event:

import { record } from 'aws-amplify/analytics';
record({
name: 'albumVisit',
metrics: { minutesListened: 30 },
});

Metric values must be a Number type such as a float or integer.

The AWS Pinpoint event count updates in minutes after recording your event.

However, it can take upwards of 30 minutes for the event to display in the Filter section, and for its custom attributes to appear in Pinpoint.

Flush events

The recorded events are saved in a buffer and sent to the remote server periodically. If needed, you have the option to manually clear all the events from the buffer by using the 'flushEvents' API.

import { flushEvents } from 'aws-amplify/analytics';
flushEvents();