Receiving BiddingError.BID_TOO_MANY_FRACTIONAL_DIGITS for non-fractional digits (Ruby API)?

1,118 views
Skip to first unread message

ojak

unread,
Jun 29, 2010, 6:33:56 PM6/29/10
to AdWords API Forum
I'm receiving "BiddingError.BID_TOO_MANY_FRACTIONAL_DIGITS" for a bid
microAmount that is not fractional (SOAP log confirms that the number
is indeed not fractional):

<n2:operations xsi:type="n2:AdGroupCriterionOperation">
<n2:operator>ADD</n2:operator>
<n2:operand xsi:type="n2:BiddableAdGroupCriterion">
<n2:adGroupId>xxx</n2:adGroupId>
<n2:criterion xsi:type="n2:Keyword">
<n2:text>My Keyword</n2:text>
<n2:matchType>BROAD</n2:matchType>
</n2:criterion>
<n2:bids xsi:type="n2:ManualCPCAdGroupCriterionBids">
<n2:maxCpc>
<n2:amount xsi:type="n2:Money">
<n2:microAmount>86666</n2:microAmount>
</n2:amount>
</n2:maxCpc>
</n2:bids>
</n2:operand>
</n2:operations>

Any ideas (Ruby API)?
Message has been deleted

ojak

unread,
Jun 29, 2010, 8:51:11 PM6/29/10
to AdWords API Forum
Found a similar looking error from the PHP API, but it doesn't seem to
explain what's going on in the Ruby API:

http://groups.google.com/group/adwords-api/browse_thread/thread/662d15363ab9045f/5af75bc27495ddda?lnk=gst&q=BiddingError#5af75bc27495ddda

The PHP API problem states that it's a Float precision problem.
However, in the Ruby issue in the above post, the microAmount is
already being cast to an Integer (using Float#to_i). I even tried
calling Float#floor before passing the data in, but still doesn't
work.

So, I'm not quite sure what's going on. Any takers?

ojak

unread,
Jun 29, 2010, 10:27:04 PM6/29/10
to AdWords API Forum
This might be an API limitation, maybe?

It looks like all USD values need to be rounded to the nearest 10,000
micros, and then the API accepts the bids (i.e. minimum granularity of
$0.01 USD). I'm assuming that the error *might* not refer to a
"fractional" micro, it might means a fractional denomination of the
minimum currency denomination (e.g. you can only bet $0.08 or $0.09,
but not $0.086).

Can anyone from API team confirm whether this is an API limitation
rather than a Ruby implementation issue? If so, it might be worth
updating the documentation to reflect this...

Thanks.


On Jun 29, 5:51 pm, ojak wrote:
> Found a similar looking error from the PHP API, but it doesn't seem to
> explain what's going on in the Ruby API:
>
> http://groups.google.com/group/adwords-api/browse_thread/thread/662d1...

AdWords API Advisor

unread,
Jul 1, 2010, 3:44:44 PM7/1/10
to AdWords API Forum
Hi,

Your last analysis is correct, this error is because you are
specifying fractions of a penny, which isn't allowed.

Best,
- Eric Koleda, AdWords API Team
Message has been deleted

ojak

unread,
Jul 1, 2010, 5:03:22 PM7/1/10
to AdWords API Forum
Thanks for the response.

It'd probably be a good idea to clarify this (intended) behavior in
the API docs, as the 'type Money' docs are unclear regarding the
specifics of this behavior. Also, the error type is a bit confusing,
as the failure type may imply that the error is a data type problem
rather than a currency denomination issue / API bidding limitation.

Thanks!


On Jul 1, 12:44 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:

AdWords API Advisor

unread,
Jul 2, 2010, 5:44:57 PM7/2/10
to AdWords API Forum
Hi,

Thanks for the suggestion, I'll pass it along to our documentation
team.

Best,
- Eric
Reply all
Reply to author
Forward
0 new messages