SharePoint - Get workflow instance(s)

Declaration

<AMSHAREPOINT ACTIVITY="get_workflowinstances" SESSION="text" SITE="text" VERSION="text (options)" SPOAUTHTYPE="text (options)" AUTHTYPE="text (options)" USERNAME="text" PASSWORD="text" DOMAIN="text" CLIENTID="text" CLIENTSECRET="text" AADTENANTID="text (encrypted)" AADCLIENTID="text (encrypted)" AADCERTIFICATE="text" AADCERTIFICATEPASSWORD="text (encrypted)" AZUREENVIRONMENT="text (options)" CERTIFICATE="text" IGNOREINVALIDCERTIFICATE="YES/NO" TIMEOUT="500" PROXYTYPE="text (options)" PROXYSERVER="text" PROXYUSERNAME="text" PROXYPASSWORD="text (options)" SCOPE="text (options)" WORKFLOWID="text" LIST="text" ITEMID="text" RESULTDATASET="text" />

Related Topics

Description

Retrieves information regarding existing workflow instances, and then creates and populates a dataset with results. This activity supports retrieval of site and list workflow instances or data can be retrieved from instances associated to a particular workflow ID.   

NOTE: SharePoint-related error messages appearing in Automate Desktop are sent from your SharePoint site or server. Automate Desktop displays these messages verbatim. For information on SharePoint error messages, refer to Microsoft's SharePoint documentation.

Practical usage

Gathers information regarding SharePoint workflow instances to perform other operations on them during subsequent steps.

Parameters

Connection

Property Type Required Default Markup Description
Connection --- --- --- --- Indicates where this activity's SharePoint credentials should originate from. The available options are:
  • Host (default) - Specifies that a custom set of credentials will be entered for this activity. This option is normally selected if only a single SharePoint activity is required to complete the task.

  • Session - Specifies that credentials should derive from a session created in a previous SharePoint - Create session step. This allows several activities to be linked to a specific session, eliminating redundancy. Multiple sessions can exist within a single task, allowing several SharePoint operations to be automated simultaneously.

NOTE: This parameter does not contain markup and is only displayed in visual mode for task construction and configuration purposes.

Connection - Session

Property Type Required Default Markup Description
Session Text Yes, if Connection is set to Session SharePointSession1 SESSION="mySession1" The name of the session to associate with this activity. This parameter is only active if the Connection parameter is set to Session . If Connection is set to Host, this parameter is ignored and the remainder of the parameters specified below become active.
NOTE: Use the SharePoint - End session activity to end an active SharePoint session.

Connection - Host > Server

Property Type Required Default Markup Description
Version Text (options) Yes, if Connection is set to Host SharePoint 2013 and newer

VERSION="sharepointonline"

The SharePoint version to associate with this activity. The available options are:
  • SharePoint Online - A cloud-based service, hosted by Microsoft as an alternative to installing and deploying SharePoint Server on premises.
  • SharePoint 2013 and newer (default) - SharePoint version 2013 or newer - includes SharePoint Foundation 2013/2016/2019 and SharePoint Server 2013/2016/2019.
Site Text Yes, if Connection is set to Host (Empty) SITE="http://myServer/tech" The SharePoint site to access. A SharePoint site is a collection of pages, site templates, lists, and libraries configured for the purpose of achieving an express goal.
Refer to these parameters when Version is set to SharePoint Online.
Authentication type Type (options) Yes Default
  • SPOAUTHTYPE="default"
  • SPOAUTHTYPE="spapponly"
  • SPOAUTHTYPE="aadapponly"
  • SPOAUTHTYPE="aaddelegated"
  • SPOAUTHTYPE="interactive"
Specifies the authentication type to use with the connection. The available options are:
  • Default (default) - Authenticates using a valid SharePoint username and password.

    NOTE: This type does not support multi-factor authentication/single sign-on.
  • SharePoint App Only - Authenticates using a valid SharePoint Client ID value, Client Secret value, and Azure environment selection.

  • Azure AD App Only - Authenticates using a valid Azure AD Directory (tenant) ID value, Application (client) ID value, Azure AD certificate, certificate password, and Azure environment selection.

  • Azure AD Delegated - Authenticates using a valid Azure AD Directory (tenant) ID value, Application (client) ID value, and Azure environment selection. This type also requires an authorized user to manually enter their SharePoint credentials at runtime.

  • Interactive - Authenticates by requiring an authorized user to manually enter their SharePoint credentials at runtime.

    NOTE: Multi-factor authentication/single sign-on can be bypassed if Windows includes valid authentication session information.
Username Text Yes, if Authentication type is set to Default (Empty) USERNAME="theUserName" The username to use for authenticating to the SharePoint site. This parameter is only required if the Authentication type parameter is set to Default.
Password Text Yes, if Authentication type is set to Default (Empty) PASSWORD="text (encrypted)" The password to use to authenticate with the Username parameter. This parameter is required if the Authentication type parameter is set to Default.
Client ID Text Yes, if Authentication type is set to SharePoint App Only (Empty) CLIENTID="text (encrypted)" The Client ID in SharePoint to use for authentication. This parameter is encrypted in Task Builder. This parameter is required when the Authentication type parameter is set to SharePoint App Only.
Client secret Text Yes, if Authentication type is set to SharePoint App Only (Empty) CLIENTSECRET="text (encrypted)" The Client Secret in SharePoint to use for authentication. This parameter is required if the Authentication type parameter is set to SharePoint App Only.
Azure Tenant ID Text Yes, if Authentication type is set to Azure AD App Only or Azure AD Delegated (Empty) AADTENANTID="text (encrypted)" The Directory (tenant) ID in Azure AD to use for authentication. This parameter is required if the Authentication type parameter is set to Azure AD App Only or Azure AD Delegated.
Azure Client ID Text Yes, if Authentication type is set to Azure AD App Only or Azure AD Delegated (Empty) AADCLIENTID="text (encrypted)" The Application (client) ID in Azure AD to use for authentication. This parameter is required if the Authentication type parameter is set to Azure AD App Only or Azure AD Delegated.
Azure AD certificate Text Yes, if Authentication type is set to Azure AD App Only (Empty) AADCERTIFICATE="certificate.pfx" The Azure AD certificate file (.pfx) to use for authentication. This parameter is required if the Authentication type parameter is set to Azure AD App Only.
Azure AD certificate password Text No (Empty) AADCERTIFICATEPASSWORD="text (encrypted)" The password to use to authenticate with the Azure AD Certificate parameter. This parameter is becomes available when Authentication type is set to Azure AD App Only.
Azure Environment Text (options) Yes, if Authentication type is set to SharePoint App Only, Azure AD App Only, or Azure AD Delegated Azure
  • AZUREENVIRONMENT="azure"
  • AZUREENVIRONMENT="azurechina"
  • AZUREENVIRONMENT="azuregermany"
  • AZUREENVIRONMENT="azureusgovernment"
The Azure environment to use for authentication. The available options are:
  • Azure

  • Azure China

  • Azure Germany

  • Azure US Government

This parameter is required if the Authentication type parameter is set to SharePoint App Only, Azure AD App Only, or Azure AD Delegated.

Refer to these parameters when Version is set to SharePoint 2013 and newer.
Authentication type Text (options) Yes System default
  • AUTHTYPE="basic"
  • AUTHTYPE="form"
  • AUTHTYPE="anonymous"
Specifies the authentication type to use with the connection. Associated parameters vary with each type. The available options are:
  • Default (default)

  • Basic

  • Form

  • Anonymous

Username Text Yes, if Authentication type is set to Basic or Form (Empty) USERNAME="theUserName" The username to use for authenticating to the SharePoint site. This parameter is only required if Authentication type is set to Basic or Form.
Password Text Yes, if Authentication type is set to Basic or Form (Empty) PASSWORD="text (encrypted)" The password to use to authenticate with the Username parameter. This parameter is only required if Authentication type is set to Basic or Form.
Domain Text Yes, if Authentication type is set to Basic or Form (Empty) DOMAIN="myServer" The domain the user belongs to. This parameter is only required if Authentication type is set to Basic or Form.
These parameters are available when Version is set to SharePoint Online or SharePoint 2013 and newer.
Certificate Text No (Empty) CERTIFICATE="C:\Temp\file.cer" The (DER encoded) certificate to use for SharePoint authentication.
Ignore invalid certificate Yes/No No No IGNOREINVALIDCERTIFICATE="yes" If selected, invalid server certificates are automatically ignored. This parameter is disabled by default.
Timeout (seconds) Number No 600 TIMEOUT="500" The number of seconds to wait to connect to the SharePoint server before a timeout error is generated. The default value is 600 seconds.

Connection - Host > Proxy

Property Type Required Default Markup Description
Proxy type Text (options) Yes Default
  • PROXYTYPE="none"
  • PROXYTYPE="http"
The type of proxy required for SharePoint connections that pass through a proxy server. The available options are:
  • System default (default) - Points to the default proxy used by the system.
  • None - No proxy authentication required.
  • HTTP - Proxy type is HTTP.
Use authentication --- No --- --- If enabled, specifies proxy authentication is required, enabling authentication-based parameters (disabled by default). It is active only if Proxy type is set to HTTP.
NOTE: This parameter does not contain markup and is only displayed in visual mode for task construction and configuration purposes.
Proxy server Text No (Empty) PROXYSERVER="proxy.host.com" The hostname (server.domain.com) or IP address (xxx.xxx.xxx.xxx) of the proxy server. This parameter is available only if Proxy type is set to HTTP.
Proxy username Text No (Empty) PROXYUSERNAME="username" The proxy username to authenticate with. This parameter is available only if Use authentication is enabled.
Proxy port Number No 808 PROXYPORT="8080" The port number to use to connect to the proxy server. This parameter is available only if Proxy type is set to HTTP. The default value is 808.
Proxy password Text No (Empty) PROXYPASSWORD="encrypted" The proxy password to authenticate with. This parameter is available only if Use authentication is enabled.

Workflow

Property Type Required Default Markup Description
Workflow scope Text (options) Yes (Empty) SCOPE="id" Determines the scope with which workflow instances to be retrieved are associated. The available options are:
  • Site(default) - Retrieve workflow instances associated to a SharePoint Foundation website.
  • List - Retrieve workflow instances associated to a list on a SharePoint Foundation website.
  • ID - Retrieve workflow instances from a workflow matching the specified workflow ID.
List title Text Yes, if Workflow scope is set to List (Empty) LIST="myList" The title of the list in which workflow instances will be retrieved. This parameter is only active if the Workflow scope parameter is set to List.
Item ID Number Yes, if Workflow scope is set to List (Empty) ITEMID="12" The integer that identifies the item in a list. f the item in a list. This parameter is active only if the Workflow scope parameter is set to List.
NOTE: The item ID is not the same as the index of the item in the collection of list items. This property contains the item's 1-based integer ID, which is one greater than the ID of the item that was previously added.
Workflow ID Text Yes, if Workflow scope is set to ID (Empty) WORKFLOWID="theID" The unique ID of the workflow from which workflow instances will be retrieved. This parameter is only active if the Workflow scope parameter is set to ID.
Create and populate dataset with SharePoint workflow instance information Text Yes (Empty) RESULTDATASET="theData" The name of the dataset to create and populate with information regarding workflow instances that are retrieved. For more information, see Datasets.

Description

Error Causes

On Error

Additional notes

Datasets

A dataset is a multiple column, multiple row container object where every column represents a particular variable, and each row corresponds to a given member of the dataset in question. This activity creates and populates a dataset containing specific fields (rows) in addition to the standard dataset fields. The table below describes these fields (assuming the dataset name assigned was theDataset).

Name Type Return Value
theDataset.ID Text The globally unique identifier (GUID) of the workflow instance.
theDataset.InstanceCreated Date The date the instance was initially created. The returned date format matches the following: MM/DD/YYYY HH:MM:SS AM/PM.
theDataset.LastUpdated Date The date and time the workflow instance was last updated. The returned date format matches the following: MM/DD/YYYY HH:MM:SS AM/PM.
theDataset.Status Text The current status of the instance.
theDataset.WorkflowName Text The unique name of the workflow that the workflow instance belongs to.

Example

NOTE:
  • Copy and paste the sample AML code below directly into the Task Builder Steps Panel.
  • To successfully run the sample code, update parameters containing user credentials, files, file paths, or other information specific to the task to match your environment.

Description

This sample task retrieves information about existing workflow instances, and then creates and populates a dataset with results. The dataset is then looped. During each iteration, the message dialog display information about the current workflow instance.

Copy
<AMVARIABLE NAME="siteWorkflowName" VALUE="MySiteWFD" />
<AMVARIABLE NAME="siteWorkflowInstanceID" />
<AMSHAREPOINT ACTIVITY="create_session" SITE="https://netauto.sharepoint.com/sites/test" VERSION="sharepointonline" SPOAUTHTYPE="default" USERNAME="pp@networkautomation.com" PASSWORD="AM5t4sw4St4Jrn2mjTBgNnMDEqCpv0LDo9R75l+AIPLKLE=aME" SESSION="SharePointSession1" />
<AMSHAREPOINT ACTIVITY="get_workflowinstances" SESSION="SharePointSession1" RESULTDATASET="theDataset" />
<AMSHOWDIALOG>Workflow instance ID: %theDataset.ID%Workflow instance created: %theDataset.InstanceCreated%Workflow instance last updated: %theDataset.LastUpdated%Workflow instance status: %theDataset.Status%Workflow name: %theDataset.WorkflowName%</AMSHOWDIALOG>
<AMSHAREPOINT ACTIVITY="end_session" SESSION="SharePointSession1" />