Hi, I'm trying to change the UserListMembershipStatus of a BasicUserList to 
Closed in Ruby. I currently have the following:
@client.call(:mutate, :message_tag => :mutate, :message => get_message({
      :operator => "SET",
      :operand =>     
      { :xsi_type => 'BasicUserList',
        :name => generate_name(seg),
        :description => generate_description(seg),
        :integration_code => generate_integration_code(seg),
        :membership_life_span => 0,
        :status => 'CLOSED'
      }
}))

However I am getting this error message when I try to run it:
I, [2016-10-27T15:08:39.168378 #87123]  INFO -- : SOAP request: 
https://ddp.googleapis.com/api/ddp/dmp/v201607/DmpUserListService
I, [2016-10-27T15:08:39.168466 #87123]  INFO -- : Authorization: Bearer 
ya29.CiyJA4Si-k-qF5F2-LfhA9CkyiqtAk0RuL7gQt3SxqVRvtTYMMgfvFFA9FLPUA, 
SOAPAction: "mutate", Content-Type: text/xml;charset=UTF-8, Content-Length: 
1005
D, [2016-10-27T15:08:39.168718 #87123] DEBUG -- : <?xml version="1.0" 
encoding="UTF-8"?>
<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns:tns="https://ddp.googleapis.com/api/ddp/dmp/v201607"; 
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/";>
  <env:Header>
    <tns:RequestHeader>
      <tns:clientCustomerId>750-013-0530</tns:clientCustomerId>
      <tns:userAgent>LiveRamp-DoubleClickAutoSegmentCreator</tns:userAgent>
    </tns:RequestHeader>
  </env:Header>
  <env:Body>
    <tns:mutate>
      <tns:clientCustomerId>
        <tns:product>ADWORDS</tns:product>
        <tns:entityId>8130955170</tns:entityId>
      </tns:clientCustomerId>
      <tns:operations>
        <tns:operator>SET</tns:operator>
        <tns:operand>
          <tns:xsiType>BasicUserList</tns:xsiType>
          <tns:name>TEST</tns:name>
          <tns:description>Segment created at 1477606119164.532 (s_id: 1, 
v_id: 1)</tns:description>
          <tns:integrationCode>1</tns:integrationCode>
          <tns:membershipLifeSpan>0</tns:membershipLifeSpan>
          <tns:status>CLOSED</tns:status>
        </tns:operand>
      </tns:operations>
    </tns:mutate>
  </env:Body>
</env:Envelope>

D, [2016-10-27T15:08:39.169082 #87123] DEBUG -- : HTTPI POST request to 
ddp.googleapis.com (httpclient)
I, [2016-10-27T15:08:39.949556 #87123]  INFO -- : SOAP response (status 500)
D, [2016-10-27T15:08:39.949859 #87123] DEBUG -- : <?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
  <soap:Header>
    <ResponseHeader xmlns="https://ddp.googleapis.com/api/ddp/dmp/v201607";>
      <requestId>00053fdffbe240590a24e603c305bc3b</requestId>
      <serviceName>DmpUserListService</serviceName>
      <methodName>mutate</methodName>
      <operations>2</operations>
      <responseTime>124</responseTime>
    </ResponseHeader>
  </soap:Header>
  <soap:Body>
    <soap:Fault>
      <faultcode>soap:Server</faultcode>
      <faultstring>[RequiredError.REQUIRED @ 
operations[0].operand.id]</faultstring>
      <detail>
        <ApiExceptionFault 
xmlns="https://ddp.googleapis.com/api/ddp/dmp/v201607";>
          <message>[RequiredError.REQUIRED @ 
operations[0].operand.id]</message>
          
<ApplicationException.Type>ApiException</ApplicationException.Type>
          <errors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:type="RequiredError">
            <fieldPath>operations[0].operand.id</fieldPath>
            <trigger/>
            <errorString>RequiredError.REQUIRED</errorString>
            <ApiError.Type>RequiredError</ApiError.Type>
            <reason>REQUIRED</reason>
          </errors>
        </ApiExceptionFault>
      </detail>
    </soap:Fault>
  </soap:Body>
</soap:Envelope>

Savon::SOAPFault: (soap:Server) [RequiredError.REQUIRED @ 
operations[0].operand.id]

I saw from the documentation that this should be an Object (an example code 
in Java had it as
"userList.status = UserListMembershipStatus.OPEN;" instead of 
"userList.status = "OPEN"", is this the source of the error?

Thanks!

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
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 adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@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 the Google Groups 
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
Visit this group at https://groups.google.com/group/adwords-api.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/50e274d7-398d-4299-9638-a778c28e10c5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to