2014-02-07 47 views
0

我試圖從名爲DisputeSuite的CRM中使用API​​。我收到的錯誤說「無效的進程名稱。」我對流程名稱有正確的價值,所以我的問題似乎是在哪裏放置它。無法從DisputeSuite連接到CRM API

這裏是我的代碼:

$compKey = 'xxxx'; 
$apiKey = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'; 
$soapURL = "https://www.securecrmsite.com/Modules/System/API.asmx?wsdl"; 
$soapCredentials = array('Credentials'=>array('CompanyKey' => $compKey, 'APIKey' => $apiKey)); 
$soapFunctionParameters = array('FirstName' => "From", 'LastName' => "API"); 
$client = new SoapClient($soapURL, array('trace' => true)); 
$client->Process($soapCredentials, "CustomerInsert", $soapFunctionParameters); 
echo $client->__getLastResponse(); 

而這裏的API文檔。 (他們只有VB版本。)

Credentials Credentials() (Collection of valid and active API Key and Company Key) Your valid and active system credentials 
ProcessName String CustomerInsert 
WebServiceParams  WebServiceParams()(Collection of name/value pairs) 

Public Shared Sub Main() 
    InvokeProcess() 
End Sub 

Public Shared Sub InvokeProcess() 
    Dim api As api = New api 
    Dim credentials As ApiCredentials = New ApiCredentials 
    credentials.CompanyKey = "test" 
    credentials.APIKey = "test" 
    Dim parameters(28) As ApiParams 

    Dim parameters_0 As ApiParams = New ApiParams 
    parameters_0.Name = "JointCustomerID" 
    parameters_0.Value = "[VALID VALUE]" 
    parameters(0) = parameters_0 
    ... 
    Dim parameters_27 As ApiParams = New ApiParams 
    parameters_27.Name = "AllowEmails" 
    parameters_27.Value = "[VALID VALUE]" 
    parameters(27) = parameters_27 
    Dim processResult As ApiResponse = api.Process(credentials, "CustomerInsert", parameters) 
    Dumper.Dump("result", processResult) 
End Sub 

任何幫助你可以給予非常感謝,謝謝!

回答

0

你可以使用它作爲:

$client = new SoapClient('https://www.securecrmsite.com/Modules/System/API.asmx?WSDL'); 
$response = $client->Process(array('Credentials' => (array('CompanyKey' => '0000','APIKey' => 'KEY')),'ProcessName' => 'UsersSearch','Parameters' => (array('Name' => 'a')))); 

print_r($response);