Appearance
Загрузка Файла Из Base64
POST /files/upload-by-base64
Загружает файл из Base64-строки на хостинг и возвращает постоянную ссылку. Используйте полученный file_url в качестве референса в задачах генерации.
Строка base64_data может быть с префиксом data:image/jpeg;base64,... или без него — оба варианта принимаются.
Лимит: 10 запросов / минуту (файлы крупнее, запросы тяжелее).
Базовый URL: https://api.aihere.ru/api/v1
Авторизация: Authorization: Bearer <API-ключ>
Rate-limit: 20 запросов/мин (upload-by-url), 10 запросов/мин (base64/stream)
Параметры
| Поле | Тип | Обяз. | Описание |
|---|---|---|---|
base64_data | string | да | — |
upload_path | string | — | по умолчанию: "developer-uploads" |
file_name | string (опционально) | — | — |
Примеры
bash
curl -X POST "https://api.aihere.ru/api/v1/files/upload-by-base64" \
-H "Authorization: Bearer $AIHERE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"base64_data": "string",
"upload_path": "developer-uploads"
}'python
import requests
payload = {
"base64_data": "string",
"upload_path": "developer-uploads"
}
resp = requests.post(
"https://api.aihere.ru/api/v1/files/upload-by-base64",
headers={
"Authorization": f"Bearer {API_KEY}",
},
json=payload,
timeout=60,
)
resp.raise_for_status()
print(resp.json())javascript
const resp = await fetch("https://api.aihere.ru/api/v1/files/upload-by-base64", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"base64_data": "string",
"upload_path": "developer-uploads"
}),
});
if (!resp.ok) throw new Error(`HTTP ${resp.status}: ${await resp.text()}`);
console.log(await resp.json());php
$payload = json_decode('{"base64_data": "string", "upload_path": "developer-uploads"}', true);
$ch = curl_init('https://api.aihere.ru/api/v1/files/upload-by-base64');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => json_encode($payload),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer $apiKey",
'Content-Type: application/json',
],
]);
$resp = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($resp);Ответ 200
URL файла на хостинге
json
{
"file_url": "https://example.com/image.jpg",
"upload_path": "string"
}Ошибки
| Код | Причина |
|---|---|
| 400 | Некорректные данные Base64 или параметры запроса |
| 429 | Превышен rate-limit |
| 502 | Ошибка провайдера генерации |
| 422 | Ошибка валидации тела запроса (detail содержит список полей) |
| 401 | Нет или невалидный API-ключ |
