unable to update campaign status in sandbox account

27 views
Skip to first unread message

Kevin

unread,
Oct 7, 2009, 8:50:48 PM10/7/09
to AdWords API Forum
Hi,

In some circumstances, the campaign status I got from
CampaignServiceInterface.mutate() doesn't match with the campaign
status I got from CampaignServiceInterface.get(). This has happened
about 2/10 times when I'm trying to unpause a campaign that is
currently SERVING.
Message has been deleted

AdWords API Advisor

unread,
Oct 8, 2009, 9:28:08 AM10/8/09
to AdWords API Forum
Hi Kevin,

Can you provide me a more concrete example? What were the different
statuses observed? Do you have the request IDs or SOAP XML logs for
the respective requests?

Best,
- Eric Koleda, AdWords API Team

Kevin

unread,
Oct 8, 2009, 2:17:10 PM10/8/09
to AdWords API Forum
Hi Eric,

Here is the xml log for making request to adwords to update the
campaign (id: 57569) status to ACTIVE:
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><soapenv:Header><ns1:RequestHeader
soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
soapenv:mustUnderstand="0" xmlns:ns1="https://adwords.google.com/api/
adwords/cm/v200906"><ns1:applicationToken>sandbox-app-token</
ns1:applicationToken><ns1:authToken xmlns:ns1="https://
adwords.google.com/api/adwords/cm/v200906">******</
ns1:authToken><ns1:clientEmail>client_1+ri...@gmail.com</
ns1:clientEmail><ns1:developerToken>rip.mat...@gmail.com++USD</
ns1:developerToken><ns1:userAgent>ac...@Rip.MatchCraft</ns1:userAgent></
ns1:RequestHeader></soapenv:Header><soapenv:Body><mutate
xmlns="https://adwords.google.com/api/adwords/cm/
v200906"><operations><operator>SET</operator><operand><id>57569</
id><name>IP_10255_gyme test location - Los Angeles</
name><status>ACTIVE</status><endDate>20101013</
endDate><budget><period>MONTHLY</
period><amount><microAmount>100000000</microAmount></
amount><deliveryMethod>STANDARD</deliveryMethod></
budget><biddingStrategy xsi:type="ns2:ManualCPC" xmlns:ns2="https://
adwords.google.com/api/adwords/cm/v200906"/></operand></operations></
mutate></soapenv:Body></soapenv:Envelope>

and its response which shows campaign (id: 57569) status is ACTIVE,
which is correct:
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/
envelope/"><soap:Header><ResponseHeader xmlns="https://
adwords.google.com/api/adwords/cm/
v200906"><requestId>dd6f8a4264c549b757854251d5c5e1c4</
requestId><operations>1</operations><responseTime>550</
responseTime><units>1</units></ResponseHeader></
soap:Header><soap:Body><mutateResponse xmlns="https://
adwords.google.com/api/adwords/cm/
v200906"><rval><ListReturnValue.Type>CampaignReturnValue</
ListReturnValue.Type><value><id>57569</id><name>IP_10255_gyme test
location - Los Angeles</name><status>ACTIVE</
status><servingStatus>SERVING</servingStatus><startDate>20091008</
startDate><endDate>20101013</endDate><budget><period>MONTHLY</
period><amount><ComparableValue.Type>Money</
ComparableValue.Type><microAmount>100000000</microAmount></
amount><deliveryMethod>STANDARD</deliveryMethod></
budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy><autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><adServingOptimizationStatus>OPTIMIZE</adServingOptimizationStatus><frequencyCap><impressions>0</impressions></frequencyCap></value></rval></mutateResponse></soap:Body></soap:Envelope>

Here is the request to fetch active and pause campaigns from adwords:
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><soapenv:Header><ns1:RequestHeader
soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
soapenv:mustUnderstand="0" xmlns:ns1="https://adwords.google.com/api/
adwords/cm/v200906"><ns1:applicationToken>sandbox-app-token</
ns1:applicationToken><ns1:authToken xmlns:ns1="https://
adwords.google.com/api/adwords/cm/v200906">******</
ns1:authToken><ns1:clientEmail>client_1+ri...@gmail.com</
ns1:clientEmail><ns1:developerToken>rip.mat...@gmail.com++USD</
ns1:developerToken><ns1:userAgent>ac...@Rip.MatchCraft</ns1:userAgent></
ns1:RequestHeader></soapenv:Header><soapenv:Body><get xmlns="https://
adwords.google.com/api/adwords/cm/
v200906"><selector><campaignStatuses>ACTIVE</
campaignStatuses><campaignStatuses>PAUSED</campaignStatuses></
selector></get></soapenv:Body></soapenv:Envelope>

and its response and it shows campaign (id: 57569) status is PAUSED,
which is not correct:
<?xml version="1.0" encoding="UTF-8"?><soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/
envelope/"><soap:Header><ResponseHeader xmlns="https://
adwords.google.com/api/adwords/cm/
v200906"><requestId>91fa1015f516a262f2eabbecef1089be</
requestId><operations>2</operations><responseTime>120</
responseTime><units>2</units></ResponseHeader></
soap:Header><soap:Body><getResponse xmlns="https://adwords.google.com/
api/adwords/cm/v200906"><rval><totalNumEntries>2</
totalNumEntries><Page.Type>CampaignPage</
Page.Type><totalBudget><period>DAILY</
period><amount><ComparableValue.Type>Money</
ComparableValue.Type><microAmount>361403</microAmount></
amount><deliveryMethod>STANDARD</deliveryMethod></
totalBudget><entries><id>57568</id><name>KW_10254_en_gyme test
advertiser - Los Angeles</name><status>ACTIVE</
status><servingStatus>SERVING</servingStatus><startDate>20091008</
startDate><endDate>20101013</endDate><budget><period>MONTHLY</
period><amount><ComparableValue.Type>Money</
ComparableValue.Type><microAmount>11000000</microAmount></
amount><deliveryMethod>STANDARD</deliveryMethod></
budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy><autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><stats><network>ALL</network><Stats.Type>Stats</Stats.Type></stats><frequencyCap><impressions>0</impressions></frequencyCap></entries><entries><id>57569</id><name>IP_10255_gyme
test location - Los Angeles</name><status>PAUSED</
status><servingStatus>SERVING</servingStatus><startDate>20091008</
startDate><endDate>20101013</endDate><budget><period>MONTHLY</
period><amount><ComparableValue.Type>Money</
ComparableValue.Type><microAmount>100000000</microAmount></
amount><deliveryMethod>STANDARD</deliveryMethod></
budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://
www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy><autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><stats><network>ALL</network><Stats.Type>Stats</Stats.Type></stats><frequencyCap><impressions>0</impressions></frequencyCap></entries></rval></getResponse></soap:Body></soap:Envelope>


On Oct 8, 6:28 am, AdWords API Advisor <adwordsapiadvi...@google.com>
wrote:

AdWords API Advisor

unread,
Oct 9, 2009, 5:09:58 PM10/9/09
to AdWords API Forum
Hi Kevin,

It looks like these requests were made against the sandbox, are you
also seeing this behavior in production?

Best,
- Eric

On Oct 8, 2:17 pm, Kevin <kevin.matchcr...@gmail.com> wrote:
> Hi Eric,
>
> Here is the xml log for making request to adwords to update the
> campaign (id: 57569) status to ACTIVE:
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Header><ns1:RequestHeader
> soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> soapenv:mustUnderstand="0" xmlns:ns1="https://adwords.google.com/api/
> adwords/cm/v200906"><ns1:applicationToken>sandbox-app-token</
> ns1:applicationToken><ns1:authToken xmlns:ns1="https://
> adwords.google.com/api/adwords/cm/v200906">******</
> ns1:authToken><ns1:clientEmail>client_1+rip.matchcr...@gmail.com</
> ns1:clientEmail><ns1:developerToken>rip.matchcr...@gmail.com++USD</
> ns1:developerToken><ns1:userAgent>a...@Rip.MatchCraft</ns1:userAgent></
> budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy>< autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><adServingOpti mizationStatus>OPTIMIZE</adServingOptimizationStatus><frequencyCap><impress ions>0</impressions></frequencyCap></value></rval></mutateResponse></soap:B ody></soap:Envelope>
>
> Here is the request to fetch active and pause campaigns from adwords:
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Header><ns1:RequestHeader
> soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
> soapenv:mustUnderstand="0" xmlns:ns1="https://adwords.google.com/api/
> adwords/cm/v200906"><ns1:applicationToken>sandbox-app-token</
> ns1:applicationToken><ns1:authToken xmlns:ns1="https://
> adwords.google.com/api/adwords/cm/v200906">******</
> ns1:authToken><ns1:clientEmail>client_1+rip.matchcr...@gmail.com</
> ns1:clientEmail><ns1:developerToken>rip.matchcr...@gmail.com++USD</
> ns1:developerToken><ns1:userAgent>a...@Rip.MatchCraft</ns1:userAgent></
> budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy>< autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><stats><networ k>ALL</network><Stats.Type>Stats</Stats.Type></stats><frequencyCap><impress ions>0</impressions></frequencyCap></entries><entries><id>57569</id><name>I P_10255_gyme
> test location - Los Angeles</name><status>PAUSED</
> status><servingStatus>SERVING</servingStatus><startDate>20091008</
> startDate><endDate>20101013</endDate><budget><period>MONTHLY</
> period><amount><ComparableValue.Type>Money</
> ComparableValue.Type><microAmount>100000000</microAmount></
> amount><deliveryMethod>STANDARD</deliveryMethod></
> budget><biddingStrategy xsi:type="ManualCPC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><BiddingStrategy.Type>ManualCPC</BiddingStrategy.Type></biddingStrategy>< autoKeywordMatchingStatus>OPT_OUT</autoKeywordMatchingStatus><stats><networ k>ALL</network><Stats.Type>Stats</Stats.Type></stats><frequencyCap><impress ions>0</impressions></frequencyCap></entries></rval></getResponse></soap:Bo dy></soap:Envelope>

Kevin

unread,
Oct 9, 2009, 5:37:37 PM10/9/09
to AdWords API Forum
Hi Eric,

No. I ran into this problem while testing in development environment
against the sandbox account.

-Kevin

On Oct 9, 2:09 pm, AdWords API Advisor <adwordsapiadvi...@google.com>

AdWords API Advisor

unread,
Oct 9, 2009, 7:33:57 PM10/9/09
to AdWords API Forum
Hi Kevin,

I'm not having any luck replicating this issue. I made a script that
continuously toggles a campaign in the sandbox from ACTIVE to PAUSED,
checking the status after every mutate() with a get(). However, even
after a hundred toggles I haven't seen any cases where the status
failed to change.

Can you confirm that there are no other parts of your code that could
have changed the status in-between the mutate() and get() requests?
Are there other threads running? You mentioned it happens more often
when servingStatus is SERVING, are there any other correlations? What
other types of requests if your script making?

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