The example below uses AMPScript and shows creating a subscriber, using an existing triggered send definition by customer key, and executing the triggered send using that definition to that subscriber.
%%[
VAR @sub, @attr, @list, @statusCode, @statusMsg, @subKey, @errorCode
SET @subKey = RequestParameter("EmailAddress")
SET @sub = CreateObject("Subscriber")
IF NOT EMPTY(@subKey) THEN SetObjectProperty(@sub, "SubscriberKey", @subKey)
ENDIF
SetObjectProperty(@sub, "EmailAddress", RequestParameter("EmailAddress"))
IF NOT IsNull(RequestParameter("PreferredStore")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "PreferredStore")
SetObjectProperty(@attr, "Value", RequestParameter("PreferredStore"))
AddObjectArrayItem(@sub, "Attributes", @attr)
var @PriceZone
SET @PriceZone = LookUp("store", "price_zone_key", "store_key", RequestParameter("PreferredStore"))
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "PriceZone")
SetObjectProperty(@attr, "Value", @PriceZone)
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("First Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "First Name")
SetObjectProperty(@attr, "Value", RequestParameter("First Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Middle Initial")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Middle Initial")
SetObjectProperty(@attr, "Value", RequestParameter("Middle Initial"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Last Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Last Name")
SetObjectProperty(@attr, "Value", RequestParameter("Last Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Company Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Company Name")
SetObjectProperty(@attr, "Value", RequestParameter("Company Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Address")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Address")
SetObjectProperty(@attr, "Value", RequestParameter("Address"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Address 2")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Address 2")
SetObjectProperty(@attr, "Value", RequestParameter("Address 2"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("State")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "State")
SetObjectProperty(@attr, "Value", RequestParameter("State"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("City")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "City")
SetObjectProperty(@attr, "Value", RequestParameter("City"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Zip")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Zip")
SetObjectProperty(@attr, "Value", RequestParameter("Zip"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Phone Number")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Phone Number")
SetObjectProperty(@attr, "Value", RequestParameter("Phone Number"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Events")
IF NOT IsNull(RequestParameter("Events")) THEN
SetObjectProperty(@attr, "Value", "Y")
ELSE
SetObjectProperty(@attr, "Value", "N")
ENDIF
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "News")
IF NOT IsNull(RequestParameter("News")) THEN
SetObjectProperty(@attr, "Value", "Y")
ELSE
SetObjectProperty(@attr, "Value", "N")
ELSE
AddObjectArrayItem(@sub, "Attributes", @attr)
IF NOT IsNull(RequestParameter("HowReceived")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "How Received")
SetObjectProperty(@attr, "Value", RequestParameter("HowReceived"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "ChannelMemberID")
SetObjectProperty(@attr, "Value", "INSERT NUMBER HERE")
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "date_added")
SetObjectProperty(@attr, "Value", Format(Now(),"MM/dd/yyyy"))
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @list = CreateObject("SubscriberList")
SetObjectProperty(@list, "Status", "Active")
SetObjectProperty(@list, "ID", "INSERT NUMBER HERE")
SetObjectProperty(@list, "Action", "create")
AddObjectArrayItem(@sub, "Lists", @list)
SET @statusCode = InvokeCreate(@sub, @statusMsg, @errorCode)
IF @statusCode != "OK" THEN
RaiseError(@statusMsg, 0, @statusCode, @errorCode)
ELSE
VAR @ts, @tsDef, @ts_sub, @ts_attr, @tsctr, @ts_subkey, @ts_statusCode, @ts_statusMsg, @owner, @client
SET @ts = CreateObject("TriggeredSend")
SET @tsDef = CreateObject("TriggeredSendDefinition")
SET @ts_subkey = RequestParameter("EmailAddress")
SetObjectProperty(@tsDef, "CustomerKey", "4466")
SetObjectProperty(@ts, "TriggeredSendDefinition", @tsDef)
SET @ts_sub = CreateObject("Subscriber")
SetObjectProperty(@ts_sub, "EmailAddress", RequestParameter("EmailAddress"))
IF NOT EMPTY(@ts_subkey) THEN
SetObjectProperty(@ts_sub, "SubscriberKey", @ts_subkey)
ELSE
SetObjectProperty(@ts_sub, "SubscriberKey", RequestParameter("EmailAddress"))
ENDIF
SET @owner = CreateObject("Owner")
SET @client = CreateObject("ClientID")
SetObjectProperty(@client, "ID", "INSERT NUMBER HERE")
SetObjectProperty(@owner, "Client", @client)
SetObjectProperty(@ts_sub, "Owner", @owner)
AddObjectArrayItem(@ts, "Subscribers", @ts_sub)
SET @ts_statusCode = InvokeCreate(@ts, @ts_statusMsg, @errorCode)
IF @ts_statusCode != "OK" THEN
RaiseError(concat(@ts_statusMsg,@ts_subkey,@ts), 0, @ts_statusCode, @errorCode)
ENDIF
ENDIF
]%%
VAR @sub, @attr, @list, @statusCode, @statusMsg, @subKey, @errorCode
SET @subKey = RequestParameter("EmailAddress")
SET @sub = CreateObject("Subscriber")
IF NOT EMPTY(@subKey) THEN SetObjectProperty(@sub, "SubscriberKey", @subKey)
ENDIF
SetObjectProperty(@sub, "EmailAddress", RequestParameter("EmailAddress"))
IF NOT IsNull(RequestParameter("PreferredStore")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "PreferredStore")
SetObjectProperty(@attr, "Value", RequestParameter("PreferredStore"))
AddObjectArrayItem(@sub, "Attributes", @attr)
var @PriceZone
SET @PriceZone = LookUp("store", "price_zone_key", "store_key", RequestParameter("PreferredStore"))
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "PriceZone")
SetObjectProperty(@attr, "Value", @PriceZone)
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("First Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "First Name")
SetObjectProperty(@attr, "Value", RequestParameter("First Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Middle Initial")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Middle Initial")
SetObjectProperty(@attr, "Value", RequestParameter("Middle Initial"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Last Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Last Name")
SetObjectProperty(@attr, "Value", RequestParameter("Last Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Company Name")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Company Name")
SetObjectProperty(@attr, "Value", RequestParameter("Company Name"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Address")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Address")
SetObjectProperty(@attr, "Value", RequestParameter("Address"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Address 2")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Address 2")
SetObjectProperty(@attr, "Value", RequestParameter("Address 2"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("State")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "State")
SetObjectProperty(@attr, "Value", RequestParameter("State"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("City")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "City")
SetObjectProperty(@attr, "Value", RequestParameter("City"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Zip")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Zip")
SetObjectProperty(@attr, "Value", RequestParameter("Zip"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
IF NOT IsNull(RequestParameter("Phone Number")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Phone Number")
SetObjectProperty(@attr, "Value", RequestParameter("Phone Number"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "Events")
IF NOT IsNull(RequestParameter("Events")) THEN
SetObjectProperty(@attr, "Value", "Y")
ELSE
SetObjectProperty(@attr, "Value", "N")
ENDIF
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "News")
IF NOT IsNull(RequestParameter("News")) THEN
SetObjectProperty(@attr, "Value", "Y")
ELSE
SetObjectProperty(@attr, "Value", "N")
ELSE
AddObjectArrayItem(@sub, "Attributes", @attr)
IF NOT IsNull(RequestParameter("HowReceived")) THEN
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "How Received")
SetObjectProperty(@attr, "Value", RequestParameter("HowReceived"))
AddObjectArrayItem(@sub, "Attributes", @attr)
ENDIF
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "ChannelMemberID")
SetObjectProperty(@attr, "Value", "INSERT NUMBER HERE")
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @attr = CreateObject("Attribute")
SetObjectProperty(@attr, "Name", "date_added")
SetObjectProperty(@attr, "Value", Format(Now(),"MM/dd/yyyy"))
AddObjectArrayItem(@sub, "Attributes", @attr)
SET @list = CreateObject("SubscriberList")
SetObjectProperty(@list, "Status", "Active")
SetObjectProperty(@list, "ID", "INSERT NUMBER HERE")
SetObjectProperty(@list, "Action", "create")
AddObjectArrayItem(@sub, "Lists", @list)
SET @statusCode = InvokeCreate(@sub, @statusMsg, @errorCode)
IF @statusCode != "OK" THEN
RaiseError(@statusMsg, 0, @statusCode, @errorCode)
ELSE
VAR @ts, @tsDef, @ts_sub, @ts_attr, @tsctr, @ts_subkey, @ts_statusCode, @ts_statusMsg, @owner, @client
SET @ts = CreateObject("TriggeredSend")
SET @tsDef = CreateObject("TriggeredSendDefinition")
SET @ts_subkey = RequestParameter("EmailAddress")
SetObjectProperty(@tsDef, "CustomerKey", "4466")
SetObjectProperty(@ts, "TriggeredSendDefinition", @tsDef)
SET @ts_sub = CreateObject("Subscriber")
SetObjectProperty(@ts_sub, "EmailAddress", RequestParameter("EmailAddress"))
IF NOT EMPTY(@ts_subkey) THEN
SetObjectProperty(@ts_sub, "SubscriberKey", @ts_subkey)
ELSE
SetObjectProperty(@ts_sub, "SubscriberKey", RequestParameter("EmailAddress"))
ENDIF
SET @owner = CreateObject("Owner")
SET @client = CreateObject("ClientID")
SetObjectProperty(@client, "ID", "INSERT NUMBER HERE")
SetObjectProperty(@owner, "Client", @client)
SetObjectProperty(@ts_sub, "Owner", @owner)
AddObjectArrayItem(@ts, "Subscribers", @ts_sub)
SET @ts_statusCode = InvokeCreate(@ts, @ts_statusMsg, @errorCode)
IF @ts_statusCode != "OK" THEN
RaiseError(concat(@ts_statusMsg,@ts_subkey,@ts), 0, @ts_statusCode, @errorCode)
ENDIF
ENDIF
]%%