OfflineConversionError.INVALID_CONVERSION_TYPE but the conversion name is there

1,266 views
Skip to first unread message

Luca Fiaschi

unread,
May 30, 2014, 6:19:52 AM5/30/14
to adwor...@googlegroups.com
Hi All I am getting a very similar error to this post:

reading that forum seems that the error was internally fixed by Google at the beginning of the month however I still get the following problem:

I am uploading the conversion using a client created using the top level country MCC of my company:
The conversion labels are were correctly uploaded

(UploadConversion){
    id = 18258763
    name = "attributed conversion"
    status = "ENABLED"
    category = "PURCHASE"
    stats = 
       (ConversionTrackerStats){
          numConversionEvents = 0
          conversionValue = 
             (Money){
                ComparableValue.Type = "Money"
                microAmount = 0
             }
          numConvertedClicks = 0
       }
    viewthroughLookbackWindow = 30
    isProductAdsChargeable = False
    productAdsChargeableConversionWindow = 30
    ctcLookbackWindow = 30
    countingType = "MANY_PER_CLICK"
    defaultRevenueValue = 1.0
    alwaysUseDefaultRevenueValue = False
    ConversionTracker.Type = "UploadConversion"
  }, (UploadConversion){
    id = 18258883
    name = "attributed revenue"
    status = "ENABLED"
    category = "PURCHASE"
    stats = 
       (ConversionTrackerStats){
          numConversionEvents = 0
          conversionValue = 
             (Money){
                ComparableValue.Type = "Money"
                microAmount = 0
             }
          numConvertedClicks = 0
       }
    viewthroughLookbackWindow = 30
    isProductAdsChargeable = False
    productAdsChargeableConversionWindow = 30
    ctcLookbackWindow = 30
    countingType = "MANY_PER_CLICK"
    defaultRevenueValue = 1.0
    alwaysUseDefaultRevenueValue = False
    ConversionTracker.Type = "UploadConversion"
  }]



However I still get the following errors:

 {'googleClickId': u'CLbJ6ueQir0CFe9U4godVVgAGA', 'conversionValue': 0.0037593984962406, 'conversionTime': '20140526 163528 +0800', 'conversionName': u'attributed conversion'} 
has failed with error (OfflineConversionError){
   fieldPath = "operations[984].operand"
   trigger = None
   errorString = "OfflineConversionError.INVALID_CONVERSION_TYPE"
   ApiError.Type = "OfflineConversionError"
   reason = "INVALID_CONVERSION_TYPE"
 }


How is this possible?

Thanks



Anash P. Oommen (AdWords API Team)

unread,
May 30, 2014, 1:11:51 PM5/30/14
to adwor...@googlegroups.com
Hi Luca,

There are way too many failed requests with that click id in the logs, could you give me a specific request id that fails? The requestId is a unique number that is returned as part of the SOAP response headers.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Luca Fiaschi

unread,
May 30, 2014, 2:02:38 PM5/30/14
to adwor...@googlegroups.com
Hi Anash,

sorry how do I retrieve this id exactly?

Can you point me to the documentation where I can get the SOAP response header; I am using the Python API.

Thanks
Luca

Luca Fiaschi

unread,
Jun 2, 2014, 3:35:55 AM6/2/14
to adwor...@googlegroups.com
Hi Anash,
this should be the information you requested:

message:
<?xml version="1.0" encoding="UTF-8"?>
   <SOAP-ENV:Header>
      <tns:RequestHeader>
         <tns:clientCustomerId>4977970950</tns:clientCustomerId>
         <tns:developerToken>***********************</tns:developerToken>
         <tns:userAgent>********* (AwApi-Python, googleads/1.0.5, Python/2.7)</tns:userAgent>
         <tns:validateOnly>true</tns:validateOnly>
         <tns:partialFailure>true</tns:partialFailure>
      </tns:RequestHeader>
   </SOAP-ENV:Header>
   <ns0:Body>
      <ns1:mutate>
         <ns1:operations>
            <ns1:operator>ADD</ns1:operator>
            <ns1:operand>
               <ns1:googleClickId>CPS-hOmskr0CFSVU4godhA0AIw</ns1:googleClickId>
               <ns1:conversionName>new customer</ns1:conversionName>
               <ns1:conversionTime>20140525 174340 +0800</ns1:conversionTime>
               <ns1:conversionValue>0.0642035130224</ns1:conversionValue>
            </ns1:operand>
         </ns1:operations>
      </ns1:mutate>
   </ns0:Body>
</SOAP-ENV:Envelope>

DEBUG:suds.client:headers = {'SOAPAction': '""', 'Content-Type': 'text/xml; charset=utf-8', 'Authorization': '*****'}


DEBUG:suds.client:HTTP failed - 500 - Internal Server Error:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><ResponseHeader xmlns="https://adwords.google.com/api/adwords/cm/v201402"><requestId>0004fad54559d9a80ae5cac828006027</requestId><serviceName>OfflineConversionFeedService</serviceName><methodName>mutate</methodName><operations>0</operations><responseTime>337</responseTime></ResponseHeader></soap:Header><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>[OfflineConversionError.INVALID_CONVERSION_TYPE @ operations[0].operand]</faultstring><detail><ApiExceptionFault xmlns="https://adwords.google.com/api/adwords/cm/v201402"><message>[OfflineConversionError.INVALID_CONVERSION_TYPE @ operations[0].operand]</message><ApplicationException.Type>ApiException</ApplicationException.Type><errors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="OfflineConversionError"><fieldPath>operations[0].operand</fieldPath><trigger></trigger><errorString>OfflineConversionError.INVALID_CONVERSION_TYPE</errorString><ApiError.Type>OfflineConversionError</ApiError.Type><reason>INVALID_CONVERSION_TYPE</reason></errors></ApiExceptionFault></detail></soap:Fault></soap:Body></soap:Envelope>
ERROR:suds.client:<suds.sax.document.Document instance at 0x4463b00>

On Friday, May 30, 2014 7:11:51 PM UTC+2, Anash P. Oommen (AdWords API Team) wrote:

Anash P. Oommen (AdWords API Team)

unread,
Jun 2, 2014, 1:38:52 PM6/2/14
to adwor...@googlegroups.com
Hi Luca,

Thanks for providing the debug details. I've asked the API team to investigate this further. I'll update this thread once I hear from them.

Cheers,
Anash

2546...@qq.com

unread,
Jun 3, 2014, 1:53:01 AM6/3/14
to adwor...@googlegroups.com
Hi Anash

I am getting a similar error with him.Looking forward to your reply.Thank you!

mob...@glomedia.eu

unread,
Jun 3, 2014, 4:11:48 AM6/3/14
to adwor...@googlegroups.com
I'm running in the exact same problems :/
I can make the conversion labels from the api and see them show up in the interface as well.
Also i can list the labels from the api, they show up.
But as soon as i want to upload data  to it , it returns the OfflineConversionError.INVALID_CONVERSION_TYPE.

I read somewhere that it might take up to 6 hours before the new labels have been synced.
I've waited for over 24 hours but still get the same result.

Gerard.

Josh Radcliff (AdWords API Team)

unread,
Jun 3, 2014, 5:41:53 PM6/3/14
to adwor...@googlegroups.com
Hi,

Gerard: It looks like you do not have the conversion account set to the MCC for the AdWords accounts under the MCC. See the following Help Center article for details:


(Note: I marked your other post as a duplicate of this post so we can consolidate all of the Q&A here.)

Luca: In your request you are specifying the MCC account in the clientCustomerId SOAP header. Please modify your request so that you pass the click's AdWords account instead. You may want to check out the Help Center article as well to make sure you have the conversion account set up properly.

Cheers,
Josh, AdWords API Team

Luca Fiaschi

unread,
Jun 3, 2014, 5:49:04 PM6/3/14
to adwordsapia...@google.com, adwor...@googlegroups.com
Hi Josh, 
Unfortunately our customer did not store the information regarding the click Adwords account. Is it possible to query this information to Adwords anyhow?
Thanks

--
This mail was written on a iPhone keyboard, I apologize if the message is terse and for any spelling mistake  
--
--
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and Google+:
https://googleadsdeveloper.blogspot.com/
https://plus.google.com/+GoogleAdsDevelopers/posts
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
 
You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to adwor...@googlegroups.com
To unsubscribe from this group, send email to
adwords-api...@googlegroups.com
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 a topic in the Google Groups "AdWords API Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/adwords-api/wYMkzn1EWp8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to adwords-api...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Josh Radcliff (AdWords API Team)

unread,
Jun 3, 2014, 6:08:21 PM6/3/14
to adwor...@googlegroups.com, adwordsapia...@google.com
Hi Luca,

The only way I'm aware of is to use CLICK_PERFORMANCE_REPORT, although you can only run that report for one day and one account at a time. If all you have is the MCC, the click ID, and a rough estimate of the date on which the click occurred, you could do the following:

- Let clickAccountMap = new Map
- Use an ACCOUNT_PERFORMANCE_REPORT or ManagedCustomerService.get to get the account IDs of each of the MCC's child accounts
- For each child account:
   -- For each date in the date range of interest:
      -- Run a CLICK_PERFORMANCE_REPORT for the account and date and add the click and account to clickAccountMap
- Use clickAccountMap to construct your OfflineConversionFeedService calls (separate invocations for each account)

mob...@glomedia.eu

unread,
Jun 4, 2014, 6:11:18 AM6/4/14
to adwor...@googlegroups.com
Thanks for the reply :)
I just switched all the account conversion to 'this MCC account'
Still get the same error, but i guess it needs some time to propagate ?

As soon as there are any changes, I'll update the post.

mob...@glomedia.eu

unread,
Jun 4, 2014, 10:52:22 AM6/4/14
to adwor...@googlegroups.com
Unfortunately, the problem persists:

Message: [OfflineConversionError.INVALID_CONVERSION_TYPE @ operations[0].operand]
Errors:
Error [1]:
field_path: operations[0].operand
trigger:
error_string: OfflineConversionError.INVALID_CONVERSION_TYPE
api_error_type: OfflineConversionError
reason: INVALID_CONVERSION_TYPE
xsi_type: OfflineConversionError

So what should I do next?

Josh Radcliff (AdWords API Team)

unread,
Jun 4, 2014, 11:33:06 AM6/4/14
to adwor...@googlegroups.com
In the clientCustomerId SOAP header do you have the MCC account or the AdWords account? You may get INVALID_CONVERSION_TYPE if you specify the MCC account, since the click actually belongs to the AdWords account.

Thanks,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 4, 2014, 3:43:12 PM6/4/14
to adwor...@googlegroups.com
When I set NO credentials (just the developer token):
================================================
Message: [OfflineConversionError.INVALID_CONVERSION_TYPE @ operations[0].operand]
Errors:
  Error [1]:
    field_path: operations[0].operand
    trigger:
    error_string: OfflineConversionError.INVALID_CONVERSION_TYPE
    api_error_type: OfflineConversionError
    reason: INVALID_CONVERSION_TYPE
    xsi_type: OfflineConversionError

When I set the incorrect clientCustomerId credentials:
================================================
Message: [OfflineConversionError.UNAUTHORIZED_USER @ operations[0].operand]
Errors:
  Error [1]:
    field_path: operations[0].operand
    trigger:
    error_string: OfflineConversionError.UNAUTHORIZED_USER
    api_error_type: OfflineConversionError
    reason: UNAUTHORIZED_USER
    xsi_type: OfflineConversionError

When I set the correct clientCustomerId credentials:
==============================================
Message: [OfflineConversionError.INVALID_CONVERSION_TYPE @ operations[0].operand]
Errors:
  Error [1]:
    field_path: operations[0].operand
    trigger:
    error_string: OfflineConversionError.INVALID_CONVERSION_TYPE
    api_error_type: OfflineConversionError
    reason: INVALID_CONVERSION_TYPE
    xsi_type: OfflineConversionError

I don't know where I can find my MCC account_id, so I haven't tested it.

Thanks!


Josh Radcliff (AdWords API Team)

unread,
Jun 4, 2014, 3:47:30 PM6/4/14
to adwor...@googlegroups.com
Sorry if I wasn't clear, but my point was you should have the AdWords account ID in the header, not the MCC account ID. Please give that a try and update this thread if you still have problems.

One other note: make sure that the conversion you are specifying by name in your request is an offline conversion (Source = Import in the UI).

Cheers,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 4, 2014, 4:23:00 PM6/4/14
to adwor...@googlegroups.com
I am setting the correct clientCustomerId and the Conversion is set to import.

Greetings, Gerard

Josh Radcliff (AdWords API Team)

unread,
Jun 4, 2014, 4:29:49 PM6/4/14
to adwor...@googlegroups.com
Hi Gerard,

Could you send the following only to me by clicking Reply to Author on this message?

1. The customer ID of the AdWords account
2. The customer ID of the MCC account or AdWords account where you created the Conversion (if different from #1)
3. SOAP requests and responses from your latest attempt

Cheers,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 5, 2014, 10:58:43 AM6/5/14
to adwor...@googlegroups.com
Done!

Josh Radcliff (AdWords API Team)

unread,
Jun 5, 2014, 5:04:45 PM6/5/14
to adwor...@googlegroups.com
Hi Gerard,

I did some digging and discovered that in order for you to upload an offline conversion to a conversion type defined in your MCC, the MCC had to have been set as the conversion account as of the time of the click. In your particular case, I believe you changed the conversion account to the MCC recently, hence the INVALID_CONVERSION_TYPE error for clicks that occurred prior to that change. You will only be able to upload those clicks to conversion types defined on the AdWords account itself.

I'm still trying to determine if this is a change in behavior. I'll post back here as soon as I have more info.

Cheers,
Josh, AdWords API Team
Message has been deleted

mob...@glomedia.eu

unread,
Jun 6, 2014, 3:52:00 AM6/6/14
to adwor...@googlegroups.com
Hi Josh, 

when I try and convert a more recent one, I get: 
{"s2s_tracker"=>"CK6FtOblq74CFe9r7AodQE8AJw", "signed_at"=>"2014-06-05 00:01:05 UTC"}
Message: [OfflineConversionError.TOO_RECENT_CLICK @ operations[0].operand]
Errors:
Error [1]:
field_path: operations[0].operand
trigger:
error_string: OfflineConversionError.TOO_RECENT_CLICK
api_error_type: OfflineConversionError
reason: TOO_RECENT_CLICK
xsi_type: OfflineConversionError

Greetings, Gerard

mob...@glomedia.eu

unread,
Jun 6, 2014, 3:54:03 AM6/6/14
to adwor...@googlegroups.com
So, according to the docs I have to wait until tomorrow to see if I can convert this click?
Could you confirm the clickid was created on the MCC account?

Greetings, Gerard

Josh Radcliff (AdWords API Team)

unread,
Jun 6, 2014, 1:42:33 PM6/6/14
to adwor...@googlegroups.com
Hi Gerard,

You can use the CLICK_PERFORMANCE_REPORT to determine the associated account for a click. The associated account won't ever be an MCC, however, since ads only serve from the AdWords client accounts, not the MCC.

Regarding the error, the docs are correct -- you simply need to wait until ~24 hours after the click before uploading the conversion.

Regards,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 7, 2014, 4:06:11 AM6/7/14
to adwor...@googlegroups.com
Hi Josh,

so about 90% is now converting correctly!
The last 10% is probably due to me try to convert using the wrong account (OfflineConversionError.UNAUTHORIZED_USER), so I'll be looking into the CLICK_PERFORMANCE_REPORT.
Thank you very much for all your help so far!

By the way, how many time does it take before I can see the conversions in MCC?

Greetings,
Gerard

Josh Radcliff (AdWords API Team)

unread,
Jun 9, 2014, 12:53:26 PM6/9/14
to adwor...@googlegroups.com
Hi Gerard,

Glad to hear the upload's working for you now! Regarding your follow up question, conversions will be subject to the data freshness guidelines described here:


Cheers,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 11, 2014, 5:09:35 AM6/11/14
to adwor...@googlegroups.com
Hi Josh,

I understand, but as some contracts take up to a week to convert, i'll be monitoring it closely.

The last thing that is strange is the following: There are a few conversions that I am unable to convert, because no matter which customer_id I use, I always get UNAUTHORIZED USER. For Example:

CM2Jsveb774CFajjwgod44IAIw
CPrmxI_e774CFW3HtAodvn8AhQ
CLmfrNfm774CFasKwwod9QQAlw

Could you check and see what is up with these?

Greetings,
Gerard

Josh Radcliff (AdWords API Team)

unread,
Jun 11, 2014, 9:52:06 AM6/11/14
to adwor...@googlegroups.com
Hi Gerard,

The UNAUTHORIZED_USER error indicates:

UNAUTHORIZED_USER
This customer is trying to upload conversions for a different customer that it does not manage.

This suggests that the credentials you are using for the request are for a user who does not have access to the customer from which the clicks originated. I recommend confirming which account those clicks belong to, making sure that that account is in the clientCustomerId header, and confirming that the OAuth credentials you are using are for a user with access to that account.

Best regards,
Josh, AdWords API Team

mob...@glomedia.eu

unread,
Jun 13, 2014, 4:47:04 AM6/13/14
to adwor...@googlegroups.com
Hi Josh,

I understand, but as I've said before: for these specific ClickIds I've tried ALL the clientCustomerId that are in this MCC account.
So apparently they either aren't connected to any of my accounts or something is wrong.

Greetings, Gerard

Luca Fiaschi

unread,
Jul 3, 2014, 4:00:42 AM7/3/14
to adwor...@googlegroups.com
Hi Josh,
I am having the same issue. 
I am trying to upload the conversions looping over all my clientCustumerId looking for one account that matches the one of the clickID but I always get the response error:

UNAUTHORIZED_USER

This is puzzling since I am quite sure to have the correct access rights because I can modify the campaigns etc... of those client IDs.

Any idea, what is going wrong here?

This are one of the failing request headers:



<?xml version="1.0" encoding="UTF-8"?>
   <SOAP-ENV:Header>
      <tns:RequestHeader>
         <tns:clientCustomerId>7311546479</tns:clientCustomerId>
         <tns:developerToken>******************</tns:developerToken>
         <tns:userAgent>***************** (AwApi-Python, googleads/1.0.3, Python/2.7)</tns:userAgent>
         <tns:validateOnly>false</tns:validateOnly>
         <tns:partialFailure>true</tns:partialFailure>
      </tns:RequestHeader>
   </SOAP-ENV:Header>
   <ns0:Body>
      <ns1:mutate>
         <ns1:operations>
            <ns1:operator>ADD</ns1:operator>
            <ns1:operand>
               <ns1:googleClickId>CPaslqvRpb4CFVYWjgodMXsArA</ns1:googleClickId>
               <ns1:conversionName>attributed revenue</ns1:conversionName>
               <ns1:conversionTime>20140526 114012 +0800</ns1:conversionTime>
               <ns1:conversionValue>0.113995271868</ns1:conversionValue>
            </ns1:operand>
         </ns1:operations>
      </ns1:mutate>
   </ns0:Body>
</SOAP-ENV:Envelope>


Here my request suds 

Josh Radcliff (AdWords API Team)

unread,
Jul 7, 2014, 3:13:50 PM7/7/14
to adwor...@googlegroups.com
Hi,

When you successfully modify the campaigns, etc. of those customers are you using the exact same credentials (OAuth2 access token) you are using in the conversion upload call?

Thanks,
Josh, AdWords API Team

Luca Fiaschi

unread,
Jul 7, 2014, 3:51:23 PM7/7/14
to adwordsapia...@google.com, adwor...@googlegroups.com
Yes


--
This mail was written on a iPhone keyboard, I apologize if the message is terse and for any spelling mistake  
Reply all
Reply to author
Forward
0 new messages