API documentation

Upload, list and delete images from your own apps.

The Brikk API lets you upload images programmatically — from scripts, bots, CI or tools like ShareX. Every response is JSON with an ok boolean.

Base URL
https://brikk.zip
Authentication

Create a key in your dashboard and send it on every request as either header:

Authorization: Bearer brikk_xxxxxxxx X-Api-Key: brikk_xxxxxxxx

Upload an image

POST /api/v1/upload — multipart form with a field named file.

curl -X POST https://brikk.zip/api/v1/upload \ -H "Authorization: Bearer brikk_xxxxxxxx" \ -F "file=@cat.png"

201 Created

{ "ok": true, "code": "a1B2c3", "url": "https://brikk.zip/uploads/u/1/a1B2c3.png", "size": 48213, "mime": "image/png", "deleteUrl": "https://brikk.zip/api/v1/delete/a1B2c3" }

Errors return an ok:false body with a message and a matching HTTP status: 401 (bad key), 413 (too large), 415 (type not allowed), 507 (quota exceeded).

Delete an image

POST /api/v1/delete/{code} — deletes one of your images and refunds the quota.

curl -X POST https://brikk.zip/api/v1/delete/a1B2c3 \ -H "Authorization: Bearer brikk_xxxxxxxx"

List your uploads

GET /api/v1/images?limit=50 — your most recent uploads (max 100).

curl https://brikk.zip/api/v1/images?limit=10 \ -H "Authorization: Bearer brikk_xxxxxxxx"

Account & quota

GET /api/v1/me — your account details and current storage usage.

{ "ok": true, "user": { "id": 1, "username": "you", "is_admin": false }, "quota": { "limit_bytes": 2147483648, "used_bytes": 48213, "remaining_bytes": 2147435435 } }

ShareX

Create a custom uploader (Destinations → Custom uploader settings):

{ "Name": "Brikk", "DestinationType": "ImageUploader, FileUploader", "RequestMethod": "POST", "RequestURL": "https://brikk.zip/api/v1/upload", "Headers": { "Authorization": "Bearer brikk_xxxxxxxx" }, "Body": "MultipartFormData", "FileFormName": "file", "URL": "{json:url}", "DeletionURL": "{json:deleteUrl}" }