קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
Discovery API מספק רשימה של ממשקי Google API לאחזור מטא-נתונים של 'מסמך גילוי' שניתנים לקריאה על ידי מכונה לכל API.
המסמך הזה מיועד למפתחים שרוצים לכתוב ספריות לקוח, תוספים ל-IDE וכלים אחרים לאינטראקציה עם Google APIs.
רקע על שירות Discovery
מושגים
שירות הגילוי של Google APIs מבוסס על שני מושגים בסיסיים:
APIs Directory: רשימה של כל ממשקי ה-API שנתמכים על ידי שירות גילוי ממשקי ה-API. כל רשומה בספרייה מציגה פרטים על API נתמך, כולל השם, תיאור קצר של הפעולות שהוא מבצע וקישור לתיעוד. ל-API יכולים להיות כמה רשומות בספרייה, אחת לכל גרסה נתמכת.
מסמך Discovery: תיאור של API מסוים שניתן לקריאה על ידי מכונה.
מסמך Discovery מתאר את הממשק של גרסה מסוימת של API. במסמך מוסבר איך לגשת לשיטות השונות של כל API באמצעות קריאות HTTP מסוג RESTful. מסמך Discovery כולל תיאורים של הנתונים והשיטות שמשויכים ל-API, וגם מידע על היקפי OAuth שזמינים, ותיאורים של סכימות, שיטות, פרמטרים וערכי פרמטרים שזמינים.
מודל נתונים
משאב הוא ישות נתונים נפרדת עם מזהה ייחודי. שירות הגילוי של Google APIs פועל על שני סוגים של משאבים, על סמך המושגים שלמעלה.
רשימת ממשקי API בספרייה: רשימה של ממשקי API
כל רשומה בספרייה מכילה זוג של שם/גרסה של API עם המידע הבא:
פרטי זיהוי ותיאור: שם, גרסה, שם ותיאור.
מידע על התיעוד: סמלים וקישור לתיעוד.
פרטי הסטטוס, כולל תוויות סטטוס וציון אם זו הגרסה המועדפת של ה-API.
קישור למסמך הגילוי, ה-URI של מסמך הגילוי של ה-API הזה (מופיע ככתובת URL מלאה – לדוגמה, https://serviceusage.googleapis.com/$discovery/rest?version=v1).
משאב מסוג Discovery Document: תיאור של API מסוים שניתן לקריאה על ידי מכונה
בנוסף למידע שמופיע בספריית ה-API, מסמך Discovery כולל גם:
סכימות, שהן רשימה של סכימות של משאבי API שמתארות את הנתונים שיש לכם גישה אליהם בכל API. הסכימות של Google APIs Discovery Service מבוססות על JSON Schema.
שיטות, כולל רשימה של שיטות API ופרמטרים זמינים לכל שיטה.
היקפי הרשאות OAuth, שמזהים את רשימת היקפי ההרשאות של OAuth שזמינים ל-API הזה.
תיעוד מוטבע, שכולל תיאורים קצרים של סכימות, שיטות, פרמטרים וערכי פרמטרים זמינים.
אוסף הספריות היחיד הוא המאגר הרעיוני של משאב הספריות היחיד של ה-API, ושל משאבי מסמכי ה-Discovery לכל API נתמך.
תפעול
אפשר להפעיל שתי שיטות שונות באוספים ובמשאבים ב-Google APIs Discovery Service, כמו שמתואר בטבלה הבאה.
פעולה
תיאור
מיפויים של REST HTTP
list
רשימה של כל ממשקי ה-API הנתמכים.
GET ב-URI של משאב הספרייה.
סגנון השיחה
REST
הפעולות הנתמכות של Google APIs Discovery Service ממופות ישירות לפועל HTTP GET מסוג REST, כפי שמתואר בפעולות.
אלה הם הפורמטים שספציפיים למזהי URI של Google APIs Discovery Service:
https://API/$discovery/rest?version=VERSION
כאשר API הוא המזהה של משאב מסוג Discovery Document, ו-VERSION הוא המזהה של הגרסה הספציפית של ה-API.
הנה כמה דוגמאות שממחישות איך זה עובד בשירות הגילוי של ממשקי Google API.
רשימה של כל ממשקי ה-API שנתמכים על ידי Google APIs Discovery Service:
GET https://discovery.googleapis.com/discovery/v1/apis
[[["התוכן קל להבנה","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 (שעון UTC)."],[[["\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```"]]