Use the Event Streaming Metrics API to monitor delivery metrics for your event streams.
API uses basic authentication, using the API key and secret key for your project. Pass base64-encoded credentials in the request header like {api-key}:{secret-key}
. api-key
replaces username, and secret-key
replaces the password.
Your authorization header should look something like this:
--header 'Authorization: Basic YWhhbWwsdG9uQGFwaWdlZS5jb206bClwYXNzdzByZAo'`
For more information, see Find your API Credentials
Region | Endpoint |
---|---|
Standard server | https://amplitude.com/api/2/event-streaming/delivery-metrics-summary |
EU residency server | https://analytics.eu.amplitude.com/api/2/event-streaming/delivery-metrics-summary |
start
or end
time beyond this threshold returns a 500
status.The API has a limit of 4 concurrent requests per project, and 12 requests per minute per project. Amplitude rejects anything above this threshold with a 429
status code.
Send a GET
request with required and optional parameters to https://analytics.amplitude.com/api/2/event-streaming/delivery-metrics-summary
.
Here is a basic request with only the required parameters.
1curl --location --request GET 'https://analytics.amplitude.com/api/2/event-streaming/delivery-metrics-summary?sync_id=SYNC_ID&time_period=TIME_PERIOD' \2-u '{api_key}:{secret_key}'
1GET /api/2/event-streaming/delivery-metrics-summary?sync_id=SYNC_ID&time_period=TIME_PERIOD HTTP/1.12Host: analytics.amplitude.com3Authorization: Basic {api-key}:{secret-key} #credentials must be base64-encoded
Gets the last four hours of data for the decoded sync ID
Example: Get the last four hours
30001625
.
Gets the last hour of data for the decoded sync ID
Example: Get the last hour
30001625
.
Gets the data between October 1, 2022 at 7:00 AM UTC +1 and October 31, 2022 at 7:00 AM UTC +1 for the decoded sync ID
Example: Get data for a custom period
30001625
.
Name |
Description |
---|---|
sync_id |
Required. The ID for a specific streaming destination. You can find this ID under the title of the sync on the destination's setting page. |
time_period |
Required. Retrieves the data for a specified period. Can be one of the following values:TEN_MINUTES ONE_HOUR FOUR_HOURS ONE_DAY ONE_WEEK TWO_WEEKS CUSTOM |
start |
Optional, but required if time_period is CUSTOM . The inclusive starting time of the custom interval in the format YYYY-MM-DDThh:mmTZD (ISO-8601). For example, 2022-10-01T07:00:00+01:00 |
end |
Optional, required if time_period is CUSTOM . The exclusive end time of the custom interval in the format YYYY-MM-DDThh:mmTZD (ISO-8601). For example, 2022-10-31T07:00:00+01:00 |
The response is a JSON blob with the retrieved delivery metrics for the specific sync.
Attribute | Description |
---|---|
timePeriod |
string. The time_period sent in the request. |
eventsDelivered |
int. The total number of delivered events. |
eventsNotDelivered |
int. The total number of events that weren't delivered. |
deliveryRate |
double. The delivery success rate. |
latencyInSeconds |
double. The p95 latency in seconds. |
timePeriodStart |
string. The UTC (ISO-8601) timestamp for the request start time. |
timePeriodEnd |
string. The UTC (ISO-8601) timestamp for the request end time. |
successOnFirstAttempt |
int. Events delivered successfully in the first attempt. |
successAfterRetry |
int. Events delivered successfully after one or more retries. |
eventsExpired |
int. Events that weren't sent after all retry attempts. |
eventsDiscarded |
int. Events that weren't sent due to data incomplete/invalid. |
1{ 2 "timePeriod": "CUSTOM", 3 "eventsDelivered": 19, 4 "eventsNotDelivered": 0, 5 "deliveryRate": 1.0, 6 "latencyInSeconds": 5.098051910578275, 7 "timePeriodStart": "2022-10-01 06:00:00.000000", 8 "timePeriodEnd": "2022-10-31 06:00:00.000000", 9 "successOnFirstAttempt": 19,10 "successAfterRetry": 0,11 "eventsExpired": 0,12 "eventsDiscarded": 013}
Code | Message |
---|---|
200 | Success |
400 | Bad request |
401 | Unauthorized |
403 | Forbidden: attempt to access sync outside of organization and app. |
429 | Rate limit exceeded |
500 | Internal server error |
Thanks for your feedback!
May 21st, 2024
Need help? Contact Support
Visit Amplitude.com
Have a look at the Amplitude Blog
Learn more at Amplitude Academy
© 2024 Amplitude, Inc. All rights reserved. Amplitude is a registered trademark of Amplitude, Inc.