Skip to main content
Participant
March 16, 2007
Question

How to call InDesign SOAP?

  • March 16, 2007
  • 4 replies
  • 19962 views
I'm new to InDesign server. I started InDesign server using command indesignserver port 18383. Running HelloWorld.jsx via TestClient is working fine . But now I need write a PHP program to call InDesign SOAP API. I did some searching but I could not figure out what the parameters and path are. My InDesign server is on 192.168.0.150:18383
and I'm using PHP 5's SOAP extension. If there is sample code, that would be great. Any help would be appreciated.

1, Where I can find following information:
What is Method Name? such as SomeFunction
what is Endpoint? such as URL http://x.x.x.x:8080/soap
what is SOAPAction? such as urn:xmethods-delayed-quotes#SomeFunction
what is Method Namespace URI? such as urn:xmethods-delayed-quotes
What is Input Parameters?
What is Output Parameters?

Or
2, use wsdl - but what is the path of some.wsdl? and what is SomeFunction? I know there is function called RunScript

Following are some sample PHP code I need:

$client = new SoapClient("some.wsdl");

$client = new SoapClient("some.wsdl", array('soap_version' => SOAP_1_2));

$client = new SoapClient("some.wsdl", array('login' => "some_name",
'password' => "some_password"));

$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080));

$client = new SoapClient("some.wsdl", array('proxy_host' => "localhost",
'proxy_port' => 8080,
'proxy_login' => "some_name",
'proxy_password' => "some_password"));

$client = new SoapClient("some.wsdl", array('local_cert' => "cert_key.pem"));

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/",
'style' => SOAP_DOCUMENT,
'use' => SOAP_LITERAL));

$client = new SoapClient("some.wsdl",
array('compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP));

$server = new SoapClient("some.wsdl", array('encoding'=>'ISO-8859-1'));


Thanks

Robert
This topic has been closed for replies.

4 replies

Participant
July 1, 2008
see here: http://www.attractivestyle.com/articles.html
June 12, 2007
Hi robertx,

Through thread I came to know that you are able to run testclient. Please tell me how you have done it in fact I am also trying to do it but not able to do it.
See below what I have done:
I have run the Indesign server on port 19865, the I opened a new command window and given the path of testclient folder, now it also want pathname and scriptname, script name is ok but what is the pathname.

I am using local system for the indesignserver.

Please help me.
Thanks.....
_robertx_Author
Participant
April 17, 2007
Thanks krik,

I have another question, how I can get response or results from InDesign server SOAP call?
Participant
March 28, 2007
The InDesign Server WSDL is included in the SDK. For example, for a standard install on Windows, the WSDL is at:<br /><br />C:\Program Files\Adobe\Adobe InDesign CS2 4.0.2 Products SDK\source\components\soapserver\gsoap\IDSP.wsdl<br /><br />That is a static WSDL, however, and is probably not accurate for your current setup. About three or four lines from the bottom, you'll see a "<SOAP:address ..." line. To have it work for your setup, you should change that line to:<br /><br /><SOAP:address location="http://192.168.0.150:18383"/><br /><br />InDesign Server only exposes one function, called simply RunScript.