Google Cloud Client Libraries for .NET
Switch branches/tags
v1.0.0-beta01 Google.Storage.V1-1.0.0-beta04 Google.Storage.V1-1.0.0-beta03 Google.Storage.V1-1.0.0-beta02 Google.Pubsub.V1-1.0.0-beta04 Google.Pubsub.V1-1.0.0-beta03 Google.Pubsub.V1-1.0.0-beta02 Google.Monitoring.V3-0.3.0 Google.Monitoring.V3-0.2.0 Google.Monitoring.V3-0.1.0 Google.Longrunning-1.0.0-beta03 Google.Longrunning-1.0.0-beta02 Google.Longrunning-1.0.0-beta01 Google.LongRunning-1.1.0-beta01 Google.LongRunning-1.0.0 Google.LongRunning-1.0.0-beta11 Google.LongRunning-1.0.0-beta10 Google.LongRunning-1.0.0-beta09 Google.LongRunning-1.0.0-beta08 Google.LongRunning-1.0.0-beta07 Google.LongRunning-1.0.0-beta06 Google.LongRunning-1.0.0-beta05 Google.LongRunning-1.0.0-beta04 Google.Logging.V2/Google.Logging.Type-1.0.0-beta04 Google.Logging.V2/Google.Logging.Log4Net-1.0.0-beta04 Google.Logging.V2-1.0.0-beta04 Google.Logging.V2-1.0.0-beta03 Google.Logging.V2-1.0.0-beta02 Google.Logging.Type-1.0.0-beta03 Google.Logging.Log4Net-1.0.0-beta03 Google.Iam.V1-1.0.0-beta04 Google.Iam.V1-1.0.0-beta03 Google.Iam.V1-1.0.0-beta02 Google.Devtools.Cloudtrace.V1-0.3.0 Google.Devtools.Cloudtrace.V1-0.2.0 Google.Devtools.Cloudtrace.V1-0.1.0 Google.Devtools.Clouderrorreporting.V1Beta1-0.3.0 Google.Devtools.Clouderrorreporting.V1Beta1-0.2.0 Google.Devtools.Clouderrorreporting.V1Beta1-0.1.0 Google.Devtools.AspNet-0.2.0 Google.Devtools.AspNet-0.1.1 Google.Devtools.AspNet-0.1.0 Google.Datastore.V1-1.0.0-beta04 Google.Datastore.V1-1.0.0-beta03 Google.Datastore.V1-1.0.0-beta02 Google.Cloud.Vision.V1P2Beta1-1.0.0-beta02 Google.Cloud.Vision.V1P2Beta1-1.0.0-beta01 Google.Cloud.Vision.V1P1Beta1-1.0.0-beta02 Google.Cloud.Vision.V1P1Beta1-1.0.0-beta01 Google.Cloud.Vision.V1-1.3.0-beta03 Google.Cloud.Vision.V1-1.3.0-beta02 Google.Cloud.Vision.V1-1.3.0-beta01 Google.Cloud.Vision.V1-1.2.0 Google.Cloud.Vision.V1-1.1.0 Google.Cloud.Vision.V1-1.0.0 Google.Cloud.Vision.V1-1.0.0-beta05 Google.Cloud.Vision.V1-1.0.0-beta04 Google.Cloud.Vision.V1-1.0.0-beta03 Google.Cloud.Vision.V1-1.0.0-beta02 Google.Cloud.Vision.V1-1.0.0-beta01 Google.Cloud.Vision.V1-1.0.0-alpha07 Google.Cloud.Vision.V1-1.0.0-alpha06 Google.Cloud.Vision.V1-1.0.0-alpha05 Google.Cloud.Vision.V1-1.0.0-alpha04 Google.Cloud.Vision.V1-1.0.0-alpha03 Google.Cloud.Vision.V1-1.0.0-alpha02 Google.Cloud.Vision.V1-1.0.0-alpha01 Google.Cloud.Vision.V1-0.2.0 Google.Cloud.VideoIntelligence.V1Beta2-1.0.0-beta02 Google.Cloud.VideoIntelligence.V1Beta2-1.0.0-alpha01 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-beta06 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha05 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha04 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha03 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha02 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha01 Google.Cloud.VideoIntelligence.V1Beta1-1.0.0-alpha00 Google.Cloud.VideoIntelligence.V1-1.1.0-beta01 Google.Cloud.VideoIntelligence.V1-1.0.0 Google.Cloud.Translation.V2-1.1.0 Google.Cloud.Translation.V2-1.1.0-beta02 Google.Cloud.Translation.V2-1.1.0-beta01 Google.Cloud.Translation.V2-1.0.0 Google.Cloud.Translation.V2-1.0.0-beta02 Google.Cloud.Translation.V2-1.0.0-beta01 Google.Cloud.Translation.V2-1.0.0-alpha04 Google.Cloud.Translation.V2-1.0.0-alpha03 Google.Cloud.Translation.V2-1.0.0-alpha02 Google.Cloud.Translation.V2-1.0.0-alpha01 Google.Cloud.Trace.V2-1.0.0-beta02 Google.Cloud.Trace.V2-1.0.0-beta01 Google.Cloud.Trace.V1-1.1.0-beta01 Google.Cloud.Trace.V1-1.0.0 Google.Cloud.Trace.V1-1.0.0-beta07 Google.Cloud.Trace.V1-1.0.0-beta06 Google.Cloud.Trace.V1-1.0.0-beta05 Google.Cloud.Trace.V1-1.0.0-beta04 Google.Cloud.Trace.V1-1.0.0-beta03 Google.Cloud.Trace.V1-1.0.0-beta02 Google.Cloud.Trace.V1-1.0.0-beta01
Nothing to show
Clone or download
jskeet Add proto tests for array remove/union operations
This required one minor production change: we now validate that no
values specified in array removal/union are themselves sentinel
Latest commit fd05da9 Sep 20, 2018
Failed to load latest commit information.
.kokoro Hard code the path the the bash we want to use. (#2400) Aug 2, 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 Add proto tests for array remove/union operations Sep 20, 2018
docs Update remaining files referring to GoogleCloudPlatform Sep 17, 2018
third_party/BreakingChangesDetector Remove IOperation feature flag. It is no longer required with the lat… May 7, 2018
tools [Bigtable] Expose BigtableClientImpl constructor (#2508) Sep 17, 2018
.gitattributes Make API generation simpler on Windows Sep 6, 2017
.gitignore First pass at benchmarks for BigQueryNumeric Jul 16, 2018
.travis.yml Update to .NET Core SDK 2.1.400 Sep 3, 2018 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 Add Code of Conduct Jul 2, 2018 Update May 8, 2017 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 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 Update Storage version for beta release May 14, 2018 Make the AppVeyor shell script stop on error Jun 18, 2018
appveyor.yml Remove files during AppVeyor builds to help free up space. (#2262) Jun 15, 2018 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 Create a script to clean up old tests data. (#2373) Jul 22, 2018
codecov.yml Remove codecov from pull requests Apr 13, 2018 Handle empty coverage reports Nov 29, 2017 Hide irrelevant warnings during code generation Sep 11, 2018 Update build procedure to help Travis Sep 6, 2017
global.json Update to .NET Core SDK 2.1.400 Sep 3, 2018
grpc.ruleset Public dependency analyzer (#1456) Sep 18, 2017 Update remaining files referring to GoogleCloudPlatform Sep 17, 2018 New option for --smoke Dec 12, 2017 Update release tagging Jun 28, 2017 Update remaining files referring to GoogleCloudPlatform Sep 17, 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.


Contributions to this library are always welcome and highly encouraged.

See for more information on how to get started.


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.