markety 1.4.3 → 2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +5 -13
  2. data/.gitignore +3 -0
  3. data/README.md +66 -15
  4. data/Rakefile +1 -1
  5. data/example_xml/get_lead_failure.xml +42 -0
  6. data/example_xml/get_lead_success.xml +63 -0
  7. data/example_xml/get_lead_success_two_leads.xml +88 -0
  8. data/example_xml/list_op_add_to_list_success.xml +42 -0
  9. data/example_xml/list_op_is_member_of_list_failure.xml +50 -0
  10. data/example_xml/list_op_is_member_of_list_success.xml +51 -0
  11. data/example_xml/list_op_remove_from_list_failure.xml +50 -0
  12. data/example_xml/list_op_remove_from_list_success.xml +42 -0
  13. data/example_xml/sync_lead_failure.xml +60 -0
  14. data/example_xml/sync_lead_success.xml +78 -0
  15. data/lib/markety.rb +26 -1
  16. data/lib/markety/authentication_header.rb +3 -3
  17. data/lib/markety/client.rb +35 -141
  18. data/lib/markety/command.rb +11 -0
  19. data/lib/markety/command/get_lead.rb +27 -0
  20. data/lib/markety/command/list_operation.rb +68 -0
  21. data/lib/markety/command/sync_lead.rb +55 -0
  22. data/lib/markety/enums.rb +18 -16
  23. data/lib/markety/lead.rb +69 -0
  24. data/lib/markety/lead_key.rb +5 -4
  25. data/lib/markety/response.rb +15 -0
  26. data/lib/markety/response/generic_response.rb +45 -0
  27. data/lib/markety/response/get_lead_response.rb +35 -0
  28. data/lib/markety/response/list_operation_response.rb +30 -0
  29. data/lib/markety/response/response_factory.rb +27 -0
  30. data/lib/markety/response/sync_lead_response.rb +32 -0
  31. data/lib/markety/version.rb +1 -3
  32. data/spec/markety/lead_key_spec.rb +10 -11
  33. data/spec/markety/{lead_record_spec.rb → lead_spec.rb} +13 -30
  34. data/spec/markety/response/get_lead_response_spec.rb +170 -0
  35. data/spec/markety/response/list_operation_response_spec.rb +76 -0
  36. data/spec/markety/response/sync_lead_response_spec.rb +107 -0
  37. data/spec/spec_helper.rb +4 -0
  38. data/spec/support/savon_helper.rb +14 -0
  39. metadata +61 -33
  40. data/lib/markety/lead_record.rb +0 -73
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NTlkNGZhOTlhYmNlYzNmMGRhZjkzZTRjYWNjNWY0MThiM2VlNDI1Nw==
5
- data.tar.gz: !binary |-
6
- YjQ0NzNmZGViYmE1ZjM5YWY0NDAzMjZlMTRiOGY0ODgzYjAxYWIzZQ==
2
+ SHA1:
3
+ metadata.gz: 25aa090dddf2dca7a190899e70ce66ac662ecab3
4
+ data.tar.gz: b119fbfeb5efaa8d15c7d69f47981bc21fa46dd8
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MWNkNzU4OWIwMTQ1MTBhZDM0N2QzMjZmMThiMTYyYWM2YmQxNTUzNjk4OGM3
10
- ZjVkYzkzNzM4OWMzZDdkZjkzYTMwODJiMzc2ZDJmYTM1ZWE3NjFhOTU3YjU4
11
- MTY5NWY2OWNmYmY4YWIyZTE5NWZmMWJlZmVhYzFmYzlkZjU3MDg=
12
- data.tar.gz: !binary |-
13
- MGJhOTM5ZWMwMDNkN2UzZmVkNzAzNTQ2NDIzNjFkOWZhZTUxMWI5OGZmODkx
14
- MTRiNWM2Yjk1NGM5YTNiZjcwN2E5MDM0YmVkZTk2ZDc4ODliYjQzZTQ5Mzg3
15
- ZGJhYmEyMDdmNGM3OGM1N2JhZjdlZGZlN2U3YWM3MGZhNTY2NGQ=
6
+ metadata.gz: 9464756adc7f3d10e1311e91c5ed47f8cd8a411654b6592a43c05f1fa6e5dcfc3d151d4ee4b1066616dbf28d788f37d37454e62b7c4c1d9d224ad6c13530b218
7
+ data.tar.gz: 7ede8c5d94a769c3bf42b6ffd4fcc27e618b770ddae340c32538e05ea94fa67cb77adc1cc1a9476e1beb07d5ee74fcb9d7d2734d373eb4387c1642906ca21700
data/.gitignore CHANGED
@@ -39,3 +39,6 @@ Gemfile.lock
39
39
  *.o
40
40
  *.a
41
41
  mkmf.log
42
+
43
+ # vim
44
+ *.swp
data/README.md CHANGED
@@ -1,13 +1,13 @@
1
1
  # Markety
2
2
 
3
+ <!--
3
4
  [![Build Status](https://travis-ci.org/davidsantoso/markety.svg?branch=master)](https://travis-ci.org/davidsantoso/markety)
4
5
  [![Gem Version](https://badge.fury.io/rb/markety.svg)](http://badge.fury.io/rb/markety)
5
6
  [![Coverage Status](https://coveralls.io/repos/davidsantoso/markety/badge.png)](https://coveralls.io/r/davidsantoso/markety)
7
+ -->
6
8
 
7
9
  Easily integrate with the Marketo SOAP API to find and update leads.
8
10
 
9
- This is a fork off of the [Rapleaf marketo_gem] (https://github.com/Rapleaf/marketo_gem) but has been updated to work with Savon v2.3.1. It makes connecting to your Marketo database to find and update leads a snap. If you're having problems connecting to Marketo, please submit an issue as there have been lots of changes with [Savon] (https://github.com/savonrb/savon) lately.
10
-
11
11
  ## Install
12
12
  Add this your Gemfile:
13
13
 
@@ -17,35 +17,68 @@ gem 'markety'
17
17
 
18
18
  and run bundle install.
19
19
 
20
- ## Examples
20
+ ## Getting Started
21
21
 
22
+ Instantiate a new Markety client using your Marketo SOAP endpoint, User ID, and Encryption Key
22
23
  ```ruby
23
- # Instantiate a new Markety client using your Marketo SOAP endpoint, User ID, and Encryption Key
24
- client = Markety.new_client(USER_ID, ENCRYPTION_KEY, END_POINT)
24
+ client = Markety::Client.new(USER_ID, ENCRYPTION_KEY, END_POINT)
25
+ # or, if using a workspace:
26
+ client = Markety.::Client.new(USER_ID, ENCRYPTION_KEY, END_POINT, target_workspace: "ws_name")
27
+ ```
25
28
 
26
- # Get a lead from the Marketo database
27
- lead = client.get_lead_by_email("joe@example.com")
29
+ You can get leads from Marketo by idnum or by email. Markety returns a ``GetLeadResponse`` object
30
+ which is an array of leads. Getting a lead by idnum will return a single lead, however because
31
+ Marketo allows for an email address to be tied to more than one lead getting by email could
32
+ potentially result in an array of leads with the same email address.
33
+ ```ruby
34
+ # By idnum
35
+ lead = client.get_lead_by_idnum("123456").lead # Lead object (or nil)
36
+
37
+ # By email
38
+ leads = client.get_leads_by_email("joe@example.com").leads # array of Leads
39
+ ```
28
40
 
29
- # Update a lead record
41
+ After getting your leads, you can update their attributes before syncing.
42
+ ```ruby
43
+ # Update a leads email address
30
44
  lead.set_attribute("Email", "joe-schmoe@example.com")
31
45
 
32
46
  # Update a lead record with an attribute that isn't a string
33
- lead.set_attribute("Activated", true, "Boolean") # [1]
47
+ lead.set_attribute("Activated", true, "Boolean") # [1] see below
48
+ ```
34
49
 
50
+ Once you're ready to sync back, just tell Markety how you'd like it to sync. There are currently
51
+ 3 supported methods, "EMAIL", "MARKETO_ID" and "FOREIGN_ID"
52
+ ```
35
53
  # Sync the lead with Marketo
36
- response = client.sync_lead_record(lead)
54
+ response = client.sync_lead_record(lead, "EMAIL")
55
+ ```
37
56
 
57
+ There are a few available list operations available at the moment. Be sure to pass in the lead
58
+ idnum and not the lead itself to run the query.
59
+ ```ruby
38
60
  # Check if a lead is on a list
39
- client.is_member_of_list?('The_List_Name', lead.idnum)
61
+ client.is_member_of_list('The_List_Name', lead.idnum).list_operation_status? # true if on list
62
+ # (alternately, you can use `list_op_status?` or `lop_status?` to save some keystrokes)
40
63
 
41
64
  # Add a lead to a particular list
42
- client.add_to_list('The_List_Name', lead.idnum)
65
+ client.add_to_list('The_List_Name', lead.idnum).list_operation_status #true if successful add
43
66
 
44
67
  # Remove a lead from a particular list
45
- client.remove_from_list('The_List_Name', lead.idnum)
68
+ client.remove_from_list('The_List_Name', lead.idnum).list_operation_status #true if successful removal
46
69
  ```
47
70
 
48
- [1] Note that [the Marketo API does not let you create custom fields] (https://community.marketo.com/MarketoDiscussionDetail?id=90650000000PpyEAAS#j_id0:j_id2:j_id9:j_id10:apexideas:j_id248) at this time. In order to set a custom attribute through the API, it must first be added from the Admin interface.
71
+ Lastly, if you would like to create a lead in Marketo via markety, you can use the sync lead method the
72
+ same way you would use the syncy lead to update a lead. Just start by instantiating a Markety::Lead.
73
+ ```ruby
74
+ new_lead = Markety::Lead.new
75
+ new_lead.set_attribute("Email", "doge@suchemail.com")
76
+ response = client.sync_lead(new_lead, "EMAIL")
77
+ ```
78
+
79
+ Be sure you have the correct attribute fields. You can find those in your Market Admin dashboard.
80
+
81
+ [1] Note that [the Marketo API does not let you create custom fields] (https://community.marketo.com/MarketoDiscussionDetail?id=90650000000PpyEAAS#j_id0:j_id2:j_id9:j_id10:apexideas:j_id248) at this time. In order to set a custom attribute through the API, it must first be added from the Admin interface.
49
82
  _(Admin » Field Management » New Custom Field)_
50
83
 
51
84
  ## Options
@@ -55,6 +88,24 @@ _(Admin » Field Management » New Custom Field)_
55
88
  client = Markety.new_client(USER_ID, ENCRYPTION_KEY, END_POINT, { log: false })
56
89
  ```
57
90
 
91
+ ## Contributing
92
+
93
+ PRs are very welcome! Feel free to send a PR for any endpoint you might need. Unfortunately Markety
94
+ development has slowed a bit in the last few months.
95
+
96
+ 1. Fork it
97
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
98
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
99
+ 4. Push to the branch (`git push origin my-new-feature`)
100
+ 5. Create new Pull Request
101
+
102
+ ## To Do's
103
+ 1. More tests.
104
+ 2. Add campaign endpoints.
105
+
58
106
  ## Marketo Lead REST API
59
107
 
60
- Marketo is releasing a new REST API to manage leads on June 20, 2014 so be sure to check developers.marketo.com after that date for another lead management integration possibility. Markety will still be under active development for other Marketo API actions that are not yet supported with their REST API.
108
+ Marketo released a lead REST API on June 20, 2014 so be sure to check developers.marketo.com for another lead management integration possibility.
109
+
110
+ ## Authors
111
+ David Santoso and Grant Birchmeier.
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rspec/core/rake_task'
2
2
  require 'bundler/gem_tasks'
3
3
 
4
4
  RSpec::Core::RakeTask.new :spec do |task|
5
- task.rspec_opts = %w(--color --format nested)
5
+ task.rspec_opts = %w(--color --format documentation)
6
6
  end
7
7
 
8
8
  task default: :spec
@@ -0,0 +1,42 @@
1
+ REQUEST:
2
+
3
+ <?xml version="1.0" encoding="UTF-8"?>
4
+ <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="h
5
+ <SOAP-ENV:Header>
6
+ <ns1:AuthenticationHeader>
7
+ <mktowsUserId>xxx</mktowsUserId>
8
+ <requestSignature>xxx</requestSignature>
9
+ <requestTimestamp>2014-07-25T14:22:07-05:00</requestTimestamp>
10
+ </ns1:AuthenticationHeader>
11
+ </SOAP-ENV:Header>
12
+ <SOAP-ENV:Body>
13
+ <tns:paramsGetLead>
14
+ <leadKey>
15
+ <keyType>EMAIL</keyType>
16
+ <keyValue>pants@example.com</keyValue>
17
+ </leadKey>
18
+ </tns:paramsGetLead>
19
+ </SOAP-ENV:Body>
20
+ </SOAP-ENV:Envelope>
21
+
22
+
23
+
24
+ RESPONSE:
25
+
26
+ <?xml version="1.0" encoding="UTF-8"?>
27
+ <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
28
+ <SOAP-ENV:Body>
29
+ <SOAP-ENV:Fault>
30
+ <faultcode>SOAP-ENV:Client</faultcode>
31
+ <faultstring>20103 - Lead not found</faultstring>
32
+ <detail>
33
+ <ns1:serviceException xmlns:ns1="http://www.marketo.com/mktows/">
34
+ <name>mktServiceException</name>
35
+ <message>No lead found with EMAIL = pants@example.com (20103)</message>
36
+ <code>20103</code>
37
+ </ns1:serviceException>
38
+ </detail>
39
+ </SOAP-ENV:Fault>
40
+ </SOAP-ENV:Body>
41
+ </SOAP-ENV:Envelope>
42
+
@@ -0,0 +1,63 @@
1
+ REQUEST:
2
+
3
+ <?xml version="1.0" encoding="UTF-8"?>
4
+ <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.marketo.com/mktows/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.marketo.com/mktows/">
5
+ <SOAP-ENV:Header>
6
+ <ns1:AuthenticationHeader>
7
+ <mktowsUserId>xxx</mktowsUserId>
8
+ <requestSignature>xxx</requestSignature>
9
+ <requestTimestamp>2014-07-25T14:22:07-05:00</requestTimestamp>
10
+ </ns1:AuthenticationHeader>
11
+ </SOAP-ENV:Header>
12
+ <SOAP-ENV:Body>
13
+ <tns:paramsGetLead>
14
+ <leadKey>
15
+ <keyType>EMAIL</keyType>
16
+ <keyValue>foo@example.com</keyValue>
17
+ </leadKey>
18
+ </tns:paramsGetLead>
19
+ </SOAP-ENV:Body>
20
+ </SOAP-ENV:Envelope>
21
+
22
+ RESPONSE:
23
+
24
+ <?xml version="1.0" encoding="UTF-8"?>
25
+ <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://www.marketo.com/mktows/">
26
+ <SOAP-ENV:Body>
27
+ <ns1:successGetLead>
28
+ <result>
29
+ <count>1</count>
30
+ <leadRecordList>
31
+ <leadRecord>
32
+ <Id>1001081</Id>
33
+ <Email>foo@example.com</Email>
34
+ <ForeignSysPersonId xsi:nil="true"/>
35
+ <ForeignSysType xsi:nil="true"/>
36
+ <leadAttributeList>
37
+ <attribute>
38
+ <attrName>Company</attrName>
39
+ <attrType>string</attrType>
40
+ <attrValue>foo</attrValue>
41
+ </attribute>
42
+ <attribute>
43
+ <attrName>FirstName</attrName>
44
+ <attrType>string</attrType>
45
+ <attrValue>foo</attrValue>
46
+ </attribute>
47
+ <attribute>
48
+ <attrName>LastName</attrName>
49
+ <attrType>string</attrType>
50
+ <attrValue>foo</attrValue>
51
+ </attribute>
52
+ <attribute>
53
+ <attrName>LeadStatus</attrName>
54
+ <attrType>string</attrType>
55
+ <attrValue>Inactive</attrValue>
56
+ </attribute>
57
+ </leadAttributeList>
58
+ </leadRecord>
59
+ </leadRecordList>
60
+ </result>
61
+ </ns1:successGetLead>
62
+ </SOAP-ENV:Body>
63
+ </SOAP-ENV:Envelope>
@@ -0,0 +1,88 @@
1
+ REQUEST:
2
+
3
+ <?xml version="1.0" encoding="UTF-8"?>
4
+ <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="h
5
+ <SOAP-ENV:Header>
6
+ <ns1:AuthenticationHeader>
7
+ <mktowsUserId>xxx</mktowsUserId>
8
+ <requestSignature>xxx</requestSignature>
9
+ <requestTimestamp>2014-07-25T14:22:07-05:00</requestTimestamp>
10
+ </ns1:AuthenticationHeader>
11
+ </SOAP-ENV:Header>
12
+ <SOAP-ENV:Body>
13
+ <tns:paramsGetLead>
14
+ <leadKey>
15
+ <keyType>EMAIL</keyType>
16
+ <keyValue>foo@example.com</keyValue>
17
+ </leadKey>
18
+ </tns:paramsGetLead>
19
+ </SOAP-ENV:Body>
20
+ </SOAP-ENV:Envelope>
21
+
22
+ RESPONSE:
23
+
24
+
25
+
26
+ <?xml version="1.0" encoding="UTF-8"?>
27
+ <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://www.marketo.com/mktows/">
28
+ <SOAP-ENV:Body>
29
+ <ns1:successGetLead>
30
+ <result>
31
+ <count>2</count>
32
+ <leadRecordList>
33
+ <leadRecord>
34
+ <Id>1001084</Id>
35
+ <Email>foo@example.com</Email>
36
+ <ForeignSysPersonId xsi:nil="true"/>
37
+ <ForeignSysType xsi:nil="true"/>
38
+ <leadAttributeList>
39
+ <attribute>
40
+ <attrName>Company</attrName>
41
+ <attrType>string</attrType>
42
+ <attrValue>The Price is Right</attrValue>
43
+ </attribute>
44
+ <attribute>
45
+ <attrName>FirstName</attrName>
46
+ <attrType>string</attrType>
47
+ <attrValue>Bob</attrValue>
48
+ </attribute>
49
+ <attribute>
50
+ <attrName>LastName</attrName>
51
+ <attrType>string</attrType>
52
+ <attrValue>Barker</attrValue>
53
+ </attribute>
54
+ </leadAttributeList>
55
+ </leadRecord>
56
+ <leadRecord>
57
+ <Id>1001081</Id>
58
+ <Email>foo@example.com</Email>
59
+ <ForeignSysPersonId xsi:nil="true"/>
60
+ <ForeignSysType xsi:nil="true"/>
61
+ <leadAttributeList>
62
+ <attribute>
63
+ <attrName>Company</attrName>
64
+ <attrType>string</attrType>
65
+ <attrValue>foo</attrValue>
66
+ </attribute>
67
+ <attribute>
68
+ <attrName>FirstName</attrName>
69
+ <attrType>string</attrType>
70
+ <attrValue>foo</attrValue>
71
+ </attribute>
72
+ <attribute>
73
+ <attrName>LastName</attrName>
74
+ <attrType>string</attrType>
75
+ <attrValue>foo</attrValue>
76
+ </attribute>
77
+ <attribute>
78
+ <attrName>LeadStatus</attrName>
79
+ <attrType>string</attrType>
80
+ <attrValue>Inactive</attrValue>
81
+ </attribute>
82
+ </leadAttributeList>
83
+ </leadRecord>
84
+ </leadRecordList>
85
+ </result>
86
+ </ns1:successGetLead>
87
+ </SOAP-ENV:Body>
88
+ </SOAP-ENV:Envelope>
@@ -0,0 +1,42 @@
1
+ I, [2014-09-16T16:39:19.420098 #30338] INFO -- : SOAP request: https://354-ESL-459.mktoapi.com/soap/mktows/2_4
2
+ I, [2014-09-16T16:39:19.420239 #30338] INFO -- : SOAPAction: "http://www.marketo.com/mktows/listOperation", Content-Type: text/xml;charset=UTF-8, Content-Length: 943
3
+ D, [2014-09-16T16:39:19.420642 #30338] DEBUG -- : <?xml version="1.0" encoding="UTF-8"?>
4
+ <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.marketo.com/mktows/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.marketo.com/mktows/">
5
+ <SOAP-ENV:Header>
6
+ <ns1:AuthenticationHeader>
7
+ <mktowsUserId>xxx</mktowsUserId>
8
+ <requestSignature>xxx</requestSignature>
9
+ <requestTimestamp>2014-09-16T16:39:19-05:00</requestTimestamp>
10
+ </ns1:AuthenticationHeader>
11
+ </SOAP-ENV:Header>
12
+ <SOAP-ENV:Body>
13
+ <tns:paramsListOperation>
14
+ <listOperation>ADDTOLIST</listOperation>
15
+ <strict>false</strict>
16
+ <listKey>
17
+ <keyType>MKTOLISTNAME</keyType>
18
+ <keyValue>foo_list</keyValue>
19
+ </listKey>
20
+ <listMemberList>
21
+ <leadKey>
22
+ <keyType>IDNUM</keyType>
23
+ <keyValue>1001086</keyValue>
24
+ </leadKey>
25
+ </listMemberList>
26
+ </tns:paramsListOperation>
27
+ </SOAP-ENV:Body>
28
+ </SOAP-ENV:Envelope>
29
+
30
+ D, [2014-09-16T16:39:19.420933 #30338] DEBUG -- : HTTPI POST request to 354-ESL-459.mktoapi.com (net_http)
31
+ I, [2014-09-16T16:39:20.230942 #30338] INFO -- : SOAP response (status 200)
32
+ D, [2014-09-16T16:39:20.231354 #30338] DEBUG -- : <?xml version="1.0" encoding="UTF-8"?>
33
+ <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://www.marketo.com/mktows/">
34
+ <SOAP-ENV:Body>
35
+ <ns1:successListOperation>
36
+ <result>
37
+ <success>true</success>
38
+ <statusList xsi:nil="true"/>
39
+ </result>
40
+ </ns1:successListOperation>
41
+ </SOAP-ENV:Body>
42
+ </SOAP-ENV:Envelope>
@@ -0,0 +1,50 @@
1
+ I, [2014-09-16T16:16:07.794062 #29320] INFO -- : SOAP request: https://354-ESL-459.mktoapi.com/soap/mktows/2_4
2
+ I, [2014-09-16T16:16:07.794227 #29320] INFO -- : SOAPAction: "http://www.marketo.com/mktows/listOperation", Content-Type: text/xml;charset=UTF-8, Content-Length: 948
3
+ D, [2014-09-16T16:16:07.794596 #29320] DEBUG -- : <?xml version="1.0" encoding="UTF-8"?>
4
+ <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.marketo.com/mktows/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.marketo.com/mktows/">
5
+ <SOAP-ENV:Header>
6
+ <ns1:AuthenticationHeader>
7
+ <mktowsUserId>xxx</mktowsUserId>
8
+ <requestSignature>xxx</requestSignature>
9
+ <requestTimestamp>2014-09-16T16:16:07-05:00</requestTimestamp>
10
+ </ns1:AuthenticationHeader>
11
+ </SOAP-ENV:Header>
12
+ <SOAP-ENV:Body>
13
+ <tns:paramsListOperation>
14
+ <listOperation>ISMEMBEROFLIST</listOperation>
15
+ <strict>false</strict>
16
+ <listKey>
17
+ <keyType>MKTOLISTNAME</keyType>
18
+ <keyValue>foo_list</keyValue>
19
+ </listKey>
20
+ <listMemberList>
21
+ <leadKey>
22
+ <keyType>IDNUM</keyType>
23
+ <keyValue>1001086</keyValue>
24
+ </leadKey>
25
+ </listMemberList>
26
+ </tns:paramsListOperation>
27
+ </SOAP-ENV:Body>
28
+ </SOAP-ENV:Envelope>
29
+
30
+ D, [2014-09-16T16:16:07.794993 #29320] DEBUG -- : HTTPI POST request to 354-ESL-459.mktoapi.com (net_http)
31
+ I, [2014-09-16T16:16:08.505118 #29320] INFO -- : SOAP response (status 200)
32
+ D, [2014-09-16T16:16:08.505962 #29320] DEBUG -- : <?xml version="1.0" encoding="UTF-8"?>
33
+ <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.marketo.com/mktows/">
34
+ <SOAP-ENV:Body>
35
+ <ns1:successListOperation>
36
+ <result>
37
+ <success>false</success>
38
+ <statusList>
39
+ <leadStatus>
40
+ <leadKey>
41
+ <keyType>IDNUM</keyType>
42
+ <keyValue>1001086</keyValue>
43
+ </leadKey>
44
+ <status>false</status>
45
+ </leadStatus>
46
+ </statusList>
47
+ </result>
48
+ </ns1:successListOperation>
49
+ </SOAP-ENV:Body>
50
+ </SOAP-ENV:Envelope>