ترجمة آلية
تمت ترجمة هذه الصفحة تلقائيًا بواسطة الذكاء الاصطناعي وقد تحتوي على أخطاء. إذا كان هناك أي شيء غير واضح، يُرجى الرجوع إلى المصدر الإنجليزي.
مرجع API: GraphQL¶
1. GraphQL (استعلامات محفوظة / APQ)¶
- نقطة النهاية:
POST https://www.perplexity.ai/rest/perplexity_ask/graphql - الشكل: استعلام محفوظ — يحمل الجسم operationName + المتغيرات + تجزئة sha256 (لا حاجة لنص الاستعلام).
- التنفيذ:
pplx_export/sites/perplexity/graphql.py.
1.1 LibraryThreadsRelayQuery (قائمة الصفحة الأولى)¶
- sha256:
a5229c390a6a00f81764187a21885cff655670029355c663fe393cc6e98f9ebe - المتغيرات:
{includeSearchPreview:false, searchTerm:null, sortOrder:"NEWEST", statuses:null, threadTypes:null, sources:null, includeTemporary:null} - مسار الاستجابة:
data.viewer.recentGroup.threads{edges[].node, pageInfo{hasNextPage,endCursor}} - حقول العقدة (المستخدمة من قبل المحول):
name(title)،entryId(entryUUID)،slug(href)،mode،displayModel.modelID،updatedAt(lastUpdated)،status،space{spaceUuid,title,slug} - عقد جانب الأرشفة (2026-07-22 V5-01):
lastUpdatedمنweb_archive/**/thread.jsonيساوي دائمًا هذا الحقل (مكتوب على القرص بدقة ISO كاملة، حرفيًا)؛ مقارنة التطابق للتصدير الدفعي/الفردي (is_unchanged) تعتمد عليه، وليس على تنسيق العرض لطبقة التقديم (YYYY-MM-DD HH:MM UTC). - إثراء جانب الأرشفة (2026-07-23): مفتاح
search_modeلصفوف الفهرس (index/library_*.json) هو حقل إثراء من جانب الأرشفة — لا تحتوي عقدة هذا الاستعلام على search_mode؛ يتم ملؤه بواسطةpplx-export search-mode-backfillمن بيانات مستوى الموضوع (entries[].search_modeمنGET /rest/thread/<uuid>) (البيانات الخام المحلية أولاً، الاحتياطي عبر الإنترنت)؛ تحديثindexيدمجها ويحافظ عليها بواسطة entryUUID. تصفيةbatch --modeتفضل التعيين الموثوق لهذا الحقل.
1.2 LibraryRecentThreadsPaginationQuery (الترقيم)¶
- sha256:
4f6dfcb8e9d3c065aca20ca1e82ca7fe464aaffc1faefade295bb7e333199629 - المتغيرات: متغيرات الصفحة الأولى +
{cursor, count}(أسماء المتغيرات هي cursor/count، وليس after/first) - نفس بنية الاستجابة أعلاه. عندما يكون
hasNextPageصحيحًا ولكنendCursorفارغًا، توقف (وإلا تتكرر نفس الصفحة).
1.3 مجموعة عمليات لوحة تحكم Computer (مستخرجة من جزء المسار 2026-07-20، غير مسجلة على الخادم)¶
يحتوي جزء ComputerDashboardPage-*.js على نصوص استعلام Relay كاملة + معرفات محفوظة (طريقة الاستخراج في §7).
الأساسيات الهيكلية: viewer.threadGroup(type: RECENT|ARCHIVED|PINNED|NEEDS_ATTENTION|SCHEDULED|SPACE, filter:{modes:[COMPUTER]})
— أي قائمة مواضيع مصفاة بواسطة threadGroup + mode؛ تحتوي العقدة على contextUUID/entryId/readWriteToken/isPinned/isArchived/isUnread.
| العملية | المعرف المحفوظ (أول 16 حرفًا) |
|---|---|
| ComputerDashboardRecentThreadsPaginationQuery | d713e695c82e7927… |
| ComputerDashboardArchivedThreadsPaginationQuery | 1e9bcdb45cd611ca… |
| ComputerDashboardPinnedThreadsPaginationQuery | 814c1d1748157d57… |
| ComputerDashboardNeedsAttentionThreadsPaginationQuery | 2363d5af84392787… |
| ComputerDashboardScheduledThreadsPaginationQuery | 51b18409b05f2e43… |
| ComputerDashboardSpaceThreadsPaginationQuery | da08f207c2d8bbcd… |
| ComputerDashboardThreadGroupsUpdatesRelaySubscription | bcce76383fb03d7e… (اشتراك WebSocket) |
تم اختباره: استدعاء /rest/perplexity_ask/graphql بهذه المعرفات يعيد PERSISTED_QUERY_NOT_FOUND
(غير مسجل في النشر الحالي — اختلاف الإصدار أو سياق لوحة التحكم مطلوب؛ يتم الاحتفاظ بنصوص الاستعلام الكاملة والمعرفات في ملاحظات استكشاف /tmp؛
إذا لزم الأمر، أرسل نص الاستعلام مباشرة أو أعد استخراجه من الحزمة الحية).
1.4 ملاحظات¶
- لم يتم ملاحظة أي استدعاءات graphql على صفحة مساحة الويب أو الصفحة الرئيسية (كلها تمر عبر /rest)؛ تم تأكيد graphql لقائمة /library ولوحة تحكم Computer.
- قد تتغير تجزئات sha256 مع إصدارات الواجهة الأمامية؛ وضع الفشل هو
PERSISTED_QUERY_NOT_FOUND— ثم أعد الاستخراج من التقاط الشبكة للمتصفح (أداة WebBridgenetworkمع تصفيةperplexity_ask/graphql)، أو أعد الاستخراج من الحزمة الحية (§7).
1.5 مفاتيح اتصال لوحة التحكم المستخرجة (مفاتيح ذاكرة التخزين المؤقت Relay، لتصحيح الأخطاء)¶
ComputerDashboard(Recent|Archived|Pinned|NeedsAttention|Scheduled|Space)Threads_viewer_threads