تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توفّر واجهة Discovery API قائمة بواجهات Google API لاسترداد البيانات الوصفية "لمستند Discovery" القابل للقراءة آليًا لكل واجهة API.
هذا المستند مخصّص للمطوّرين الذين يريدون كتابة مكتبات برامج ومكوّنات إضافية لبيئات التطوير المتكاملة وأدوات أخرى للتفاعل مع واجهات Google API.
خلفية خدمة الاكتشاف
المفاهيم
تستند خدمة Google APIs Discovery Service إلى مفهومَين أساسيَّين:
دليل واجهات برمجة التطبيقات: قائمة بجميع واجهات برمجة التطبيقات التي تتيحها خدمة استكشاف واجهات برمجة التطبيقات. يعرض كل إدخال في الدليل تفاصيل حول واجهة برمجة تطبيقات متوافقة، بما في ذلك اسمها ووصف موجز لوظيفتها ورابط إلى المستندات. يمكن أن تتضمّن واجهة برمجة التطبيقات عدة إدخالات في الدليل، واحد لكل إصدار من الإصدارات المتوافقة.
مستند الاكتشاف: وصف قابل للقراءة آليًا لواجهة برمجة تطبيقات معيّنة.
يصف مستند Discovery مساحة العرض لإصدار معيّن من واجهة برمجة التطبيقات. يقدّم المستند تفاصيل حول كيفية الوصول إلى الطرق المختلفة لكل واجهة برمجة تطبيقات من خلال طلبات HTTP RESTful. يتضمّن مستند Discovery أوصافًا للبيانات والطرق المرتبطة بواجهة برمجة التطبيقات، بالإضافة إلى معلومات حول نطاقات OAuth المتاحة وأوصاف المخططات والطرق والمَعلمات وقيم المَعلمات المتاحة.
نموذج البيانات
المورد هو كيان بيانات فردي يتضمّن معرّفًا فريدًا. تتعامل خدمة Google APIs Discovery Service مع نوعَين من الموارد استنادًا إلى المفاهيم المذكورة أعلاه.
قائمة دليل واجهات برمجة التطبيقات: قائمة بواجهات برمجة التطبيقات
يحتوي كل إدخال في الدليل على زوج اسم/إصدار لواجهة برمجة التطبيقات مع المعلومات التالية:
معلومات التعريف والوصف: الاسم والإصدار والعنوان والوصف
معلومات المستندات: رموز ورابط يؤدي إلى المستندات
معلومات الحالة، بما في ذلك تصنيفات الحالة، وإشارة إلى ما إذا كان هذا هو الإصدار المفضّل من واجهة برمجة التطبيقات أم لا
رابط مستند الاكتشاف، وهو المعرّف الموحّد للموارد (URI) لمستند الاكتشاف الخاص بواجهة برمجة التطبيقات هذه
(يتم تقديمه كعنوان URL كامل، مثلاً،
https://serviceusage.googleapis.com/$discovery/rest?version=v1).
مورد مستند الاكتشاف: وصف قابل للقراءة آليًا لواجهة برمجة تطبيقات معيّنة
بالإضافة إلى المعلومات المقدَّمة في "دليل واجهات برمجة التطبيقات"، يتضمّن مستند Discovery أيضًا ما يلي:
المخططات: هي قائمة بمخططات موارد واجهة برمجة التطبيقات التي تصف البيانات التي يمكنك الوصول إليها في كل واجهة برمجة تطبيقات. وتستند مخططات خدمة Google APIs Discovery Service إلى مخطط JSON.
الطُرق، بما في ذلك قائمة بطُرق واجهة برمجة التطبيقات والمعلَمات المتاحة لكل طريقة
نطاقات OAuth، التي تحدّد قائمة نطاقات OAuth المتاحة لواجهة برمجة التطبيقات هذه.
تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThe Google Discovery API provides machine-readable metadata ("Discovery documents") for various Google APIs, aiding developers in building client libraries and tools.\u003c/p\u003e\n"],["\u003cp\u003eThe service relies on an APIs Directory, listing available APIs, and Discovery documents detailing each API's structure, methods, and schemas.\u003c/p\u003e\n"],["\u003cp\u003eDiscovery documents employ JSON Schema to describe data structures and offer inline documentation for better understanding.\u003c/p\u003e\n"],["\u003cp\u003eYou can retrieve the APIs Directory or a specific API's Discovery document through simple RESTful HTTP GET requests.\u003c/p\u003e\n"],["\u003cp\u003eThe service is publicly accessible for general API discovery, though private APIs may require authentication.\u003c/p\u003e\n"]]],[],null,["# Overview of the Discovery API\n\nThe Discovery API provides a list of Google APIs for retrieving a machine-readable \"Discovery\ndocument\" metadata for each API.\n\n\nThis document is intended for developers who want to write client libraries, IDE plugins, and\nother tools for interacting with Google APIs.\n\nDiscovery Service Background\n----------------------------\n\n### Concepts\n\nThe Google APIs Discovery Service is built upon two basic concepts:\n\n- **APIs Directory** : A list of all APIs that are supported by the APIs Discovery Service. Each directory entry shows details about a supported API, including its *name* , a brief *description* of what it does, and a *documentation\n link*. An API can have multiple Directory entries, one for each of its supported versions.\n- **Discovery document**: A machine-readable description of a particular API. The Discovery document describes the surface for a particular version of an API. The document provides details on how to access the various methods of each API via RESTful HTTP calls. A Discovery document includes descriptions of the data and methods associated with the API, as well as information about available OAuth scopes, and descriptions of schemas, methods, parameters and available parameter values.\n\n### Data model\n\n\nA resource is an individual data entity with a unique identifier. The Google APIs Discovery Service operates on\ntwo types of resources, based on the above concepts.\n\n#### APIs Directory List: A list of APIs\n\n\nEach directory entry contains an API **name** /**version** pair with the\nfollowing information:\n\n- **Identification and description information,**: name, version, title, and description.\n- **Documentation information**: icons and a documentation link.\n- **Status information**, including status labels, and an indication as to whether or not this is the preferred version of the API.\n- **Discovery document link** , the URI of the discovery document for this API (given as a full URL---for example, `https://serviceusage.googleapis.com/$discovery/rest?version=v1`).\n\n#### Discovery Document resource: A machine-readable description of a particular API\n\n\nIn addition to the information provided in the APIs Directory, a Discovery document also\nincludes:\n\n- **Schemas** , which is a list of API resource schemas that describe the data you have access to in each API; the Google APIs Discovery Service schemas are based on [JSON Schema](https://json-schema.org/).\n- **Methods**, including a list of API methods and available parameters for each method.\n- **OAuth scopes**, which identifies the list of OAuth scopes available for this API.\n- **Inline documentation**, which provides brief descriptions of schemas, methods, parameters and available parameter values.\n\n\nThe single Directory Collection is the conceptual container of the single APIs Directory\nresource, and the Discovery Document resources for each supported API.\n\n### Operations\n\n\nYou can invoke two different methods on collections and resources in the Google APIs Discovery Service, as\ndescribed in the following table.\n\n| Operation | Description | REST HTTP mappings |\n|-----------|---------------------------|--------------------------------------|\n| list | Lists all supported APIs. | `GET` on the Directory resource URI. |\n\nCalling style\n-------------\n\n| **Note:** Public APIs *do not* need authentication. Private APIs require an [API key](https://cloud.google.com/docs/authentication/api-keys).\n\n### REST\n\n\nThe supported Google APIs Discovery Service operations map directly to the [REST](https://en.wikipedia.org/wiki/Representational_State_Transfer) HTTP\n`GET` verb, as described in [Operations](#background-operations).\n\nThe specific format for Google APIs Discovery Service URIs are: \n\n```\nhttps://API/$discovery/rest?version=VERSION\n```\n\n\nwhere \u003cvar translate=\"no\"\u003eAPI\u003c/var\u003e is the identifier for a Discovery Document resource, and\n\u003cvar translate=\"no\"\u003eVERSION\u003c/var\u003e is the identifier of the particular version of the API.\n\nHere are a couple of examples of how this works in the Google APIs Discovery Service.\n\nList all the Google APIs Discovery Service supported APIs: \n\n```\nGET https://discovery.googleapis.com/discovery/v1/apis\n```\n\n\n[Try it now in APIs Explorer!](//developers.google.com/apis-explorer/#p/discovery/v1/discovery.apis.list)\n\nGet the Discovery document for Service Usage API, version 1: \n\n```\nGET https://serviceusage.googleapis.com/$discovery/rest?version=v1\n```"]]