This guide explains how to upload a streaming app to Eagle 3D Streaming. Use this API to:
-
Upload your Unreal Engine build to Eagle’s Pixel Streaming platform
-
Register the app for streaming tests and verification
-
Retrieve the status of your uploaded app
1. Get Signed URL for Upload
POST https://agw.eagle3dstreaming.com/api/v3/us/streamingapp-uv-signed-url-with-times
Request Body
Send a JSON object with the following format:
{
"apiKey": "Your Eagle3D API key",
"appName": "YOUR_APP_NAME",
"size": "FILE_SIZE_IN_GB"
}
Parameter Details
-
apiKey: Your Eagle3D API key. Retrieve your API key from your account. -
appName: Name of your app. -
size: Size of the upload file in GB (e.g.,"12.5").
Example Request
{
"apiKey": "abc123xyz456",
"appName": "MyApp",
"size": "12.5"
}
Response
The API will return a signed URL for uploading your file:
{
"status": "success",
"data": {
"url": "https://signed-upload-url",
"filepath": "/uploads/MyApp-1234567890.zip"
}
}
2. Get Alternative Signed URL for Large Files (>50GB)
Endpoint
POST https://agw.eagle3dstreaming.com/api/v3/us/streamingapp-alt-signed-url-filename-wise
Request Body
{
"apiKey": "Your Eagle3D API key",
"appName": "YOUR_APP_NAME",
"size": "FILE_SIZE_IN_GB",
"fileName": "GENERATED_FILE_NAME"
}
Purpose
Used for very large uploads where the standard signed URL API may fail.
Response
Returns an alternative signed URL for the large file:
{
"status": "success",
"data": {
"url": "https://alt-signed-upload-url"
}
}
3. Upload File
Upload your file using the signed URL returned from step 1 or 2.
-
Use PUT request for file upload.
-
Content-Type:
application/octet-stream -
File should be streamed in chunks if large (>50GB recommended).
4. Register Upload for Streaming Test
Endpoint
POST https://agw.eagle3dstreaming.com/api/v3/st/stream-test
Request Body
{
"dbname": "appExeData",
"document": "APPNAME_VERSION",
"apiKey": "Your Eagle3D API key",
"isUnverified": "true",
"appname": "YOUR_APP_NAME",
"version": "APP_VERSION",
"data": {
"dateTime": "2025-12-01T12:00:00Z",
"isDeleted": false,
"defaultExe": "default",
"appname": "YOUR_APP_NAME",
"version": "APP_VERSION",
"exePaths": {
"rplm.exe": "rplm.exe",
"EL.exe": "EL.exe"
},
"appSize": 12.5,
"isLinuxBuild": false,
"buildType": "Windows_UE_Build_For_PS"
},
"pluginInfo": {
"hasPlugin": false
}
}
Purpose
Registers your uploaded app in the system and triggers a backend streaming test.
5. Poll Stream Test Result
Endpoint
POST https://agw.eagle3dstreaming.com/api/v3/fb/get-streamtest-result
Request Body
{
"version": "APPNAME_VERSION"
}
Purpose
Check whether the uploaded app has been processed, renamed, or encountered any errors.
Repeat polling until the isRenamed flag is true.
Example Response
{
"data": {
"uploadSystemFile": {
"isRenamed": true
}
}
}
Notes
-
All API calls use POST. File uploads use PUT.
-
Files >50GB should use the alternative signed URL API.
-
Polling for stream test results may take several minutes.
-
Ensure your
apiKeyandappNameare correct for successful upload.
Need help?
🛠️ Contact our Support Team
💬 Join the Community on Discord
Follow us on:
Facebook | GitHub | LinkedIn | YouTube
Related content