API و Zapier
API و Zapier
كل Recap ينتجه InterMIND يمكن أن يصل إلى الأداة التي تعمل بها — نظام CRM، أو مكتب المساعدة، أو متتبع المهام، أو جدول بيانات — دون أن ينسخه أحد يدويًا. ثلاث طرق للوصول:
- مساعد الذكاء الاصطناعي الخاص بك (Claude، وChatGPT، وCopilot، وGemini وأي عميل MCP آخر): راجع مساعدو الذكاء الاصطناعي (MCP).
- Zapier (بدون برمجة): اربط InterMIND مرة واحدة بمفتاح API، ثم ابنِ Zaps على المُشغِّل Meeting Recap Ready والإجراء Create Meeting Link. يعمل التكامل نفسه أيضًا من Make أو n8n أو Pipedream عبر وحدات webhook وHTTP العامة لديهم، باستخدام الواجهة أدناه.
- واجهة API (للمطوّرين): مفتاح شخصي، وحدث webhook واحد، ونحو اثنتي عشرة نقطة نهائية (endpoints) — الاجتماعات، وRecaps، وtranscripts، والقنوات، والمستندات.
متاح في: كل حساب مسجّل. لا يمكن للضيوف إنشاء مفاتيح. الموقع: Integrations → API keys.
مفاتيح API
- افتح Integrations وابحث عن بطاقة API keys.
- انقر على Create key، أعطِه تسمية (الأداة التي ستستخدمه، مثل "Zapier") وانسخ المفتاح. يبدأ بـ
imk_ويُعرض مرة واحدة فقط — يخزّن InterMIND تجزئة (hash) فقط. - أبطِل أي مفتاح من البطاقة نفسها في أي وقت. تتوقف اشتراكات webhook التي أُنشئت بذلك المفتاح فورًا.
حتى 10 مفاتيح لكل حساب. أرسل المفتاح كـ bearer token:
Authorization: Bearer imk_…
تعمل المفاتيح على نقاط /api/v1 النهائية أدناه فقط؛ ولا تمنح أبدًا وصولًا إلى واجهة API الخاصة بتطبيق الويب نفسه.
Zapier
- في Zapier، أضف تطبيق InterMIND إلى Zap والصق مفتاح API عندما يُطلب منك. يُسمّى الاتصال ببريد حسابك الإلكتروني.
- المُشغِّل Meeting Recap Ready — يُطلق مرة واحدة لكل اجتماع منتهٍ استضفته، فور توفر الملخص. الحقول: عنوان الاجتماع والرابط، ورابط Recap، ورابط transcript، والملخص بصيغة Markdown، ولغة الملخص، ووقت البدء والانتهاء، والمشاركون (الاسم، البريد الإلكتروني)، والمضيف.
- الإجراء Create Meeting Link — يُنشئ اجتماعًا مُرتجلًا (ad-hoc) تملكه ويعيد عنوانه (URL). ضعه في صفقة CRM، أو تذكرة دعم، أو دعوة تقويم؛ أي شخص يفتح الرابط يطرق الباب وتوافق على دخوله إلى الغرفة.
Zaps نموذجية: Recap → ملاحظة جديدة على صفقة HubSpot؛ Recap → تعليق داخلي على تذكرة Zendesk؛ Recap → صف في Google Sheets؛ صفقة Pipedrive جديدة → رابط اجتماع يُكتب إلى الصفقة.
النقاط النهائية
عنوان URL الأساسي: https://intermind.com/api/v1. جميع الاستجابات بصيغة JSON. عقد قابل للقراءة آليًا (OpenAPI 3.1، لـ Make وn8n وPipedream ووكلاء الذكاء الاصطناعي): https://intermind.com/api/v1/openapi.json.
| الطريقة | المسار | الغرض |
|---|---|---|
GET | /me | من يملك المفتاح: { id, email, name } |
POST | /meetings | إنشاء رابط اجتماع مُرتجل. الجسم { "title": "…" } (اختياري). يعيد 201 { id, url, title, created_at }. مع starts_at (YYYY-MM-DDTHH:mm)، وtime_zone، وduration_min وinvitees الاختياريين، يُكتب الاجتماع أيضًا إلى تقويمك المتصل؛ تضيف الاستجابة النافذة الزمنية وcalendar: created / not_connected / failed |
GET | /meetings?kind=recent|upcoming&type=&limit=10 | الاجتماعات التي تستضيفها أو تحضرها: recent حسب آخر نشاط، upcoming المجدولة مستقبلًا |
GET | /meetings/{id}/transcript?session=&max_chars=60000 | أحدث transcript مُنتهٍ بصيغة Markdown حسب المتحدث، باللغة المنطوقة (أو ترجمتك المخزّنة مؤقتًا)؛ truncated عند الاقتطاع |
GET | /recaps?limit=3 | أحدث Recaps لديك (1–10)، الأحدث أولًا، بنفس بنية حمولة webhook |
GET | /recaps/search?q=&limit=5 | Recaps التي يذكر عنوانها أو ملخصها الحالي الكلمات (تطابق صيغ الكلمات)، مع مقتطف مُبرز وروابط |
GET | /channels?limit=20 | محادثات الفريق وعلب الوارد التي تنتمي إليها |
GET | /channels/{id}/messages?limit=50&before= | صفحة واحدة من محادثة قناة، الأقدم أولًا، مع الترجمة المخزّنة مؤقتًا إلى لغة المحادثة لديك عندما أنشأت الغرفة واحدة |
POST | /channels/{id}/messages | انشر { "text": "…" } باسمك → 201 { id, sent_at, text }؛ يُوزَّع في الوقت الفعلي ويُترجم لكل قارئ |
GET | /documents?meeting_id=&limit=50 | ملفات شُاركت في اجتماعاتك — مرفوعات وملفات Drive / OneDrive مربوطة |
GET | /webhooks | اشتراكات webhook لديك |
POST | /webhooks | اشترك: { "target_url": "https://…", "event": "recap.ready" } → 201 { id, event, target_url, secret, created_at } |
DELETE | /webhooks/{id} | ألغِ الاشتراك → 204 |
يحمل المفتاح الصلاحيات التي أُنشئ بها: المفاتيح المنشأة قبل سبتمبر 2026 تفتح /me، وPOST /meetings، و/recaps و/webhooks فقط — النقاط النهائية الأحدث تُرجِب 403 حتى تنشئ مفتاحًا جديدًا (أو تعيد ربط التطبيق). تقتصر القراءة على الاجتماعات التي تستضيفها أو تحضرها: معرّف اجتماع آخر يُرجِب 404.
الحدود: 10 مفاتيح و20 اشتراك webhook لكل حساب. يجب أن يكون target_url من نوع https:// وقابلًا للوصول علنًا — تُرفض عناوين الشبكات الخاصة.
Webhook: recap.ready
يُرسل كـ POST JSON إلى كل target_url مشترك فيه لحظة أن يُنهى Recap لاجتماع استضفته أنت بملخص غير فارغ. يُرسل مرة واحدة لكل جلسة اجتماع. الترويسات:
| الترويسة | القيمة |
|---|---|
X-InterMIND-Event | recap.ready |
X-InterMIND-Delivery | معرّف فريد لهذا الحدث (<meeting id>.<session id>) — أزِل التكرار بناءً عليه |
X-InterMIND-Signature | sha256=<HMAC-SHA256 للجسم الخام بسر الاشتراك> |
User-Agent | InterMIND-Webhooks/1 |
الحمولة (Payload):
{
"id": "abc-def-ghi.conf_01",
"event": "recap.ready",
"occurred_at": "2026-09-04T10:32:11.000Z",
"meeting": { "id": "abc-def-ghi", "title": "Weekly sync with Acme", "url": "https://intermind.com/abc-def-ghi", "type": "adhoc" },
"recap": {
"url": "https://intermind.com/r/abc-def-ghi/…",
"transcript_url": "https://intermind.com/t/abc-def-ghi/…",
"summary_md": "## Decisions\n- …",
"language": "en"
},
"session": { "started_at": "2026-09-04T10:00:03.000Z", "ended_at": "2026-09-04T10:31:40.000Z" },
"participants": [{ "name": "Anna Müller", "email": "anna@acme.example" }],
"host": { "name": "Anna Müller", "email": "anna@acme.example" }
}
قواعد التسليم: يجب أن تُرجِب نقطة نهايتك 2xx خلال 8 ثوانٍ. يُعاد محاولة الخطأ الشبكي، أو 5xx أو 429 مرة واحدة فورًا. يحذف 410 أو 404 الاشتراك. أي فشل آخر يُسجَّل ولا تتم إعادة إرسال الحدث — يبقى بريد Recap وصفحة Recap السجل الدائم. تُفتح روابط Recap وtranscript للمشاركين في الاجتماع الذين سجّلوا دخولهم.