Password Pusher API v2
بیٹاانضمام کے لیے جامع REST API دستاویزات Password Pusher آپ کی درخواستوں میں
بیٹا نوٹس: API v2 فی الحال بیٹا میں ہے۔ اگرچہ ہم نے استحکام کو یقینی بنانے کے لیے ہر ممکن کوشش کی ہے، لیکن حتمی ریلیز سے پہلے کچھ تبدیلیاں ہو سکتی ہیں۔ ہم آپ کے تاثرات کا خیرمقدم کرتے ہیں!
درخواستیں
درخواستیں حساس معلومات جمع کرنے کے لیے محفوظ، دو طرفہ مواصلات کو فعال کرتی ہیں۔ خفیہ URL کے ساتھ ایک درخواست بنائیں، اسے کسی کے ساتھ بھی شیئر کریں، اور ٹیکسٹ یا فائلوں پر مشتمل محفوظ جوابات حاصل کریں—سب کچھ ای میل، چیٹ، یا لاگز میں حساس ڈیٹا کو ظاہر کیے بغیر۔
اسناد، API کیز، خفیہ دستاویزات، یا ساتھیوں، گاہکوں، یا گاہکوں سے کوئی حساس معلومات جمع کرنے کے لیے بہترین۔ جوابات خود بخود خفیہ ہو جاتے ہیں اور ڈیٹا کی نمائش کو کم کرنے کے لیے مخصوص مدت کے بعد خود بخود حذف ہو جاتے ہیں۔ مکمل لائف سائیکل ٹریکنگ ہر درخواست کے آڈٹ لاگز میں دستیاب ہے۔
درخواستوں کی تین حالتیں ہیں:
POST /api/v2/requests
ایک نئی درخواست بناتا ہے۔ تصدیق کی ضرورت ہے۔
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
کی ضرورت ہے
|
string | شیئر کرنے کے لیے ٹیکسٹ/پیغام کی درخواست |
close_after_duration
اختیاری
|
integer (0-17) | دورانیہ enum - درخواست کو کب بند کرنا ہے۔ |
passphrase
اختیاری
|
string | دیکھنے کے لیے وصول کنندگان سے یہ پاسفریز درج کرنے کی ضرورت ہے۔ |
name
اختیاری
|
string | ڈیش بورڈ، اطلاعات اور ای میلز میں دکھایا گیا ایک نام |
note
اختیاری
|
string | اندرونی نوٹ (صرف تخلیق کار کو نظر آتا ہے) |
retrieval_step
اختیاری
|
boolean | چیٹ سسٹمز اور یو آر ایل اسکینرز کو آراء کھانے سے بچنے میں مدد کرتا ہے۔ |
include_requestor
اختیاری
|
boolean | درخواست میں درخواست کنندہ کی معلومات شامل کریں۔ |
response_file_attachments
اختیاری
|
boolean | جوابات میں فائل اٹیچمنٹ کی اجازت دیں۔ |
files
اختیاری
|
array | درخواست کے ساتھ اپ لوڈ اور منسلک کرنے کے لیے فائل (فائلیں) |
notify_emails_to
اختیاری
|
string | درخواست بننے پر ای میل پتے مطلع کیے جائیں (کوما سے الگ) |
notify_emails_to_locale
اختیاری
|
string | ای میل اطلاع بھیجنے کے لیے مقامی زبان (زبان) |
account_id
اختیاری
|
integer | اکاؤنٹ ID جس کے ساتھ درخواست کو منسلک کرنا ہے۔ |
دورانیہ کی قدریں close_after_duration
مثال کی درخواست
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
کھلی یا تیار درخواست کے مواد کو بازیافت کرتا ہے۔ یہ درخواست کو بند کر سکتا ہے اگر اسے مخصوص تعداد کے ملاحظات کے بعد بند کرنے کے لیے ترتیب دیا گیا ہو۔
مثال کی درخواست
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a
پاسفریز کے ساتھ مثال کی درخواست
curl -X GET "https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a?passphrase=your_passphrase"
مثال کا جواب (کھلی درخواست)
{
"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": []
}
مثال کا جواب (تیار درخواست)
{
"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": []
}
نوٹ: اگر درخواست میں پاسفریز ہے تو اسے استفسار کے پیرامیٹر کے طور پر شامل کریں: ?passphrase=your_passphrase. درخواست کو بازیافت کرنا ایک ویو کے طور پر شمار ہوتا ہے اور اگر یہ درخواست دیکھنے کی حد تک پہنچ جاتی ہے تو اسے بند کر سکتی ہے۔
PATCH /api/v2/requests/:url_token/respond
ایک کھلی درخواست کا جواب دیتا ہے، اس کی حالت کو 'تیار' میں تبدیل کرتا ہے۔
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][].
پارمس
| پیرامیٹر | قسم | تفصیل |
|---|---|---|
response
کی ضرورت ہے
|
string | درخواست کا جواب متن/پیغام |
files
اختیاری
|
array | جواب کے ساتھ منسلک کرنے کے لیے فائل (ضرورتیں) response_file_attachments: true درخواست پر) |
نوٹ: صرف "اوپن" حالت میں درخواستیں ہی جوابات حاصل کر سکتی ہیں۔ ایک بار جواب جمع کروانے کے بعد، درخواست "تیار" حالت میں چلی جاتی ہے اور اضافی جوابات قبول نہیں کر سکتی۔
GET /api/v2/requests/:url_token/preview
مواد کو بازیافت کیے بغیر درخواست کا مکمل طور پر اہل خفیہ URL لوٹاتا ہے۔
مثال کی درخواست
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/preview
مثال کا جواب
{
"url": "https://eu.pwpush.com/r/orpw2wkg00vpn0a"
}
GET /api/v2/requests/:url_token/audit
درخواست کے لیے آڈٹ لاگ واپس کرتا ہے۔ تصدیق اور ملکیت کی ضرورت ہے۔
سوال کے پیرامیٹرز:
page (اختیاری): صفحہ بندی کے لیے صفحہ نمبر۔
- ڈیفالٹ:
1(پہلا صفحہ) - حد:
1کو200 - فی صفحہ 50 آڈٹ لاگ اندراجات واپس کرتا ہے۔
- مثال:
?page=2دوسرا صفحہ بازیافت کرنے کے لیے
مثال کی درخواست
curl -X GET https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a/audit \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کا جواب
{
"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"
}
]
}
نوٹ: دی kind فیلڈ لاگ ان کارروائی کی قسم کی نشاندہی کرتا ہے۔ عام اقدار میں شامل ہیں: creation, view, response, close, failed_passphrase, اور failed_view.
DELETE /api/v2/requests/:url_token
ایک درخواست کو فوری طور پر بند کر دیتا ہے اور اس سے وابستہ تمام حساس ڈیٹا کو مستقل طور پر حذف کر دیتا ہے۔ یہ عمل ناقابل واپسی ہے اور اسے کالعدم نہیں کیا جا سکتا۔ تصدیق اور ملکیت کی ضرورت ہے۔
مثال کی درخواست
curl -X DELETE https://eu.pwpush.com/api/v2/requests/orpw2wkg00vpn0a \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کا جواب
{
"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
آپ کی فعال (کھلی یا تیار) درخواستوں کی صفحہ بندی کی فہرست لوٹاتا ہے۔ تصدیق کی ضرورت ہے۔
GET /api/v2/requests/open
آپ کی کھلی درخواستوں کی صفحہ بندی کی فہرست لوٹاتا ہے۔ تصدیق کی ضرورت ہے۔
GET /api/v2/requests/ready
آپ کی تیار درخواستوں کی صفحہ بندی کی فہرست لوٹاتا ہے۔ تصدیق کی ضرورت ہے۔
GET /api/v2/requests/closed
آپ کی بند درخواستوں کی صفحہ بندی کی فہرست لوٹاتا ہے۔ تصدیق کی ضرورت ہے۔
سوال کے پیرامیٹرز:
page (اختیاری): صفحہ بندی کے لیے صفحہ نمبر۔
- ڈیفالٹ:
1(پہلا صفحہ) - حد:
1کو200 - فی صفحہ 50 تک درخواستیں واپس کرتا ہے۔
- مثال:
?page=2دوسرا صفحہ بازیافت کرنے کے لیے
ریاستوں کی درخواست کریں۔
کھولیں
درخواست بنائی گئی ہے اور جواب کا انتظار ہے۔ درخواست کا متن نظر آ رہا ہے، لیکن ابھی تک کوئی جواب نہیں دیا گیا ہے۔
تیار
درخواست کا جواب دے دیا گیا ہے اور اب جوابی پے لوڈ پر مشتمل ہے۔ درخواست کا متن اب نظر نہیں آتا، لیکن جواب بازیافت کے لیے دستیاب ہے۔
بند
درخواست کو سنبھال لیا گیا ہے اور تمام حساس ڈیٹا (درخواست اور جواب دونوں) کو مستقل طور پر حذف کر دیا گیا ہے۔ یہ حالت ناقابل واپسی ہے۔
مثال کی درخواست (فعال)
curl -X GET https://eu.pwpush.com/api/v2/requests/active \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کی درخواست (اوپن)
curl -X GET https://eu.pwpush.com/api/v2/requests/open \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کی درخواست (تیار)
curl -X GET https://eu.pwpush.com/api/v2/requests/ready \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کی درخواست (بند)
curl -X GET https://eu.pwpush.com/api/v2/requests/closed \
-H "Authorization: Bearer YOUR_API_TOKEN"
مثال کا جواب
[
{
"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
}
]
نوٹ: دی /active اختتامی نقطہ دونوں میں درخواستیں واپس کرتا ہے۔ open اور ready ریاستوں استعمال کریں۔ /open یا /ready مخصوص حالت کے لحاظ سے فلٹر کرنے کے لیے اختتامی پوائنٹس۔
آخری اپ ڈیٹ: July 12, 2026