title: How to understand node-soap "describe" function?
body: <p>I'm attempting to use the node SOAP npm module(<a href="https://github.com/vpulim/node-soap" rel="noreferrer">https://github.com/vpulim/node-soap</a>) service.  </p>
  
  <pre><code>var soap = require('soap');
  var soapWSDL = "https://webservice.s7.exacttarget.com/etframework.wsdl";
  
  soap.createClient(soapWSDL, function (err, client) {
      if (err) {
        return callback(err, null);
      }
  
      client.setSecurity(new soap.WSSecurity(self.username, self.password));
  
      console.log("describe", client.describe());
      console.log("retrieve", client.describe().PartnerAPI.Soap.Retrieve);
  });
  </code></pre>
  
  <p>The first log shows the available methods... </p>
  
  <p>But i'm trying to understand the exact format required for params from the second console.log...</p>
  
  <p><strong>More specifically,</strong> when i call <code>client.Retrieve(options,function(e,r){});</code> what is the required format of <code>options</code> supposed to be?</p>
  
  <p>Here is the output from the two console.logs</p>
  
  <p>Describe:</p>
  
  <pre><code> { PartnerAPI: 
     { Soap: 
        { Create: [Object],
          Retrieve: [Object],
          Update: [Object],
          Delete: [Object],
          Query: [Object],
          Describe: [Object],
          Execute: [Object],
          Perform: [Object],
          Configure: [Object],
          Schedule: [Object],
          VersionInfo: [Object],
          Extract: [Object],
          GetSystemStatus: [Object] } } }
  </code></pre>
  
  <p>Retrieve:</p>
  
  <pre><code> { input: 
     { RetrieveRequest: 
        { 'ClientIDs[]': [Object],
          ObjectType: 'xsd:string',
          'Properties[]': 'xsd:string',
          Filter: [Object],
          'RespondTo[]': [Object],
          'PartnerProperties[]': [Object],
          ContinueRequest: 'xsd:string',
          QueryAllAccounts: 'xsd:boolean',
          RetrieveAllSinceLastBatch: 'xsd:boolean',
          RepeatLastResult: 'xsd:boolean',
          Retrieves: [Object],
          Options: [Object],
          targetNSAlias: 'tns',
          targetNamespace: 'http://exacttarget.com/wsdl/partnerAPI' } },
    output: 
     { OverallStatus: 'xsd:string',
       RequestID: 'xsd:string',
       'Results[]': 
        { Client: [Object],
          PartnerKey: 'xsd:string',
          'PartnerProperties[]': [Object],
          CreatedDate: 'xsd:dateTime',
          ModifiedDate: 'xsd:dateTime',
          ID: 'xsd:int',
          ObjectID: 'xsd:string',
          CustomerKey: 'xsd:string',
          Owner: [Object],
          CorrelationID: 'xsd:string',
          ObjectState: 'xsd:string',
          targetNSAlias: 'tns',
          targetNamespace: 'http://exacttarget.com/wsdl/partnerAPI' } } }
  </code></pre>