Find Instance Steps

Find Instance steps within an Instance or across all Instances of a Worfkflow.

👍

Permissions Required

You must have Find permissions to the Instance for this request to succeed.

Method Signature

InstanceStepsPage Find(Search.Filter filter = null, PagingOptions pagingOptions = null);
async Task<InstanceStepsPage> FindAsync(Search.Filter filter = null, PagingOptions pagingOptions = null);

Parameters

ParameterTypeDescription
filterSearch.FilterThe filter criteria to search by, or null to fetch all Instance Steps.
pagingOptionsPagingOptionspaging options including Size and PageToken
returnsInstanceStepsPageThe requested page of Instance Steps

You can search for matches among the following attributes of the Where class.

NameTypeDescription
TextstringFuzzy matches text attributes of an Instance Step, including Name and Description.
WorkflowIdGuidFind Instances of a specific Workflow
AssigneestringFind Steps assigned to a specific user by email or username. Results will
include Steps assigned to a Group to which the user belongs.

Example

/*
 * This example demonstrates finding Steps across all Instances 
 * assigned to a specific user. Note that this will include Steps
 * assigned to a Group to which the User belongs.
 */
using Catalytic.Sdk.Entities;
using System.Collections.Generic;
using System;

namespace Catalytic.Sdk.Examples
{
    class Program
    {
        static void Main(string[] args)
        {
            var catalytic = new CatalyticClient(Credentials.Default);

            var steps = new List<InstanceStep>();
            var paging = new PagingOptions { Size = 25 };

            while (paging != null)
            {
                var result = catalytic.Instances.FindSteps(
                    Where.Assignee.Is("[email protected]"),
                    paging
                );

                steps.AddRange(result.Steps);
                paging = result.NextPageOptions;
            }

            foreach (var step in steps)
            {
                Console.WriteLine($"{step.Name} : {step.AssignedTo}");
            }
        }
    }
}