• Documentation
  • SOAP
  • references
  • SIGNUP AUTOMATION
  • bus_facade_campaign_automationBySignup


    **Description :** Used in the management of sign up automations within the platform.
    **Default Methods** Please ensure you're familiar with... - [**Introduction to Beans**](/documentation/soap/gettingstarted/beans) - [**Requests and Responses**](/documentation/soap/gettingstarted/requests) - [**Anatomy of a session**](/documentation/soap/gettingstarted/session)

    Example Process - Creating a Sign Up Automation (Without double optin)

    [**WSDL**](http://paint.pure360.com/paint.pure360.com/ctrlPaint.wsdl) *Our WSDL defines our web service and where to locate our web service. In understanding these examples please familiarise yourself with the handleRequest (paintRequest / paintResponse)*
    **Step 1 :** Begin by searching for the list id of the list that this automation should be associated with.... * Use the contextId to reference the current session in progress (generated during a login request - [bus_facade_context](/documentation/soap/gettingstarted/references/context) ) * To access the list entities use the campaign list entry point / gateway * Perform a search process with the entity field "listName" populated with the target listName to return the listId for that list. **Example Request / Response:**
    paintRequest:
    contextId   string : C-KFDsCMMHXpDUi0ltN0p3FvF
    className   string : bus_facade_campaign_list
    processName string : search
    entityData  array  : 'listName' => "Master List"
    processData array  : null
    paintResponse:
    Result   array :
             'result'     => "success"
             'resultData' => array : 
             				 'bus_search_campaign_list' => ""
             				 ...      => ...
             				 'idData' => array : 
             				             'listId' => 123456

    **Step 2:** Next search for the message Id of the message that the automation should trigger... * Use the contextId to reference the current session in progress (generated during a login request - [bus_facade_context](/documentation/soap/gettingstarted/references/context) ) * To access the message entities use the campaign message entry point / gateway * Perform a search process with the entity field "messageName" populated with the target message name to return the messageId for that message. **Example Request / Response:**
    paintRequest:
    contextId   string : C-KFDsCMMHXpDUi0ltN0p3FvF
    className   string : bus_facade_campaign_message
    processName string : search
    entityData  array  : 'messageName' => "Welcome, and thank you"
    processData array  : null
    paintResponse:
    Result   array :
             'result'     => "success"
             'resultData' => array : 
             				 'bus_search_campaign_message' => ""
             				 ...      => ...
             				 'idData' => array : 
             				             'messageId' => 123456

    **Step 3:** Next create an empty automation entity in the bean store and obtain a reference to this... * Use the contextId to reference the current session in progress (generated during a login request - [bus_facade_context](/documentation/soap/gettingstarted/references/context) * To access the signup automation entities use the campaign automationBySignup entry point / gateway. * Perform a create process without any entity fields to generate the new automation bean. **Example Request / Response:**
    paintRequest:
    contextId	string	: 	C-KFDsCMMHXpDUi0ltN0p3FvF
    className 	string	: 	bus_facade_campaign_automationBySignup
    processName string	: 	create
    entityData 	array	:   null
    processData array	:   null
    paintResponse:
    Result   array	: 	
    		 'result'     => "success"
    		 'resultData' => array : 
                             ‘bus_entity_campaign_automationBySignup  => array:
    					                                               ... => ...
                                                                       … All entity variables ...
    					                                               ... => ...
    					                                               'beanId' => ID for new empty automation 
                                                                                   bean in bean store

    **Step 4:** Next choose the wrtable attributes, both required and optional and update the new entity bean in the bean store... * Use the contextId to reference the current session in progress (generated during a login request) - context facade * To access the signup automation entities use the campaign automationBySignup entry point / gateway. * Perform an update process with the writeable parameters that make up the singup automation creation process, the bean id of the new bean entity in the bean store returned from the create request, plus any optional parameters. **Example Request / Response**
    paintRequest:
    contextId	string	: 	C-KFDsCMMHXpDUi0ltN0p3FvF
    className 	string	: 	bus_facade_campaign_automationBySignup
    processName string	: 	update
    entityData 	array	:	'automationName_base64'	=> "V2VsY29tZSBBdXRvbWF0aW9u"
    								'welcomeEnabledInd'     	=> "Y"
    								'welcomeMessageId'      	=>  Id of the message returned during the search
    								'listId'                	=> Id of the list returned during the search
    								'doubleOptinEnabledInd' 	=> 'N'
    								'beanId'                	=> ID of the empty bean returned during the create
    							    ... => ...
                                    ... Required & optional writable variables...
    							    ... => ...
    processData *array*		: 	null
    paintResponse:
    Result   array :
    		 'result' => "success"

    Step 5 : Next complete a store request with the bean id of the new entity in the bean store to write this back to the platform and remove the bean from the bean store... * Use the contextId to reference the current session in progress (generated during a login request) - context facade * To access the signup automation entities use the campaign automationBySignup entry point / gateway. * Perform a store process with the entity data parameter as the bean id of the new entity that has been created and updated. **Example Request / Response**
    paintRequest:
    contextId	string : 	C-KFDsCMMHXpDUi0ltN0p3FvF
    className 	string	: 	bus_facade_campaign_automationBySignup
    processName string	: 	store
    entityData 	array	:	'beanId' 	=> ID of the entity bean in the bean store
    processData array	:	null
    paintResponse:
    Result   array :
    		 'result'     => "success"
             'resultData' => array :
    					     'bus_entity_campaign_automationBySignup_key' => array : 
    					     																 'automationId' => 96874
    						 'listId' => ""
    						 'beanName' => "bus_entity_campaign_automationBySignup"

    **Step 6:** Finally use the automation Id returned from the store request and the overall automation facade to toggle the status to ACTIVE * Use the contextId to reference the current session in progress (generated during a login request) - *link here* * To access the automation entities use the campaign automation entry point/gateway * Perform a toggleStatus process with the process data parameter as the automation id of the newly created date automation entity. **Example Request / Response**
    paintRequest:
    contextId   string  :   C-KFDsCMMHXpDUi0ltN0p3FvF
    className   string  :   bus_facade_campaign_automationBySignup
    processName string  :   toggleStatus
    entityData  array   :   null
    processData array   :   'automationId'  => ID of the new entityem>
    paintResponse:
    Result   array :
             'result' => "success"

    bus_entity_campaign_automationBySignup

    Writeable Variables : STORE / UPDATE (Required)

    Name Example Description
    automationName_base64
    "VEVTVA=="
    The recommended way to transfer string data is via base64 encoding. The unique name for this automation base 64 encoded.
    automationName
    "Welcome Trigger"
    If there is no way to base 64 encode the string then this variable can be used as the unique name for this automation within the platform.
    doubleOptinEnabledInd
    "Y"
    Indicate whether this automation will use double optin (i.e. only passively opt the user in till they receive the double optin email and confirm their email address, therefore changing the state of their address to fully opted in and able to send to) : Optional if welcomeEnabledInd = Y
    doubleOptinMessageId
    125487
    ID of the custom double optin message to send. Although this can be omitted and a default used, we would highly recommend having a unique custom email that includes this link. Only reqiored if doubleOptinEnabledInd = Y
    listId
    123456
    ID of the list to associate/associated with this automation
    welcomeEnabledInd
    "Y"
    Indicate whether this automation will send a welcome message (will only send to fully opted in recipient, so if double opt in is enabled this will NOT trigger untill the recipient confirms their signup) : Optional if doubleOptinEnabledInd = Y
    welcomeMessageId
    123456
    ID of the welcome message to send with this automation assuming the welcome state is enabled (see above) : Only required if welcomeEnabledInd = Y

    Writeable Variables : STORE / UPDATE (Optional)

    Name Example Description
    allowAutoAddOptinUrlFieldInd
    "Y"
    Automatically add the optin URL field to the email selected as the double optin email, so if there is no specific doubleOptin email, this can me used to add a confirmation link to an existing email

    Read-Only Variables : CREATE / LOAD / RELOAD

    Name Example Description
    amendedBy
    "test.sys"
    Username of the user that uploaded or amended the list last, only populated in an existing list
    amendedDtTm
    "24/02/2014 14:07:00"
    The date time of the last amendment to this list, only populated in an existing list
    allDoubleOptinEmails
    array(
       454878 => "confirmation email"
    )
    A list of valid emails that can be selected for use as doubleOptin emails
    allWelcomeEmails
    array(
       565454 => "welcome email"
    )
    A list of valid emails that can be selected for use as welcome emails
    allLists
    array(
        123456 =>"Master List"
      )
    A list of contact lists that can be selected for use with this automation
    automationId
    878454
    Unique identifier for this automation
    automationId
    "ACTIVE"
    "INACTIVE"
    Unique identifier for this automation
    automationType
    "SIGNUP_INFINITE"
    "SIGNUP_PASSIVE"
    "DOUBLE_OPTIN"
    The type of automation that this record represents. DOUBLE_OPTIN = signee double opts in from an email, SIGNUP_INFINITE = sign up to a list and get added as infinite [no double optin], SIGNUP_PASSIVE = sign up to a list and get added as passive [require double optin]
    automationId
    "confrimation email"
    The name of the selected double optin email