Skip to main content

Storage Proxy

To provide a consistent experience for file downloading and previewing, Agave proxies documents, drawings, images, and other files from source systems.



This allows us to provide the following benefits:

  1. A URL for directly downloading the file, even when the source system (like Aconex) doesn’t support it.
  2. A URL for previewing the file in your user's browser.
    • Note: Unlike the pre-signed URLs you get from some source systems such as Procore, this URL has a permissive Access-Control-Allow-Origin header and returns the correct file name in its Content-Disposition header, so it can be directly embedded in <iframe>s or used with third-party rendering libraries such as PDF.js or with HTML5 Video APIs.
  3. Tracking for file downloading and previewing, so you know who has accessed the file and at what time.

Expiration

Agave Proxy URLs are currently set to expire in 6 hours. If you need to adjust this value, please contact us.

ETag and If-None-Match Headers

The Storage Proxy supports Etag response header and If-None-Match request header for the following Source Systems:

  • Autodesk Build
  • Autodesk BIM 360
  • Fieldwire
  • HubSpot
  • OneDrive
  • Pipedrive
  • Procore
  • SharePoint Online

Using these headers, you can avoid potentially downloading the same file more than once.

For more information on these headers, see Headers and these MDN articles on ETag and If-None-Match headers.

Example

Request

curl https://api.agaveapi.com/root-folder \
--header 'API-Version: 2021-11-21' \
--header 'Client-Id: <your_client_id>' \
--header 'Client-Secret: <your_client_secret>' \
--header 'Account-Token: <your_account_token>' \
--header 'Project-Id: ee46db19-5f33-50da-a38d-0864fa901974'

Response

{
"id": "0b26e1f0-e996-5169-9059-04b58c4a9b7d",
"source_id": "urn:adsk.wipprod:fs.folder:co.CPGkphX2T2C5R_feEb9Grw",
"name": "Project Files",
"parent_id": "de647706-8082-571b-9557-8f44cfb3181b",
"project_id": "ee46db19-5f33-50da-a38d-0864fa901974",
"files": [
{
"id": "39d1b554-52ed-5341-b3d9-22250041fb85",
"source_id": "urn:adsk.wipprod:dm.lineage:KIsQPy8xSNCm9AHESy6DDA",
"creator_id": "bd5d8baa-06dd-5d9b-9863-bca505d99dd8",
"file_version_id": "82a7228d-b8ec-5dc1-9015-b85d3ace20f4",
"filename": "Test_File.pdf",
"folder_id": "0b26e1f0-e996-5169-9059-04b58c4a9b7d",
"name": "Test_File.pdf",
"notes": null,
"preview_url": "https://storage.agaveapi.com/preview/Test_File.pdf?signature=eyJpdiI6IkptN3d4YjlBNXVCN3NnLzkzR2x1QUE9PSIsInZhbHVlIjoiZUMyc0VMbmlMaDBHMnExQUlEcVJjaHNXemhZQ1JMNCtQaHk4bzJYUUNlL2FlSDJIZHFvV09rRE80Y0tUdUZPSmF4QmJJblk5blRhYmlpY082TjN0emxXSlJLNzMzRld5dVExeGVrSFdjSHlEWlB4bVpWdzNjN2NNbUJVVCswMnZQVzAyZ01yWGNGdm9oc0JzWXpaaEszNzIwRW9qU1JWRFY5VExCTlVlWklMYkhnRm5LK2hZKzQydUxzamtoa1Z3SlE4UExQVW1tQ0tTTjVuZkdsN2t1ZlZUVXNtZ1U2S1F4bEdzMlJrNHhrSEh1NFYzUnBqWVI4UXBGcGh0ZkRrTndUKzZzTzBwSk1Pa0JOeVNGd1FxdlZ2bFpPbFpQT2ZiSjc4ckFmR0ExV0JCVmtVeHF5ak0raS9IeW5oR2k1YWZ1OVlLZXFHQys5QzB6VzZFU0NNejNFS1dTU01ZRW5iOVlxNlduV0NHQ1FaL2lFT1ozcExFdkcrOS8ycXdsZGVZZDNCblZwNkZSZ3VjMHBndzRsVnBZQT09IiwibWFjIjoiYjQwOGIzMmFlZGJhNzY5MzgyNmFhOWQwZDE1NDYxMDc3OGJkZmFhNGRiMjk5NTM4NDU0ZTg0ODdiYjlkNDM4OSIsInRhZyI6IiJ9&expires_at=20220728T231624Z",
"project_id": "ee46db19-5f33-50da-a38d-0864fa901974",
"size": "1006735",
"source_create_time": "2022-07-26T23:16:23Z",
"source_update_time": "2022-07-26T23:17:30Z",
"type": "pdf",
"url": "https://storage.agaveapi.com/download/Test_File.pdf?signature=eyJpdiI6Ik1yTWFVbnlndzVlOCtaRFUzeFQzWWc9PSIsInZhbHVlIjoiMkFPQ2dOd1BWVjlISnliZEsxR2xiMGVnQzFqaCthYXVhcU9Rb25MMU5nS1pjNEZpa0tXZE5kdy9QbklEQVV2TXdkSXVrZGdPN015WnJxMkhXSWorYkRMUFNQMzRIbjAxak1zM05PU3lTODJtMnRid1h4amcvdkowazIxVzZzdzlKMW4zUmIrT2JidUNJeGdHTCs3UU1lMkl6UlZUc0xqZzNUQUorc2NlRnlEekJveVBBNm5TU2s2MFZvQkk4VHRCaXE5V2pyNU95QkM1Z1pVd0ttcWRJNFB0UjBHb2F5QUkyTjZHak9aeXdWRXhmNHpjRGI1UGFKTGJVTTFYdzdQbUUyTDcxRy9ub1VDdHBlZitFWGQ5emQxc3BPSCt1bWJZQjJxQ0tjdC85S0Z1clA1WDBvdW80bkZ3ZWRUM2hMVXBJRkZBNjhtQVM2WTFGRHo4SkFNdXhxd0xHODRmSzdNODB0TDIwaWNyN3hwMldXSTN5YzBBaW1BUEQ2RDVuK3ZQNzhOdklKZWtNQitXd0grYXRiTlZIUT09IiwibWFjIjoiZTIyYmI1MzgyYWE1ZjkyZGE5NzI2NGM0ZGRkMWM4NzNjYzk5Y2Q2OTVkZThjYmNhZWZlZTJmNDE0MDdmNGQyZCIsInRhZyI6IiJ9&expires_at=20220728T231624Z",
"version": "2"
},
{
// more files
},
{
// more files
}
],
"folders": [
// more folders
]
}