Skip to main content

Amplitude Data Source

The Amplitude connector enables you to ingest raw event data and analytics from Amplitude using the Export API, allowing you to extract user events, analyze user behavior, and export data for further processing. This connector is particularly useful for applications that need to extract event data, sync analytics to other systems, or perform custom analysis on Amplitude data.
amplitude_api.png

Amplitude

Follow the instructions below to create a new data flow that ingests data from an Amplitude source in Nexla.

Create a New Data Flow

  1. To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Then, select the desired flow type from the list, and click the Create button.

  2. Select the Amplitude connector tile from the list of available connectors. Then, select the credential that will be used to connect to the Amplitude instance, and click Next; or, create a new Amplitude credential for use in this flow.

  3. In Nexla, Amplitude data sources can be created using pre-built endpoint templates, which expedite source setup for common Amplitude endpoints. Each template is designed specifically for the corresponding Amplitude endpoint, making source configuration easy and efficient.
    • To configure this source using a template, follow the instructions in Configure Using a Template.

    Amplitude sources can also be configured manually, allowing you to ingest data from Amplitude endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this source manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Amplitude endpoints. Each template is designed specifically for the corresponding Amplitude endpoint, making data source setup easy and efficient.

Endpoint Settings

  • Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.

    Export Events

    This endpoint exports raw event data from Amplitude as compressed JSON archives. Use this endpoint when you need to extract large volumes of event data, perform custom analysis, or sync event data to other systems.

    • Enter the start date in the Start Date field in the format YYYYMMDDTHH (e.g., 20251001T00). This defines the beginning of the export time range. The default is {now-1} (one day ago).
    • Enter the end date in the End Date field in the format YYYYMMDDTHH (e.g., 20251002T00). This defines the end of the export time range. The default is {now} (current time).
    • Enter a schedule in the Schedule field to specify when this data source should run. The schedule uses cron expression format.
    • The endpoint returns compressed ZIP archives containing JSON files with event data. Nexla automatically extracts and processes the JSON files from the ZIP archive.

    The export endpoint is designed for bulk data extraction and returns data in compressed ZIP format. The date format uses YYYYMMDDTHH (e.g., 20251001T00 for October 1, 2025 at midnight). For complete information about exporting events, see the Amplitude Export API Documentation.

    Get Event Types

    This endpoint retrieves metadata about event types in your Amplitude project. Use this endpoint when you need to discover available event types, analyze event schemas, or build dynamic workflows that operate on different event types.

    • Enter a schedule in the Schedule field to specify when this data source should run. The schedule uses cron expression format.
    • The endpoint returns event type metadata including event names, descriptions, and properties.

    This endpoint is useful for discovering available event types before configuring more specific endpoints. The returned data includes event type information that can be used to understand your Amplitude project structure. For complete information about retrieving event types, see the Amplitude Dashboard REST API Documentation.

    Get User Activity

    This endpoint retrieves user activity data for a specific user. Use this endpoint when you need to analyze individual user behavior, track user journeys, or extract activity data for specific users.

    • Enter the Amplitude User ID in the Amplitude User ID field. This should be the Amplitude User ID or Device ID for the user whose activity you want to retrieve.
    • Enter a schedule in the Schedule field to specify when this data source should run. The schedule uses cron expression format.
    • The endpoint uses pagination to handle large volumes of user activity data efficiently, automatically fetching additional pages as needed.
    • Each activity record includes event information, timestamps, and user properties.

    User activity data includes all events associated with a specific user. The endpoint supports pagination to handle users with extensive activity history. You can find user IDs by using the "User Search" endpoint first. For complete information about retrieving user activity, see the Amplitude User Activity API Documentation.

    User Search

    This endpoint searches for users and retrieves their Amplitude IDs. Use this endpoint when you need to find users by their user ID, discover Amplitude user identifiers, or build workflows that require user ID lookups.

    • Enter the User ID to search for in the User ID to Search field. This should be the user_id (string) that you want to search for in Amplitude.
    • Enter a schedule in the Schedule field to specify when this data source should run. The schedule uses cron expression format.
    • The endpoint returns matching user records including their Amplitude IDs and user properties.

    User search is useful for finding Amplitude user identifiers when you have external user IDs. The search returns matches including the Amplitude ID that can be used with other endpoints like "Get User Activity". For complete information about user search, see the Amplitude User Search API Documentation.

Endpoint Testing

Once the selected endpoint template has been configured, Nexla can retrieve a sample of the data that will be fetched according to the current settings. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Configure Manually

Amplitude data sources can be manually configured to ingest data from any valid Amplitude API endpoint. Manual configuration provides maximum flexibility for accessing endpoints not covered by pre-built templates or when you need custom API configurations.

With manual configuration, you can also create more complex Amplitude sources, such as sources that use chained API calls to fetch data from multiple endpoints or sources that require custom authentication headers or request parameters.

API Method

  1. To manually configure this source, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Amplitude API from the Method pulldown menu. The most common methods are:

    • GET: For retrieving data from the API (most common for Amplitude data sources)

API Endpoint URL

  1. Enter the URL of the Amplitude API endpoint from which this source will fetch data in the Set API URL field. This should be the complete URL including the protocol (https://) and any required path parameters.

Amplitude API URLs typically follow the format: https://amplitude.com/api/2/export for event exports, or https://amplitude.com/api/2/events/list for event types. Replace the base URL with your data residency region if using EU (e.g., https://analytics.eu.amplitude.com). Ensure the API endpoint URL is correct and accessible with your current credentials. You can test the endpoint using the Test button after configuring the URL. For complete information about Amplitude API endpoints, see the Amplitude Export API Documentation.

Request Headers

  1. If Nexla should include any additional request headers in API calls to this source, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

You do not need to include authentication headers (Basic Authentication with API Key and Secret Key) as these are automatically included from your credentials. However, you may need to include additional headers for specific Amplitude API features. The Content-Type header should be set to application/json for most Amplitude API requests.

Response Data Path

  1. Enter the JSON path expression that identifies the location of the data array in the API response in the Response Data Path field. This path tells Nexla where to find the array of records in the JSON response.

For Amplitude API responses, the data path varies by endpoint. For event list responses, use $.data[*] to extract individual event type objects from the data array. For user activity responses, use $.events[*] to extract individual event objects. For user search responses, use $.matches[*] to extract matching user records. JSON path expressions use dot notation and array indexing to navigate the response structure. For complete information about Amplitude API response formats, see the Amplitude API Documentation.

Schedule

  1. Enter a schedule in the Schedule field to specify when this data source should run. The schedule uses cron expression format to define the frequency and timing of data ingestion.

Common cron expressions include: 0 6 * * * for daily at 6 AM, 0 */6 * * * for every 6 hours, and 0 0 * * 0 for weekly on Sunday at midnight. For more information about cron expressions, see the Nexla documentation on scheduling.