POST: /bucket/create
| Název | Typ | Popis |
|---|---|---|
| bucket | string | Název bucketu |
| key | string | Přístupový klíč |
{ "bucket": "moje_bucket", "key": "abcdef123456" }
POST: /bucket/create
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket |
string | Název bucketu | ✅ |
key |
string | Přístupový klíč (min. 6 znaků) | ✅ |
username |
string | Uživatelské jméno | ✅ |
POST /bucket/create HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"bucket": "moje_bucket",
"key": "abcdef123456",
"username": "uzivatel1"
}
{
"error": 0,
"bucket": {
"name": "moje_bucket",
"url": "moje-bucket",
"created": "2024-02-06 12:00:00"
}
}
{
"error": 1,
"message": "Bucket already exists"
}
{
"error": 1,
"message": "Invalid parameters"
}
POST: /bucket/add-key
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket |
string | Název existujícího bucketu | ✅ |
key |
string | Nový přístupový klíč | ✅ |
username |
string | Uživatelské jméno | ✅ |
POST /bucket/add-key HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"bucket": "moje_bucket",
"key": "novyKlic123",
"username": "uzivatel1"
}
{
"error": 0,
"bucket": {
"name": "moje_bucket",
"keys": [
{
"username": "uzivatel1",
"key": "novyKlic123"
}
],
"created": "2024-02-06 12:00:00"
}
}
{
"error": 1,
"message": "Bucket not found"
}
POST: /bucket/remove-key
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket |
string | Název existujícího bucketu | ✅ |
username |
string | Uživatelské jméno, jehož klíč má být odstraněn | ✅ |
POST /bucket/remove-key HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"bucket": "moje_bucket",
"username": "uzivatel1"
}
{
"error": 0,
"bucket": {
"name": "moje_bucket",
"keys": [],
"created": "2024-02-06 12:00:00"
}
}
{
"error": 1,
"message": "Bucket not found"
}
GET: /bucket/list
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket |
string | Pokud je zadán, vrátí pouze informace o daném bucketu. Pokud není, vrátí seznam všech bucketů. | ❌ |
GET /bucket/list HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
GET /bucket/list?bucket=moje_bucket HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
[
{
"name": "moje_bucket",
"url": "moje-bucket",
"created": "2024-02-06 12:00:00"
},
{
"name": "dalsi_bucket",
"url": "dalsi-bucket",
"created": "2024-02-06 12:10:00"
}
]
{
"name": "moje_bucket",
"url": "moje-bucket",
"created": "2024-02-06 12:00:00",
"keys": [
{
"username": "uzivatel1",
"key": "abcdef123456"
}
]
}
{
"error": 1,
"message": "Bucket not found"
}
POST: /file/{bucket_name}
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket_name |
string (v URL) | Název bucketu, do kterého se soubor nahrává | ✅ |
key |
string (form-data) | Cesta k souboru v bucketu včetně názvu souboru (např. /slozka/subor.pdf) |
✅ |
file |
file (form-data) | Soubor, který se nahrává (název souboru není důležitý, zpracuje se jeden soubor) | ✅ |
POST /file/moje_bucket HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="key"
/slozka/dokument.pdf
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="jakykoliv_nazev.pdf"
Content-Type: application/pdf
(BINARY DATA)
------WebKitFormBoundary7MA4YWxkTrZu0gW--
{
"url": "https://api.example.com/moje_bucket/slozka/dokument.pdf"
}
{
"error": 1,
"message": "Key param is missing"
}
{
"error": 1,
"message": "Bucket not found"
}
POST: /exists/{bucket_name}
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket_name |
string (v URL) | Název bucketu, kde se kontroluje soubor | ✅ |
key |
string (raw body) | Cesta a název souboru v bucketu | ✅ |
POST /exists/moje_bucket HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"key": "/slozka/soubor.pdf"
}
{
"exists": 1
}
{
"exists": 1,
"error": "key not set"
}
{
"exists": 0
}
{
"error": 1,
"message": "Unauthorized"
}
DELETE: /file/{bucket_name}
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket_name |
string (v URL) | Název bucketu, ve kterém se soubor nachází | ✅ |
key |
string (raw body) | Cesta a název souboru v bucketu | ✅ |
DELETE /file/moje_bucket HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"key": "/soubory/dokument.pdf"
}
{
"error": 0,
"message": "Delete success"
}
{
"error": 1,
"message": "File not found"
}
{
"error": 1,
"message": "Bucket not found"
}
GET: /file/{bucket_name}
API je chráněno pomocí Bearer Tokenu. Každý požadavek musí obsahovat Authorization: Bearer {token}.
| Název | Typ | Popis | Povinné |
|---|---|---|---|
bucket_name |
string (v URL) | Název bucketu, ze kterého se soubor stahuje | ✅ |
key |
string (raw body) | Cesta a název souboru v bucketu | ✅ |
GET /file/moje_bucket HTTP/1.1
Host: api.example.com
Authorization: Bearer your_token
Content-Type: application/json
{
"key": "/soubory/dokument.pdf"
}
{
"originalName": "dokument.pdf",
"fileType": "application/pdf",
"fileSize": 145670.0,
"created": "2025-02-10T12:00:00+01:00",
"bucket_name": "moje_bucket",
"expiration": "2025-03-10T12:00:00+01:00",
"downloadCount": 3,
"download": "http://files.example.com/download/moje_bucket/ab12345cdef67890ghijkl",
"key": "/soubory/dokument.pdf"
}
{
"error": 1,
"message": "File not found"
}
{
"error": 1,
"message": "Unauthorized"
}
{
"error": 1,
"message": "Key param is missing"
}