We have to create a record in our partner Salesforce CRM instance with a certain set of parameters.

They informed us that they have built a webservice class for this purpose and instead of sending one WSDL, they have given two WSDLs (one is a Partner WSDL and another CreateRecord.WSDL)

For consuming a SOAP webservice generally we receive only one WSDL right ?.

When asked they told us that the login() is available in the partner WSDL and the actual record creation is available in the second WSDL (CreateRecord.WSDL).

Is this expected ?

What should be done in this case ?

Can someone help ?

  • 2
    yes this is expected. Use both WSDLs
    – superfell
    Feb 24, 2016 at 0:28
  • tx. but how do I refer both wsdl. any links available with examples for this scenario ? Feb 24, 2016 at 0:33
  • @user2655970 Just added the link to a blogpost reference for more info Feb 24, 2016 at 0:37
  • impossible to say without you saying much more about the tools you are using.
    – superfell
    Feb 24, 2016 at 4:01
  • Out of interest, where are you consuming these WSDLs from? If it is from apex via WSDL2Apex I can help with minimizing the amount of generated code required. Feb 25, 2016 at 0:14

1 Answer 1


This is expected behavior .The login() has to be from either partner WSDL or the Enterprise WSDL .The Apex class that the would have created with webservice keywords will generate another WSDL that will hold exact calls you will need to do once you obtain Server URL and Session Id from the login call.

Here is a simple blog post showing how to use Enterprise WSDL or Partner WSDL and Custom WSDL provided to make API calls


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .