Skip to content

S3 Upload Example

POST https://suno-uploads.s3.amazonaws.com/

Request Parameters

Authorization

Add the Authorization parameter to the Header. Its value is the Token concatenated after Bearer.

Example: Authorization: Bearer ********************

Body Parameters (application/json)

ParameterTypeRequiredDescription
Content-TypestringRequired
keystringRequired
AWSAccessKeyIdstringRequired
policystringRequired
signaturestringRequired
filestringRequired

Request Example

json
{
        "Content-Type": "audio/mpeg",
        "key": "raw_uploads/c25a8c59-000a-481f-ac28-efde2dc9e677.mp3",
        "AWSAccessKeyId": "AKIA2V4GXGDKJMTPWLXO",
        "policy": "eyJleHBpcmF0aW9uIjogIjIwMjQtMDYtMTdUMDY6MTg6MzJaIiwgImNvbmRpdGlvbnMiOiBbWyJjb250ZW50LWxlbmd0aC1yYW5nZSIsIDAsIDEwNDg1NzYwMF0sIFsic3RhcnRzLXdpdGgiLCAiJENvbnRlbnQtVHlwZSIsICJhdWRpby9tcGVnIl0sIHsiYnVja2V0IjogInN1bm8tdXBsb2FkcyJ9LCB7ImtleSI6ICJyYXdfdXBsb2Fkcy9jMjVhOGM1OS0wMDBhLTQ4MWYtYWMyOC1lZmRlMmRjOWU2NzcubXAzIn1dfQ==",
        "signature": "yjfB/HTNgPHURNLRdeizNMVgG6k=",
        "file":""
    }

cURL Example

bash
curl --location --request POST 'https://suno-uploads.s3.amazonaws.com/' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
        "Content-Type": "audio/mpeg",
        "key": "raw_uploads/c25a8c59-000a-481f-ac28-efde2dc9e677.mp3",
        "AWSAccessKeyId": "AKIA2V4GXGDKJMTPWLXO",
        "policy": "eyJleHBpcmF0aW9uIjogIjIwMjQtMDYtMTdUMDY6MTg6MzJaIiwgImNvbmRpdGlvbnMiOiBbWyJjb250ZW50LWxlbmd0aC1yYW5nZSIsIDAsIDEwNDg1NzYwMF0sIFsic3RhcnRzLXdpdGgiLCAiJENvbnRlbnQtVHlwZSIsICJhdWRpby9tcGVnIl0sIHsiYnVja2V0IjogInN1bm8tdXBsb2FkcyJ9LCB7ImtleSI6ICJyYXdfdXBsb2Fkcy9jMjVhOGM1OS0wMDBhLTQ4MWYtYWMyOC1lZmRlMmRjOWU2NzcubXAzIn1dfQ==",
        "signature": "yjfB/HTNgPHURNLRdeizNMVgG6k=",
        "file":""
    }'

Response

🟢 200 Success

Response Example

json
{}