sendgrid_webapi 0.0.2 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. checksums.yaml +7 -0
  2. data/.circleci/config.yml +132 -0
  3. data/.circleci/setup-rubygems.sh +5 -0
  4. data/.gitignore +27 -1
  5. data/.rspec +2 -2
  6. data/.ruby-version +1 -0
  7. data/.tool-versions +1 -0
  8. data/MIT-LICENSE +20 -0
  9. data/README.rdoc +103 -79
  10. data/lib/api_key/management.rb +33 -0
  11. data/lib/api_key/modules.rb +10 -0
  12. data/lib/apikey_client.rb +11 -0
  13. data/lib/base.rb +47 -13
  14. data/lib/helper.rb +8 -8
  15. data/lib/sendgrid_webapi.rb +1 -0
  16. data/lib/sub_user/modules.rb +15 -15
  17. data/lib/version.rb +2 -2
  18. data/lib/web_api/blocks.rb +5 -0
  19. data/lib/web_api/bounces.rb +5 -0
  20. data/lib/web_api/modules.rb +15 -11
  21. data/lib/web_api/version.rb +1 -1
  22. data/lib/webapi_client.rb +1 -1
  23. data/sendgrid_webapi.gemspec +12 -8
  24. data/spec/cassettes/client/_modules/_block/should_get_block_emails.yml +29 -41
  25. data/spec/cassettes/client/_modules/_block/should_get_totals_blocks.yml +36 -0
  26. data/spec/cassettes/client/_modules/_block/should_try_delete_not_existing_block_email.yml +29 -42
  27. data/spec/cassettes/client/_modules/_bounce/should_get_bounce_emails.yml +27 -31
  28. data/spec/cassettes/client/_modules/_bounce/should_get_totals_bounces.yml +36 -0
  29. data/spec/cassettes/client/_modules/_bounce/should_try_delete_not_existing_bounce_email.yml +27 -32
  30. data/spec/cassettes/client/_modules/_event_notification/should_delete_event_notification_url.yml +38 -40
  31. data/spec/cassettes/client/_modules/_event_notification/should_get_event_notification_url.yml +38 -40
  32. data/spec/cassettes/client/_modules/_event_notification/should_set_event_notification_url.yml +38 -40
  33. data/spec/cassettes/client/_modules/_invalid_email/should_get_invalid_emails.yml +27 -31
  34. data/spec/cassettes/client/_modules/_invalid_email/should_try_delete_not_existing_invalid_emails.yml +27 -32
  35. data/spec/cassettes/client/_modules/_parse_email/should_delete_parse_email.yml +73 -76
  36. data/spec/cassettes/client/_modules/_parse_email/should_get_parse_email.yml +38 -41
  37. data/spec/cassettes/client/_modules/_parse_email/should_set_parse_email.yml +38 -40
  38. data/spec/cassettes/client/_modules/_profile/should_get_profile.yml +39 -43
  39. data/spec/cassettes/client/_modules/_profile/should_set_first_name.yml +109 -117
  40. data/spec/cassettes/client/_modules/_spam/should_get_spam_emails.yml +27 -31
  41. data/spec/cassettes/client/_modules/_spam/should_try_delete_not_existing_spam_emails.yml +27 -32
  42. data/spec/cassettes/client/_modules/_unsubscribe/should_add_unsubscribe_emails.yml +27 -31
  43. data/spec/cassettes/client/_modules/_unsubscribe/should_delete_unsubscribe_email.yml +27 -31
  44. data/spec/cassettes/client/_modules/_unsubscribe/should_get_unsubscribe_emails.yml +27 -32
  45. data/spec/cassettes/client/_modules/_unsubscribe/should_try_delete_not_existing_unsubscribe_emails.yml +27 -32
  46. data/spec/cassettes/helper/_create_sub_user_account/should_create_sub_user_account.yml +248 -255
  47. data/spec/cassettes/helper/_run_sendgrid_query/should_raise_with_unsucessfull_request.yml +39 -38
  48. data/spec/cassettes/helper/_run_sendgrid_query/should_run_sendgrid_request.yml +38 -40
  49. data/spec/cassettes/sub_user/_apps/should_activate_app.yml +38 -40
  50. data/spec/cassettes/sub_user/_apps/should_deactivate_app.yml +38 -40
  51. data/spec/cassettes/sub_user/_apps/should_get_current_setting_from_one_app.yml +38 -41
  52. data/spec/cassettes/sub_user/_apps/should_return_available_apps.yml +63 -55
  53. data/spec/cassettes/sub_user/_apps/should_set_current_app.yml +73 -72
  54. data/spec/cassettes/sub_user/_authentication/should_auth_a_sub_user.yml +38 -40
  55. data/spec/cassettes/sub_user/_authentication/should_return_error_with_a_bad_sub_user.yml +38 -40
  56. data/spec/cassettes/sub_user/_bounces/should_returns_bounce_emails.yml +38 -39
  57. data/spec/cassettes/sub_user/_bounces/should_tries_to_delete_unexisting_bounce_emails.yml +38 -40
  58. data/spec/cassettes/sub_user/_event_notification/should_add_event_notification_url.yml +38 -40
  59. data/spec/cassettes/sub_user/_event_notification/should_delete_event_notification_url.yml +38 -40
  60. data/spec/cassettes/sub_user/_event_notification/should_get_event_notification_url.yml +38 -40
  61. data/spec/cassettes/sub_user/_invalid_emails/should_return_invalid_emails.yml +38 -39
  62. data/spec/cassettes/sub_user/_invalid_emails/should_tries_to_delete_unexisting_invalid_mail.yml +38 -40
  63. data/spec/cassettes/sub_user/_ip_management/should_return_all_ips_available.yml +38 -40
  64. data/spec/cassettes/sub_user/_ip_management/should_show_ip_subuser.yml +38 -40
  65. data/spec/cassettes/sub_user/_limits/should_decrements_credits_for_a_sub_user.yml +73 -77
  66. data/spec/cassettes/sub_user/_limits/should_delete_all_limits_for_a_sub_user.yml +73 -76
  67. data/spec/cassettes/sub_user/_limits/should_increments_credits_for_a_sub_user.yml +73 -77
  68. data/spec/cassettes/sub_user/_limits/should_list_the_limits_for_a_sub_user.yml +38 -40
  69. data/spec/cassettes/sub_user/_limits/should_reset_all_limits_for_a_sub_user.yml +73 -77
  70. data/spec/cassettes/sub_user/_limits/should_returns_limits_for_a_sub_user.yml +38 -40
  71. data/spec/cassettes/sub_user/_limits/should_set_total_credits.yml +38 -40
  72. data/spec/cassettes/sub_user/_management/should_add_new_subuser.yml +38 -40
  73. data/spec/cassettes/sub_user/_management/should_disable_sub_user_for_send_email.yml +38 -40
  74. data/spec/cassettes/sub_user/_management/should_enable_sub_user_for_access_to_website.yml +38 -40
  75. data/spec/cassettes/sub_user/_management/should_enable_sub_user_for_send_email.yml +38 -40
  76. data/spec/cassettes/sub_user/_management/should_update_sub_user.yml +38 -40
  77. data/spec/cassettes/sub_user/_monitor_records/should_add_existing_sub_user_to_monitor_record.yml +73 -78
  78. data/spec/cassettes/sub_user/_monitor_records/should_create_a_new_monitor_record.yml +73 -78
  79. data/spec/cassettes/sub_user/_monitor_records/should_delete_a_monitor_record.yml +73 -76
  80. data/spec/cassettes/sub_user/_monitor_records/should_edit_a_monitor_record.yml +73 -78
  81. data/spec/cassettes/sub_user/_monitor_records/should_remove_existing_sub_user_from_monitor_record.yml +73 -78
  82. data/spec/cassettes/sub_user/_parse_email/should_delete_parse_email.yml +73 -76
  83. data/spec/cassettes/sub_user/_parse_email/should_get_parse_email.yml +38 -41
  84. data/spec/cassettes/sub_user/_parse_email/should_set_parse_email.yml +38 -40
  85. data/spec/cassettes/sub_user/_spam/should_return_spam_mails.yml +38 -39
  86. data/spec/cassettes/sub_user/_spam/should_tries_to_delete_unexisting_spam_mail.yml +38 -40
  87. data/spec/cassettes/sub_user/_unsubscribes/should_add_bounce_email.yml +38 -40
  88. data/spec/cassettes/sub_user/_unsubscribes/should_delete_existing_bounce_email.yml +38 -40
  89. data/spec/cassettes/sub_user/_unsubscribes/should_delete_unexisting_bounce_email.yml +38 -40
  90. data/spec/cassettes/sub_user/_unsubscribes/should_returns_bounce_emails.yml +38 -40
  91. data/spec/client_spec.rb +7 -4
  92. data/spec/helper_spec.rb +9 -9
  93. data/spec/sub_user_spec.rb +63 -68
  94. data/test.rb +5 -0
  95. metadata +90 -58
  96. data/.travis.yml +0 -5
  97. data/spec/cassettes/sub_user/_management/should_get_all_subusers.yml +0 -54
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/apiv2/customer.parse.json?api_key=pass&api_user=user&hostname=www.example.com&spam_check=1&task=set&url=www.mydomain.com/parse.php&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/apiv2/customer.parse.json?hostname=www.example.com&spam_check=1&task=set&url=www.mydomain.com/parse.php&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:36:08 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:26:53 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '46'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=49cf991c767014d2cd749e72d52c10b1:f5644e264f3a71b599eaeb5e53ead74c41a35565; expires=Wed, 01-Aug-2012 14:35:44 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=50e3d4cc5b83f36566e7483d1dc0c16f:d11b5201d1c85dcf7e6b3a7c24573f1053c8ce26;
39
+ expires=Sun, 16-Feb-2014 01:26:53 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "46"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA6pWyk0tLk5MT1WyUiouTU4GcpRqAQAAAP//AwDGVSbjFQAA
45
- AA==
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"message":"success"}'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:36:08 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:26:53 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,48 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.spamreports.json?api_key=pass&api_user=user&task=get&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.spamreports.json?task=get&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:14 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:23:22 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '28'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=47c7b4a8efafb72f68da40e06021ff41:4894dd50b36058d049876efc58580076d5b4c125; expires=Wed, 01-Aug-2012 14:34:49 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=648b12f2c84e6ea8e083742cf2694053:aaf23d7fb0ed58aa1b9e461f5d59284f7caf03ad;
39
+ expires=Sun, 16-Feb-2014 01:23:21 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "28"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA4qOBQAAAP//AwApu0wNAgAAAA==
45
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '[]'
46
45
  http_version:
47
- recorded_at: Mon, 02 Jul 2012 14:35:14 GMT
48
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:23:22 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.spamreports.json?api_key=pass&api_user=user&email=test@test.com&task=delete&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.spamreports.json?email=test@email.com&task=delete&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:16 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:23:24 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '60'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=f7df1296c2dec0c3440fe56e8e90d0b8:b970b0034b2e27cc47473a7d784f25f6b889738c; expires=Wed, 01-Aug-2012 14:34:51 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=0cfb88d33fc3babc9962a641d698ef18:75cd33d8a1dd4f5572c5e7ff584f07817e392f58;
39
+ expires=Sun, 16-Feb-2014 01:23:23 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "60"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA6pWyk0tLk5MT1WyUnLNTczMUUjJTy1WyMsvUUityCwuUaoF
45
- AAAA//8DACrxmdciAAAA
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"message":"Email does not exist"}'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:35:16 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:23:24 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.unsubscribes.json?api_key=pass&api_user=user&email=test@test.com&task=add&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.unsubscribes.json?email=test@email.com&task=add&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:07 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:22:55 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '46'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=43c1723e2312a348273ffa9f13214c9b:849a11ad7ce7c50213ce94a30224466a510db89d; expires=Wed, 01-Aug-2012 14:34:42 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=cd0ca9001335246f803e4b0134f0f68e:b803463ecd9a0473b05c725904d150827cb84471;
39
+ expires=Sun, 16-Feb-2014 01:22:50 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "46"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA6pWyk0tLk5MT1WyUiouTU4GcpRqAQAAAP//AwDGVSbjFQAA
45
- AA==
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"message":"success"}'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:35:07 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:22:55 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.unsubscribes.json?api_key=pass&api_user=user&email=test@test.com&task=delete&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.unsubscribes.json?email=test@email.com&task=delete&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:10 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:23:01 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '46'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=69cb0fa68f1a25f8340cdffcd01741df:4e521aeb25acb3035de4f98688a1f22fc62b1032; expires=Wed, 01-Aug-2012 14:34:46 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=cd6d375c33d9b73618148b8ab1cbd414:99bf7d70abf9c357e86dcd1c49625dd12077dfd8;
39
+ expires=Sun, 16-Feb-2014 01:22:59 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "46"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA6pWyk0tLk5MT1WyUiouTU4GcpRqAQAAAP//AwDGVSbjFQAA
45
- AA==
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"message":"success"}'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:35:11 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:23:02 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.unsubscribes.json?api_key=pass&api_user=user&email=test@test.com&task=delete&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.unsubscribes.json?email=test@email.com&task=delete&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:12 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:23:03 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '60'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=f8cab5957af93b969f6e2d25a14ea87f:ec959c581ea314d1b91672bdd3b39e900a3fc528; expires=Wed, 01-Aug-2012 14:34:48 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=749aa25ec33a32e64a4545e6f3de1da6:9e2033966e321fb3b63f060ecec18677b1e0b0cf;
39
+ expires=Sun, 16-Feb-2014 01:23:03 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "60"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA6pWyk0tLk5MT1WyUnLNTczMUUjJTy1WyMsvUUityCwuUaoF
45
- AAAA//8DACrxmdciAAAA
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '{"message":"Email does not exist"}'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:35:12 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:23:03 GMT
47
+ recorded_with: VCR 2.8.0
@@ -1,49 +1,47 @@
1
- ---
2
- http_interactions:
3
- - request:
1
+ ---
2
+ http_interactions:
3
+ - request:
4
4
  method: get
5
- uri: https://sendgrid.com/api/user.unsubscribes.json?api_key=pass&api_user=user&task=get&user=chebyte3
6
- body:
5
+ uri: https://sendgrid.com/api/user.unsubscribes.json?task=get&user=sendgrid_testuser3
6
+ body:
7
7
  encoding: US-ASCII
8
- string: ""
9
- headers:
10
- Accept-Encoding:
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.8.9
12
+ Accept-Encoding:
11
13
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
- Accept:
13
- - "*/*"
14
- User-Agent:
15
- - Ruby
16
- response:
17
- status:
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
18
  code: 200
19
19
  message: OK
20
- headers:
21
- Server:
22
- - nginx/0.7.65
23
- Date:
24
- - Mon, 02 Jul 2012 14:35:09 GMT
25
- Content-Type:
20
+ headers:
21
+ Server:
22
+ - nginx/1.4.2
23
+ Date:
24
+ - Fri, 17 Jan 2014 01:22:57 GMT
25
+ Content-Type:
26
26
  - application/json
27
- Connection:
27
+ Content-Length:
28
+ - '51'
29
+ Connection:
28
30
  - keep-alive
29
- X-Powered-By:
30
- - PHP/5.3.2-1ubuntu4.14
31
- Cache-Control:
32
- - private
33
- Set-Cookie:
34
- - sendgrid_frontend=43aaeaba021f8acea8bdffb4f26445d3:43dc8501500eb10a62d3c6938e871cfe550af89f; expires=Wed, 01-Aug-2012 14:34:44 GMT; path=/; httponly
35
- Content-Encoding:
36
- - gzip
37
- Vary:
31
+ X-Powered-By:
32
+ - PHP/5.3.2-1ubuntu4.22
33
+ Cache-Control:
34
+ - no-cache, must-revalidate
35
+ Expires:
36
+ - '0'
37
+ Set-Cookie:
38
+ - sendgrid_frontend=4535191a8e48333501cbb00ef097941e:686b8954ba9047ff50163616331dbf7121f972ed;
39
+ expires=Sun, 16-Feb-2014 01:22:57 GMT; path=/; httponly
40
+ Vary:
38
41
  - Accept-Encoding
39
- Content-Length:
40
- - "51"
41
- body:
42
- encoding: ASCII-8BIT
43
- string: !binary |
44
- H4sIAAAAAAAAA4quVkrNTczMUbJSKkktLnEAEXrJ+blKtbEAAAAA//8DANmT
45
- xK0bAAAA
46
-
42
+ body:
43
+ encoding: UTF-8
44
+ string: '[{"email":"test@email.com"}]'
47
45
  http_version:
48
- recorded_at: Mon, 02 Jul 2012 14:35:09 GMT
49
- recorded_with: VCR 2.1.1
46
+ recorded_at: Fri, 17 Jan 2014 01:22:57 GMT
47
+ recorded_with: VCR 2.8.0
data/spec/client_spec.rb CHANGED
@@ -1,17 +1,17 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe "client" do
4
- let(:client) { SendGridWebApi::Client.new("user", "pass") }
4
+ let(:client) { SendGridWebApi::Client.new("apikey") }
5
5
 
6
6
 
7
7
  describe "#base", :vcr do
8
8
  it "should return api url" do
9
- client.base_url.should eql "https://sendgrid.com/api/"
9
+ client.base_url.should eql "https://api.sendgrid.com/api/"
10
10
  end
11
11
 
12
12
  it "should return request url" do
13
13
  client.make_request_url("blocks.get.json", {:data => 1}).
14
- should eql "blocks.get.json?data=1&api_user=user&api_key=pass"
14
+ should eql "blocks.get.json?data=1"
15
15
  end
16
16
 
17
17
  it "should convert hash to url params" do
@@ -28,6 +28,9 @@ describe "client" do
28
28
  it "should try delete not existing block email" do
29
29
  client.blocks.delete(:email => "test@example.com").should == {"message"=>"Email does not exist"}
30
30
  end
31
+ it "should get totals blocks" do
32
+ client.blocks.count.should eql({"count"=>0})
33
+ end
31
34
  end
32
35
 
33
36
  describe "#bounce", :vcr do
@@ -115,7 +118,7 @@ describe "client" do
115
118
  describe "#profile", :vcr do
116
119
  it "should get profile" do
117
120
  client.profile.get.
118
- should == [{"username"=>"app4238669@heroku.com", "email"=>"app4238669@heroku.com", "active"=>"true", "first_name"=>"Reseller", "last_name"=>"Customer", "address"=>"555 Any Street", "address2"=>"", "city"=>"City", "state"=>"State", "zip"=>"90000", "country"=>"US", "phone"=>"555-555-5555", "website"=>"http://Website", "website_access"=>"true"}]
121
+ should == [{"username"=>"user", "email"=>"user", "active"=>"true", "first_name"=>"Reseller", "last_name"=>"Customer", "address"=>"555 Any Street", "address2"=>"", "city"=>"City", "state"=>"State", "zip"=>"90000", "country"=>"US", "phone"=>"555-555-5555", "website"=>"http://Website", "website_access"=>"true"}]
119
122
  end
120
123
 
121
124
  it "should set first name" do