Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Dieses Dokument enthält alle grundlegenden Informationen, die Sie für die Verwendung der Bibliothek benötigen.
Es werden Bibliothekskonzepte,
Beispiele für verschiedene Anwendungsfälle,
und enthält Links zu weiteren Informationen.
Einrichtung
Bevor Sie diese Bibliothek verwenden können, müssen Sie einige Einrichtungsschritte ausführen:
Wenn Sie noch kein Google-Konto haben,
Registrieren.
Installieren Sie das NuGet-Paket, mit dem Sie arbeiten möchten.
Authentifizierung und Autorisierung
Es ist wichtig, die Grundlagen der API-Authentifizierung und -Autorisierung zu verstehen.
Für alle API-Aufrufe muss entweder ein einfacher oder autorisierter Zugriff (wie unten definiert) verwendet werden.
Viele API-Methoden erfordern einen autorisierten Zugriff, einige können aber auch beide verwenden.
Einige API-Methoden,
die beide verwenden können, verhalten sich unterschiedlich,
je nachdem, ob Sie den
einfachen oder den autorisierten Zugriff verwenden.
Informationen zum Ermitteln des geeigneten Zugriffstyps finden Sie in der Methodendokumentation der API.
1. Einfacher API-Zugriff (API-Schlüssel)
Diese API-Aufrufe greifen nicht auf private Nutzerdaten zu.
Ihre Anwendung muss sich als eigene Anwendung authentifizieren.
mit Ihrem Google API Console-Projekt verknüpfen.
Dies ist erforderlich, um die Projektnutzung für Buchhaltungszwecke zu messen.
API-Schlüssel:
Verwenden Sie zur Authentifizierung Ihrer Anwendung einen
API-Schlüssel
für Ihr API Console-Projekt.
Jeder einfache Zugriffsaufruf, den Ihre Anwendung durchführt, muss diesen Schlüssel enthalten.
<ph type="x-smartling-placeholder">
2. Autorisierter API-Zugriff (OAuth 2.0)
Diese API-Aufrufe greifen auf private Nutzerdaten zu.
Bevor Sie sie anrufen können,
muss der Nutzer, der Zugriff auf die privaten Daten hat, Ihrer Anwendung Zugriff gewähren.
Ihre Anwendung muss authentifiziert sein,
muss der Nutzer
der Anwendung Zugriff gewähren.
und der Nutzer muss authentifiziert sein, um diesen Zugriff zu gewähren.
All dies erreichen Sie mit
OAuth 2.0 und für ihn geschriebene Bibliotheken
Umfang:
Jede API definiert einen oder mehrere Bereiche, die eine Reihe von zulässigen Vorgängen deklarieren.
Eine API kann beispielsweise schreibgeschützte Bereiche und Lese-/Schreibbereiche haben.
Wenn Ihre Anwendung Zugriff auf Nutzerdaten anfordert,
Die Anfrage muss einen oder mehrere Bereiche enthalten.
Der Nutzer muss den Zugriffsbereich genehmigen, den Ihre Anwendung anfordert.
Aktualisierungs- und Zugriffstokens:
Wenn ein Nutzer Ihrer Anwendung Zugriff gewährt, wird der OAuth 2.0-Autorisierungsserver
stellt Ihrer Anwendung Aktualisierungs- und Zugriffstokens bereit.
Diese Tokens sind nur für den angeforderten Bereich gültig.
Ihre Anwendung verwendet Zugriffstokens, um API-Aufrufe zu autorisieren.
Zugriffstokens laufen ab, Aktualisierungstokens jedoch nicht.
Ihre Anwendung kann ein Aktualisierungstoken verwenden, um ein neues Zugriffstoken zu erhalten.
<ph type="x-smartling-placeholder">
Client-ID und Clientschlüssel:
Diese Strings identifizieren Ihre Anwendung eindeutig und werden zum Erwerb von Tokens verwendet.
Sie werden in der API Console für Ihr Projekt erstellt.
Es gibt drei Arten von Client-IDs:
Achten Sie daher darauf, den richtigen Typ für Ihre Anwendung auszuwählen:
In diesem Abschnitt finden Sie Beispiele für eine einfache API-Nutzung ohne Autorisierung.
Weitere Informationen zu Autorisierungsaufrufen finden Sie in der
OAuth 2.0-Seite für .NET
Einfaches API-Beispiel
In diesem Beispiel wird für eine Befehlszeilenanwendung ein einfacher API-Zugriff verwendet.
Es nennt sich
Google Discovery API, um alle Google APIs aufzulisten.
Beispiel für die Einrichtung
Rufen Sie Ihren einfachen API-Schlüssel ab. So finden Sie den API-Schlüssel Ihrer Anwendung:
Öffnen Sie in der API Console die Seite Anmeldedaten.
Diese API unterstützt zwei Arten von Anmeldedaten.
Erstellen Sie die Anmeldedaten, die für Ihr Projekt geeignet sind:
<ph type="x-smartling-placeholder">
</ph>
OAuth 2.0: Wenn Ihre Anwendung private Nutzerdaten anfordert, muss sie zusammen mit der Anfrage ein OAuth 2.0-Token senden. Die Anwendung sendet zuerst eine Client-ID und möglicherweise einen Clientschlüssel, um ein Token zu erhalten. Sie können OAuth 2.0-Anmeldedaten für Webanwendungen, Dienstkonten oder installierte Anwendungen generieren.
API-Schlüssel: Eine Anfrage, die kein OAuth 2.0-Token bereitstellt, muss einen API-Schlüssel senden.
Mit diesem Schlüssel werden Ihr Projekt identifiziert sowie der API-Zugriff, das Kontingent und Berichte bereitgestellt.
Die API unterstützt mehrere Arten von Einschränkungen für API-Schlüssel. Wenn der API-Schlüssel, den Sie
nicht bereits vorhanden ist, dann erstellen Sie einen API-Schlüssel in der Console, indem Sie
Klicken Sie auf Anmeldedaten erstellen.
> API-Schlüssel Sie können den Schlüssel vor der Verwendung einschränken
in der Produktion, indem Sie auf Schlüssel einschränken klicken und eine der
Einschränkungen:
usingSystem;usingSystem.Threading.Tasks;usingGoogle.Apis.Discovery.v1;usingGoogle.Apis.Discovery.v1.Data;usingGoogle.Apis.Services;namespaceDiscovery.ListAPIs{///<summary>
///ThisexampleusesthediscoveryAPItolistallAPIsinthediscoveryrepository.///https://developers.google.com/discovery/v1/using.///<summary>
classProgram{[STAThread]staticvoidMain(string[]args){Console.WriteLine("Discovery API Sample");Console.WriteLine("====================");try{newProgram().Run().Wait();}catch(AggregateExceptionex){foreach(vareinex.InnerExceptions){Console.WriteLine("ERROR: "+e.Message);}}Console.WriteLine("Press any key to continue...");Console.ReadKey();}privateasyncTaskRun(){//Createtheservice.varservice=newDiscoveryService(newBaseClientService.Initializer{ApplicationName="Discovery Sample",ApiKey="[YOUR_API_KEY_HERE]",});//Runtherequest.Console.WriteLine("Executing a list request...");varresult=awaitservice.Apis.List().ExecuteAsync();//Displaytheresults.if(result.Items!=null){foreach(DirectoryList.ItemsDataapiinresult.Items){Console.WriteLine(api.Id+" - "+api.Title);}}}}}
Tipps zur Verwendung von API-Schlüsseln:
Wenn Sie einen bestimmten Dienst verwenden möchten, müssen Sie ihm einen Verweis hinzufügen.
Wenn Sie zum Beispiel die Methode
Tasks API
sollten Sie das NuGet-Paket
Google.Apis.Tasks.v1 enthalten.
Um eine Instanz eines Dienstes zu erstellen, rufen Sie einfach dessen Konstruktor auf. Beispiel:
new TasksService(new BaseClientService.Initializer {...});".
Alle Methoden eines Dienstes befinden sich in einzelnen Ressourcen im Dienstobjekt selbst.
Der Erkennungsdienst hat eine Apis-Ressource, die eine List-Methode enthält.
Wenn Sie service.Apis.List(..) aufrufen, wird ein auf diese Methode ausgerichtetes Anfrageobjekt zurückgegeben.
Rufen Sie zum Ausführen einer Anfrage die Methode Execute() oder ExecuteAsyc() auf.
Legen Sie den API-Schlüssel mit dem Attribut ApiKey auf der Instanz BaseClientService.Initializer fest.
Informationen zu den APIs finden
Die
Unterstützte APIs
enthält eine Liste aller APIs, auf die über diese Bibliothek zugegriffen werden kann, sowie Links zur Dokumentation.
Sie können auch die
APIs Explorer
um APIs zu durchsuchen, verfügbare Methoden aufzulisten und API-Aufrufe in Ihrem Browser auszuprobieren.
[null,null,["Zuletzt aktualisiert: 2025-08-31 (UTC)."],[[["\u003cp\u003eThis documentation provides an overview of using the Google API client library for .NET, including setup, authentication, and usage examples.\u003c/p\u003e\n"],["\u003cp\u003eBefore using the library, ensure you have a Google account, a Google API Console project, and install the necessary NuGet package.\u003c/p\u003e\n"],["\u003cp\u003eThe library supports both simple API access using API keys and authorized access with OAuth 2.0 for private user data.\u003c/p\u003e\n"],["\u003cp\u003eSimple API access requires an API key for project usage tracking, while authorized access necessitates OAuth 2.0 for user data access.\u003c/p\u003e\n"],["\u003cp\u003eExamples are provided for basic API usage and guidance on locating further information about supported APIs and the APIs Explorer is included.\u003c/p\u003e\n"]]],[],null,["This document provides all the basic information you need to start using the library.\nIt covers the library concepts,\nshows examples for various use cases,\nand gives links to more information.\n\nSetup\n\n\nThere are a few setup steps you need to complete before you can use this library:\n\n1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).\n2. If you have never created a Google API Console project, read the [Managing Projects page](/console/help/managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).\n3. [Install](http://www.nuget.org/packages?q=google.apis&prerelease=true&sortOrder=relevance) the NuGet package you want to work with.\n\nAuthentication and authorization\n\n\nIt is important to understand the basics of how API authentication and authorization are handled.\nAll API calls must use either simple or authorized access (defined below).\nMany API methods require authorized access, but some can use either.\nSome API methods that can use either behave differently,\ndepending on whether you use simple or authorized access.\nSee the API's method documentation to determine the appropriate access type.\n\n1. Simple API access (API keys)\n\n\nThese API calls do not access any private user data.\nYour application must authenticate itself as an application belonging\nto your Google API Console project.\nThis is needed to measure project usage for accounting purposes.\n\n\n**API key** :\nTo authenticate your application, use an\n[API key](/console/help/using-keys)\nfor your API Console project.\nEvery simple access call your application makes must include this key.\n| **Warning**: Keep your API key private. If someone obtains your key, they could use it to consume your quota or incur charges against your API Console project.\n\n\u003cbr /\u003e\n\n2. Authorized API access (OAuth 2.0)\n\n\nThese API calls access private user data.\nBefore you can call them,\nthe user that has access to the private data must grant your application access.\nTherefore, your application must be authenticated,\nthe user must grant access for your application,\nand the user must be authenticated in order to grant that access.\nAll of this is accomplished with\n[OAuth 2.0](/accounts/docs/OAuth2) and libraries written for it.\n\n\n**Scope**:\nEach API defines one or more scopes that declare a set of operations permitted.\nFor example, an API might have read-only and read-write scopes.\nWhen your application requests access to user data,\nthe request must include one or more scopes.\nThe user needs to approve the scope of access your application is requesting.\n\n\n**Refresh and access tokens**:\nWhen a user grants your application access, the OAuth 2.0 authorization server\nprovides your application with refresh and access tokens.\nThese tokens are only valid for the scope requested.\nYour application uses access tokens to authorize API calls.\nAccess tokens expire, but refresh tokens do not.\nYour application can use a refresh token to acquire a new access token.\n| **Warning**: Keep refresh and access tokens private. If someone obtains your tokens, they could use them to access private user data.\n\n\u003cbr /\u003e\n\n\n**Client ID and client secret** :\nThese strings uniquely identify your application and are used to acquire tokens.\nThey are created for your project on the [API Console](https://console.cloud.google.com/).\nThere are three types of client IDs,\nso be sure to get the correct type for your application:\n\n- [Web application](/accounts/docs/OAuth2WebServer) client IDs\n- [Installed application](/accounts/docs/OAuth2InstalledApp) client IDs\n- [Service Account](/accounts/docs/OAuth2ServiceAccount) client IDs\n\n| **Warning**: Keep your client secret private. If someone obtains your client secret, they could use it to consume your quota, incur charges against your Console project, and request access to user data.\n\n\u003cbr /\u003e\n\nExamples\n\n\nIn this section, there are examples of simple API usage without authorization.\nFor more information about authorization calls, see the\n[OAuth 2.0 page for .NET](/api-client-library/dotnet/guide/aaa_oauth).\n\nSimple API example\n\n\nThis example uses simple API access for a command-line application.\nIt calls the\n[Google Discovery API](/discovery) to list all Google APIs.\n\nSetup for example\n\n\n**Get your Simple API key**. To find your application's API key, do the following:\n\n\n1. Open the [Credentials page](https://console.cloud.google.com/apis/credentials) in the API Console.\n2. This API supports two types of credentials. Create whichever credentials are appropriate for your project:\n - **OAuth 2.0:** Whenever your application requests private user\n data, it must send an OAuth 2.0 token along with the request. Your\n application first sends a client ID and, possibly, a client secret to\n obtain a token. You can generate OAuth 2.0 credentials for web\n applications, service accounts, or installed applications.\n\n For more information, see the [OAuth 2.0 documentation](https://developers.google.com/identity/protocols/OAuth2).\n - **API keys:**\n\n A request that does not provide an OAuth 2.0 token must send an API\n key.\n\n The key identifies your project and provides API access, quota, and\n reports.\n\n The API supports several types of restrictions on API keys. If the API key that you\n need doesn't already exist, then create an API key in the Console by\n clicking **[Create credentials](https://console.cloud.google.com/apis/credentials) \\\u003e API key** . You can restrict the key before using it\n in production by clicking **Restrict key** and selecting one of the\n **Restrictions**.\n\nTo keep your API keys secure, follow the [best practices for\nsecurely using API keys](//cloud.google.com/docs/authentication/api-keys).\n\n\u003cbr /\u003e\n\nCode for example \n\n```transact-sql\nusing System;\nusing System.Threading.Tasks;\n\nusing Google.Apis.Discovery.v1;\nusing Google.Apis.Discovery.v1.Data;\nusing Google.Apis.Services;\n\nnamespace Discovery.ListAPIs\n{\n /// \u003csummary\u003e\n /// This example uses the discovery API to list all APIs in the discovery repository.\n /// https://developers.google.com/discovery/v1/using.\n /// \u003csummary\u003e\n class Program\n {\n [STAThread]\n static void Main(string[] args)\n {\n Console.WriteLine(\"Discovery API Sample\");\n Console.WriteLine(\"====================\");\n try\n {\n new Program().Run().Wait();\n }\n catch (AggregateException ex)\n {\n foreach (var e in ex.InnerExceptions)\n {\n Console.WriteLine(\"ERROR: \" + e.Message);\n }\n }\n Console.WriteLine(\"Press any key to continue...\");\n Console.ReadKey();\n }\n\n private async Task Run()\n {\n // Create the service.\n var service = new DiscoveryService(new BaseClientService.Initializer\n {\n ApplicationName = \"Discovery Sample\",\n ApiKey=\"[YOUR_API_KEY_HERE]\",\n });\n\n // Run the request.\n Console.WriteLine(\"Executing a list request...\");\n var result = await service.Apis.List().ExecuteAsync();\n\n // Display the results.\n if (result.Items != null)\n {\n foreach (DirectoryList.ItemsData api in result.Items)\n {\n Console.WriteLine(api.Id + \" - \" + api.Title);\n }\n }\n }\n }\n}\n```\n\n\nTips for using API keys:\n\n- In order to use a specific service, you have to add a reference to it. For example if you want to use the [Tasks API](https://developers.google.com/google-apps/tasks/), you should install its NuGet package [Google.Apis.Tasks.v1](http://www.nuget.org/packages/Google.Apis.Tasks.v1/).\n- To create an instance of a service, just call its constructor. For example: `new TasksService(new BaseClientService.Initializer {...});\"`.\n- All methods of a service are located on individual resources on the service object itself. The Discovery service has an `Apis` resource, which contains a `List` method. When you call `service.Apis.List(..)` a request object targeting this method is returned. \n To execute a request, call the `Execute()` or `ExecuteAsyc()` method on a request.\n- Set the API key using the `ApiKey` property on the `BaseClientService.Initializer` instance.\n\nFinding information about the APIs\n\n\nThe\n[Supported APIs](/api-client-library/dotnet/apis)\npage lists all APIs that can be accessed using this library as well as links to documentation.\n\n\nYou can also use the\n[APIs Explorer](/apis-explorer)\nto browse APIs, list available methods, and even try API calls from your browser."]]