The links in there are the same as in the official page.
There must be examples in the zip itself. (maybe not in js, but in other languages)
Original Message:
Sent: Thu January 16, 2025 05:10 AM
From: Riva Saringer
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi,
While trying to check out the latest version of the Aspera Transfer SDK (1.1.3), I noticed that the download links are apparently not working:
https://developer.ibm.com/apis/catalog/aspera--aspera-transfer-sdk/downloads/downloads.json.
Additionally, I was wondering if it would be possible to provide a JavaScript example in the examples repository for the transferType: "STREAM_TO_FILE_UPLOAD"
option. This would be very helpful for comparing against our own implementation and ensuring its correctness :)
------------------------------
Riva Saringer
Original Message:
Sent: Wed June 05, 2024 11:26 AM
From: Laurent Martin
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Ok, so it's not pausing and then resuming (with session still running)
It's more starting a transfer, then interrupting (stop before completion), then resume the transfer in a new transfer session:
- not re-transfer already completed files (unless they have changed on source)
- continue half-transmitted files (unless they have changed on source)
This is controlled in the transfer spec with parameter: resume_policy , values are none, attrs, sparse_csum, full_csum
none: Always transfer the entire file.
attrs: Check file attributes (size and modification time). Resume if they match.
sparse_csum Check file attributes and sparse checksum. Resume if they match.
full_csum Check file attributes and full checksum. Resume if they match.
The new session will resume partial files if policy is not none.
Sparse checksum is a checsum of the source file on 10Mb (in several slices) or less independently of the file size: it is the advantage of being much faster than full checksum.
------------------------------
Laurent Martin
Original Message:
Sent: Wed June 05, 2024 10:11 AM
From: Riva Saringer
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
My issue here is that I would to resume a transfer from another function call, intending to handle large file uploads via multiple AWS Lambda invocations.
I have tried various settings related to transfer resumption, but none have been successful.
Can anyone confirm if the Aspera SDK's resume functionality is limited to the same client connection? If so, are there any recommended approaches or workarounds to resume transfers across different client connections or functions?
------------------------------
Riva Saringer
Original Message:
Sent: Wed May 29, 2024 04:18 AM
From: Laurent Martin
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
In general pausing a transfer with Aspera means setting its speed to zero.
And resuming, setting the speed to not zero.
So, you can try calling ModifyTransfer
with a transfer spec with target_rate_kbps
set to zero.
I have not tested, though.
Also, I don't think it changes the state to "PAUSED".
------------------------------
Laurent Martin
Original Message:
Sent: Tue May 28, 2024 01:27 PM
From: Riva Saringer
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi Everyone,
I have a question related to the Aspera Transfer SDK and managing transfers. Specifically, instead of stopping a transfer, I would like to pause it and then resume it later.
According to the API reference, there is a status "PAUSED" available. However, I'm unsure how to trigger a running transfer to be paused. I assume that calling stopTransfer
does not actually pause the transfer, correct? Once the transfer is paused, I would need to call startTransfer
again with the appropriate resume_policy
in the transfer request to continue the transfer.
My use case involves uploading from a stream, but the upload might need to be paused because it's running on AWS Lambda, which has timeouts for large files. An example (preferably in JavaScript) in Laurent-Martin's GitHub repository demonstrating this feature would be greatly appreciated :P
Thank you!
------------------------------
Riva Saringer
Original Message:
Sent: Fri May 24, 2024 07:15 PM
From: BEN FORSYTH
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
You must generate a StopTransferRequest
https://developer.ibm.com/apis/catalog/aspera--aspera-transfer-sdk/API%20Reference/#transfersdk.StopTransferRequest
Then from your StopTransferRequest you can call
client.StopTransfer(StopTransferRequest)
We don't have an API to retrieve the MD5 sum of a source file. The checksum of the file is computed in-flight by the sender as it is being read and transferred. Our transfer encryption makes sure that every byte sent matches what is received by the destination.
------------------------------
BEN FORSYTH
Original Message:
Sent: Thu May 23, 2024 05:26 AM
From: Kuldeep P
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi BEN FORSYTH,
Thanks for your input. I am able to browse the files and directory in aspera share.
1. Regarding "To stop the transfer you need to pass the transfer id" , where I need to pass the Transfer id ? Which method I need to call?
I called StopTransfer Method and tried to assign TransferId, but it is showing TransferId is read only.

2. I am trying to get checksum value of a file which is already uploaded in IBM Aspera Share.
I am able to get checksum while uploading the file by mentioning "checksum_type = md5" in Transfer specification.
But I need checksum of an existing file in IBM Share with out downloading the file.
Is there is an API to get the checksum value to make sure already uploaded file is not corrupt ?
https://emea.aspera-qa.com/node_api/files/info
I tried above API, it showed all the details of file, but not the checksum value.
Please help me with the file checksum validation.
Thanks and Regards,
Kuldeep P
------------------------------
Kuldeep P
Original Message:
Sent: Sat May 11, 2024 06:01 PM
From: BEN FORSYTH
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
You can use files/page to list directory contents
https://developer.ibm.com/apis/catalog/aspera--aspera-node-api/api/API--aspera--ibm-aspera-node-api#post1907190647
To stop the transfer you need to pass the transfer id that is returned from your call to StartTransferWithMonitor. It should be available getting the transferId() from your asperaStartTransferResponse
------------------------------
BEN FORSYTH
Original Message:
Sent: Thu May 09, 2024 11:24 AM
From: Kuldeep P
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi Jose Gomez,
I am able to create new folder in the Aspera Share. Thank you so much for your inputs.
Now next 2 challenges what is am facing is
- I am unable to stop the Trasnfer once the Transfer is started.
- I need to List of folder and files names (Only the name list) inside a Share in Aspera Share.
- I am unable to stop the Trasnfer once the Transfer is started.
We have a requirement where we should be able to stop transfer in between when the upload is in progress. I am using the common class variable/instance "asperaTransferClient" to startTransfer and stop transfer, but even after calling Stop transfer in between the complete file is getting uploaded. Can you please help me with stopping the transfer in between of upload file.
Class Variable
TransferService.TransferServiceClient asperaTransferClient
Code to start transfer
asperaTransferClient = new TransferService.TransferServiceClient(GrpcChannel.ForAddress("https://127.0.0.1:55002");
asperaStartTransferResponse = asperaTransferClient.StartTransferWithMonitor(transferRequest);
Code to stop transfer
asperaTransferClient.StopTransfer(new StopTransferRequest())
2. I need a list of files and folder names inside the Share in Aspera Share. Can you please let me know which is the API which can be used to the Get the same.
Thanks in advance,
Kuldeep P
------------------------------
Kuldeep P
Original Message:
Sent: Thu May 02, 2024 01:22 PM
From: Jose Gomez
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi,
Glad the suggestion helped. To create new folders or rename outside of a transfer you can use the Node API: https://developer.ibm.com/apis/catalog/aspera--aspera-node-api/Introduction
See for instance the /files/{id} endpoint if you use Access Keys to authenticate and configure the storage root for your transfers, or /files/create, /files/rename endpoint if you use absolute docroots.
If you want to do the directory creation or renaming within the scope of a transfer then you can also specify your paths using a pairs of source and destination, so the transfer will get the contents from the source path and store them in the path specified in the destination path, so you can have a different directory organization and naming scheme.
------------------------------
Jose Gomez
Original Message:
Sent: Thu May 02, 2024 02:53 AM
From: Kuldeep P
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
How to create a new folder with a name inside a specified share ?
Hi Jose Gomez
Thanks for the 'overwrite' and 'resume_policy' suggestion, it helped me. I am using V1 transfer specification, and some way I was able to add 'overwrite' and 'resume_policy' settings to the V1 transfer specification and I was able to resume transfer. Thanks for your inputs, It helped me to focus on the required settings.
Next, I am trying to create a New Folder inside a Share Folder. I mean, I am Providing a destination root ("share" folder path), and then I need to provide a local directory path for upload in Transfer Specification. I am able to transfer all the file in the local directory path to Aspera share. But I need to create a folder and rename it to the required name (Same as local directory name). Can you please help me with this, how to create a folder with a name inside a specified share using the SDK and API code.
I need to achieve below 2 functionalities in code. Jose Gomez or any one from the community can help me with this I will be great. Thanks in advance.

------------------------------
Kuldeep P
Original Message:
Sent: Tue April 23, 2024 11:32 AM
From: Jose Gomez
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
You can specify ovewrite and resume policies in your transfer spec. See the possible options and a description for each in the documentation for the 'overwrite' and 'resume_policy' at https://developer.ibm.com/apis/catalog/aspera--aspera-transfer-sdk/API%20Reference#transfersdk.Filesystem
{
"session_initiation" : { ... }
...
"file_system": {
"overwrite" : "diff",
"resume_policy" : "sparse_checksum"
}
"assets" : { ... }
}
------------------------------
Jose Gomez
Original Message:
Sent: Tue April 23, 2024 06:56 AM
From: Kuldeep P
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hi Everyone,
How to achieve Resuming and Overwriting functionality using Aspera Transfer SDK code. Can some one help me with this please.

------------------------------
Kuldeep P
Original Message:
Sent: Mon February 12, 2024 09:31 AM
From: Jeremy Smith
Subject: Uploading to a third party Aspera Shares or Aspera Enterprise location from AWS Lambda
Hello there. I have looked at the existing blog post about API Connect and I don't believe it answers the question, however I stand ready to be corrected.
I am developing an integration for a client that will require a file located in temporary Lambda storage to be delivered to a third party Aspera destination. I am not in control of that destination. I will only get credentials suitable for manual use in an Aspera Shares session, or in Aspera Client. I would like to have the Lambda function perform the upload.
How would I go about making that happen? My current plan is to install the Aspera CLI as a Lambda layer - perhaps I have already hit on the best method although there do appear to be many APIs available that might work.
All the best
JS
------------------------------
Jeremy Smith
------------------------------