In my last installment of my 3-part SharePoint 2013 Workflow series of courses on Pluralsight, today Pluralsight published a course dedicated on creating workflows that talk to various types of web services: SharePoint 2013 Workflow - Web Services.
This course was a long time coming. It was supposed to just be a single module in my SharePoint 2013 Workflow - Advanced Topics course but the more people I talked to about this topic, the more scenarios I thought needed to get added to the course! In fact, I had to pull some stuff out that I thought about adding, but I think that what you’ll find is an answer to just about everything you need to accomplish in SharePoint 2013.
The goal of this course is to help you learn every real world scenario and task that could come across your desk if you are creating a workflow that needs to talk to a web service. The target audience for this course are developers and power users as I show you how to create workflows using both SharePoint Designer 2013 and Visual Studio 2012, however there are some advanced topics in here that are really targetted just to developers. There is no specific customer focus... everything I show you works both in an on-premises deployment as well as a hosted environment such as Office 365.
Workflow changed quite a bit in the SharePoint 2013 release from previous versions of SharePoint. The new workflow platform is implemented with a new product called Workflow Manager 1.0. This course builds off what you learned in the SharePoint 2013 Workflow - Fundamentals and the SharePoint 2013 Workflow - Advanced Topics courses. In this course you will learn how to work with web services in your SharePoint 2013 workflows to meet today's business requirements. You will learn how to read and write to anonymous web services and how to authenticate and interact with the SharePoint 2013 REST API from both SharePoint Designer and Visual Studio when the provided activities don't provide the necessary tools to complete the task. Finally you will also learn how to communicate with secured web services including third party OAuth secured services and how to deploy, and interact, with your own custom secured web services.
Module 1: Understanding SharePoint 2013 Workflows and Web Service Usage
Microsoft introduced a new and dramatic change to workflow development in the SharePoint 2013 released, coupled with Workflow Manager 1.0. While previously developers had the ability to add custom code to their workflows, in SharePoint 2013 all workflows must be entirely declarative. This does not mean that developers do not have the ability to implement custom business logic in code, it just means that the business logic implemented with custom code must reside external to the workflow. TO take advantage of this, workflows in SharePoint 2013, or more specifically Workflow Manager 1.0, can now call external web services. In this module you will learn about the various options available to devleopers creating custom workflows and what will be covered throughout this course.
Module 2: Workflows and Working with Anonymous Web Services
The most common thing developers will likely encounter when utilizing custom web services in custom SharePoint 2013 workflows is working with anonymous web services. In this module you will learn one approach to creating and deploying a custom OData service that can be used in a workflow. Next you will see how to consume this OData service by reading and writing to it using both workflow authoring tools available to SharePoint 2013 developers and information workers: Visual Studio and SharePoint Designer 2013.
Module 3: Workflows and working with the SharePoint 2013 REST API
Microsoft has included many activities in Visual Studio and actions in SharePoint Designer that developers and information workers can use to interact with SharePoint. However it should come as no surprise that not everything is covered...there are simply too many things you can do to customize SharePoint! In these scenarios developers can take advantage of using the vastly improved and robust REST API that SharePoint has to offer. In this module you will learn how to do this using both SharePoint Designer 2013 and Visual Studio, including how to configure your workflows to run as SharePoint apps with specific permissions, regardless of rights a the person who initiated the workflow has.
Module 4: Workflows and Working with 3rd Party REST API
It isn't just Microsoft or developers who have OData or REST services to offer. Many organizations have a REST API they offer to customers to interact with their platforms. Thankfully, using SharePoint's support for calling web services, we can take advantage of these services as well. In this module you will learn what the general tasks are when you go this route. Then you will see how to create a workflow that communicates with the popular Salesforce.com CRM using their REST API... but before you do this, you will need to authenticate with Salesforce.com... all covered in the demos in this module!
Module 5: Securing Your Own Custom OData Services for SharePoint Workflows
So far in this course you have learned how to deploy a custom anonymous service and interact with it regardless of the workflow authoring tool of choice. You have also learned how to utilize commercial REST API's like SharePoint 2013's REST API and Salesforce.com. The last thing you need to learn, as this module will demonstrate, is how to not only create, secure and deploy your own custom OData service that can only be called by your workflow, but how to create a workflow that can call it.