Password Pusher API v2
BETAUmfassende REST-API-Dokumentation für die Integration von Password Pusher in Ihre Anwendungen
Beta-Bekanntmachung: API v2 befindet sich derzeit in der Betaphase. Wir haben alles getan, um die Stabilität zu gewährleisten, aber bis zur endgültigen Veröffentlichung kann es noch zu Änderungen kommen. Wir freuen uns über Ihr Feedback!
Anfragen
Anfragen ermöglichen eine sichere Zwei-Wege-Kommunikation zur Erfassung vertraulicher Informationen. Erstellen Sie eine Anfrage mit einer geheimen URL, teilen Sie sie mit einer beliebigen Person und erhalten Sie sichere Antworten mit Text oder Dateien - ohne sensible Daten in E-Mails, Chats oder Protokollen preiszugeben.
Perfekt für die Erfassung von Anmeldedaten, API-Schlüsseln, vertraulichen Dokumenten oder anderen sensiblen Informationen von Kollegen, Kunden oder Auftraggebern. Die Antworten werden automatisch verschlüsselt und nach einer bestimmten Dauer automatisch gelöscht, um die Datenexposition zu minimieren. In den Prüfprotokollen jeder Anfrage ist eine vollständige Verfolgung des Lebenszyklus möglich.
Anträge haben drei Zustände:
POST /api/v2/requests
Erzeugt eine neue Anfrage. Erfordert Authentifizierung.
Request Body (JSON)
{
"request": {
"request": "Please provide your hosting information here.",
"close_after_duration": 8,
"passphrase": "optional_passphrase",
"name": "Database Access Request",
"note": "Internal note",
"retrieval_step": true,
"include_requestor": false,
"response_file_attachments": true
}
}
Request Body with Files (multipart/form-data)
curl -X POST https://eu.pwpush.com/api/v2/requests \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F "request[request]=Please provide your hosting information here." \
-F "request[close_after_duration]=8" \
-F "request[name]=Database Access Request" \
-F "request[files][]=@/path/to/document.pdf" \
-F "request[files][]=@/path/to/spreadsheet.xlsx"
Note: When attaching files, use multipart/form-data format. Multiple files can be attached using request[files][].
Parameters
| Parameter | Type | Description |
|---|---|---|
request
erforderlich
|
string | Der Anfragetext/die Nachricht zum Teilen |
close_after_duration
Optional
|
integer (0-17) | Dauer enum - wann wird die Anfrage geschlossen |
passphrase
Optional
|
string | Empfänger zur Eingabe dieser Passphrase auffordern, um die |
name
Optional
|
string | Ein Name, der im Dashboard, in Benachrichtigungen und E-Mails angezeigt wird |
note
Optional
|
string | Interne Notiz (nur für den Ersteller sichtbar) |
retrieval_step
Optional
|
boolean | Hilft zu vermeiden, dass Chat-Systeme und URL-Scanner Ansichten verschlingen |
include_requestor
Optional
|
boolean | Informationen zum Antragsteller in den Antrag aufnehmen |
response_file_attachments
Optional
|
boolean | Dateianhänge in Antworten zulassen |
files
Optional
|
array | Datei(en) zum Hochladen und Anhängen an den Antrag |
notify_emails_to
Optional
|
string | E-Mail-Adressen, die benachrichtigt werden sollen, wenn eine Anfrage erstellt wird (durch Kommata getrennt) |
notify_emails_to_locale
Optional
|
string | Gebietsschema (Sprache), in der die E-Mail-Benachrichtigung(en) gesendet werden sollen |
account_id
Optional
|
integer | Die Konto-ID, mit der die Anfrage verknüpft werden soll |
Dauer Werte für close_after_duration
Beispiel-Anfrage
curl -X POST https://eu.pwpush.com/api/v2/requests \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"request": {
"request": "Please provide your hosting information here.",
"close_after_duration": 8,
"passphrase": "optional_passphrase",
"name": "Database Access Request"
}
}'
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://eu.pwpush.com/api/v2/requests')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
request['Content-Type'] = 'application/json'
request.body = {
request: {
request: 'Please provide your hosting information here.',
close_after_duration: 8,
passphrase: 'optional_passphrase',
name: 'Database Access Request'
}
}.to_json
response = http.request(request)
puts response.body
import requests
import json
url = 'https://eu.pwpush.com/api/v2/requests'
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Content-Type': 'application/json'
}
data = {
'request': {
'request': 'Please provide your hosting information here.',
'close_after_duration': 8,
'passphrase': 'optional_passphrase',
'name': 'Database Access Request'
}
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
$headers = @{
'Authorization' = 'Bearer YOUR_API_TOKEN'
'Content-Type' = 'application/json'
}
$body = @{
request = @{
request = 'Please provide your hosting information here.'
close_after_duration = 8
passphrase = 'optional_passphrase'
name = 'Database Access Request'
}
} | ConvertTo-Json -Depth 10
$response = Invoke-RestMethod -Uri 'https://eu.pwpush.com/api/v2/requests' `
-Method Post `
-Headers $headers `
-Body $body
$response | ConvertTo-Json
GET /api/v2/requests/:url_token
Ruft den Inhalt einer offenen oder fertigen Anfrage ab. Dies kann die Anfrage schließen, wenn sie so konfiguriert ist, dass sie nach einer bestimmten Anzahl von Aufrufen geschlossen wird.
Beispiel-Anfrage
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a
Beispielanfrage mit Passphrase
curl -X GET "https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a?passphrase=your_passphrase"
Beispielantwort (Offene Anfrage)
{
"close_after_duration": 8,
"url_token": "orpw2wkg00vpn0a",
"retrieval_step": true,
"passphrase": "optional_passphrase",
"created_at": "2023-10-27T10:00:00.000Z",
"updated_at": "2023-10-27T10:00:00.000Z",
"state": "open",
"include_requestor": false,
"response_file_attachments": true,
"close_after_at": "2023-11-04T10:00:00.000Z",
"days_remaining": 8,
"json_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a",
"request": "Please provide your hosting information here.",
"response": null,
"files": []
}
Beispielantwort (Bereitschaftsanfrage)
{
"close_after_duration": 8,
"url_token": "orpw2wkg00vpn0a",
"retrieval_step": true,
"passphrase": "optional_passphrase",
"created_at": "2023-10-27T10:00:00.000Z",
"updated_at": "2023-10-27T10:00:00.000Z",
"state": "ready",
"include_requestor": false,
"response_file_attachments": true,
"close_after_at": "2023-11-04T10:00:00.000Z",
"days_remaining": 8,
"json_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a",
"request": null,
"response": "The API key is: sk_live_1234567890",
"files": []
}
Anmerkung: Wenn die Anfrage eine Passphrase enthält, fügen Sie diese als Abfrageparameter ein: ?passphrase=your_passphrase. Das Abrufen einer Anfrage zählt als eine Ansicht und kann die Anfrage schließen, wenn sie ihr Ansichtslimit erreicht.
PATCH /api/v2/requests/:url_token/respond
Antwortet auf eine offene Anfrage und ändert seinen Status auf "bereit".
Request Body (JSON)
{
"request": {
"response": "The API key is: sk_live_1234567890"
}
}
Request Body with Files (multipart/form-data)
curl -X PATCH https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/respond \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F "request[response]=The API key is: sk_live_1234567890" \
-F "request[files][]=@/path/to/response_doc.pdf"
Note: When attaching files, use multipart/form-data format. Multiple files can be attached using request[files][].
Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
response
erforderlich
|
string | Der Antworttext/die Antwortnachricht auf die Anfrage |
files
Optional
|
array | Datei(en), die der Antwort beigefügt werden sollen (erfordert response_file_attachments: true auf die Anfrage) |
Anmerkung: Nur Anfragen im Zustand "offen" können Antworten erhalten. Sobald eine Antwort übermittelt wurde, geht die Anfrage in den Zustand "bereit" über und kann keine weiteren Antworten annehmen.
GET /api/v2/requests/:url_token/preview
Gibt die vollständig qualifizierte geheime URL einer Anfrage zurück, ohne den Inhalt abzurufen.
Beispiel-Anfrage
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/preview
Beispiel Antwort
{
"url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a"
}
GET /api/v2/requests/:url_token/audit
Gibt das Audit-Protokoll für eine Anfrage zurück. Erfordert Authentifizierung und Eigentümerschaft.
Abfrage-Parameter:
page (Optional): Seitenzahl für die Paginierung.
- Standard:
1(erste Seite) - Reichweite:
1zu200 - Liefert bis zu 50 Audit-Protokolleinträge pro Seite
- Beispiel:
?page=2um die zweite Seite aufzurufen
Beispiel-Anfrage
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/audit \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispiel Antwort
{
"logs": [
{
"ip": "192.168.1.100",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
"referrer": null,
"kind": "creation",
"created_at": "2023-10-27T10:00:00.000Z",
"updated_at": "2023-10-27T10:00:00.000Z"
},
{
"ip": "192.168.1.101",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36",
"referrer": "https://example.com",
"kind": "view",
"created_at": "2023-10-27T10:05:00.000Z",
"updated_at": "2023-10-27T10:05:00.000Z"
},
{
"ip": "192.168.1.102",
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15",
"referrer": null,
"kind": "response",
"created_at": "2023-10-27T10:10:00.000Z",
"updated_at": "2023-10-27T10:10:00.000Z"
}
]
}
Anmerkung: Die kind feld gibt die Art der protokollierten Aktion an. Übliche Werte sind: creation, view, response, close, failed_passphrase, und failed_view.
DELETE /api/v2/requests/:url_token
Schließt eine Anfrage sofort und löscht alle mit ihr verbundenen sensiblen Daten dauerhaft. Dieser Vorgang ist irreversibel und kann nicht rückgängig gemacht werden. Erfordert Authentifizierung und Eigentümerschaft.
Beispiel-Anfrage
curl -X DELETE https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispiel Antwort
{
"close_after_duration": null,
"url_token": "orpw2wkg00vpn0a",
"retrieval_step": false,
"passphrase": null,
"created_at": "2023-10-27T10:00:00.000Z",
"updated_at": "2023-10-27T10:15:00.000Z",
"state": "closed",
"include_requestor": false,
"response_file_attachments": false,
"close_after_at": null,
"days_remaining": null,
"json_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a",
"account_id": 1,
"note": null,
"name": null,
"request": null,
"response": null,
"files": []
}
GET /api/v2/requests/active
Gibt eine paginierte Liste Ihrer aktiven (offenen oder fertigen) Anfragen zurück. Erfordert Authentifizierung.
GET /api/v2/requests/open
Gibt eine paginierte Liste Ihrer offenen Anfragen zurück. Erfordert Authentifizierung.
GET /api/v2/requests/ready
Gibt eine paginierte Liste Ihrer fertigen Anfragen zurück. Erfordert Authentifizierung.
GET /api/v2/requests/closed
Gibt eine paginierte Liste Ihrer abgeschlossenen Anfragen zurück. Erfordert Authentifizierung.
Abfrage-Parameter:
page (Optional): Seitenzahl für die Paginierung.
- Standard:
1(erste Seite) - Reichweite:
1zu200 - Liefert bis zu 50 Anfragen pro Seite
- Beispiel:
?page=2um die zweite Seite aufzurufen
Anfrage Staaten
Offen
Die Anfrage wurde erstellt und wartet auf eine Antwort. Der Anfragetext ist sichtbar, aber es wurde noch keine Antwort gegeben.
Bereit
Die Anfrage wurde beantwortet und enthält nun die Nutzdaten der Antwort. Der Anfragentext ist nicht mehr sichtbar, aber die Antwort ist zum Abruf verfügbar.
Geschlossen
Die Anfrage wurde bearbeitet und alle sensiblen Daten (sowohl Anfrage als auch Antwort) wurden endgültig gelöscht. Dieser Zustand ist unumkehrbar.
Beispielanfrage (aktiv)
curl -X GET https://eu.pwpush.com/api/v2/requests/active \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispielanfrage (offen)
curl -X GET https://eu.pwpush.com/api/v2/requests/open \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispielanfrage (Bereit)
curl -X GET https://eu.pwpush.com/api/v2/requests/ready \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispielanfrage (abgeschlossen)
curl -X GET https://eu.pwpush.com/api/v2/requests/closed \
-H "Authorization: Bearer YOUR_API_TOKEN"
Beispiel Antwort
[
{
"close_after_duration": 7,
"url_token": "abc123xyz789",
"retrieval_step": false,
"passphrase": null,
"created_at": "2023-10-27T10:00:00.000Z",
"updated_at": "2023-10-27T10:00:00.000Z",
"state": "open",
"include_requestor": false,
"response_file_attachments": false,
"close_after_at": "2023-11-03T10:00:00.000Z",
"days_remaining": 7,
"json_url": "https://eu.pwpush.com/r/abc123xyz789.json",
"html_url": "https://eu.pwpush.com/r/abc123xyz789",
"account_id": 1,
"note": null,
"name": null
},
{
"close_after_duration": 7,
"url_token": "def456uvw012",
"retrieval_step": false,
"passphrase": null,
"created_at": "2023-10-26T15:30:00.000Z",
"updated_at": "2023-10-27T09:00:00.000Z",
"state": "ready",
"include_requestor": false,
"response_file_attachments": false,
"close_after_at": "2023-11-02T15:30:00.000Z",
"days_remaining": 6,
"json_url": "https://eu.pwpush.com/r/def456uvw012.json",
"html_url": "https://eu.pwpush.com/r/def456uvw012",
"account_id": 1,
"note": null,
"name": null
}
]
Anmerkung: Die /active endpunkt liefert Anfragen in beiden open und ready staaten. Verwenden Sie /open oder /ready endpunkte, um nach einem bestimmten Zustand zu filtern.
Zuletzt aktualisiert: July 12, 2026