2012-04-11 5 views
1

PHP의 exacttarget SOAP API를 사용하여 목록을 작성하고 구독자로 사용자 세부 정보를 추가 할 계획입니다. code api에는 목록 생성에 대한 샘플 코드가 있습니다.exacttarget API에 목록이 있는지 확인하십시오.

public function createList($siteId, $siteDescription){ 
     try { 
      $list = new ExactTarget_List(); 
      // $list->Description = "PHP Created List"; // List for the venue 
      // $list->ListName = "PHP API Created List"; // Description about the list 
      $list->Description = $siteDescription; // List for the venue 
      $list->ListName = $siteId; 
      $object = new SoapVar($list, SOAP_ENC_OBJECT, 'List', "http://exacttarget.com/wsdl/partnerAPI"); 
      $request = new ExactTarget_CreateRequest(); 
      $request->Options = NULL; 
      $request->Objects = array($object); 
      $results = $client->Create($request); 
      if ($results->OverallStatus == 'OK') 
      { 
       echo 'SUCCESS'; 
      } 
      else 
      { 
      echo 'FAILED'; 
      }  
     } 
     catch (SoapFault $e) { 
      // var_dump(e); 
      $this->success = 0; 
     } 
    } 

을 다음하지만 내 워크 플로우의 경우 목록이 이미 존재하는 내가 다른 첫 번째 목록을 작성하고 추가 그것에 가입자 (DOH!) 추가의 다음 단계로 진행해야한다는 등이기 때문에 나는 그것을 기반으로 내 사용자 정의 로직을 내장 가입자. 목록이 존재하는지 또는 코드 API doc을 사용하고 있지 않은지 확인하는 데 어떤 예제 코드 스 니펫도 찾을 수 없으므로 이것이 가능한지 궁금합니다. SOAP과 XML에 대한 나의 빈약 한 이해는 여기서 큰 시간을 보내고 있기 때문에 더 나은 지식이나 아이디어를 가진 재향 군인이 내 원인을 돕기위한 세부 사항을 공유 하는지를 요청합니다.

+3

나는 당신을 생각합니다, ET의 도스는 흉포합니다. – Rudiger

답변

1

당신은 매우 쉽게 모든 목록을 잡아 수 있습니다 - 예를 들어 다음과 같은 ET 기술 문서에서 코드를 따르십시오 (상대적 물론, 말하기) http://docs.code.exacttarget.com/020_Web_Service_Guide/Technical_Articles/Retrieving_a_List_from_an_Account

이 문서는 매우 좋은, 그리고 내가 보증 할 수는 정확성. 다음은 PHP 섹션에서 적절한 비트입니다 :

$rr = new ExactTarget_RetrieveRequest(); 
    $rr->ObjectType = "List"; 
    $rr->Properties = array(); 
    $rr->Properties[] = "ID"; 
    $rr->Properties[] = "List.ListName";   
    $rr->Options = NULL; 

    $rrm = new ExactTarget_RetrieveRequestMsg(); 
    $rrm->RetrieveRequest = $rr;   

    $results = $client->Retrieve($rrm); 
     var_dump($results); 

특정 목록을 잡아, 당신은 SimpleFilterPart 객체를 생성하고 RetrieveRequest (참고로 첨부 -이 부분은 버그, 검증되지 않은, 끔찍한 PHP 코드입니다 - 내가 쓴 파이썬 한 다음 여기 번역 - 당신은 정말이 부분에, 메시지 나) 도움이 필요하면 : 사람에 대한 몇 가지 두통을 저장

$sfp=new ExactTarget_SimpleFilterPart; 
    $sfp=>Property = "ListID"; 
    $sfp=>SimpleOperator = new ExactTarget_SimpleOperators->equals; 
    $sfp=>Value = Array(contact_list); 
    $retrieverequest=>Filter = $sfp; 

희망을.

+0

이 질문에도 불구하고 나에게 쓸모없는 지금도 나는 확실히 누군가이 대답에서 유익을 얻을 것이라고 확신합니다. 목록 검색을 위해 API 문서를 놓친 이유를 모르겠지만 확실히 알고 싶습니다. 많이 감사하고 환호! – optimusprime619

관련 문제