Depending on the operation you're performing - either an upload or a download - you'll need to take a secondary action after calling the appropriate presigned URL endpoints.
Uploads
After a successful call to the Presigned Upload URL, you'll need to make a call to the URL returned in the response, you can see the example below:
curl --location --request PUT 'https://s3.eu-west-1.amazonaws.com/sandbox-private.getbrass.co/cus_7e9vgjfzdQZTgH8EdYZmry/ca0939f0-3f06-47aa-9d95-7c6bb11d61ce.jpg?x-amz-acl=private&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAYOX7CAIIYQ2GESN7%2F20201226%2Feu-west-1%2Fs3%2Faws4_request&X-Amz-Date=20201226T152912Z&X-Amz-SignedHeaders=host%3Bx-amz-acl&X-Amz-Expires=1800&X-Amz-Signature=f914166df3d0b025e9373d95f67df693a86e7f632d9e183d5401358b9513d07d' \
--header 'Content-Type: image/jpeg' \
--data-binary '@/path/to/file/locally/IMG-20191219-WA0015.jpg'
If you receive a 200 OK
response with an empty body, then the request was successful and you can supply the value of the key to whatever endpoint needs the uploaded file.
Successful Upload
Be aware that a successful upload always returns an empty response body but comes with a
200 OK
status.
Downloads
In the case of downloads, you should simply send a HTTP GET
request to the returned URL.