Password Pusher API v2
BETAUitgebreide REST API-documentatie voor integratie Password Pusher in uw toepassingen
Bètabericht: API v2 is momenteel in bèta. Hoewel we alles in het werk hebben gesteld om stabiliteit te garanderen, kunnen er vóór de definitieve release nog wijzigingen worden doorgevoerd. We zijn blij met je feedback!
Verzoeken
Verzoeken maken veilige communicatie in twee richtingen mogelijk voor het verzamelen van gevoelige informatie. Maak een verzoek aan met een geheime URL, deel het met iedereen en ontvang beveiligde antwoorden met tekst of bestanden - allemaal zonder gevoelige gegevens bloot te leggen in e-mail, chat of logbestanden.
Perfect voor het verzamelen van referenties, API-sleutels, vertrouwelijke documenten of andere gevoelige informatie van collega's, klanten of cliënten. Antwoorden worden automatisch versleuteld en automatisch verwijderd na een bepaalde tijd om de blootstelling van gegevens te minimaliseren. Volledige lifecycle tracking is beschikbaar in de auditlogs van elk verzoek.
Verzoeken hebben drie toestanden:
POST /api/v2/requests
Creëert een nieuw verzoek. Verificatie vereist.
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
vereist
|
string | De vraagtekst/het bericht om te delen |
close_after_duration
optioneel
|
integer (0-17) | Duration enum - wanneer het verzoek moet worden afgesloten |
passphrase
optioneel
|
string | Ontvangers verplichten om deze wachtwoordzin in te voeren om te bekijken |
name
optioneel
|
string | Een naam die wordt weergegeven in het dashboard, meldingen en e-mails |
note
optioneel
|
string | Interne notitie (alleen zichtbaar voor maker) |
retrieval_step
optioneel
|
boolean | Helpt voorkomen dat chatsystemen en URL-scanners weergaven opeten |
include_requestor
optioneel
|
boolean | Neem informatie over de aanvrager op in het verzoek |
response_file_attachments
optioneel
|
boolean | Bestandsbijlagen in reacties toestaan |
files
optioneel
|
array | Bestand(en) uploaden en toevoegen aan het verzoek |
notify_emails_to
optioneel
|
string | E-mailadressen die moeten worden gemeld wanneer een verzoek is aangemaakt (door komma's gescheiden) |
notify_emails_to_locale
optioneel
|
string | Locale (taal) om e-mailnotificatie(s) te verzenden in |
account_id
optioneel
|
integer | De account-ID om het verzoek aan te koppelen |
Duur Waarden voor close_after_duration
Voorbeeld verzoek
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
Haalt de inhoud van een open of klaar verzoek op. Dit kan het verzoek sluiten als het is geconfigureerd om te sluiten na een bepaald aantal weergaven.
Voorbeeld verzoek
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a
Voorbeeldverzoek met wachtwoordzin
curl -X GET "https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a?passphrase=your_passphrase"
Voorbeeld van antwoord (open verzoek)
{
"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": []
}
Voorbeeld Response (Gereed Verzoek)
{
"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": []
}
Opmerking: Als het verzoek een wachtwoordzin heeft, voeg deze dan toe als een queryparameter: ?passphrase=your_passphrase. Het ophalen van een verzoek telt als een weergave en kan het verzoek sluiten als het zijn weergavelimiet bereikt.
PATCH /api/v2/requests/:url_token/respond
Reageert op een open verzoek en verandert zijn status in 'klaar'.
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][].
Parameters
| Parameter | Type | Beschrijving |
|---|---|---|
response
vereist
|
string | De antwoordtekst/het bericht op het verzoek |
files
optioneel
|
array | Bestand(en) om bij het antwoord te voegen (vereist response_file_attachments: true op het verzoek) |
Opmerking: Alleen verzoeken in de status "open" kunnen antwoorden ontvangen. Zodra een antwoord is ingediend, gaat het verzoek naar de status "gereed" en kan het geen andere antwoorden meer ontvangen.
GET /api/v2/requests/:url_token/preview
Retourneert de volledig gekwalificeerde geheime URL van een verzoek zonder de inhoud op te halen.
Voorbeeld verzoek
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/preview
Voorbeeld Response
{
"url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a"
}
GET /api/v2/requests/:url_token/audit
Geeft het auditlogboek voor een verzoek. Vereist authenticatie en eigendom.
Vraagparameters:
page (optioneel): Paginanummer voor paginering.
- Standaard:
1(eerste pagina) - Bereik:
1naar200 - Geeft tot 50 auditlogboekvermeldingen per pagina weer
- Voorbeeld:
?page=2om de tweede pagina op te halen
Voorbeeld verzoek
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/audit \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeld Response
{
"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"
}
]
}
Opmerking: De kind veld geeft het gelogde actietype aan. Veel voorkomende waarden zijn: creation, view, response, close, failed_passphrase, en failed_view.
DELETE /api/v2/requests/:url_token
Sluit een verzoek onmiddellijk af en verwijdert permanent alle gevoelige gegevens die ermee geassocieerd zijn. Deze actie is onomkeerbaar en kan niet ongedaan worden gemaakt. Vereist authenticatie en eigenaarschap.
Voorbeeld verzoek
curl -X DELETE https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeld Response
{
"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
Geeft een gepagineerde lijst van uw actieve (open of gereed) verzoeken. Verificatie vereist.
GET /api/v2/requests/open
Geeft een gepagineerde lijst van uw openstaande verzoeken. Verificatie vereist.
GET /api/v2/requests/ready
Geeft een gepagineerde lijst van uw gereedstaande verzoeken. Verificatie vereist.
GET /api/v2/requests/closed
Geeft een gepagineerde lijst van uw afgesloten verzoeken. Verificatie vereist.
Vraagparameters:
page (optioneel): Paginanummer voor paginering.
- Standaard:
1(eerste pagina) - Bereik:
1naar200 - Geeft tot 50 aanvragen per pagina weer
- Voorbeeld:
?page=2om de tweede pagina op te halen
Verzoek Staten
Open
Het verzoek is aangemaakt en wacht op een reactie. De tekst van het verzoek is zichtbaar, maar er is nog geen antwoord gegeven.
Reactie gereed
Het verzoek is beantwoord en bevat nu de payload van het antwoord. De tekst van het verzoek is niet langer zichtbaar, maar het antwoord kan worden opgehaald.
Gesloten
Het verzoek is afgehandeld en alle gevoelige gegevens (zowel verzoek als antwoord) zijn permanent verwijderd. Deze status is onomkeerbaar.
Voorbeeldverzoek (Actief)
curl -X GET https://eu.pwpush.com/api/v2/requests/active \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeldverzoek (Open)
curl -X GET https://eu.pwpush.com/api/v2/requests/open \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeldverzoek (Gereed)
curl -X GET https://eu.pwpush.com/api/v2/requests/ready \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeldverzoek (Gesloten)
curl -X GET https://eu.pwpush.com/api/v2/requests/closed \
-H "Authorization: Bearer YOUR_API_TOKEN"
Voorbeeld Response
[
{
"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
}
]
Opmerking: De /active eindpunt stuurt verzoeken in zowel open en ready staten. Gebruik /open of /ready eindpunten om te filteren op specifieke status.
Laatst bijgewerkt: July 12, 2026