Password Pusher API v2
BETADocumentație cuprinzătoare REST API pentru integrare Password Pusher în aplicațiile dvs
Aviz Beta: API v2 este în prezent în versiune beta. Deși am depus toate eforturile pentru a asigura stabilitatea, este posibil să existe modificări de ultimă oră înainte de lansarea finală. Feedback-ul dvs. este binevenit!
Cereri
Solicitările permit comunicarea securizată, bidirecțională, pentru colectarea informațiilor sensibile. Creați o cerere cu o adresă URL secretă, partajați-o cu oricine și primiți răspunsuri securizate care conțin text sau fișiere - totul fără a expune date sensibile în e-mail, chat sau jurnale.
Perfect pentru colectarea acreditărilor, a cheilor API, a documentelor confidențiale sau a oricăror informații sensibile de la colegi, clienți sau clienți. Răspunsurile sunt criptate automat și șterse automat după o durată specificată pentru a minimiza expunerea datelor. Urmărirea ciclului de viață complet este disponibilă în jurnalele de audit ale fiecărei solicitări.
Cererile au trei stări:
POST /api/v2/requests
Creează o nouă cerere. Necesită autentificare.
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://us.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
necesară
|
string | Textul/mesajul cererii de partajat |
close_after_duration
opțional
|
integer (0-17) | Durata enum - când se închide cererea |
passphrase
opțional
|
string | Solicitați destinatarilor să introducă această frază de acces pentru a vizualiza |
name
opțional
|
string | Un nume afișat în tabloul de bord, notificări și e-mailuri |
note
opțional
|
string | Notă internă (vizibilă doar pentru creator) |
retrieval_step
opțional
|
boolean | Ajută la evitarea consumului de vizualizări de către sistemele de chat și scanerele URL |
include_requestor
opțional
|
boolean | Includeți informațiile solicitantului în cerere |
response_file_attachments
opțional
|
boolean | Permiteți atașarea de fișiere în răspunsuri |
files
opțional
|
array | Fișier(e) de încărcat și atașat(e) la cerere |
notify_emails_to
opțional
|
string | Adrese de e-mail pentru a fi notificate atunci când se creează o cerere (separate prin virgulă) |
notify_emails_to_locale
opțional
|
string | Locale (limbă) pentru a trimite notificarea (notificările) prin e-mail în |
authenticated_recipients
opțional
|
boolean | Se solicită verificarea prin cod OTP trimis pe e-mail înainte de accesare. Necesită setarea „notify_emails_to”. Funcționează doar în browser atunci când este activată (API-ul de recuperare/răspuns returnează codul 403). |
account_id
opțional
|
integer | ID-ul contului cu care se asociază cererea |
Durată Valori pentru close_after_duration
Exemplu de cerere
curl -X POST https://us.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://us.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://us.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://us.pwpush.com/api/v2/requests' `
-Method Post `
-Headers $headers `
-Body $body
$response | ConvertTo-Json
GET /api/v2/requests/:url_token
Recuperează conținutul unei cereri deschise sau pregătite. Aceasta poate închide cererea dacă este configurată să se închidă după un anumit număr de vizualizări.
Exemplu de cerere
curl -X GET https://us.pwpush.com/api/v2/requests/orpw2wkg00vpn0a
Exemplu de cerere cu frază de acces
curl -X GET "https://us.pwpush.com/api/v2/requests/orpw2wkg00vpn0a?passphrase=your_passphrase"
Exemplu de răspuns (cerere deschisă)
{
"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://us.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://us.pwpush.com/r/orpw2wkg00vpn0a",
"request": "Please provide your hosting information here.",
"response": null,
"files": []
}
Exemplu de răspuns (solicitare gata)
{
"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://us.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://us.pwpush.com/r/orpw2wkg00vpn0a",
"request": null,
"response": "The API key is: sk_live_1234567890",
"files": []
}
Notă: Dacă cererea are o frază de acces, includeți-o ca parametru de interogare: ?passphrase=your_passphrase. Recuperarea unei cereri este considerată ca o vizualizare și poate închide cererea dacă aceasta atinge limita de vizualizări.
PATCH /api/v2/requests/:url_token/respond
Răspunde la o cerere deschisă, schimbându-și starea în "gata".
Request Body (JSON)
{
"request": {
"response": "The API key is: sk_live_1234567890"
}
}
Request Body with Files (multipart/form-data)
curl -X PATCH https://us.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][].
Params
| Parametru | Tip | Descriere |
|---|---|---|
response
necesară
|
string | Textul/mesajul de răspuns la cerere |
files
opțional
|
array | Fișier(e) de atașat la răspuns (necesită response_file_attachments: true pe cerere) |
Notă: Numai cererile aflate în starea "deschis" pot primi răspunsuri. Odată ce un răspuns este trimis, cererea trece în starea "gata" și nu mai poate accepta răspunsuri suplimentare.
GET /api/v2/requests/:url_token/preview
Returnează URL-ul secret complet calificat al unei cereri fără a prelua conținutul.
Exemplu de cerere
curl -X GET https://us.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/preview
Exemplu de răspuns
{
"url": "https://us.pwpush.com/r/orpw2wkg00vpn0a"
}
GET /api/v2/requests/:url_token/audit
Returnează jurnalul de audit pentru o cerere. Necesită autentificare și proprietate.
Parametri de interogare:
page (opțional): Numărul paginii pentru paginare.
- Implicit:
1(prima pagină) - Gama:
1pentru200 - Returnează până la 50 de intrări în jurnalul de audit pe pagină
- Exemplu:
?page=2pentru a prelua a doua pagină
Exemplu de cerere
curl -X GET https://us.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/audit \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de răspuns
{
"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"
}
]
}
Notă: The kind indică tipul de acțiune înregistrată. Valorile uzuale includ: creation, view, response, close, failed_passphrase, și failed_view.
DELETE /api/v2/requests/:url_token
Închide imediat o cerere și șterge definitiv toate datele sensibile asociate cu aceasta. Această acțiune este ireversibilă și nu poate fi anulată. Necesită autentificare și proprietate.
Exemplu de cerere
curl -X DELETE https://us.pwpush.com/api/v2/requests/orpw2wkg00vpn0a \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de răspuns
{
"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://us.pwpush.com/r/orpw2wkg00vpn0a.json",
"html_url": "https://us.pwpush.com/r/orpw2wkg00vpn0a",
"account_id": 1,
"note": null,
"name": null,
"request": null,
"response": null,
"files": []
}
GET /api/v2/requests/active
Returnează o listă paginată a cererilor dvs. active (deschise sau pregătite). Necesită autentificare.
GET /api/v2/requests/open
Returnează o listă paginată a cererilor dvs. deschise. Necesită autentificare.
GET /api/v2/requests/ready
Returnează o listă paginată a cererilor dvs. gata. Necesită autentificare.
GET /api/v2/requests/closed
Returnează o listă paginată a cererilor dvs. închise. Necesită autentificare.
Parametri de interogare:
page (opțional): Numărul paginii pentru paginare.
- Implicit:
1(prima pagină) - Gama:
1pentru200 - Returnează până la 50 de cereri pe pagină
- Exemplu:
?page=2pentru a prelua a doua pagină
Solicitarea statelor
Cerere deschisă
Cererea a fost creată și așteaptă un răspuns. Textul cererii este vizibil, dar încă nu a fost furnizat niciun răspuns.
Răspuns pregătit
Cererea a primit răspuns și conține acum sarcina utilă a răspunsului. Textul cererii nu mai este vizibil, dar răspunsul este disponibil pentru recuperare.
Închis
Cererea a fost tratată și toate datele sensibile (atât cererea, cât și răspunsul) au fost șterse definitiv. Această stare este ireversibilă.
Exemplu de cerere (activă)
curl -X GET https://us.pwpush.com/api/v2/requests/active \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de cerere (deschisă)
curl -X GET https://us.pwpush.com/api/v2/requests/open \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de cerere (gata)
curl -X GET https://us.pwpush.com/api/v2/requests/ready \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de cerere (închis)
curl -X GET https://us.pwpush.com/api/v2/requests/closed \
-H "Authorization: Bearer YOUR_API_TOKEN"
Exemplu de răspuns
[
{
"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://us.pwpush.com/r/abc123xyz789.json",
"html_url": "https://us.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://us.pwpush.com/r/def456uvw012.json",
"html_url": "https://us.pwpush.com/r/def456uvw012",
"account_id": 1,
"note": null,
"name": null
}
]
Notă: The /active punctul final returnează cereri atât în open și ready state. Utilizare /open sau /ready pentru a filtra după o anumită stare.
Ultima actualizare: July 20, 2026