Deep under the waves and storms there lies a vault...
- All API endpoints require authentication via
Authorization: Bearer api-token
header - Use the API_TOKEN from your environment configuration
- Failure to include a valid token will result in 401 Unauthorized responses
Endpoint: POST https://cdn.hackclub.com/api/v3/new
Headers:
Authorization: Bearer api-token
Content-Type: application/json
Request Example:
curl --location 'https://cdn.hackclub.com/api/v3/new' \
--header 'Authorization: Bearer beans' \
--header 'Content-Type: application/json' \
--data '[
"https://assets.hackclub.com/flag-standalone.svg",
"https://assets.hackclub.com/flag-orpheus-left.png"
]'
Response:
{
"files": [
{
"deployedUrl": "https://hc-cdn.hel1.your-objectstorage.com/s/v3/64a9472006c4472d7ac75f2d4d9455025d9838d6_flag-standalone.svg",
"file": "0_64a9472006c4472d7ac75f2d4d9455025d9838d6_flag-standalone.svg",
"sha": "64a9472006c4472d7ac75f2d4d9455025d9838d6",
"size": 4365
},
{
"deployedUrl": "https://hc-cdn.hel1.your-objectstorage.com/s/v3/d926bfd9811ebfe9172187793a171a5cbcc61992_flag-orpheus-left.png",
"file": "1_d926bfd9811ebfe9172187793a171a5cbcc61992_flag-orpheus-left.png",
"sha": "d926bfd9811ebfe9172187793a171a5cbcc61992",
"size": 8126
}
],
"cdnBase": "https://hc-cdn.hel1.your-objectstorage.com"
}
V2 API
Endpoint: POST https://cdn.hackclub.com/api/v2/new
Headers:
Authorization: Bearer api-token
Content-Type: application/json
Request Example:
[
"https://assets.hackclub.com/flag-standalone.svg",
"https://assets.hackclub.com/flag-orpheus-left.png"
]
Response:
{
"flag-standalone.svg": "https://cdn.example.dev/s/v2/flag-standalone.svg",
"flag-orpheus-left.png": "https://cdn.example.dev/s/v2/flag-orpheus-left.png"
}
V1 API
Endpoint: POST https://cdn.hackclub.com/api/v1/new
Headers:
Authorization: Bearer api-token
Content-Type: application/json
Request Example:
[
"https://assets.hackclub.com/flag-standalone.svg",
"https://assets.hackclub.com/flag-orpheus-left.png"
]
Response:
[
"https://cdn.example.dev/s/v1/0_flag-standalone.svg",
"https://cdn.example.dev/s/v1/1_flag-orpheus-left.png"
]
- Storage Structure:
/s/v3/{HASH}_{filename}
- File Naming:
/s/{slackUserId}/{unix}_{sanitizedFilename}
Made with 💜 for Hack Club