Загрузка файла
Получение ссылки
Первым шагом необходимо получить ссылку на загрузку файла в рамках Вашего взаимодействия. Ниже приведен пример получаемой Вами ссылки для загрузки файла с описанием параметров.
Ссылка для загрузки файла в Банк
Ссылка для загрузки файла
Метод, используемый для загрузки файла
1{
2 "uploadFileLinks": [
3 {
4 "url": "https://baas.alfabank.ru/filebox/secure-file-transfer.incoming-files.to-processing/12345678-90ab-cdef-1234-1234567890ab?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230608T152952Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=secure-file-transfer%2F20230608%2Fdev%2Fs3%2Faws4_request&X-Amz-Signature=36ef1ccf28bdf6e54710fc3c1dd235c8f383275c2bbb0c9db365da272d3c24a8",
5 "method": "PUT"
6 },
7 {
8 "url": "https://baas.alfabank.ru/filebox/secure-file-transfer.incoming-files.to-processing/12345678-90ab-cdef-1234-1234567890ac?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230608T152952Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=secure-file-transfer%2F20230608%2Fdev%2Fs3%2Faws4_request&X-Amz-Signature=36ef1ccf28bdf6e54710fc3c1dd235c8f383275c2bbb0c9db365da272d3c24a8",
9 "method": "PUT"
10 }
11 ]
12}
Запрос на загрузку
Для загрузки файла по полученной ссылке необходимо выполнить http запрос методом, указанным в параметре method , и полученной в параметре url ссылкой https://baas.alfabank.ru/filebox/{bucketName}/{objectKey} с параметрами запроса.
Параметры запроса
/
1024
application/octet-stream
Имя bucket'а для сохранения файла
Имя файла
Дата и время генерации ссылки
TTL ссылки (указанный в секундах) относительно времени её создания, указанной в X-Amz-Date
Данные об учётной записи s3 и подписи запроса
Алгоритм подписи запроса
Подпись запроса
Размер содержимого файла
1curl -X PUT https://baas.alfabank.ru/filebox/secure-file-transfer.incoming-files.to-processing/12345678-90AB-CDEF-1234-1234567890AB?X-Amz-Date=20230608T152952Z&X-Amz-Expires=3600&X-Amz-Credential=secure-file-transfer%2F20230608%2Fbaas%2Fs3%2Faws4_request&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Signature=36ef1ccf28bdf6e54710fc3c1dd235c8f383275c2bbb0c9db365da272d3c24a8 \
2 -H 'Accept: */*' \
3 -H 'Content-Length: 1024' \
4 -H 'Content-Type: application/octet-stream' \
5 --data-binary 'Выписка по счету.pdf'
Параметры ответа
1Нет тела ответа
Код ошибки
1<?xml version="1.0" encoding="UTF-8"?>
2<Error>
3 <Code>string</Code>
4 <Message>string</Message>
5 <BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
6 <Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
7</Error>
Код ошибки. Время жизни ссылки истекло / Используется некорректный метод или ссылка изменена
1<?xml version="1.0" encoding="UTF-8"?>
2<notagname>
3 <Code>AccessDenied</Code>
4 <Message>Request has expired</Message>
5 <BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
6 <Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
7</notagname>
Код ошибки
1<?xml version="1.0" encoding="UTF-8"?>
2<notagname>
3 <Code>NoSuchBucket</Code>
4 <Message>The specified bucket does not exist</Message>
5 <BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
6 <Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
7</notagname>
Код ошибки
1<?xml version="1.0" encoding="UTF-8"?>
2<Error>
3 <Code>InternalError</Code>
4 <Message>An internal error occurred. Try again.</Message>
5 <BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
6 <Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
7</Error>