Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

Amplitude

This documentation for the Amplitude integration describes the technical capabilities of this integration, including authorization, scopes/permissions, and utilized endpoints. For more information on how to integrate Amplitude, visit our connection instructions.

Version

This integration utilizes the Amplitude HTTP API V2.

Base URL

The base URL used for all Amplitude API endpoints:
https://amplitude.com/api/2/

Authentication & Authorization

The DataGrail Amplitude integration connects using token authentication which requires an API Key and API Secret.

Sensitive Credentials
Publicly exposing your API credentials can allow unauthorized access to Amplitude API endpoints by a third party. DataGrail stores your API credentials encrypted and protected.

Scopes

The Amplitude integration requires specific scopes that must be granted in order to function for a given capability.

ScopeBaseAccessDeletion
Admin
Base Scopes
All base scopes must be granted in order to connect the integration with DataGrail. The remaining scopes are only required if enabling those capabilities

Endpoints Utilized

DataGrail uses the following endpoints to authorize and test the connection:


Limits

Limits in Amplitude are calculated using the leaky bucket algorithm. All requests that are made after rate limits have been exceeded are throttled and an HTTP 429 Too Many Requests error is returned. Requests succeed again after enough requests have emptied out of the bucket.

  • DataGrail supports requests throttling to stay within 70-80% of specified service rate limits.
  • DataGrail processes API responses with HTTP 429 status to interrupt requests, waiting and retrying (using an exponential backoff strategy).

Capabilities

Access

DataGrail's Amplitude integration provides Synchronous Access capabilities for the following supported identifier categories: Email, User ID, and Service ID.

Data Interactions

For Access requests with project-level Amplitude credentials, DataGrail will take the following actions:

  1. Search for a User whose User ID or Amplitude ID matches identifiers provided in the request.
  2. For all identified users, fetch a user summary and the most recent 1000 events including all of the events from their most recent session.

For Access requests with organization-level Amplitude credentials, DataGrail will take the following actions:

  1. Create a Data Request.
  2. Regularly poll the submitted Data Request.
  3. When the request is complete, download the output.

Endpoints Utilized

MethodEndpointPurposeDocs
POST/dsar/requestsCreate a data request.
GET/dsar/requests/REQUEST_IDPoll an existing data request.
GET/dsar/requests/REQUEST_ID/outputs/OUTPUT_IDDownload the output of a data request.
GET/useractivityFetch 1000 most recent events associated with retrieved users.
GET/usersearchSearch for a user by the provided identifier.

Deletion

DataGrail's Amplitude integration provides Asynchronous (Whole Record) Deletion capabilities for the following supported identifier categories: Email, User ID, and Service ID.

Data Interactions

For Deletion requests, DataGrail will take the following actions:

  1. Request a User be scheduled for deletion by the identifiers provided in the request.
  2. List deletion jobs scheduled in a time range and check the job status. The request will repeat until the job is completed.
  3. Search for deleted Users to verify deletion.

Endpoints Utilized

 

Need help?
If you have any questions, please reach out to your dedicated CSM or contact us at support@datagrail.io.

Disclaimer: The information contained in this message does not constitute as legal advice. We would advise seeking professional counsel before acting on or interpreting any material.