We’ve reviewed the MergeAndSaveOnline error you are receiving:
400 – MergeAndSaveOnline. Exception: AmazonS3 Storage exception:
The AWS Access Key Id you provided …
The message indicates that the internal Aspose Cloud storage (which is backed by Amazon S3) could not authenticate the request that the Slides Merge service uses to write the merged file.
What usually triggers this situation
Reason
Why it matters
Temporary credential issue on Aspose side – a short‑lived problem with the S3 keys that back the default storage.
The service is unable to write the output file, and the API returns a 400 with the S3 error.
Missing or incorrect storage parameter – the request is trying to write to a storage that isn’t configured (or the default storage has been disabled).
The endpoint falls back to the internal storage and fails when it can’t locate valid credentials.
Corrupted request payload – an empty or malformed multipart body (e.g., the file part is missing).
The service still attempts to create the output file and hits the storage layer before realizing the payload is invalid.
Since you mentioned that other Slides operations work fine, the most likely cause is a temporary issue with the internal storage credentials or a change in how the storage name is being passed.
Immediate steps you can take
Retry the call – the problem is often transient.
If the request succeeds, the issue was a temporary credential glitch.
Explicitly specify the default storage name (Aspose) in the query string (or body, depending on your SDK).
POST https://api.aspose.cloud/v3.0/slides/merge?storage=Aspose
This forces the API to use the known internal storage and eliminates ambiguity.
Verify that the request body contains the file parts (or the document stream when you use the SDK).
A missing file will still cause the service to try to write an empty result, leading to the same S3‑auth error.
Check the access token – ensure it is still valid (not expired) and that the token’s scope includes Slides.
You can generate a fresh token via the OAuth endpoint:
POST https://api.aspose.cloud/connect/token
If you are using a custom storage (your own S3 bucket) – double‑check that the bucket’s AccessKeyId and SecretKey are correct in the Aspose Cloud Dashboard.
The error you posted, however, points to the default internal storage, so this step is only needed if you have overridden the storage name.
What to do if the problem persists
If the retry and explicit storage name do not resolve the error, please provide the following details so we can investigate further:
Exact request (curl/SDK code) – include headers, query parameters, and multipart body (you can mask the files).
Timestamp of the failing request (UTC) and the Trace‑Id you already captured (d8efa7ab-f4db-49c6-b935-70140827f806).
SDK version (if you are using one) or language/platform you are calling the API from.
You can attach a small sample file (≤ 1 MB) that reproduces the issue. Once we have those items we can look up the internal log for the given trace ID and provide a concrete fix.
Thanks for the quick response. Here’s the exact code we are using in Python with the official SDK (asposeslidescloud):
cfg = Configuration()
cfg.app_sid = settings.ASPOSE_CLIENT_ID
cfg.app_key = settings.ASPOSE_CLIENT_SECRET
api = SlidesApi(cfg)
files = [BytesIO(b) for b in pptx_blobs]
out_path = f"merge/{uuid4()}.pptx"
# This is the failing call
api.merge_and_save_online(out_path, files, None, storage)
downloaded = api.download_file(out_path, storage)
Key details:
Storage: we are not passing a custom storage name (so it should use the default internal Aspose storage).
Input: each file is a valid one-slide PPTX (we’ve verified).
Other endpoints: /slides/{id}/jpeg and download_file both work fine.
Trace-Id: d8efa7ab-f4db-49c6-b935-70140827f806
Since this worked fine until today, and no code changes were made on our side, it looks like something changed in how merge_and_save_online interacts with the default storage. Could you please confirm if there’s a regression in the backend?
@emhasb,
Thank you for reporting the issue. I have reproduced the exception when merging presentation files with the merge_and_save_online method. We apologize for any inconvenience caused.
We have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.
Issue ID(s): SLIDESCLOUD-2067
You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.
@emhasb,
The link works fine on my end. Alternatively, you can contact Paid Support on the Aspose.Purchase forum. My colleagues will assist you shortly.