2017-11-08 1 views
0

infusionsoft CRMには、連絡先のメモを追加するための "Notes"という名前の連絡先フィールドがあります。私はxml-rpcプロトコル、javaを使用して連絡先、検索または更新を作成することができました。私は以下の方法で(私のコード)のメモを追加しようとしましたが、できませんでした。誰かがjavaのapiを使って連絡先のNotesを追加する方法について私を助けてくれますか?infusionsoft crm apiで連絡先のメモをJavaで追加する方法

私のアプローチ:コードを実行

XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); 
XmlRpcClient client = new XmlRpcClient(); 
config.setServerURL(new URL(uri)); //my app uri 
client.setConfig(config); 

List params=new ArrayList(); 
List customField=new ArrayList(); 
customField.add("this is new text1\n"); 
customField.add("this is text2\n"); 
customField.add("text3\n"); 
customField.add("text4\n"); 

params.add(api_key);   
params.add("ContactNotes");//found from contact Table-schema 
params.add(customField); 
params.add(contactId); //suppose that was an known contactId Integer. 
Integer responseCode=(Integer) client.execute("ContactService.add", params); 

、それはこのエラーを与える:

org.apache.xmlrpc.XmlRpcException: No method matching arguments: java.lang.String, java.lang.String, [Ljava.lang.Object;, java.lang.Integer 
at org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:197) 
at org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:156) 
at org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:143) 
at org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) 
at org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) 
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) 
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) 
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) 
at infusionsoft.ContactOperation.addNote(ContactOperation.java:123) 
at infusionsoft.Main.main(Main.java:80) 

答えて

0

私はちょうど、@Nicholas_Trecinaによって作らinfusionsoft community postから知るようになったCompletionDateフィールドを追加し、いくつかを作りました私のコードに変更。そして、それは動作します。

editedVersion:

List params = new ArrayList();  
Map noteData = new HashMap(); 

noteData.put("ContactId", contactId); 
noteData.put("ActionDescription", "My Note Title"); 
noteData.put("isAppointment", 0); 
noteData.put("ActionDate","20170803T08:00:00"); 
noteData.put("CompletionDate","20171109"); 
noteData.put("CreationNotes", "Note data- what i want to save as note: bla bla bla.."); 

params.add(api_key);   
params.add("ContactAction");    
params.add(noteData); 

Integer responseCode = (Integer) client.execute(
       "DataService.add", params); 
関連する問題