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.
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.
Be aware that a successful upload always returns an empty response body but comes with a
In the case of downloads, you should simply send a HTTP
GET request to the returned URL.