متطلّبات "موصِّل الشريك"
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
راجِع نظرة عامة على النشر للتعرّف على المزايا ومستوى الالتزام المطلوب
لنشر موصِّل. لنشر موصل شريك، يجب أن يستوفي
الموصل جميع المتطلبات الموضحة أدناه.
برمجة تطبيقات
قبل إرسال الموصِّل للمراجعة، أكمل ما يلي في برمجة التطبيقات:
- يمكنك مشاركة الإذن بالاطّلاع على مشروعك في "برمجة التطبيقات" مع ما يلي:
- أنشِئ عملية نشر باسم
Production
وعدِّل عملية النشر
Production
إلى إصدار الرمز الذي تنوي نشره.
- تأكَّد من تحديث عملية نشر
Production
إلى إصدار الرمز الذي تريد مراجعته.
- تأكّد من أن ملف البيان مرئي في لغة "برمجة تطبيقات Google". على يمين الصفحة، انقر على
إعدادات المشروع settings. حدِّد مربع الاختيار إظهار ملف البيان "appsscript.json" في المحرر.
البيان
ضمِّن ما يلي في بيان الموصِّل وتأكَّد من إعداد مشروع "برمجة تطبيقات Google" لعرض ملف بيان appsscript.json
في
المحرر.
يمكنك الاطّلاع على مرجع بيان "موصِّل المنتدى" للحصول على مزيد من المعلومات.
dataStudio
description
يجب أن يوفر معلومات وتعليمات
لفهم أساسي للموصل وكيفية استخدامه. سيتم رفض الموصلات التي تحتوي على أوصاف غامضة وغير كاملة.
addOnUrl
يجب أن تكون صفحة مُستضافة مخصصة
حول الموصِّل، ويفضَّل أن تكون مستضافة على نطاقك الخاص. يجب أن تتضمن الصفحة
ما يلي:
- سياسة الخصوصية وبنود الاستخدام أو رابط يؤدي إلى هذا المحتوى على النطاق نفسه الذي يتضمّن
addOnUrl
- التفاصيل التي سيحتاج المستخدم إلى معرفتها لاستخدام الموصِّل.
- رابط الاشتراك، في حال كان هناك حساب مطلوب لاستخدام الموصِّل.
- يُفضَّل استضافة محتوى على نطاقك. لا يُسمح بالاستضافة على
https://sites.google.com/
.
- اطّلِع على نماذج صفحات من الشركاء الحاليين: مسار الإحالة الناجحة وSupermetrics
CallRail.
supportUrl
يجب أن تكون صفحة مُستضافة
للحصول على دعم للموصِّل. لا يمكن أن يكون هذا الرابط بريدًا إلكترونيًا أو رابطًا mailto.
logoUrl
من المفترض أن يشير إلى صورة ثابتة
يتم استضافتها تحت سيطرتك. لا يمكنك استخدام الصور التي تعرضها خدمات Google
على نطاقات مثل *.gstatic.com
و*.ggpht.com
و*.google.com
*.googleusercontent.com
. إنّ استخدام Google Cloud Storage لعرض الصور من النطاق *.googleapis.com
هو خيار مقبول ويُنصح به للاستضافة.
- سيتم رفض الموصلات التي تحتوي على رموز متحركة. استخدِم صورًا ثابتة.
- ننصحك باستخدام صورة بدقة 48x48 بكسل على الأقل.
- تجنَّب استخدام الصور النصية فقط التي تصعب قراءتها عند تصغير حجمها إلى
48×48 بكسل.
- عليك تعبئة السمة
sources
بجميع المصادر التي يتصل بها الموصِّل. يمكنك الاطّلاع على المصادر في مرجع البيان لمعرفة التفاصيل.
- يمكنك الاطّلاع على قائمة المصادر الحالية في مستودع سجلّ البيانات. إذا كان المصدر الذي تتصل به غير متوفّر في المستودع، أرسِل طلب سحب إلى مستودع سجلّ البيانات لإضافة المصدر. لن يفشل الموصل في عملية المراجعة إذا لم تكن المصادر في البيان الخاص بك موجودة في المستودع.
- هذه بيانات وصفية إضافية للموصل التي ستتم فهرستها
لميزة البحث في المعرض. سيظهر الموصل في نتائج البحث
عندما يبحث المستخدمون عن مصدر معين في المعرض.
- قدِّم قيمًا لكل من
shortDescription
وauthType
وfeeType
وprivacyPolicyUrl
وtermsOfServiceUrl
.
name
يجب أن تمثّل بشكل مباشر الغرض من الموصِّل. سيساعد الاسم الواضح المستخدمين في تحديد ما إذا
كان الموصِّل يلبي احتياجاتهم. تجنب استخدام كلمة موصِّل في الاسم لأن المستخدمين
يعرفون بالفعل أنهم يبحثون عن موصل.
- لا تقم بتضمين أحرف خاصة أو غير مرئية بغرض لفت الانتباه إلى موضع الموصل أو احتمال تغيير موضعه.
- لا تستخدِم الأسماء المختصرة لمنصة Looker Studio
في أي مكان في البيان (مثل GDS وDS وغيرها).
- لا يُسمح بالرموز التعبيرية في أي حقل بيان
(
description
أو shortDescription
أو name
أو غير ذلك). بشكل عام، لا تقم بتضمين
أحرف خاصة أو غير مرئية بهدف لفت الانتباه إلى
الموصل.
- إذا كان الموصِّل يحتوي على مخطط ثابت، يمكنك
إنشاء نموذج تقرير للموصِّل وإضافته إلى البيان.
فعِّل المشاركة باستخدام رابط للتقرير.
urlFetchWhitelist
- يمكنك تحديد عدد نقاط النهاية التي يتم استدعاؤها من خلال
UrlFetchApp
بالنقاط
اللازمة المطلوبة لوظيفة الموصِّل. أضِف السمة urlFetchWhitelist
إلى مستوى الجذر في ملف البيان. يمكنك الاطّلاع على مرجع urlFetchWhitelist
للحصول على مزيد من المعلومات.
- تضمين جميع نقاط النهاية المستخدمة مع خدمة
UrlFetchApp
.
- إذا لم يجلب الموصِّل الموارد باستخدام خدمة
UrlFetchApp
، اضبط urlFetchWhitelist
على قائمة فارغة []
.
- إذا لم يتصل الموصِّل بمجموعة من نقاط النهاية الثابتة أو
اختلفت بادئة نقطة النهاية، احذف السمة
urlFetchWhitelist
وقدِّم التفاصيل في حقل النموذج استثناء urlFetchWhitelist عند
إرسال طلب المراجعة.
oauthScopes
- يمكنك ضبط نطاقات OAuth الصريحة في البيان. سيتم رفض الموصلات التي لا تحتوي على نطاقات OAuth صريحة.
موصّل
- إذا كان المستخدم بحاجة إلى حساب لاستخدام الموصِّل، تأكَّد من أنّ الموصِّل
description
أو الرابط addOnUrl
يوفّر التعليمات لمساعدة المستخدم في إنشاء الموصِّل.
- لا يمكن أن يكون الموصّل في حالة غير مكتملة أو تجريبية. عليك نشر
موصل كامل وفعال. يمكنك دائمًا تحديث الموصل، ولكن
يجب اختبار نشر الإنتاج الذي تم إصداره للمستخدمين واكتمال الميزة.
- تقديم رسائل خطأ مفيدة وقابلة للتنفيذ للمستخدمين عندما يواجه المستخدمون خطأ داخلي في الموصل. ويشمل ذلك الحالات التي يقدم فيها المستخدم إدخالاً غير صالح/فارغًا عند التهيئة.
- يجب أن يخلو
shortDescription
وdescription
وaddOnUrl
ورابط supportUrl
وصفحة OAuth (إن وُجدت) من الأخطاء الإملائية والنحوية.
- لا يمكن أن يحتوي
shortDescription
على عناوين URL.
- يمكنك استخدام طرق المصادقة المقدّمة من
getAuthType()
. ولا تطلب بيانات الاعتماد عبر getConfig()
.
- أكمِل عملية التحقّق من عميل OAuth. ويكون التحقُّق
إلزاميًا لجميع الموصلات بغض النظر عن طريقة المصادقة في
getAuthType()
. تُعد عملية التحقق عملية مختلفة عن مراجعة
الموصل ويعالجها فريق منفصل، وليس Looker Studio.
يمكنك الرجوع إلى الأسئلة الشائعة للتحقق من واجهة برمجة تطبيقات OAuth للاطّلاع على مزيد من المعلومات. سيتم رفض الموصِّل في حال عدم اكتمال عملية التحقّق من عميل OAuth.
- التأكَّد من الالتزام
ببنود الخدمة في "معارض Looker Studio" (المرسِل).
بعد استيفاء جميع المتطلبات، انقر على الزر التالي لطلب مراجعة الموصِّل:
نشر موصل الشريك
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eTo publish a Partner Connector, ensure it meets all requirements outlined for Apps Script, Manifest, and the Connector itself.\u003c/p\u003e\n"],["\u003cp\u003eBefore submitting, share view access of your Apps Script project, create a Production deployment, and confirm the manifest file is visible.\u003c/p\u003e\n"],["\u003cp\u003eThe manifest must include specific details such as description, URLs, sources, and authentication information.\u003c/p\u003e\n"],["\u003cp\u003eYour connector needs to be fully functional, handle errors gracefully, adhere to style guidelines, and complete OAuth client verification.\u003c/p\u003e\n"],["\u003cp\u003eOnce all requirements are met, submit a review request using the provided link.\u003c/p\u003e\n"]]],[],null,["# Partner Connector requirements\n\nReview the [Publishing overview](/looker-studio/connector/publish-connector) to understand the benefits and required level\nof commitment for publishing a connector. To publish a *Partner Connector*, your\nconnector must meet all of the requirements described below.\n\nApps Script\n-----------\n\nBefore submitting your connector for review, complete the following in Apps\nScript:\n\n1. [Share view access](https://support.google.com/drive/answer/2494822) of your Apps Script project with the following:\n - [data-studio-contrib-qa@googlegroups.com](mailto:data-studio-contrib-qa@googlegroups.com)\n - [data-studio-contrib@google.com](mailto:data-studio-contrib@google.com)\n2. [Create a deployment](/looker-studio/connector/deploy#create_separate_deployments) named `Production` and update the `Production` deployment to the version of code you intend to publish.\n3. Confirm that you've updated the `Production` deployment to the version of code you want reviewed.\n4. Confirm that the manifest file is visible in Apps Script. At the left, click **Project Settings** settings. Select the **Show \"appsscript.json\" manifest file in editor** checkbox.\n\nManifest\n--------\n\nInclude the following in your connector's manifest and confirm that your Apps\nScript project is configured to show the `appsscript.json` manifest file in the\neditor.\n\nView the [Community Connector manifest reference](/looker-studio/connector/manifest) for more\ninformation.\n\n### `dataStudio`\n\n1. `description` should provide information and instructions for a basic understanding of the connector and how to use it. Connectors with vague and incomplete descriptions will be rejected.\n2. `addOnUrl` should be a dedicated hosted page about your connector, preferably hosted on your own domain. The page must include the following:\n - A **Privacy Policy** and **Terms of Use** or a link to this content, on the same domain as the `addOnUrl`.\n - Details the user will need to know to use your connector.\n - The sign up link, if an account is required to use your connector,.\n - Content hosted preferably on your domain. Hosting on `https://sites.google.com/` is not allowed.\n - See example pages from existing partners: [Funnel](https://funnel.io/marketing-reporting-google-data-studio), [Supermetrics](https://supermetrics.com/product/data-studio), [CallRail](https://www.callrail.com/integrations/googledatastudio/).\n3. `supportUrl` should be a hosted page to get support for your connector. This cannot be an email or mailto link.\n4. `logoUrl` should point to a static image hosted under your control. You **cannot** use images served by Google services on domains such as `*.gstatic.com`, `*.ggpht.com`, `*.google.com`, `*.googleusercontent.com`. Using Google Cloud Storage to serve images from the `*.googleapis.com` domain is acceptable and is a recommended hosting option.\n - Connectors with animated icons will be rejected. Use static images.\n - It's recommended to use at minimum, a 48x48-pixel image.\n - Avoid text-only images that are difficult to read when scaled down to 48x48-pixels.\n5. Populate the `sources` property with all sources your connector connects to. See [Sources in Manifest reference](/looker-studio/connector/manifest#sources-ref) for details.\n - You can view the existing list of sources at [Data Registry Repository](https://github.com/googledatastudio/ds-data-registry). If the source you are connecting to does not exist in the repository, send a [pull request to the Data Registry Repository](https://github.com/googledatastudio/ds-data-registry/compare?expand=1) to add the source. **Your\n connector will fail the review process if the sources in your manifest\n do not exist in the repository.**\n - This is additional metadata for the connector that will be indexed for search feature in the gallery. Your connector will show up in the search results when users search for a specific source in the gallery.\n6. Provide values for `shortDescription`, `authType`, `feeType`, `privacyPolicyUrl`, and `termsOfServiceUrl`.\n7. `name` should directly represent the purpose of the connector. A clear name will help users determine whether your connector meets their needs. Avoid using the word *connector* in the name since users already know they are looking at a connector.\n - Do not include special or non-visible characters with the intention of drawing attention to or potentially altering the position of your connector.\n8. Do not use shorthand names for Looker Studio anywhere in the manifest (e.g. GDS, DS, etc.).\n9. Emojis are not allowed in any manifest field (`description`, `shortDescription`, `name`, etc). In general, do not include special or non-visible characters with the intention of drawing attention to your connector.\n10. If your connector has a fixed schema, [create a report template](/looker-studio/connector/report-templates#how_to_create_a_report_template) for your connector and add it to the manifest. Enable **Sharing by link** for the report. \n\n### `urlFetchWhitelist`\n\n1. Limit the number of endpoints called by `UrlFetchApp` to those absolutely required for connector functionality. Add the `urlFetchWhitelist` property to the root level of your manifest. View the [urlFetchWhitelist reference](/apps-script/manifest/allowlist-url) for more info. \n - Include all endpoints used with the `UrlFetchApp` service.\n - If your connector does not fetch resources using the `UrlFetchApp` service, set `urlFetchWhitelist` to an empty list `[]`.\n - If your connector does not connect to a set of fixed endpoints or the endpoint prefix varies, omit the `urlFetchWhitelist` property and provide details in the *Exception for urlFetchWhitelist* form field when submitting the review request.\n\n### `oauthScopes`\n\n1. [Set explicit OAuth scopes](/apps-script/concepts/scopes) in the manifest. Connectors without explicit OAuth scopes will be rejected.\n\nConnector\n---------\n\n1. If the user needs an account to use the connector, make sure the connector `description` or the `addOnUrl` link provides instructions to help the user create one.\n2. Your connector cannot be in unfinished or beta status. You have to publish a complete and functional connector. You can always update your connector but the production deployment that is released to users should be tested and feature complete.\n3. Provide meaningful and actionable error messages to users when users encounter a [Connector internal error](/looker-studio/connector/error-handling#connector-internal-error). This includes cases when a user provides invalid/blank input at configuration.\n4. `shortDescription`, `description`, `addOnUrl` link, `supportUrl` link, and OAuth page (if applicable) should be free of spelling and grammatical errors.\n5. `shortDescription` cannot contain URLs.\n6. Use authentication methods provided by `getAuthType()`. Do not request credentials via `getConfig()`. \n7. Complete the [OAuth Client Verification](/apps-script/guides/client-verification) process. The verification is mandatory for all connectors regardless of the authentication method in `getAuthType()`. The verification process is a different process from the connector review and is handled by a separate team, not Looker Studio. Consult the [OAuth API Verification FAQ](https://support.google.com/cloud/answer/9110914) for more info. **Your connector\n will be rejected if the OAuth Client Verification process is not\n completed.** \n - During the *OAuth verification process* , [add your connector's required OAuth scopes](/static/looker-studio/connector/images/scopes-for-oauth-consent-screen.png) as part of the OAuth consent screen configuration. If you fail to add *all* required scopes, you might pass the *OAuth verification process* but your connector will still show the [Unverified app screen](/static/apps-script/images/unverified2.png). This will cause the *Partner\n Connector verification process* to fail. \n Authorize and test your connector using a new account after passing the *OAuth verification process* to ensure that [Unverified app screen](/static/apps-script/images/unverified2.png) is not displayed to your users.\n8. Ensure you adhere to the [Looker Studio Galleries Terms of Service (Submitter)](https://support.google.com/looker-studio/answer/7539411?ref_topic=7156687).\n\nOnce you have met all the requirements, click the following button to request a\nreview for your connector:\n\n[Publish your\nPartner Connector](https://goo.gl/KvuMcU)"]]