A base class for a client service which provides common mechanism for all services, like
serialization and GZip support. It should be safe to use a single service instance to make server requests
concurrently from multiple threads.
This class adds a specialIHttpExecuteInterceptorto theConfigurableMessageHandlerexecute interceptor list, which uses the given
Authenticator. It calls to its applying authentication method, and injects the "Authorization" header in the
request.
If the given Authenticator implementsIHttpUnsuccessfulResponseHandler, this
class adds the Authenticator to theConfigurableMessageHandler's unsuccessful
response handler list.
Client service contains all the necessary information a Google service requires.
Each concreteIClientServiceRequesthas a reference to a service for
important properties like API key, application name, base Uri, etc.
This service interface also contains serialization methods to serialize an object to stream and deserialize a
stream into an object.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe latest version of the Google.Apis package is 1.69.0, with other versions available including 1.68.0, 1.60.0, 1.59.0, 1.55.0, and 1.50.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eBaseClientService\u003c/code\u003e class is a foundation for client services, offering shared functionalities like serialization and GZip support, and is safe for concurrent use across multiple threads.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eBaseClientService\u003c/code\u003e incorporates an \u003ccode\u003eIHttpExecuteInterceptor\u003c/code\u003e for authentication, injecting the "Authorization" header into requests, and handles unsuccessful responses if the Authenticator implements \u003ccode\u003eIHttpUnsuccessfulResponseHandler\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eIClientService\u003c/code\u003e provides essential details for Google services, such as API key, application name, and base URI, and includes serialization and deserialization methods for objects and streams.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eBaseClientService.Initializer\u003c/code\u003e is used to initialize the client service.\u003c/p\u003e\n"]]],[],null,["# Namespace Google.Apis.Services (1.69.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.69.0 (latest)](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Services)\n- [1.68.0](/dotnet/docs/reference/Google.Apis/1.68.0/Google.Apis.Services)\n- [1.60.0](/dotnet/docs/reference/Google.Apis/1.60.0/Google.Apis.Services)\n- [1.59.0](/dotnet/docs/reference/Google.Apis/1.59.0/Google.Apis.Services)\n- [1.55.0](/dotnet/docs/reference/Google.Apis/1.55.0/Google.Apis.Services)\n- [1.50.0](/dotnet/docs/reference/Google.Apis/1.50.0/Google.Apis.Services) \n\nClasses\n-------\n\n### [BaseClientService](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Services.BaseClientService)\n\nA base class for a client service which provides common mechanism for all services, like\nserialization and GZip support. It should be safe to use a single service instance to make server requests\nconcurrently from multiple threads.\nThis class adds a special [IHttpExecuteInterceptor](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Http.IHttpExecuteInterceptor) to the\n[ConfigurableMessageHandler](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Http.ConfigurableMessageHandler) execute interceptor list, which uses the given\nAuthenticator. It calls to its applying authentication method, and injects the \"Authorization\" header in the\nrequest.\nIf the given Authenticator implements [IHttpUnsuccessfulResponseHandler](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Http.IHttpUnsuccessfulResponseHandler), this\nclass adds the Authenticator to the [ConfigurableMessageHandler](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Http.ConfigurableMessageHandler)'s unsuccessful\nresponse handler list.\n\n### [BaseClientService.Initializer](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Services.BaseClientService.Initializer)\n\nAn initializer class for the client service.\n\nInterfaces\n----------\n\n### [IClientService](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Services.IClientService)\n\nClient service contains all the necessary information a Google service requires.\nEach concrete [IClientServiceRequest](/dotnet/docs/reference/Google.Apis/latest/Google.Apis.Requests.IClientServiceRequest) has a reference to a service for\nimportant properties like API key, application name, base Uri, etc.\nThis service interface also contains serialization methods to serialize an object to stream and deserialize a\nstream into an object."]]