Class SheetsServiceProvider
The Sheets service provider performs the authentication to Google and keeps track of the authentication tokens so that you do not need to authenticate each time. The Sheets service provider also includes general sheet properties, such as default sheet styles, that are used when creating a new sheet.
Namespace: UnityEditor.Localization.Plugins.Google
Syntax
public class SheetsServiceProvider : ScriptableObject, IGoogleSheetsService
Examples
Unity recommends to have a SheetsServiceProvider asset pre-configured for use, however this example does create a new one.
// The Sheets service provider performs the authentication and keeps track of the
// authentication tokens so that we do not need to authenticate each time.
// It is recommended to have a SheetsServiceProvider asset pre-configured for
// use however in this example we will create a new one.
var sheetServiceProvider = ScriptableObject.CreateInstance<SheetsServiceProvider>();
// OAuth is required when making changes. See the docs for info setting up OAuth credentials.
sheetServiceProvider.SetOAuthCredentials("some-client-id", "some-client-secret");
return sheetServiceProvider;
Properties
ApiKey
The API Key to use when using APIKey authentication.
Declaration
public string ApiKey { get; }
Property Value
| Type | Description |
|---|---|
| String |
ApplicationName
The name of the application that will be sent when connecting.
Declaration
public string ApplicationName { get; set; }
Property Value
| Type | Description |
|---|---|
| String |
Authentication
The authorization methodology to use. See https://developers.google.com/sheets/api/guides/authorizing
Declaration
public AuthenticationType Authentication { get; }
Property Value
| Type | Description |
|---|---|
| AuthenticationType |
ClientId
Client Id when using OAuth authentication.
See also SetOAuthCredentials(String)Declaration
public string ClientId { get; }
Property Value
| Type | Description |
|---|---|
| String |
ClientSecret
Client secret when using OAuth authentication.
See also SetOAuthCredentials(String)Declaration
public string ClientSecret { get; }
Property Value
| Type | Description |
|---|---|
| String |
DataStore
Used to make sure the access and refresh tokens persist. Uses a FileDataStore by default with "Library/Google/{name}" as the path.
Declaration
public IDataStore DataStore { get; set; }
Property Value
| Type | Description |
|---|---|
| IDataStore |
NewSheetProperties
Properties to use when creating a new Google Spreadsheet sheet.
Declaration
public NewSheetProperties NewSheetProperties { get; set; }
Property Value
| Type | Description |
|---|---|
| NewSheetProperties |
Service
The Google Sheet service that will be created using the Authorization API.
Declaration
public virtual SheetsService Service { get; }
Property Value
| Type | Description |
|---|---|
| SheetsService |
Implements
Methods
AuthoizeOAuth()
Call to preauthorize when using OAuth authorization. This will cause a browser to open a Google authorization page after which the token will be stored in IDataStore so that this does not need to be done each time. If this is not called then the first time Service is called it will be performed then.
Declaration
public void AuthoizeOAuth()
AuthorizeOAuth()
Call to preauthorize when using OAuth authorization. This will cause a browser to open a Google authorization page after which the token will be stored in IDataStore so that this does not need to be done each time. If this is not called then the first time Service is called it will be performed then.
Declaration
public UserCredential AuthorizeOAuth()
Returns
| Type | Description |
|---|---|
| UserCredential |
AuthorizeOAuthAsync(CancellationToken)
Call to preauthorize when using OAuth authorization. This will cause a browser to open a Google authorization page after which the token will be stored in IDataStore so that this does not need to be done each time. If this is not called then the first time Service is called it will be performed then.
Declaration
public Task<UserCredential> AuthorizeOAuthAsync(CancellationToken cancellationToken)
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | Token that can be used to cancel the task prematurely. |
Returns
| Type | Description |
|---|---|
| Task<UserCredential> | The authorization Task that can be monitored. |
SetApiKey(String)
Set the API Key. An API key can only be used for reading from a public Google Spreadsheet.
Declaration
public void SetApiKey(string apiKey)
Parameters
| Type | Name | Description |
|---|---|---|
| String | apiKey |
SetOAuthCredentials(String)
Enable OAuth 2.0 authentication and extract the ClientId and ClientSecret from the supplied json.
Declaration
public void SetOAuthCredentials(string credentialsJson)
Parameters
| Type | Name | Description |
|---|---|---|
| String | credentialsJson |
SetOAuthCredentials(String, String)
Enable OAuth 2.0 authentication with the provided client Id and client secret.
Declaration
public void SetOAuthCredentials(string clientId, string clientSecret)
Parameters
| Type | Name | Description |
|---|---|---|
| String | clientId | |
| String | clientSecret |
SetOAuthCrendtials(String)
Enable OAuth 2.0 authentication and extract the ClientId and ClientSecret from the supplied json.
Declaration
public void SetOAuthCrendtials(string credentialsJson)
Parameters
| Type | Name | Description |
|---|---|---|
| String | credentialsJson |
SetOAuthCrendtials(String, String)
Enable OAuth 2.0 authentication and extract the ClientId and ClientSecret from the supplied json.
Declaration
public void SetOAuthCrendtials(string clientId, string clientSecret)
Parameters
| Type | Name | Description |
|---|---|---|
| String | clientId | |
| String | clientSecret |