tessguefen
10/31/2015 - 5:21 AM

Automation / Mailchimp 3.0 API / BB

Automation / Mailchimp 3.0 API / BB

<mvt:assign name="g.listURL" value="'https://usX.api.mailchimp.com/3.0/lists/xxxxxxxxxx/members'" />
<mvt:assign name="g.triggerUrl" value="'https://usX.api.mailchimp.com/3.0/automations/xxxxxxxxxx/emails/xxxxxxxxxx/queue'" />
<mvt:foreach iterator="order" array="admin_order:orders">
	<mvt:comment>
	|
	| Create JSON array to send
	| "Add" to Automation Beta List
	|
	</mvt:comment>

	<mvt:assign name="g.listData" value="'{\"email_address\":\"' $ l.settings:order:ship_email $ '\",\"status\":\"subscribed\",\"merge_fields\":{\"FNAME\":\"' $ l.settings:order:ship_fname $ '\",\"LNAME\":\"' $ l.settings:order:ship_lname $ '\"}}'" />

	<mvt:call action="g.listURL" method="'RAW'" headers="'Authorization: apikey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-usX' $ asciichar( 13 ) $ asciichar( 10 )" content-type="application/json" fields="'listData'">
		<mvt:assign name="l.null" value="miva_json_decode(s.callvalue, l.listurlReturn)" />
	</mvt:call>

	<mvt:comment>
	|
	| If Email is already on the list, do not trigger the email again (to speed this up)
	| If email was just added, trigger email.
	|
	</mvt:comment>

	<mvt:if expr="l.listurlReturn:title NE 'Member Exists'">
		<mvt:assign name="g.triggerData" value="'{\"email_address\":\"' $ l.settings:order:ship_email $ '\"}'" />

		<mvt:call action="g.triggerUrl" method="'RAW'" headers="'Authorization: apikey xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-usX' $ asciichar( 13 ) $ asciichar( 10 )" content-type="application/json" fields="'triggerData'">
			Successfully Triggered Automation for &mvt:order:ship_email; (Order # &mvt:order:id;)<br />
		</mvt:call>
	</mvt:if>
</mvt:foreach>