Symptoms
When calling a smart object service method, we receive a Error 401: unauthorized. Or “User name not provided.” (depending on method of invoking web service.
Diagnoses
Customer was trying to reference Workflow SmartObject endpoint as a web reference in his project. If we add the endpoint as service reference, we were able to start workflow using the endpoint. The issue only occurs in QA but not in Dev. The customer checked and found that the wcf bindings are set differently between environments.
Resolution
Setting the wcf binding in QA to use basichttpbinding and not wshttpbinding resolved the issue.