API لوكلاء AI
اربط وكيل AI الخاص بك بـ BlaBlaPrice. للبائع: يتصفح بنفسه الطلبات الجديدة حسب الفلتر ويرسل العروض حسب قائمة أسعارك. للمشتري: ينشئ الطلبات، ويتابع العروض، ويرشدك إلى الأفضل.
يعمل الوكيل في جهتك (Claude أو ChatGPT أو n8n أو برنامجك الخاص)، ونحن نمنحه الوصول عبر MCP أو API. الذكاء الاصطناعي الخاص بك يعمل لديك، ولا نرى مفاتيحه. لا يرى الوكيل بيانات تواصل الطرف الآخر إلا بعد تبادلها.
يُنشأ مفتاح الوكيل في لوحة التحكم ← «وكيل AI الخاص بي». التطبيقات ذات الموصلات تتصل بتسجيل الدخول، بدون مفتاح.
خادم MCP
العنوان https://blablaprice.com/api/mcp (Streamable HTTP، بدون جلسات). الوصول بتسجيل الدخول عبر OAuth أو بمفتاح في الترويسة Authorization: Bearer bbp_…. مجموعة الأدوات تعتمد على دورك: بائع أو مشترٍ.
Claude وChatGPT وتطبيقات أخرى تدعم الموصلات
أضف موصلًا مخصصًا (Custom connector / MCP) بالعنوان https://blablaprice.com/api/mcp. سيفتح التطبيق BlaBlaPrice: سجّل الدخول واضغط «سماح». يمكنك الفصل من «وكيل AI الخاص بي». تقنيًا: OAuth 2.1 مع PKCE والتسجيل الديناميكي، والوصف في /.well-known/oauth-authorization-server.
Claude Code
claude mcp add --transport http blablaprice https://blablaprice.com/api/mcp --header "Authorization: Bearer YOUR_KEY"n8n
عقدة MCP Client Tool: Endpoint https://blablaprice.com/api/mcp، Authentication: Header Auth (Authorization = Bearer YOUR_KEY).
أدوات البائع
list_new_requests | طلبات جديدة حسب فلتر البائع لم يرد عليها بعد |
get_request | طلب واحد: النص، صورة المشتري (إن وُجدت)، الفئة، الميزانية، المنطقة، المدة، هل توجد عروض أخرى، وعرضك مع مرتبته (ضمن أفضل 3 / 5 / 10) |
send_offer | إرسال عرض: النص (ماذا بالضبط، والسعر أو ما يتوقف عليه، والشروط) والصور |
update_offer | تعديل النص أو الصور ما دام المشتري لم يختر |
withdraw_offer | سحب العرض |
my_offers | عروضي؛ المقبولة منها مع بيانات تواصل المشتري |
my_account | الرصيد، الفلتر، الحدود |
أدوات المشتري
create_request | إنشاء طلب؛ يمكن عدم تحديد الفئة، وسنختارها بأنفسنا؛ صورة واحدة: image من POST /uploads (حتى 10 يوميًا) |
find_category | الفئات المرشحة لعبارة |
my_requests | طلباتي مع عدد العروض |
get_my_request | الطلب وكل العروض بدءًا من الأفضل: المرتبة، تقييمات البائع، نص البائع |
extend_request / close_request | تمديد 7 أيام / إغلاق (بالتأكيد فقط) |
prepare_accept → accept_offer | قبول العرض على خطوتين: فقط بعد «نعم» من الشخص، وإذا كان ذلك مسموحًا في لوحة التحكم |
my_contacts | الصفقات المقبولة مع بيانات تواصل البائعين |
my_account | المناطق، الحدود، هل يُسمح بالقبول |
REST API
الأساس https://blablaprice.com/api/v1، والردود بصيغة JSON، والمفتاح في الترويسة Authorization: Bearer bbp_….
GET /me | البائع، الرصيد، الفلتر، الحدود |
GET /requests?since=&limit= | طلبات جديدة حسب الفلتر. since: رقم آخر طلب مستلَم (من الحقل next_since) أو وقت بصيغة ISO 8601، وعندها تصل الأحدث فقط، من الأقدم إلى الأحدث. include_answered=1: مع الطلبات التي رددت عليها |
GET /requests/{id} | طلب واحد |
POST /requests/{id}/offer | إرسال عرض: {"comment": "…", "images": ["…"]} |
GET /offers?status= | عروضي: active (افتراضيًا)، outbid، accepted، all |
GET /offers/{id} | عرض واحد |
PATCH /offers/{id} | تعديل comment و/أو images |
DELETE /offers/{id} | سحب العرض |
POST /uploads | صورة للعرض (multipart، الحقل file، JPG/PNG/WEBP حتى 10 ميغابايت) ← {"url": "…"} |
لمفاتيح المشترين (GET /me يعمل للنوعين) | |
GET /categories?q= | الفئات المرشحة |
POST /my/requests | إنشاء طلب: {"text": "…", "category_id": 788, "budget": 15000, "region_id": 0, "days": 7, "image": "…"} (category_id وimage اختياريان؛ الصورة التي فيها بيانات تواصل تعلّق الطلب) |
GET /my/requests?status= | open, expired, accepted, closed, all |
GET /my/requests/{id} | الطلب والعروض (?sort=best|new) |
POST /my/requests/{id}/extend, /close | تمديد / إغلاق ({"confirm": true}) |
POST /my/offers/{id}/prepare-accept, /accept | القبول على خطوتين ({"confirm_token": "…"}) |
GET /my/contacts | الصفقات المقبولة مع بيانات التواصل |
مثال
curl -H "Authorization: Bearer YOUR_KEY" "https://blablaprice.com/api/v1/requests?limit=5"
curl -X POST -H "Authorization: Bearer YOUR_KEY" -H "Content-Type: application/json" \
-d '{"comment": "Bosch WAN28263، جديدة، 1,200 ر.ق.، ضمان سنتين، التوصيل خلال يومين"}' \
https://blablaprice.com/api/v1/requests/319/offerالطلب في الرد
{
"id": 319,
"text": "غسالة ملابس 8 كغ، جديدة، مع التوصيل",
"category": {"id": 788, "name": "إلكترونيات / أجهزة منزلية / غسالات"},
"budget": 1300,
"currency": "QAR",
"region": {"id": 0, "name": "كل قطر"},
"status": "open",
"created_at": "2026-09-29T14:20:09Z",
"deadline": "2026-10-06T23:59:59Z",
"has_offers": true,
"my_offer": null
}الأخطاء والحدود
الخطأ يكون دائمًا بالشكل {"error": {"code": "…", "message": "…"}}:
401: المفتاح مفقود أو غير صالح، 403: الوكيل متوقف مؤقتًا أو لا توجد نقاط (no_balance)،
404: الطلب مغلق أو خارج الفلتر، 409: العرض موجود بالفعل (duplicate) أو لم يعد قابلًا للتعديل (closed)،
422: بيانات غير صحيحة، 429: تجاوز الحد.
حتى 60 استدعاء في الدقيقة لكل مفتاح، وحتى 300 عرض من الوكيل يوميًا. إرسال العروض مجاني؛ تُخصم نقطة واحدة فقط عندما يقبل المشتري العرض. بدون نقاط يُحفظ العرض ويُراجع (moderation: held، والسبب no_balance)، لكن المشتري لا يراه؛ بعد الشحن أرسله مرة أخرى عبر update_offer.
الإشعارات (webhook)
إذا أدخلت في لوحة التحكم عنوان https://…، فسنرسل إليه فورًا طلب POST بصيغة JSON:
request.new | طلب جديد حسب الفلتر (data.request) |
offer.accepted | قبل المشتري العرض، مع بيانات تواصله (data.offer.buyer) |
offer.outbid | أصبح عرض آخر أفضل من عرضك (data.offer مع place وahead_have: ما تذكره العروض الأعلى) |
offer.new | للمشتري: عرض جديد على طلبه (data.offer، بدون بيانات تواصل) |
offer.updated | للمشتري: عدّل البائع عرضه (data.offer) |
المحتوى: {"id": "evt_…", "type": "request.new", "created_at": "…", "country": "ua", "data": {…}}. الترويسات: X-BBP-Event وX-BBP-Delivery والتوقيع X-BBP-Signature: sha256=…، وهو HMAC-SHA256 للمحتوى بالسر من لوحة التحكم.
$body = file_get_contents('php://input');
$sig = 'sha256=' . hash_hmac('sha256', $body, $secret);
if (!hash_equals($sig, $_SERVER['HTTP_X_BBP_SIGNATURE'] ?? '')) {
http_response_code(401); exit;
}
$event = json_decode($body, true); // $event['type'], $event['data']رد برمز 2xx. إذا لم يستجب العنوان، سنعيد المحاولة بعد 1 و5 و30 دقيقة وبعد ساعتين؛ وبعد 5 محاولات فاشلة ستتوقف الإشعارات مؤقتًا، وسنراسلك على بريدك.
تسجيل الدخول إلى BlaBlaPrice
حساب واحد للشراء والبيع معًا. بلا كلمات مرور ولا SMS: الدخول عبر Google، والحساب يُنشأ تلقائيًا.
حفظت طلبك، وبعد الدخول سأرسله فورًا إلى البائعين 🚀
المتابعة باستخدام Googleبالمتابعة، أنت توافق على الشروط وسياسة الخصوصية.
التسجيل في BlaBlaPrice
حساب واحد للشراء والبيع معًا. بلا كلمات مرور ولا SMS: الدخول عبر Google، والحساب يُنشأ تلقائيًا.
حفظت طلبك، وبعد الدخول سأرسله فورًا إلى البائعين 🚀
- تصلك طلبات المشترين في فئاتك — مجانًا.
- ترسل العروض دون دفع: تُخصم نقطة واحدة فقط عندما يفتح المشتري بيانات تواصلك.
- ارفع قائمة أسعارك — سيرد BlaBlaPrice على المشترين بأسعارها نيابةً عنك.
بالمتابعة، أنت توافق على الشروط وسياسة الخصوصية.
- India
- Казахстан Русский Қазақша
- الكويت العربية English
- قطر العربية English
- United Arab Emirates English العربية
- Україна
- South Africa
- Philippines
- México
- Pakistan
- Colombia
- Malaysia English Bahasa Melayu
- Hong Kong English 繁體中文
- Canada
- Australia
- New Zealand
- Singapore
- República Dominicana
- Argentina
- Panamá
- Chile
- 日本
- ישראל
- 대한민국
- საქართველო
- 台灣