function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Daniel BallingerDaniel Ballinger 

The SOAP Tooling API is missing the SessionHeader in WSDL operation

The current v32.0 (Winter 15) WSDL for the Tooling API is missing the SessionHeader in the binding operation definition for the getServerTimestamp web method. As such, attempts to call it from .NET generated proxy classes will be missing the Session header. This results in the following message:
 
 INVALID_SESSION_ID: Invalid Session ID found in SessionHeader: Illegal Session
 
<operation name="getServerTimestamp">
   <soap:operation soapAction=""/>
   <input>
    <!-- This is currently missing
    <soap:header use="literal" part="SessionHeader" message="tns:Header"/>
    -->
    <soap:body use="literal" parts="parameters"/>
   </input>
   <output>
    <soap:body use="literal"/>
   </output>
  </operation>

Current work around is to manually force the Session Header to be sent in the generated proxy code.

It is also missing for the following operations which I suspect also require the Session details:
  • describeWorkitemActions
  • getDeleted
  • getUpdated
  • getUserInfo
  • logout
  • queryAll
  • queryMore
  • setPassword
ShashankShashank (Salesforce Developers) 
This was identified by Salesforce R&D and should be fixed by now.
Daniel BallingerDaniel Ballinger

Hi Shashank,

I just checked on na5, and the same problem still exists in the Tooling API. There is no soap:header element for the getServerTimestamp operation. Is there a know issue I can reference or a timeframe for when the fix will be deployed?

Thanks,
Daniel

ShashankShashank (Salesforce Developers) 
Can you please let me know if you are faicng the issue with the other calls as well? Or is it just the getServerTimeStamp call?
ShashankShashank (Salesforce Developers) 
Hi Daniel,

Please email me at ssrivatsavaya@salesforce.com to take this further.

Thanks,
Shashank
Daniel BallingerDaniel Ballinger

Hi Shashank,

As per your email I've raised support Case # 11255064 with the details of this forum post and my current findings with the tooling API WSDL.

Thanks,

Daniel

Daniel BallingerDaniel Ballinger
Hi Shashank,

I was just looking at the updated Spring 15 Tooling API WSDL. I can see the missing soap:header SessionHeader has been added to a number of operations (getUpdated, getServerTimestamp, getDeleted, logout, queryAll, queryMore).
 
It looks like the session header it is still missing for:
  • getUserInfo
  • describeWorkitemActions
  • setPassword 

Do I need to raise a new support case for this?
 
Thanks,
Daniel
ShashankShashank (Salesforce Developers) 
Hi Daniel,

As the Previous case was closed, I will create a new case for you for these 3 operations.

Thanks,
Shashank