The detailed request log is below. I do not understand what is wrong with
request, nor do I understand why I am able to authorise for API calls yet
fail with an auth issue on this particular call.
Ideas anyone?
GoogleAds.DetailedRequestLogs Information: 1 : [2024-10-21 05:46:42Z] -
---------------BEGIN API CALL---------------
Request
-------
Method Name:
/google.ads.googleads.v18.services.KeywordPlanIdeaService/GenerateKeywordIdeas
Host:
Headers: {
"x-goog-api-client": "gl-dotnet/4.0.30319 gapic/21.1.0 gax/4.8.0
grpc/2.60.0 gccl/4.0.2 pb/3.25.0",
"developer-token": "REDACTED",
"login-customer-id": "7212153394",
"x-goog-request-params": "customer_id=8109270380"
}
{ "customerId": "8109270380", "keywordSeed": { "keywords": [ "wheel
loaders", "small wheel loaders" ] }, "keywordPlanNetwork": "GOOGLE_SEARCH",
"language": "languageConstants/1000", "geoTargetConstants": [
"geoTargetConstants/20035" ] }
Response
--------
Headers: {}
Fault: Grpc.Core.RpcException: Status(StatusCode="Unavailable",
Detail="Getting metadata from plugin failed with error: Exception occurred
in metadata credentials plugin.
Google.Apis.Auth.OAuth2.Responses.TokenResponseException:
Error:"invalid_grant", Description:"Bad Request", Uri:""
at
Google.Apis.Auth.OAuth2.Responses.TokenResponse.<FromHttpResponseAsync>d__51.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.Requests.RequestExtensions.<PostFormAsync>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<RefreshTokenAsync>d__40.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.UserCredential.<RefreshTokenAsync>d__32.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<RefreshTokenAsync>d__12.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<GetAccessTokenForRequestAsync>d__10.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Google.Apis.Auth.OAuth2.UserCredential.<GetAccessTokenWithHeadersForRequestAsync>d__31.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Grpc.Auth.GoogleAuthInterceptors.<>c__DisplayClass3_0.<<FromCredential>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)
at
Grpc.Core.Internal.NativeMetadataCredentialsPlugin.<GetMetadataAsync>d__12.MoveNext()",
DebugException="Grpc.Core.Internal.CoreErrorDetailException:
{"created":"@1729489599.069000000","description":"Getting metadata from
plugin failed with error: Exception occurred in metadata credentials
plugin. Google.Apis.Auth.OAuth2.Responses.TokenResponseException:
Error:"invalid_grant", Description:"Bad Request", Uri:""\r\n at
Google.Apis.Auth.OAuth2.Responses.TokenResponse.<FromHttpResponseAsync>d__51.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Requests.RequestExtensions.<PostFormAsync>d__3.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<RefreshTokenAsync>d__40.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.UserCredential.<RefreshTokenAsync>d__32.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<RefreshTokenAsync>d__12.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<GetAccessTokenForRequestAsync>d__10.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.UserCredential.<GetAccessTokenWithHeadersForRequestAsync>d__31.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Grpc.Auth.GoogleAuthInterceptors.<>c__DisplayClass3_0.<<FromCredential>b__0>d.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Grpc.Core.Internal.NativeMetadataCredentialsPlugin.<GetMetadataAsync>d__12.MoveNext()","file":"..\..\..\src\core\lib\security\credentials\plugin\plugin_credentials.cc","file_line":91,"grpc_status":14}")
---> Grpc.Core.Internal.CoreErrorDetailException:
{"created":"@1729489599.069000000","description":"Getting metadata from
plugin failed with error: Exception occurred in metadata credentials
plugin. Google.Apis.Auth.OAuth2.Responses.TokenResponseException:
Error:"invalid_grant", Description:"Bad Request", Uri:""\r\n at
Google.Apis.Auth.OAuth2.Responses.TokenResponse.<FromHttpResponseAsync>d__51.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Requests.RequestExtensions.<PostFormAsync>d__3.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<FetchTokenAsync>d__44.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.Flows.AuthorizationCodeFlow.<RefreshTokenAsync>d__40.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.UserCredential.<RefreshTokenAsync>d__32.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<RefreshTokenAsync>d__12.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.TokenRefreshManager.<GetAccessTokenForRequestAsync>d__10.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Google.Apis.Auth.OAuth2.UserCredential.<GetAccessTokenWithHeadersForRequestAsync>d__31.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Grpc.Auth.GoogleAuthInterceptors.<>c__DisplayClass3_0.<<FromCredential>b__0>d.MoveNext()\r\n---
End of stack trace from previous location where exception was thrown
---\r\n at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
task)\r\n at
Grpc.Core.Internal.NativeMetadataCredentialsPlugin.<GetMetadataAsync>d__12.MoveNext()","file":"..\..\..\src\core\lib\security\credentials\plugin\plugin_credentials.cc","file_line":91,"grpc_status":14}
--- End of inner exception stack trace ---
----------------END API CALL----------------
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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/e501fe87-da30-456c-8966-fb8b0309431bn%40googlegroups.com.