Hi team,
We are hitting a token access issue suddenly.
calling google ads hit this exception since UTC 2022-02-10.
Does anyone know how to resolve it?
[GetCustomers] ExternalServiceHelper.CallWithRetryAsync retry:0,
<GetCustomerResult>b__0,
Errors:["{\"Code\":\"UnknownError\",\"Property\":\"GetCustomers\",\"Message\":\"Grpc.Core.RpcException:
Status(StatusCode=\\\"Internal\\\", Detail=\\\"Error starting gRPC call.
TokenResponseException: Error:\\\"invalid_grant\\\", Description:\\\"Bad
Request\\\", Uri:\\\"\\\"\\\",
DebugException=\\\"Google.Apis.Auth.OAuth2.Responses.TokenResponseException:
Error:\\\"invalid_grant\\\", Description:\\\"Bad Request\\\",
Uri:\\\"\\\"\\n
at
Google.Apis.Auth.OAuth2.Responses.TokenResponse.FromHttpResponseAsync(HttpResponseMessage
response, IClock clock, ILogger logger)\\n
at
Google.Apis.Auth.OAuth2.Requests.TokenRequestExtenstions.ExecuteAsync(TokenRequest
request, HttpClient httpClient, String tokenServerUrl, CancellationToken
taskCancellationToken, IClock clock, ILogger logger)\\n
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.FetchTokenAsync(String
userId, TokenRequest request, CancellationToken taskCancellationToken)\\n
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.FetchTokenAsync(String
userId, TokenRequest request, CancellationToken taskCancellationToken)\\n
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.RefreshTokenAsync(String
userId, String refreshToken, CancellationToken taskCancellationToken)\\n
at
Google.Apis.Auth.OAuth2.UserCredential.RefreshTokenAsync(CancellationToken
taskCancellationToken)\\n
at Google.Apis.Auth.OAuth2.TokenRefreshManager.RefreshTokenAsync()\\n
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.GetAccessTokenForRequestAsync(CancellationToken
cancellationToken)\\n
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<GetAccessTokenForRequestAsync>g__LogException|10_0(Task
task)\\n
at
Google.Apis.Auth.OAuth2.UserCredential.GetAccessTokenWithHeadersForRequestAsync(String
authUri, CancellationToken cancellationToken)\\n
at
Grpc.Auth.GoogleAuthInterceptors.<>c__DisplayClass3_0.<<FromCredential>b__0>d.MoveNext()\\n
--- End of stack trace from previous location ---\\n
at
Grpc.Net.Client.Internal.GrpcProtocolHelpers.ReadCredentialMetadata(DefaultCallCredentialsConfigurator
configurator, GrpcChannel channel, HttpRequestMessage message, IMethod
method, CallCredentials credentials)\\n
at
Grpc.Net.Client.Internal.GrpcCall`2.ReadCredentials(HttpRequestMessage
request)\\n
at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage
request, Nullable`1 timeout)\\\")\\n
at
Google.Ads.Gax.Interceptors.UnaryRpcInterceptor.Intercept[T,TResponse](Task`1
task, Action`1 callback)\\n
at Grpc.Net.Client.Internal.GrpcCall`2.GetResponseHeadersCoreAsync()\\n
at
Google.Ads.Gax.Interceptors.UnaryRpcInterceptor.Intercept[T,TResponse](Task`1
task, Action`1 callback)\\n
at
Google.Api.Gax.Grpc.ApiCall.GrpcCallAdapter`2.<>c__DisplayClass4_0.<<CallAsync>g__WaitAndCallHandlers|0>d.MoveNext()\\n
--- End of stack trace from previous location ---\\n
at
Google.Api.Gax.Grpc.ApiCallRetryExtensions.<>c__DisplayClass0_0`2.<<WithRetry>b__0>d.MoveNext()\\n
--- End of stack trace from previous location ---\\n
at
Google.Api.Gax.Grpc.ResponseAsyncEnumerable`3.ResponseAsyncEnumerator.MoveNextAsync()\\n
at
Microsoft.Ads.Mca.Implementation.AdsSync.Helper.GoogleSyncHelper.<>c__DisplayClass6_0.<<GetCustomerResult>b__0>d.MoveNext()\\n
--- End of stack trace from previous location ---\\n
at
Microsoft.Ads.Mca.Implementation.AdsSync.Helper.GoogleSyncHelper.<>c__DisplayClass6_0.<<GetCustomerResult>b__0>d.MoveNext()\\n
--- End of stack trace from previous location ---\\n
at
Microsoft.Ads.Mca.Common.Client.Common.ExternalServiceHelper.CallWithRetryAsync[T,V](Func`1
func, IExternalServiceExceptionHandler exceptionHandler, ILogShared logger,
String property, ValueTuple`2 retryPolicy, V argumentsTuple)\"}"], Raw
Exception Grpc.Core.RpcException : Grpc.Core.RpcException:
Status(StatusCode="Internal", Detail="Error starting gRPC call.
TokenResponseException: Error:"invalid_grant", Description:"Bad Request",
Uri:""",
DebugException="Google.Apis.Auth.OAuth2.Responses.TokenResponseException:
Error:"invalid_grant", Description:"Bad Request", Uri:""
at
Google.Apis.Auth.OAuth2.Responses.TokenResponse.FromHttpResponseAsync(HttpResponseMessage
response, IClock clock, ILogger logger)
at
Google.Apis.Auth.OAuth2.Requests.TokenRequestExtenstions.ExecuteAsync(TokenRequest
request, HttpClient httpClient, String tokenServerUrl, CancellationToken
taskCancellationToken, IClock clock, ILogger logger)
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.FetchTokenAsync(String
userId, TokenRequest request, CancellationToken taskCancellationToken)
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.FetchTokenAsync(String
userId, TokenRequest request, CancellationToken taskCancellationToken)
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.RefreshTokenAsync(String
userId, String refreshToken, CancellationToken taskCancellationToken)
at
Google.Apis.Auth.OAuth2.UserCredential.RefreshTokenAsync(CancellationToken
taskCancellationToken)
at Google.Apis.Auth.OAuth2.TokenRefreshManager.RefreshTokenAsync()
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.GetAccessTokenForRequestAsync(CancellationToken
cancellationToken)
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<GetAccessTokenForRequestAsync>g__LogException|10_0(Task
task)
at
Google.Apis.Auth.OAuth2.UserCredential.GetAccessTokenWithHeadersForRequestAsync(String
authUri, CancellationToken cancellationToken)
at
Grpc.Auth.GoogleAuthInterceptors.<>c__DisplayClass3_0.<<FromCredential>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at
Grpc.Net.Client.Internal.GrpcProtocolHelpers.ReadCredentialMetadata(DefaultCallCredentialsConfigurator
configurator, GrpcChannel channel, HttpRequestMessage message, IMethod
method, CallCredentials credentials)
at
Grpc.Net.Client.Internal.GrpcCall`2.ReadCredentials(HttpRequestMessage
request)
at Grpc.Net.Client.Internal.GrpcCall`2.RunCall(HttpRequestMessage
request, Nullable`1 timeout)")
at
Google.Ads.Gax.Interceptors.UnaryRpcInterceptor.Intercept[T,TResponse](Task`1
task, Action`1 callback)
at Grpc.Net.Client.Internal.GrpcCall`2.GetResponseHeadersCoreAsync()
at
Google.Ads.Gax.Interceptors.UnaryRpcInterceptor.Intercept[T,TResponse](Task`1
task, Action`1 callback)
at
Google.Api.Gax.Grpc.ApiCall.GrpcCallAdapter`2.<>c__DisplayClass4_0.<<CallAsync>g__WaitAndCallHandlers|0>d.MoveNext()
--- End of stack trace from previous location ---
at
Google.Api.Gax.Grpc.ApiCallRetryExtensions.<>c__DisplayClass0_0`2.<<WithRetry>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at
Google.Api.Gax.Grpc.ResponseAsyncEnumerable`3.ResponseAsyncEnumerator.MoveNextAsync()
at
Microsoft.Ads.Mca.Implementation.AdsSync.Helper.GoogleSyncHelper.<>c__DisplayClass6_0.<<GetCustomerResult>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at
Microsoft.Ads.Mca.Implementation.AdsSync.Helper.GoogleSyncHelper.<>c__DisplayClass6_0.<<GetCustomerResult>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at
Microsoft.Ads.Mca.Common.Client.Common.ExternalServiceHelper.CallWithRetryAsync[T,V](Func`1
func, IExternalServiceExceptionHandler exceptionHandler, ILogShared logger,
String property, ValueTuple`2 retryPolicy, V argumentsTuple)
Thanks,
Guofu
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog:
https://googleadsdeveloper.blogspot.com/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
You received this message because you are subscribed to the Google
Groups "AdWords API and Google Ads API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
---
You received this message because you are subscribed to the Google Groups
"Google Ads API and AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/adwords-api/79ede4b7-de7b-4186-a482-143244b48eb3n%40googlegroups.com.