Google Cloud Client Libraries for .NET
Switch branches/tags
Clone or download
jskeet Release Google.Cloud.Firestore version 1.0.0-beta15
This contains a slightly-speculative fix for issue #2721, where listeners may fail after a while.
Latest commit e8f4396 Dec 18, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github pr feedback Nov 8, 2018
.kokoro Reactivating coverage in kokoro. Oct 16, 2018
adhoc Update remaining files referring to GoogleCloudPlatform Sep 17, 2018
analyzerScripts Add analyzer to warn about wrong UseGoogleTrace/UseMvc order (#2054) Apr 25, 2018
apis Release Google.Cloud.Firestore version 1.0.0-beta15 Dec 18, 2018
docs Clarify the behavior of list operations for Storage Dec 5, 2018
third_party/BreakingChangesDetector Remove IOperation feature flag. It is no longer required with the lat… May 7, 2018
tools Skip lines containing // [START or // [END Dec 3, 2018
.gitattributes Make API generation simpler on Windows Sep 6, 2017
.gitignore Infrastructure for logging build actions to create a log file, then p… Oct 12, 2018
.travis.yml Fix Travis Oct 16, 2018 Moving Diagnostics issues to backlog. Nov 13, 2018 Add Code of Conduct Jul 2, 2018 Cleanup default expressions (#1388) Sep 21, 2017
LICENSE Initial commit May 19, 2015 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018
NuGet.Config Remove myget feed Mar 22, 2018 Update process documentation for Kokoro Sep 13, 2018 Removing the Contributing section. Nov 13, 2018 Fix Vision documentation Nov 13, 2018 Deactivating coverage in AppVeyor so it won't clash with coverage fro… Oct 17, 2018
appveyor.yml Remove coveralls token from AppVeyor configuration Oct 12, 2018 Use - instead of / for dotcover command line argument Oct 17, 2018 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 Minor script changes for clarity of build timing Oct 15, 2018
codecov.yml Remove codecov from pull requests Apr 13, 2018 Don't show progress when installing codecov with chocolatey Oct 11, 2018 Generate Google.Cloud.Scheduler.V1Beta1 Dec 6, 2018 Add executable bit to all scripts Oct 2, 2018
global.json Update to .NET Core SDK 2.1.400 Sep 3, 2018
grpc.ruleset Public dependency analyzer (#1456) Sep 18, 2017 Infrastructure for logging build actions to create a log file, then p… Oct 12, 2018 Use - instead of / for dotcover command line argument Oct 17, 2018 Update release tagging Jun 28, 2017 Making install dotcover latest version. Oct 16, 2018

Google Cloud Libraries for .NET

.NET idiomatic client libraries for Google Cloud Platform services.

Travis build Status Appveyor build status Coverage Status

The following libraries are available at a GA quality level:

The following libraries are available at a beta quality level:

The following libraries are available at an alpha quality level:

  • Google Cloud Metadata - API docs (alpha)

See the API documentation for details of the status of each library.

Note: This client is a work-in-progress, and may occasionally make backwards-incompatible changes.

If you need support for other Google APIs, check out the Google .NET API Client library

Example Applications

Specifying a Project ID

Most Google Cloud Libraries for .NET require a project ID. If you don't remember yours (or haven't created a project yet), navigate to the Google Developers Console to view your project ID (or create a new project and then get the ID). Once done, record the value and make sure to pass it as a parameter to the methods that require it.


Every API call needs to be authenticated. In order to successfully make a call, first ensure that the necessary Google Cloud APIs are enabled for your project and that you've downloaded the right set of keys (if it applies to you) as explained in the authentication document.

Next, choose a method for authenticating API requests from within your project:

  1. When using google-cloud-dotnet libraries from within Compute/App Engine, no additional authentication steps are necessary.
  2. When using google-cloud-dotnet libraries elsewhere, you can do one of the following:
    • Define the environment variable GOOGLE_APPLICATION_CREDENTIALS to be the location of the key. For example:

      set GOOGLE_APPLICATION_CREDENTIALS=/path/to/my/key.json
    • If running locally for development/testing, you can authenticate using the [Google Cloud SDK)( Download the SDK if you haven't already, then login by running the following in the command line:

      gcloud auth application-default login

Supported platforms

See the Supported Platforms documentation for details on where the Google Cloud Libraries for .NET are supported.


The Google Cloud Client Libraries for .NET follow Semantic Versioning.

The version number in the package name (and .NET namespace) represents the version of the underlying API; the version number for the package itself indicates the status of the client library, according to the following quality levels:

GA: Libraries defined at a GA (General Availability) quality level are expected to be stable: breaking API changes will not be made without a new major release.

Beta: Libraries defined at a Beta quality level are expected to be stable and working, but the API surface is still under active development. We encourage you to experiment with these libraries, but expect breaking changes in future versions. There may still be issues, but we have a fairly high degree of confidence.

Alpha: Libraries defined at an Alpha quality level are still experimental. They may have significant issues, and the API surface will almost certainly change before a final release. We encourage experimentation with these libraries on test projects, but strongly discourage you from using them in a production environment.


Apache 2.0 - See LICENSE for more information.