Endpoint for Salesforce custom SOAP web service

It was surprising difficult to figure out what the endpoint should be for a custom SOAP web service created on Salesforce, probably due to the generic terms used.

When you create a custom soap web service in Salesforce, e.g.

and you want to figure out that URL to call it, you need simply do the following.

  1. Go to your class in Salesforce, Setup => Develop => Apex Classes => WebserviceExample (in my sample)
  2. Click the “Generate WSDL” button
  3. Look toward the bottom for the service element, and find the port’s soap:address element, and there it is! As of v32.0 it’s of the format: https://{node}.salesforce.com/services/Soap/class/{classname}

Here’s the portion of the WSDL you should find:

If you attempt to call your custom web service methods using the Partner WSDL, Enterprise WSDL, Apex, Metadata, etc. etc. you will presented with this error:

No operation available for request …

This entry was tagged , , , . Bookmark the permalink.