ToLink.to API

API v1

Dokumentation der ToLink.to API.

Allgemein

Die Verwendung der API ist kostenlos und bedarf nur der Erstellung eines API Keys im Benutzerkonto.

  • API Key muss im Benutzerkonto erstellt werden
  • alle Anfragen müssen den Content-Type: application/json im Header mitsenden
  • alle Anfragen erfolgen im JSON Format
  • alle Anfragen erfolgen per POST Request

API v2

Die API v2 steht neben der API v1. v1 bleibt wie sie ist. v2 nutzt Adressen und HTTP-Methoden. Derselbe API-Key aus den Einstellungen gilt als Bearer-Token. Erfolg und Fehler kommen als HTTP-Status und JSON, ohne den alten Umschlag aus v1.

Fehlt der Key oder ist er falsch, antwortet die API mit Status 401 und {"message":"Invalid API Key"}.

Ping

GET /api/v2/ping

Request

GET /api/v2/ping
Authorization: Bearer token123

Response

{
  "message": "Pong"
}

Ordner anlegen

POST /api/v2/folders

Mehrere Links stehen in einem Text und werden mit ; getrennt.

Request

POST /api/v2/folders
Authorization: Bearer token123
Content-Type: application/json

{
  "title": "Test Folder",
  "links": "https://example.com/file.bin;https://example.com/second.bin",
  "options": {
    "web": true,
    "container": false,
    "cln": false,
    "captcha": false,
    "captcha_text": false,
    "password": ""
  }
}

Response

{
  "url": "https://tolink.to/f/foexamplefolder1",
  "folder": "foexamplefolder1",
  "title": "Test Folder"
}

Ordner auflisten

GET /api/v2/folders

Query: order ist ASC oder DESC (Standard DESC). limit ist die Anzahl Ordner pro Seite (Standard 100, höchstens 200). page ist die Seite (Standard 1). status ist online, offline, partial oder disabled. offline enthält offline und deaktivierte Ordner. Die Antwort nennt page, pages und total.

Request

GET /api/v2/folders?order=DESC&limit=10&page=1&status=partial
Authorization: Bearer token123

Response

{
  "order": "DESC",
  "limit": 10,
  "page": 1,
  "pages": 1,
  "total": 1,
  "status": "partial",
  "folders": [
    {
      "id": "4",
      "folder": "foexamplefolder1",
      "title": "Test Folder",
      "status": "3",
      "hits": 1,
      "hoster": ["uploaded"]
    }
  ]
}

Status eines Ordners

GET /api/v2/folders/{folder}

Request

GET /api/v2/folders/foexamplefolder1
Authorization: Bearer token123

Response

{
  "folder": "foexamplefolder1",
  "checked": null,
  "status": 3
}

Details eines Ordners

GET /api/v2/folders/{folder}/details

Nur der Eigentümer bekommt die Antwort. Ein fremder oder unbekannter Ordner liefert 404 mit Resource not found. Der Status-Abruf darüber bleibt für jeden gültigen Key offen.

Request

GET /api/v2/folders/foexamplefolder1/details
Authorization: Bearer token123

Response

{
  "id": "4",
  "folder": "foexamplefolder1",
  "url": "https://tolink.to/f/foexamplefolder1",
  "title": "Test Folder",
  "status": 3,
  "hits": 12,
  "created": "2026-11-01 12:00:00",
  "modified": "2026-11-02 08:00:00",
  "checked": "2026-11-02 09:00:00",
  "options": {
    "web": true,
    "container": false,
    "cln": false,
    "captcha": false,
    "captcha_text": false,
    "password": ""
  },
  "links": [
    {
      "id": "18",
      "url": "https://example.com/file.bin",
      "title": "file.bin",
      "status": 1,
      "size": 1500,
      "hits": 3,
      "hoster": "uploaded",
      "created": "2026-11-01 12:00:00"
    }
  ]
}

Ordner ändern

PATCH /api/v2/folders/{folder}

Felder, die fehlen, bleiben. Ein leeres links lässt die vorhandenen Links stehen.

Request

PATCH /api/v2/folders/foexamplefolder1
Authorization: Bearer token123
Content-Type: application/json

{
  "title": "Neuer Titel"
}

Response

{
  "folder": "foexamplefolder1",
  "title": "Neuer Titel",
  "affected": 1
}

Ordner löschen

DELETE /api/v2/folders/{folder}

Request

DELETE /api/v2/folders/foexamplefolder1
Authorization: Bearer token123

Response

{
  "deleted": true,
  "folder": "foexamplefolder1",
  "message": "Ordner erfolgreich gelöscht"
}

Kurzlink anlegen

POST /api/v2/shortlinks

Request

POST /api/v2/shortlinks
Authorization: Bearer token123
Content-Type: application/json

{
  "link": "https://example.com/file.bin"
}

Response

{
  "url": "https://tolink.to/l/a5",
  "alias": "a5"
}

Kurzlink löschen

DELETE /api/v2/shortlinks/{shortlink}

Request

DELETE /api/v2/shortlinks/a5
Authorization: Bearer token123

Response

{
  "deleted": true,
  "alias": "a5",
  "message": "Link successful deleted"
}