This guide explains how to retrieve streaming session analytics using Eagle’s Analytics API. Use this API to:
-
Monitor overall streaming activity
-
Retrieve session-level analytics
-
Analyze streaming usage over a selected date range
Endpoint
POST https://agw.eagle3dtreaming.com/api/v4/fb/user-data-by-range
Request Body
Send a JSON object in the following format:
{
"start": "YYYY-MM-DDTHH:mm:ss.sssZ",
"end": "YYYY-MM-DDTHH:mm:ss.sssZ",
"apiKey": "YOUR_PERSONAL_API_KEY",
"uid": "YOUR_ASSIGNED_UID"
}
Request Parameters
|
Parameter |
Type |
Required |
Description |
|---|---|---|---|
|
|
String |
Yes |
Start of the analytics range, as an ISO 8601 UTC timestamp (e.g. 2026-06-01T00:00:00.000Z ). |
|
|
String |
Yes |
End of the analytics range, as an ISO 8601 UTC timestamp (e.g. 2026-06-15T00:00:00.000Z ). |
|
|
String |
Yes |
Your personal Eagle API key. |
|
|
String |
Yes |
Your unique Eagle user identifier (UID). Contact Support Team if you do not have your UID. |
Example Request Body
{
"start": "2025-04-01T00:00:00.000Z",
"end": "2025-04-10T00:00:00.000Z",
"apiKey": "abc123xyz456",
"uid": "btl6CxobgXRgrbiednegoin2289357gdfkKJBFB"
}
Node.js Example
The following example demonstrates how to call the Analytics API using Node.js and Axios.
Replace the uid and apiKey values with your own credentials before running the script.
const axios = require("axios");
const API_URL =
"https://agw.eagle3dstreaming.com/api/v4/fb/user-data-by-range";
const getUserDataByRange = async (uid, start, end, apiKey) => {
try {
const response = await axios.post(
API_URL,
{
uid,
start,
end,
apiKey,
},
{
headers: {
"Content-Type": "application/json",
},
}
);
return response.data;
} catch (error) {
console.error(
"API Error:",
error.response?.data || error.message
);
throw error;
}
};
const uid = "YOUR_UID";
const start = "2026-06-01T00:00:00.000Z";
const end = "2026-06-15T00:00:00.000Z";
const apiKey = "YOUR_API_KEY";
(async () => {
try {
const data = await getUserDataByRange(uid, start, end, apiKey);
console.dir(data, { depth: null, colors: true });
} catch (error) {
console.error("Status:", error.response?.status);
console.error("API Error:", error.response?.data || error.message);
}
})();
Example Response
A successful request returns a response similar to the following:
{
"data": {
"count": 138,
"streamedMinutes": 515.45,
"data": [
{
"appName": "DemoAppTP",
"appVersion": "3",
"city": "Texas",
"country": "USA",
"videoStartTime": "Mon, 01 Jun 2026 06:10:04 GMT",
"videoStopTime": "Mon, 01 Jun 2026 06:11:04 GMT",
"streamTime": 1
},
{
"appName": "DemoAppTP",
"appVersion": "3",
"city": "London",
"country": "UK",
"videoStartTime": "Tue, 02 Jun 2026 05:34:14 GMT",
"videoStopTime": "Tue, 02 Jun 2026 05:35:44 GMT",
"streamTime": 1.5
}
]
}
}
Response Structure
Top-Level Response
|
Field |
Type |
Description |
|---|---|---|
|
|
Integer |
Total number of streaming sessions found within the selected date range. |
|
|
Number |
Total streaming minutes across all sessions. |
|
|
Array |
List of streaming session records. |
Session Object
Each object inside the data array contains the following fields:
|
Field |
Type |
Description |
|---|---|---|
|
|
String |
Name of the streamed application. |
|
|
String |
Version of the streamed application. |
|
|
String |
User's city. |
|
|
String |
User's country. |
|
|
String |
UTC timestamp when the streaming session started. |
|
|
String |
UTC timestamp when the streaming session ended. |
|
|
Number |
Total duration of the streaming session in minutes. |
Notes
-
The API returns streaming analytics across all of your applications within the selected date range.
-
Filtering by a specific application is not supported in the request. If you need analytics for a single application, filter the returned data using the
appNamefield. -
Analytics data typically appears 30 seconds to 1 minute after a streaming session occurs.
-
Monitor your streaming usage through the Analytics section in the Control Panel.
Swagger API Reference
You can explore and test the API using the Swagger UI
https://agw.eaglepixelstreaming.com/api-docs/
Limitations
Please read the following before integrating this API into your application.
|
Limitation |
Details |
|---|---|
|
Rate Limits |
API requests are rate limited. If the limit is exceeded, additional requests may be temporarily rejected until the rate limit window resets. |
|
Not Intended for Real-Time Dashboards |
This API is designed for reporting and analytics, not for powering live or real-time dashboards. Avoid high-frequency polling. |
|
Processing Time |
Each request requires significant processing on Eagle's infrastructure. Please avoid unnecessary or repeated requests. |
|
Data Delay |
Streaming analytics may take 30 seconds to 1 minute to appear after a session begins or ends. Do not rely on the API for instant updates. |
|
No App-Level Filtering |
The API returns analytics for all of your applications within the requested date range. Filter the results by the |
|
Date Range Required |
Every request must include both the |
Recommendation
For the most accurate and up-to-date view of your streaming activity, use the monitoring tools available directly in your Control Panel Analytics at https://controlpanel.eagle3dstreaming.com/analytics
Troubleshooting
|
Issue |
Possible Cause |
Solution |
|---|---|---|
|
401 Unauthorized |
Invalid or expired Invalid or missing |
|
|
Bad Request |
Missing or invalid request parameters |
Verify that |
|
No data returned |
No streaming sessions exist within the selected date range |
Check the selected date range and confirm that streaming activity occurred during that period. |
|
Recent sessions are missing |
Analytics processing delay |
Wait 30 seconds to 1 minute before requesting the latest analytics again. |
|
Too Many Requests |
Rate limit exceeded |
Reduce the request frequency and wait until the rate limit window resets before retrying. |
|
Connection or timeout errors |
Temporary network issue or server unavailable |
Check your internet connection and retry after a short delay. If the issue persists, contact Eagle Support. |
Need help?
If you need any assistance, feel free to reach out through any of the following channels:
🛠️ Support Portal: Contact Our Support Team
💬 Discord Community (Faster Support): Join Our Discord Community
📧 Email Support: support@eagle3dstreaming.com
Follow us on: