Skip to content

Commit 3fd9859

Browse files
committed
docs(dwh): preview MR for DWH
1 parent 70ce45c commit 3fd9859

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
title: I get 400 Bad Request errors when uploading objects
3+
description: Solve 400 Bad Request errors when uploading objects with AES256 encryption headers
4+
tags: api key bucket object storage aws cli
5+
dates:
6+
validation: 2025-11-07
7+
posted: 2025-11-07
8+
---
9+
import Requirements from '@macros/iam/requirements.mdx'
10+
11+
12+
<Requirements />
13+
14+
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
15+
16+
## Problem
17+
18+
When uploading an object, I get an error similar to the following:
19+
20+
```bash
21+
HTTP 400 Bad Request: InvalidArgument.
22+
```
23+
24+
## Cause
25+
26+
Scaleway Object Storage previously accepted requests containing the `x-amz-server-side-encryption: AES256` header without enforcing encryption, returning a successful `HTTP 200 OK` response.
27+
28+
Requests with this header are now explicitly rejected with an `HTTP 400 Bad Request: InvalidArgument` error, as AES256 server-side encryption is not currently supported by Scaleway Object Storage.
29+
30+
## Solution
31+
32+
Remove the `x-amz-server-side-encryption: AES256` header from your requests.
33+
34+
## Going further
35+
36+
Refer to the [dedicated documentation](/object-storage/api-cli/enable-sse-c/) for comprehensive information on how to encrypt objects using SSE-C.
37+
38+
- If you did not manage to identify the error and solve it by yourself, [open a support ticket](/account/how-to/open-a-support-ticket/), and provide as many details as possible, along with the necessary information below:
39+
- Object Storage Endpoint (e.g. `s3.fr-par.scw.cloud`)
40+
- Bucket name
41+
- Object name (if the request concerns an object)
42+
- Request type (PUT, GET, etc.)
43+
- HTTP status code
44+
- Date and time (timestamp)
45+
- User-agent (SDK, client, console, etc.)
46+
- Transaction ID (if possible)
47+
- Log / trace of the error (if possible)

0 commit comments

Comments
 (0)