B2BB2CH2H

Загрузка файла

1

Получите ссылку для загрузки файла

Подробнее в пункте "Получение ссылки"

2

Выполните запрос на загрузку файла

Подробнее в пункте "Запрос на загрузку"

3

Загрузка файла

Получение ссылки

Первым шагом необходимо получить ссылку на загрузку файла в рамках вашего взаимодействия. Ниже приведен пример получаемой вами ссылки для загрузки файла с описанием параметров.

BODY
Атрибут
Описание
array of objectoptional

Ссылка для загрузки файла в Банк

url
stringoptional

Ссылка для загрузки файла

method
stringoptional

Метод, используемый для загрузки файла

Пример ссылок на загрузку
{
  "uploadFileLinks": [
    {
      "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",
      "method": "PUT"
    },
    {
      "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",
      "method": "PUT"
    }
  ]
}

Запрос на загрузку

Для загрузки файла по полученной ссылке необходимо выполнить http запрос методом, указанным в параметре method , и полученной в параметре url ссылкой https://baas.alfabank.ru/filebox/{bucketName}/{objectKey} с параметрами запроса.

Параметры запроса

HEADERS
Атрибут
Описание
Accept
stringrequired

/

Content-Length
stringrequired

1024

Content-Type
stringoptional

application/octet-stream

PATH
Атрибут
Описание
bucketName
stringrequired

Имя bucket'а для сохранения файла

objectKey
stringrequired

Имя файла

QUERY
Атрибут
Описание
X-Amz-Date
stringrequired

Дата и время генерации ссылки

X-Amz-Expires
integerrequired

TTL ссылки (указанный в секундах) относительно времени её создания, указанной в X-Amz-Date

X-Amz-Credential
stringrequired

Данные об учетной записи s3 и подписи запроса

X-Amz-Algorithm
stringrequired

Алгоритм подписи запроса

X-Amz-Signature
stringrequired

Подпись запроса

Content-Length
integerrequired

Размер содержимого файла

Пример запроса
curl -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 \
  -H 'Accept: */*' \
  -H 'Content-Length: 1024' \
  -H 'Content-Type: application/octet-stream' \
  --data-binary 'Выписка по счету.pdf'

Параметры ответа

Нет тела ответа
Нет тела ответа
error
stringrequired

Код ошибки

Пример ошибки 400 (Bad Request)
<?xml version="1.0" encoding="UTF-8"?>
<Error>
	<Code>string</Code>
	<Message>string</Message>
	<BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
	<Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
</Error>
error
stringrequired

Код ошибки. Время жизни ссылки истекло / Используется некорректный метод или ссылка изменена

Пример ошибки 403 (Forbidden)
<?xml version="1.0" encoding="UTF-8"?>
<notagname>
	<Code>AccessDenied</Code>
	<Message>Request has expired</Message>
	<BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
	<Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
</notagname>
error
stringrequired

Код ошибки

Пример ошибки 404 (Not Found)
<?xml version="1.0" encoding="UTF-8"?>
<notagname>
	<Code>NoSuchBucket</Code>
	<Message>The specified bucket does not exist</Message>
	<BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
	<Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
</notagname>
error
stringrequired

Код ошибки

Пример ошибки 500 (Internal Server Error)
<?xml version="1.0" encoding="UTF-8"?>
<Error>
	<Code>InternalError</Code>
	<Message>An internal error occurred. Try again.</Message>
	<BucketName>secure-file-transfer.incoming-files.to-processing</BucketName>
	<Key>12345678-90AB-CDEF-1234-1234567890AB</Key>
</Error>