Space for Fakhrul Islam
Breadcrumbs

Use the Eagle 3D Streaming Upload API

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 apiKey and appName are correct for successful upload.











 


Need help?

🛠️ Contact our Support Team

💬 Join the Community on Discord

🆓 Get Started for free

 

Follow us on:

Facebook | GitHub | LinkedIn | YouTube

Related content