Spec - Workflows

Table Of Contents

Activate Workflow

This API allows the caller to activate a workflow for a contact.

Input

Output

Success or failure of the activation.

Example Request

<ActivateWorkflowRequest group_id="4" contact_id="750">
    <WorkflowID>4</WorkflowID>
    <NewWorkflowStartDate>20151105</NewWorkflowStartDate>
    <AssignedToContactID>0</AssignedToContactID>
    <OpportunityID></OpportunityID>
    <GroupID>1</GroupID>
</ActivateWorkflowRequest>

Example Response

<ActivateWorkflowResponse>
    <Result>Success</Result>
</ActivateWorkflowResponse>

Get Workflows

This API retrieves the workflows of a user account that are defined in Workflow Manager.

Input

Output

Success or failure. List of workflows from the Workflow Manager.

Example Request

<GetWorkflowsRequest show_options="true"/>

Example Response

<GetWorkflowsResponse>
    <Result>Success</Result>
    <Workflows>
        <Workflow>
            <WorkflowID>5</WorkflowID>
            <WorkflowName>A</WorkflowName>
            <GroupID>0</GroupID>
            <AllowOncePerXDays>5</AllowOncePerXDays>
            <AutoAssignToNewMembers>N</AutoAssignToNewMembers>
            <AutoAssignToContactID>0</AutoAssignToContactID>
            <SendEmailMediaID>112</SendEmailMediaID>
            <SendSmsTextFromNumber/>
            <SendSmsText/>
            <AddToGroupID>4</AddToGroupID>
            <RemoveFromGroupID>4</RemoveFromGroupID>
            <SendAlertEmailTo>contactemail+activation@gmail.com</SendAlertEmailTo>
            <HttpRequestToUrl>http://google.com</HttpRequestToUrl>
            <PrintCampaignID/>
            <AssignValueToField>User8</AssignValueToField>
            <AssignValue>1234</AssignValue>
            <AppendValueToField>User2</AppendValueToField>
            <AppendValue>http://facebook.com</AppendValue>
            <AssignTag>CEO</AssignTag>
            <RemoveTag>COO</RemoveTag>
            <AddCampaignID>test</AddCampaignID>
            <ConversionCode>12345</ConversionCode>
            <ConversionStage>5</ConversionStage>
            <ConversionValue>22.00</ConversionValue>
            <GroupName/>
            <TotalActivities>4</TotalActivities>
        </Workflow>
    </Workflows>
    <Options>
        <AddToGroups>
            <AddToGroup>
                <GroupID>1</GroupID>
                <GroupName>My Group</GroupName>
            </AddToGroup>
        </AddToGroups>
        <RemoveFromGroups>
            <RemoveFromGroup>
                <GroupID>1</GroupID>
                <GroupName>My Group</GroupName>
            </RemoveFromGroup>
        </RemoveFromGroups>
        <SendEmails>
            <SendEmail>
                <MediaID>112</MediaID>
                <MediaDescription>Test email template</MediaDescription>
                <FileExtension>html</FileExtension>
                <MediaDirectoryID>2</MediaDirectoryID>
                <MediaDirectoryName>Email Templates</MediaDirectoryName>
            </SendEmail>
        </SendEmails>
        <PrintOnDemands>
        </PrintOnDemands>
        <MakeAvailableTos>
            <MakeAvailableTo>
                <GroupID>0</GroupID>
                <GroupName>All Groups</GroupName>
            </MakeAvailableTo>
            <MakeAvailableTo>
                <GroupID>1</GroupID>
                <GroupName>My Group</GroupName>
            </MakeAvailableTo>
        </MakeAvailableTos>
        <Templates>
            <Template>
                <WorkflowID>4</WorkflowID>
                <WorkflowName>Test</WorkflowName>
            </Template>
        </Templates>
        <AppTemplates>
            <AppTemplate>
                <WorkflowID>9</WorkflowID>
                <WorkflowName>Event Planning</WorkflowName>
            </AppTemplate>
            <AppTemplate>
                <WorkflowID>1</WorkflowID>
                <WorkflowName>Meet New Contact</WorkflowName>
            </AppTemplate>
            <AppTemplate>
                <WorkflowID>7</WorkflowID>
                <WorkflowName>Real Estate, Buyer's Offer Accepted</WorkflowName>
            </AppTemplate>
        </AppTemplates>
        <SendSmsTextNumbers></SendSmsTextNumbers>
        <SetContactDatas>
            <SetContactData>
                <FieldNum>2</FieldNum>
                <FieldName>Facebook URL</FieldName>
                <AvailableToCompanies>N</AvailableToCompanies>
            </SetContactData>
            <SetContactData>
                <FieldNum>1</FieldNum>
                <FieldName>Twitter Followers</FieldName>
                <AvailableToCompanies>Y</AvailableToCompanies>
            </SetContactData>
        </SetContactDatas>
        <AppendContactDatas>
            <AppendContactData>
                <FieldNum>2</FieldNum>
                <FieldName>Facebook URL</FieldName>
                <AvailableToCompanies>N</AvailableToCompanies>
            </AppendContactData>
            <AppendContactData>
                <FieldNum>1</FieldNum>
                <FieldName>Twitter Followers</FieldName>
                <AvailableToCompanies>Y</AvailableToCompanies>
            </AppendContactData>
        </AppendContactDatas>
        <AssignTags>
            <AssignTag>
                <PositionShort>CEO</PositionShort>
                <PositionLong>chief executive officer</PositionLong>
            </AssignTag>
            <AssignTag>
                <PositionShort>COO</PositionShort>
                <PositionLong>chief operating officer</PositionLong>
            </AssignTag>
        </AssignTags>
        <RemoveTags>
            <RemoveTag>
                <PositionShort>CEO</PositionShort>
                <PositionLong>chief executive officer</PositionLong>
            </RemoveTag>
            <RemoveTag>
                <PositionShort>COO</PositionShort>
                <PositionLong>chief operating officer</PositionLong>
            </RemoveTag>
        </RemoveTags>
        <CampaignFilters>
            <CampaignFilter>
                <CampaignID>test</CampaignID>
                <CampaignLabel>Only contacts from campaign test</CampaignLabel>
            </CampaignFilter>
        </CampaignFilters>
    </Options>
</GetWorkflowsResponse>

Add Workflows

This API call adds a new workflow to the user account’s Workflow Manager.

Input

Output

Success or failure for each workflows.

Example Request

<AddWorkflowsRequest group_id="4">
    <Workflows>
        <Workflow request_id="a1b2c3">
            <WorkflowName>Spec 2</WorkflowName>
            <GroupID>0</GroupID>
        </Workflow>
    </Workflows>
</AddWorkflowsRequest>

Example Request

<AddWorkflowsRequest>
    <Workflows>
        <Workflow>
            <WorkflowName>Spec</WorkflowName>
            <GroupID>0</GroupID>
            <AddToGroupID>4</AddToGroupID>
            <RemoveFromGroupID>4</RemoveFromGroupID>
            <SendAlertEmailTo>contact.test@gmail.com</SendAlertEmailTo>
            <WorkflowTemplateID>9</WorkflowTemplateID>
            <WorkflowTemplateType>app</WorkflowTemplateType>
        </Workflow>
    </Workflows>
</AddWorkflowsRequest>

Example Response

<AddWorkflowsResponse>
    <Workflows>
        <Workflow request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowID>28</WorkflowID>
        </Workflow>
    </Workflows>
</AddWorkflowsResponse>

Edit Workflows

This API call allows the user to update and modify existing workflows in the Workflow Manager.

Input

Output

Success or failure for each workflows.

Example Request

<EditWorkflowsRequest>
    <Workflows>
        <Workflow workflow_id="27" request_id="a1b2c3">
            <WorkflowName>Spec</WorkflowName>
            <AllowOncePerXDays>5</AllowOncePerXDays>
            <GroupID>4</GroupID>
            <AddToGroupID>4</AddToGroupID>
            <RemoveFromGroupID>4</RemoveFromGroupID>
            <SendAlertEmailTo>test.contact@gmail.com</SendAlertEmailTo>
            <HttpRequestToUrl>www.someservice.com</HttpRequestToUrl>
            <SendEmailMediaID>112</SendEmailMediaID>
            <AssignValueToField>User2</AssignValueToField>
            <AssignValue>facebook.com&#x2F;user</AssignValue>
            <AppendValueToField>User2</AppendValueToField>
            <AppendValue>facebook.com&#x2F;user</AppendValue>
            <AssignTag>CEO</AssignTag>
            <RemoveTag>COO</RemoveTag>
            <AddCampaignID>test</AddCampaignID>
            <ConversionCode>1234</ConversionCode>
            <ConversionStage>3</ConversionStage>
            <ConversionValue>40.00</ConversionValue>
            <AutoAssignToNewMembers>N</AutoAssignToNewMembers>
            <AutoAssignToContactID>0</AutoAssignToContactID>
        </Workflow>
    </Workflows>
</EditWorkflowsRequest>

Example Response

<EditWorkflowsResponse>
    <Workflows>
        <Workflow request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowID>27</WorkflowID>
        </Workflow>
    </Workflows>
</EditWorkflowsResponse>

Delete Workflows

This API call allows the user to delete one or more workflows from the Workflow Manager.

Input

Output

Success or failure for each workflows.

Example Request

<DeleteWorkflowsRequest>
    <Workflows>
        <Workflow workflow_id="27" request_id="a1b2c3"/>
    </Workflows>
</DeleteWorkflowsRequest>

Example Response

<DeleteWorkflowsResponse>
    <Workflows>
        <Workflow request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowID>28</WorkflowID>
        </Workflow>
    </Workflows>
</DeleteWorkflowsResponse>

Get Workflow Activities

This API call retrieves all the workflow activities defined within a workflow.

Input

Output

Success or failure. List of workflow activities of a workflow.

Example Request

<GetWorkflowActivitiesRequest workflow_id="29" show_options="true"/>

Example Response

<GetWorkflowActivitiesResponse>
    <Result>Success</Result>
    <WorkflowActivities>
        <WorkflowActivity>
            <WorkflowActivityID>71</WorkflowActivityID>
            <WorkflowID>29</WorkflowID>
            <OnlyIfCampaignIDLike/>
            <Activity>Reserve Room</Activity>
            <AutoAssignToContactID>0</AutoAssignToContactID>
            <SendReminderHourBeforeDue>N</SendReminderHourBeforeDue>
            <Recurring>Once</Recurring>
            <Notes/>
            <MediaID>0</MediaID>
            <OpportunityPhaseID>1</OpportunityPhaseID>
            <OpportunitySourceID>1</OpportunitySourceID>
            <OpportunityValue>0</OpportunityValue>
            <OpportunityNotes/>
            <SmsMessage/>
            <DelayType>Calendar</DelayType>
            <DelayDays>1</DelayDays>
            <DelayTime/>
        </WorkflowActivity>
    </WorkflowActivities>
    <Options>
        <WorkflowActivityTypes>
            <WorkflowActivityType>
                <Label>Make Note</Label>
            </WorkflowActivityType>
            <WorkflowActivityType>
                <Label>Video Follow-Up</Label>
            </WorkflowActivityType>
            <WorkflowActivityType>
                <Label>Presentation</Label>
            </WorkflowActivityType>
            <WorkflowActivityType>
                <Label>Send Personal Email</Label>
            </WorkflowActivityType>
            <WorkflowActivityType>
                <Label>Create Opportunity</Label>
            </WorkflowActivityType>
            <WorkflowActivityType>
                <Label>Activate Workflow A</Label>
            </WorkflowActivityType>
        </WorkflowActivityTypes>
        <CampaignFilters>
            <CampaignFilter>
                <CampaignID>test</CampaignID>
                <CampaignLabel>Only contacts from campaign test</CampaignLabel>
            </CampaignFilter>
        </CampaignFilters>
        <Recurrings>
            <Recurring>
                <Label>Once</Label>
            </Recurring>
            <Recurring>
                <Label>Weekly</Label>
            </Recurring>
            <Recurring>
                <Label>Every 2 Weeks</Label>
            </Recurring>
            <Recurring>
                <Label>Every 3 Weeks</Label>
            </Recurring>
            <Recurring>
                <Label>Every 4 Weeks</Label>
            </Recurring>
            <Recurring>
                <Label>Monthly</Label>
            </Recurring>
            <Recurring>
                <Label>Every 6 Weeks</Label>
            </Recurring>
            <Recurring>
                <Label>Every 2 Months</Label>
            </Recurring>
            <Recurring>
                <Label>Every 3 Months</Label>
            </Recurring>
            <Recurring>
                <Label>Every 6 Months</Label>
            </Recurring>
            <Recurring>
                <Label>Every Year</Label>
            </Recurring>
        </Recurrings>
        <DelayTypes>
            <DelayType>
                <Label>Business</Label>
            </DelayType>
            <DelayType>
                <Label>Calendar</Label>
            </DelayType>
        </DelayTypes>
        <AutoAssignToContacts>
            <AutoAssignToContact>
                <ContactID>-1</ContactID>
                <Firstname>Default contact assigned to workflow</Firstname>
                <Lastname/>
                <Email/>
            </AutoAssignToContact>
            <AutoAssignToContact>
                <ContactID>0</ContactID>
                <Firstname>Account</Firstname>
                <Lastname>Owner</Lastname>
                <Email/>
            </AutoAssignToContact>
            <AutoAssignToContact>
                <ContactID>2</ContactID>
                <Firstname>Test</Firstname>
                <Lastname>Wade</Lastname>
                <Email>test.contact@gmail.com</Email>
            </AutoAssignToContact>
        </AutoAssignToContacts>
        <PersonalEmails>
            <PersonalEmail>
                <MediaID>112</MediaID>
                <MediaDescription>Test email template</MediaDescription>
                <FileExtension>html</FileExtension>
                <MediaDirectoryID>2</MediaDirectoryID>
                <MediaDirectoryName>Email Templates</MediaDirectoryName>
            </PersonalEmail>
        </PersonalEmails>
        <OpportunityPhases>
            <OpportunityPhase>
                <PhaseID>1</PhaseID>
                <Phase>New Lead</Phase>
                <PhaseNumber>1</PhaseNumber>
                <WarningDays>5</WarningDays>
            </OpportunityPhase>
            <OpportunityPhase>
                <PhaseID>2</PhaseID>
                <Phase>Qualified Lead</Phase>
                <PhaseNumber>2</PhaseNumber>
                <WarningDays>5</WarningDays>
            </OpportunityPhase>
        </OpportunityPhases>
        <OpportunitySources>
            <OpportunitySource>
                <SourceID>5</SourceID>
                <Source>Cold Call</Source>
            </OpportunitySource>
            <OpportunitySource>
                <SourceID>2</SourceID>
                <Source>Internet Search</Source>
            </OpportunitySource>
        </OpportunitySources>
    </Options>
</GetWorkflowActivitiesResponse>

Add Workflow Activities

This API call allows the user to add a new workflow activity of a workflow.

Input

Output

Success or failure for each workflows activities.

Example Request (Activity)

<AddWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity request_id="a1b2c3">
            <Activity>Make Note</Activity>
            <OnlyIfCampaignIDLike>test</OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>5</DelayDays>
            <DelayTime>0510</DelayTime>
            <SendReminderHourBeforeDue>N</SendReminderHourBeforeDue>
            <Recurring>Weekly</Recurring>
            <Notes>The quick brown fox jumps over the lazy dog.</Notes>
        </WorkflowActivity>
    </WorkflowActivities>
</AddWorkflowActivitiesRequest>

Example Request (Send Personal Email)

<AddWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity>
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <MediaID>1</MediaID>
        </WorkflowActivity>
    </WorkflowActivities>
</AddWorkflowActivitiesRequest>

Example Request (Send Personal SMS)

<AddWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity>
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <SmsMessage>SMS text goes here.<SmsMessage>
        </WorkflowActivity>
    </WorkflowActivities>
</AddWorkflowActivitiesRequest>

Example Request (Create Opportunity)

<AddWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity>
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <OpportunityPhaseID>1</OpportunityPhaseID>
            <OpportunitySourceID>5</OpportunitySourceID>
            <OpportunityValue>55</OpportunityValue>
            <OpportunityNotes>Opportunity lorem notes.</OpportunityNotes>
        </WorkflowActivity>
    </WorkflowActivities>
</AddWorkflowActivitiesRequest>

Example Response

<AddWorkflowActivitiesResponse>
    <WorkflowActivities>
        <WorkflowActivity request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowActivityID>77</WorkflowActivityID>
        </WorkflowActivity>
    </WorkflowActivities>
</AddWorkflowActivitiesResponse>

Edit Workflow Activities

This API call allows the user to update and modify existing workflow activities defined within a workflow.

Input

Output

Success or failure for each workflows activities.

Example Request (Activity)

<EditWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity workflow_activity_id="75" request_id="a1b2c3">
            <Activity>Make Note</Activity>
            <AutoAssignToContactID>0</AutoAssignToContactID>
            <OnlyIfCampaignIDLike>test</OnlyIfCampaignIDLike>
            <DelayDays>5</DelayDays>
            <DelayType>Business</DelayType>
            <DelayTime>0510</DelayTime>
            <SendReminderHourBeforeDue>N</SendReminderHourBeforeDue>
            <Recurring>Weekly</Recurring>
            <Notes>The quick brown fox jumps over the lazy dog.</Notes>
        </WorkflowActivity>
    </WorkflowActivities>
</EditWorkflowActivitiesRequest>

Example Request (Send Personal Email)

<EditWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity workflow_activity_id="75">
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <MediaID>1</MediaID>
        </WorkflowActivity>
    </WorkflowActivities>
<EditdWorkflowActivitiesRequest>

Example Request (Send Personal SMS)

<EditWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity workflow_activity_id="75">
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <SmsMessage>SMS text goes here.<SmsMessage>
        </WorkflowActivity>
    </WorkflowActivities>
<EditdWorkflowActivitiesRequest>

Example Request (Create Opportunity)

<EditWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity workflow_activity_id="75">
            <Activity>Create Opportunity</Activity>
            <OnlyIfCampaignIDLike></OnlyIfCampaignIDLike>
            <DelayType>Business</DelayType>
            <DelayDays>0</DelayDays>
            <DelayTime>9999</DelayTime>
            <OpportunityPhaseID>1</OpportunityPhaseID>
            <OpportunitySourceID>5</OpportunitySourceID>
            <OpportunityValue>55</OpportunityValue>
            <OpportunityNotes>Opportunity lorem notes.</OpportunityNotes>
        </WorkflowActivity>
    </WorkflowActivities>
<EditdWorkflowActivitiesRequest>

Example Response

<EditWorkflowActivitiesResponse>
    <WorkflowActivities>
        <WorkflowActivity request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowActivityID>75</WorkflowActivityID>
        </WorkflowActivity>
    </WorkflowActivities>
</EditWorkflowActivitiesResponse>

Delete Workflow Activities

This API call allows the user to delete one or more existing workflow activities defined within a workflow.

Input

Output

Success or failure for each workflows activities.

Example Request

<DeleteWorkflowActivitiesRequest workflow_id="29">
    <WorkflowActivities>
        <WorkflowActivity workflow_activity_id="76" request_id="a1b2c3"/>
    </WorkflowActivities>
</DeleteWorkflowActivitiesRequest>

Example Response

<DeleteWorkflowActivitiesResponse>
    <WorkflowActivities>
        <WorkflowActivity request_id="a1b2c3">
            <Result>Success</Result>
            <WorkflowActivityID>75</WorkflowActivityID>
        </WorkflowActivity>
    </WorkflowActivities>
</DeleteWorkflowActivitiesResponse>

Get Activate Workflows

This API call retrieves the selection options for request inputs that are used in ‘Activate Workflow’ API request.

Input

Output

Success or failure. List of selection options values.

Example Request

<GetActivateWorkflowsRequest contact_id="750"/>

Example Response

<GetActivateWorkflowsResponse>
    <Result>Success</Result>
    <Workflows>
        <Workflow>
            <WorkflowID>29</WorkflowID>
            <WorkflowName>Spec</WorkflowName>
            <TotalActivities>4</TotalActivities>
        </Workflow>
        <Workflow>
            <WorkflowID>4</WorkflowID>
            <WorkflowName>Test</WorkflowName>
            <TotalActivities>2</TotalActivities>
        </Workflow>
    </Workflows>
    <AssignedTos>
        <AssignedTo>
            <ContactID>0</ContactID>
            <Firstname>Account</Firstname>
            <Lastname>Owner</Lastname>
            <Email>Todd Wade</Email>
        </AssignedTo>
        <AssignedTo>
            <ContactID>623</ContactID>
            <Firstname>Shared</Firstname>
            <Lastname>Test</Lastname>
            <Email>test.contact2@gmail.com</Email>
        </AssignedTo>
    </AssignedTos>
    <ConnectedTos>
        <OpportunityID>1</OpportunityID>
        <OpportunityTitle>Test Opportunity</OpportunityTitle>
    </ConnectedTos>
    <AssociatedWiths>
        <AssociatedWith>
            <GroupID>1</GroupID>
            <GroupName>My Group</GroupName>
        </AssociatedWith>
        <AssociatedWith>
            <GroupID>4</GroupID>
            <GroupName>Members Group</GroupName>
        </AssociatedWith>
    </AssociatedWiths>
</GetActivateWorkflowsResponse>