0

I'm trying to create data extension from TriggeredSendDataExtension template. I use SOAP and develop it in java. Following example works for me:

https://developer.salesforce.com/docs/atlas.en-us.mc-apis.meta/mc-apis/creating_a_data_extension_using_an_existing_template.htm

But, there is one big problem. This example creates data extension under our primary business unit. I need to create it under specified business unit, but it doesn't work. When I enter ClientID into request, I get this error: The SendableCustomObjectField is invalid.

Does anyone know how to do it? If I try to create standard data extension, it works without any problem.

Here is my SOAP request:

<CreateRequest xmlns="http://exacttarget.com/wsdl/partnerAPI" xmlns:ns2="urn:fault.partner.exacttarget.com">
  <Options/>
  <Objects xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="DataExtension">
    <Client>
      <ClientID>XXXX</ClientID>
    </Client>
    <PartnerKey xsi:nil="true"/>
    <ModifiedDate xsi:nil="true"/>
    <ObjectID xsi:nil="true"/>
    <Name>test_triggered_send_job_v04</Name>
    <IsSendable>true</IsSendable>
    <SendableDataExtensionField>
      <PartnerKey xsi:nil="true"/>
      <ModifiedDate xsi:nil="true"/>
      <ObjectID xsi:nil="true"/>
      <Name>SubscriberKey</Name>
    </SendableDataExtensionField>
    <SendableSubscriberField>
      <Name>Subscriber Key</Name>
    </SendableSubscriberField>
    <Template>
      <PartnerKey xsi:nil="true"/>
      <ModifiedDate xsi:nil="true"/>
      <ObjectID>ae28238c-a9d3-e511-816e-8cdcd4afdc55</ObjectID>
    </Template>
    <Fields>
      <Field>
        <PartnerKey xsi:nil="true"/>
        <ModifiedDate xsi:nil="true"/>
        <ObjectID xsi:nil="true"/>
        <Name>email_sent_ts</Name>
        <MaxLength>19</MaxLength>
        <IsRequired>false</IsRequired>
        <IsPrimaryKey>false</IsPrimaryKey>
        <FieldType>Text</FieldType>
      </Field>
    </Fields>
  </Objects>
</CreateRequest>
  • 1
    Complete shot in the dark, but can you verify that the template objectID is the same inside of the BU you are trying to create the TS DE in? It sounds like you are using the ID from the primary acct, and I believe they are unique per BU. – Gortonington Sep 13 '18 at 12:45
0

In Create, Delete, Perform, and Update SOAP calls specify BU like this:

  <Client>
       <ID>999999</ID>
    </Client>

To retrieve specify it like this:

<ClientIDs>
   <ClientID>99999</ClientID>
</ClientIDs>
  • Hi, thanks, but that's what I tried. When I enter ClientID for this request, I get this error: The SendableCustomObjectField is invalid. – Martin Sep 13 '18 at 8:45
  • I don't know what can be the problem because it happens only for sendable data extension created from TriggeredSendDataExtension template. – Martin Sep 13 '18 at 8:49
0

Thanks @Gortonington.

Each BU has it's own TriggeredSendDataExtension template. Proper objectID has to be entered for each BU.

I wish there was better error message when you enter wrong objectID. It would be much easier to figure it out :)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.