Bing Ads API V11例外:无效的客户端数据。有关更多信息,请查看SOAP故障详细信息

时间:2018-01-06 11:54:56

标签: php soap oauth bing-api bing-ads-api

我正在使用BingAds-PHP-SDK来获取经过身份验证的用户详细信息。

首先成功完成Authentication with OAuth并获得authentication tokenrefresh token 但是在GetUser()之后回复Exception时。

主要例外情况:

stdClass Object (
    [AdApiFaultDetail] => stdClass Object (
        [TrackingId] => bdfe1a94-b33f-xxxx-a542-1adc15148bae
        [Errors] => stdClass Object (
            [AdApiError] => stdClass Object (
                [Code] => 105
                [Detail] => 
                [ErrorCode] => InvalidCredentials
                [Message] => Authentication failed. Either supplied credentials are invalid or the account is inactive
           )
       )
   )
)

例外faultcodes:Server
例外faultstringInvalid client data. Check the SOAP fault details for more information

更详细的示例here

3 个答案:

答案 0 :(得分:1)

Microsoft帐户用户(对应于您的访问令牌)是否有权登录Bing Ads web UI?可以为没有Bing Ads权限的Microsoft帐户获取访问令牌(因此GetUser会因设计错误而失败,因此请检查以确保此用户可以管理至少一个Bing Ads帐户。

如果Microsoft帐户用户具有Bing Ads UI访问权限,那么我建议contacting support获取有关解决105错误的帮助。在这种情况下,如果您提供SOAP请求,响应和时间戳的支持,它也会有所帮助。

我希望这有帮助!

答案 1 :(得分:1)

我遇到了类似的错误。

我用过:

print $proxy->GetService()->__getLastRequest()."\n";
print $proxy->GetService()->__getLastResponse()."\n";

显示SOAP错误。

然后我看到错误是:用户不代表授权开发人员

这导致我check my AccountId and CustomerId是正确的。

答案 2 :(得分:0)

存在多个可能的问题,可能会导致向Bing API的SOAP API请求失败,并显示105个无效的凭据,其中一些问题可能与您传递给调用的OAuth信息无关(根据我的经验)。

要检查的几件事:

  1. 您具有有效的具有通用访问权限的客户端应用设置
  2. 您已使用在步骤1中创建的应用ID正确请求了访问令牌和刷新令牌,并在请求中使用了适当的范围
  3. 您用于验证OAuth令牌请求中的范围的用户与用于生成开发人员令牌的用户相同。
  4. 确保您的SOAP URL是正确的,并且您正确地进行身份验证并向正确的URL进行API调用。您可以使用Fiddler(通过SSL)进行测试,以确保SOAP信封和标头的格式正确并被发送到正确的端点URL。