[![](https://developers.google.com/static/dotnet/docs/reference/Google.Developers.DeveloperKnowledge.V1/latest/logo.svg)](https://developers.google.com/dotnet/docs/reference/Google.Developers.DeveloperKnowledge.V1/latest)
- 
`Google.Developers.DeveloperKnowledge.V1` is a.NET client library for the [Developer Knowledge API](https://developers.google.com/knowledge).

Note:
This documentation is for version `1.0.0-beta01` of the library.
Some samples may not work with other versions.

## Installation

Install the `Google.Developers.DeveloperKnowledge.V1` package from NuGet. Add it to
your project in the normal way (for example by right-clicking on the
project in Visual Studio and choosing "Manage NuGet Packages...").
Please ensure you enable pre-release packages (for example, in the
Visual Studio NuGet user interface, check the "Include prerelease"
box). Some of the following samples might only work with the latest
pre-release version (`1.0.0-beta01`) of `Google.Developers.DeveloperKnowledge.V1`.

## Authentication

When running on Google Cloud, no action needs to be taken to authenticate.

Otherwise, the simplest way of authenticating your API calls is to
set up Application Default Credentials.
The credentials will automatically be used to authenticate. See
[Set up Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc) for more details.

## Getting started

All operations are performed through [DeveloperKnowledgeClient](https://developers.google.com/dotnet/docs/reference/Google.Developers.DeveloperKnowledge.V1/latest/api/Google.Developers.DeveloperKnowledge.V1.DeveloperKnowledgeClient).

Create a client instance by calling the static `Create` or `CreateAsync` methods. Alternatively,
use the builder class associated with each client class (e.g. DeveloperKnowledgeClientBuilder for DeveloperKnowledgeClient)
as an easy way of specifying custom credentials, settings, or a custom endpoint. Clients are thread-safe,
and we recommend using a single instance across your entire application unless you have a particular need
to configure multiple client objects separately.

### Using the REST (HTTP/1.1) transport

This library defaults to performing RPCs using [gRPC](https://grpc.io/) using the binary [Protocol Buffer](https://protobuf.dev) wire format.
However, it also supports HTTP/1.1 and JSON, for situations where gRPC doesn't work as desired. (This is typically due to an incompatible proxy
or other network issue.) To create a client using HTTP/1.1, specify a `RestGrpcAdapter` reference for the `GrpcAdapter` property in the client builder.
Sample code:

    var client = new DeveloperKnowledgeClientBuilder
    {
        GrpcAdapter = RestGrpcAdapter.Default
    }.Build();

For more details, see the [transport selection](https://cloud.google.com/dotnet/docs/reference/help/transports) page.

##### In this article

[Back to top](https://developers.google.com/dotnet/docs/reference/Google.Developers.DeveloperKnowledge.V1/latest#top) Generated by **DocFX**