API-Dokumentation
Integrieren Sie SendMeSafe in Ihre bestehenden Workflows und Anwendungen mit unserer REST-API.
Übersicht
Die SendMeSafe API ermöglicht die programmatische Verwaltung von Upload-Links, Share-Links, Dateien und Team-Mitgliedern. Sie können alle Funktionen der Web-Oberfläche auch über die API nutzen.
- -Upload-Links erstellen, aktualisieren und verwalten
- -Dateien sicher hochladen und herunterladen
- -Share-Links für sichere Dateifreigabe erstellen
- -Team-Mitglieder einladen und verwalten
Authentifizierung
Authentifizierung
Alle API-Anfragen erfordern eine Authentifizierung mittels Bearer-Token im Authorization-Header.
Beispiel
Authorization: Bearer YOUR_API_KEY
Sicherheitshinweis
Verwenden Sie API-Schlüssel nur serverseitig. Betten Sie sie niemals in Client-Code ein.
Basis-URL
Alle API-Anfragen werden an die folgende Basis-URL gesendet:
https://sendmesafe.com/apiEndpunkte
Upload-Links
Erstellen und verwalten Sie Upload-Links, über die Ihre Kunden Dateien hochladen können.
/api/links/{id}Aktualisiert einen bestehenden Upload-Link.
Parameter
idstring*labelstringexpiresAtISO 8601passwordstringmaxFileSizenumbercurl -X PATCH https://sendmesafe.com/api/links/link_abc123 \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"label": "Updated Label",
"expiresAt": "2025-12-31T23:59:59Z"
}'/api/quick-linkErstellt einen neuen Kunden und Upload-Link in einem Schritt.
Parameter
clientNamestring*passwordstringexpiresInDaysnumbercurl -X POST https://sendmesafe.com/api/quick-link \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"clientName": "Max Mustermann",
"password": "secret123",
"expiresInDays": 30
}'{
"success": true,
"linkUrl": "https://sendmesafe.com/u/a1b2c3d4e5f6",
"linkId": "link_xyz789",
"clientId": "client_abc123"
}Uploads
Endpunkte für das Hochladen von Dateien über Upload-Links.
/api/uploadGeneriert eine vorzeichnete URL für den direkten Upload zu S3.
Parameter
tokenstring*filenamestring*sizenumber*mimeTypestringpasswordstringcurl -X POST https://sendmesafe.com/api/upload \
-H "Content-Type: application/json" \
-d '{
"token": "abc123def456",
"filename": "document.pdf",
"size": 1048576,
"mimeType": "application/pdf"
}'{
"url": "https://storage.sendmesafe.com/...",
"key": "org_123/client_456/uuid-document.pdf"
}/api/upload/completeBestätigt den Upload und speichert die Datei-Metadaten.
Parameter
tokenstring*keystring*filenamestring*sizenumber*Dateien
Verwalten Sie empfangene und gesendete Dateien.
/api/filesListet alle Dateien mit optionalen Filtern auf.
Parameter
typestringclientstringqstringsortstring{
"files": [
{
"id": "received-file_123",
"type": "received",
"filename": "document.pdf",
"size": 1048576,
"mimeType": "application/pdf",
"createdAt": "2025-01-15T10:30:00Z",
"clientId": "client_abc",
"clientName": "Max Mustermann"
}
],
"counts": {
"total": 42,
"received": 30,
"sent": 12
}
}/api/files/{id}/downloadLädt eine Datei herunter (Streaming).
Parameter
idstring*/api/files/{id}Löscht eine Datei dauerhaft.
Parameter
idstring*Team
Verwalten Sie Team-Mitglieder und Einladungen.
Hinweis: Die Team-Funktionen erfordern den Organisation-Plan.
/api/team/membersListet alle Team-Mitglieder und offene Einladungen auf.
{
"members": [
{
"id": "user_123",
"name": "Anna Schmidt",
"email": "anna@company.com",
"role": "OWNER",
"createdAt": "2024-01-01T00:00:00Z"
}
],
"invitations": [
{
"id": "inv_456",
"email": "new@company.com",
"role": "MEMBER",
"expiresAt": "2025-01-22T00:00:00Z"
}
]
}/api/team/invitationsSendet eine Einladung an eine E-Mail-Adresse.
Parameter
emailstring*rolestring/api/team/invitations?id={id}Widerruft eine ausstehende Einladung.
Parameter
idstring*/api/team/members/{id}Entfernt ein Mitglied aus dem Team.
Parameter
idstring*Suche
/api/search?q={query}Durchsucht Kunden, Upload-Dateien und Share-Dateien.
Parameter
qstring*{
"clients": [...],
"uploadFiles": [...],
"sharedFiles": [...]
}Fehler-Codes
Die API verwendet Standard-HTTP-Statuscodes zur Kennzeichnung von Erfolg oder Fehlern.
| Code | Status | Beschreibung |
|---|---|---|
| 400 | Bad Request | Die Anfrage enthält ungültige Parameter oder ist fehlerhaft formatiert. |
| 401 | Unauthorized | Ungültiger oder fehlender API-Schlüssel. |
| 403 | Forbidden | Keine Berechtigung für diese Aktion oder Abo-Upgrade erforderlich. |
| 404 | Not Found | Die angeforderte Ressource wurde nicht gefunden. |
| 410 | Gone | Die Ressource ist abgelaufen (z.B. Link abgelaufen). |
| 500 | Server Error | Ein interner Serverfehler ist aufgetreten. Bitte versuchen Sie es später erneut. |
Fehler-Antwort
{
"error": "Unauthorized",
"message": "Invalid or missing API key"
}Rate Limits
Um die Stabilität des Dienstes zu gewährleisten, gelten folgende Rate Limits:
| Endpunkt | Limit |
|---|---|
| /api/* | 100 Anfragen pro Minute |
| /api/upload | 50 Uploads pro Minute |
| /api/search | 30 Suchanfragen pro Minute |
API-Support
Haben Sie Fragen zur API oder benötigen Sie Hilfe bei der Integration? Unser Entwickler-Team unterstützt Sie gerne.
api@sendmesafe.com