sendpost_ruby_sdk 1.0.1 → 2.0.0

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 (287) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +21 -0
  3. data/README.md +626 -82
  4. data/docs/AccountStats.md +20 -0
  5. data/docs/AccountStatsStat.md +38 -0
  6. data/docs/AggregateStat.md +38 -0
  7. data/docs/AggregateStats.md +38 -0
  8. data/docs/AggregatedEmailStats.md +38 -0
  9. data/docs/Attachment.md +4 -4
  10. data/docs/AutoWarmupPlan.md +80 -0
  11. data/docs/CopyTo.md +5 -5
  12. data/docs/CreateDomainRequest.md +18 -0
  13. data/docs/CreateSubAccountRequest.md +18 -0
  14. data/docs/CreateSuppressionRequest.md +24 -0
  15. data/docs/CreateSuppressionRequestHardBounceInner.md +18 -0
  16. data/docs/{SuppressionEmail.md → CreateSuppressionRequestManualInner.md} +3 -3
  17. data/docs/CreateSuppressionRequestSpamComplaintInner.md +18 -0
  18. data/docs/CreateSuppressionRequestUnsubscribeInner.md +18 -0
  19. data/docs/CreateWebhookRequest.md +46 -0
  20. data/docs/DeleteResponse.md +2 -2
  21. data/docs/DeleteSubAccountResponse.md +20 -0
  22. data/docs/DeleteSuppression200ResponseInner.md +20 -0
  23. data/docs/DeleteSuppressionRequest.md +18 -0
  24. data/docs/DeleteWebhookResponse.md +20 -0
  25. data/docs/Device.md +1 -1
  26. data/docs/Domain.md +56 -0
  27. data/docs/DomainApi.md +301 -0
  28. data/docs/DomainDkim.md +22 -0
  29. data/docs/DomainDmarc.md +22 -0
  30. data/docs/DomainGpt.md +22 -0
  31. data/docs/DomainReturnPath.md +22 -0
  32. data/docs/DomainTrack.md +22 -0
  33. data/docs/EIP.md +18 -0
  34. data/docs/{From.md → EmailAddress.md} +4 -4
  35. data/docs/EmailApi.md +38 -32
  36. data/docs/EmailMessage.md +30 -24
  37. data/docs/EmailMessageFrom.md +20 -0
  38. data/docs/EmailMessageObject.md +46 -0
  39. data/docs/{ReplyTo.md → EmailMessageReplyTo.md} +5 -5
  40. data/docs/EmailMessageToInner.md +26 -0
  41. data/docs/EmailMessageToInnerBccInner.md +22 -0
  42. data/docs/EmailMessageToInnerCcInner.md +22 -0
  43. data/docs/EmailMessageWithTemplate.md +52 -0
  44. data/docs/EmailResponse.md +8 -8
  45. data/docs/EmailStats.md +20 -0
  46. data/docs/EmailStatsStats.md +38 -0
  47. data/docs/Event.md +56 -0
  48. data/docs/EventMetadata.md +13 -9
  49. data/docs/{City.md → GeoLocation.md} +8 -8
  50. data/docs/IP.md +62 -0
  51. data/docs/IPAllocationRequest.md +20 -0
  52. data/docs/IPApi.md +375 -0
  53. data/docs/IPDeletionResponse.md +20 -0
  54. data/docs/IPPool.md +42 -0
  55. data/docs/IPPoolCreateRequest.md +28 -0
  56. data/docs/IPPoolDeleteResponse.md +20 -0
  57. data/docs/IPPoolUpdateRequest.md +24 -0
  58. data/docs/IPPoolsApi.md +361 -0
  59. data/docs/IPUpdateRequest.md +18 -0
  60. data/docs/Label.md +22 -0
  61. data/docs/Member.md +40 -0
  62. data/docs/Message.md +76 -0
  63. data/docs/MessageApi.md +79 -0
  64. data/docs/MessageHeaderTo.md +26 -0
  65. data/docs/MessageTo.md +26 -0
  66. data/docs/{Os.md → OperatingSystem.md} +7 -7
  67. data/docs/Person.md +20 -0
  68. data/docs/{To.md → Recipient.md} +7 -7
  69. data/docs/SMTPAuth.md +26 -0
  70. data/docs/Stat.md +20 -0
  71. data/docs/StatStats.md +38 -0
  72. data/docs/StatsAApi.md +307 -0
  73. data/docs/StatsApi.md +237 -0
  74. data/docs/SubAccount.md +48 -0
  75. data/docs/SubAccountApi.md +375 -0
  76. data/docs/Suppression.md +8 -8
  77. data/docs/SuppressionApi.md +76 -134
  78. data/docs/ThirdPartySendingProvider.md +38 -0
  79. data/docs/UpdateSubAccount.md +18 -0
  80. data/docs/UpdateWebhook.md +46 -0
  81. data/docs/UserAgent.md +4 -4
  82. data/docs/Webhook.md +54 -0
  83. data/docs/WebhookApi.md +375 -0
  84. data/git_push.sh +2 -2
  85. data/lib/sendpost_ruby_sdk/api/domain_api.rb +290 -0
  86. data/lib/sendpost_ruby_sdk/api/email_api.rb +33 -35
  87. data/lib/sendpost_ruby_sdk/api/ip_api.rb +356 -0
  88. data/lib/sendpost_ruby_sdk/api/ip_pools_api.rb +356 -0
  89. data/lib/sendpost_ruby_sdk/api/message_api.rb +85 -0
  90. data/lib/sendpost_ruby_sdk/api/stats_a_api.rb +320 -0
  91. data/lib/sendpost_ruby_sdk/api/stats_api.rb +260 -0
  92. data/lib/sendpost_ruby_sdk/api/sub_account_api.rb +356 -0
  93. data/lib/sendpost_ruby_sdk/api/suppression_api.rb +81 -141
  94. data/lib/sendpost_ruby_sdk/api/webhook_api.rb +356 -0
  95. data/lib/sendpost_ruby_sdk/api_client.rb +26 -24
  96. data/lib/sendpost_ruby_sdk/api_error.rb +3 -3
  97. data/lib/sendpost_ruby_sdk/configuration.rb +39 -12
  98. data/lib/sendpost_ruby_sdk/models/account_stats.rb +229 -0
  99. data/lib/sendpost_ruby_sdk/models/account_stats_stat.rb +310 -0
  100. data/lib/sendpost_ruby_sdk/models/aggregate_stat.rb +321 -0
  101. data/lib/sendpost_ruby_sdk/models/aggregate_stats.rb +310 -0
  102. data/lib/sendpost_ruby_sdk/models/aggregated_email_stats.rb +321 -0
  103. data/lib/sendpost_ruby_sdk/models/attachment.rb +27 -24
  104. data/lib/sendpost_ruby_sdk/models/auto_warmup_plan.rb +531 -0
  105. data/lib/sendpost_ruby_sdk/models/copy_to.rb +40 -36
  106. data/lib/sendpost_ruby_sdk/models/create_domain_request.rb +221 -0
  107. data/lib/sendpost_ruby_sdk/models/create_sub_account_request.rb +221 -0
  108. data/lib/sendpost_ruby_sdk/models/create_suppression_request.rb +259 -0
  109. data/lib/sendpost_ruby_sdk/models/create_suppression_request_hard_bounce_inner.rb +220 -0
  110. data/lib/sendpost_ruby_sdk/models/create_suppression_request_manual_inner.rb +220 -0
  111. data/lib/sendpost_ruby_sdk/models/create_suppression_request_spam_complaint_inner.rb +220 -0
  112. data/lib/sendpost_ruby_sdk/models/create_suppression_request_unsubscribe_inner.rb +220 -0
  113. data/lib/sendpost_ruby_sdk/models/create_webhook_request.rb +361 -0
  114. data/lib/sendpost_ruby_sdk/models/delete_response.rb +27 -24
  115. data/lib/sendpost_ruby_sdk/models/delete_sub_account_response.rb +231 -0
  116. data/lib/sendpost_ruby_sdk/models/delete_suppression200_response_inner.rb +231 -0
  117. data/lib/sendpost_ruby_sdk/models/delete_suppression_request.rb +222 -0
  118. data/lib/sendpost_ruby_sdk/models/delete_webhook_response.rb +231 -0
  119. data/lib/sendpost_ruby_sdk/models/device.rb +25 -24
  120. data/lib/sendpost_ruby_sdk/models/domain.rb +406 -0
  121. data/lib/sendpost_ruby_sdk/models/domain_dkim.rb +239 -0
  122. data/lib/sendpost_ruby_sdk/models/domain_dmarc.rb +239 -0
  123. data/lib/sendpost_ruby_sdk/models/domain_gpt.rb +239 -0
  124. data/lib/sendpost_ruby_sdk/models/domain_return_path.rb +239 -0
  125. data/lib/sendpost_ruby_sdk/models/domain_track.rb +239 -0
  126. data/lib/sendpost_ruby_sdk/models/eip.rb +238 -0
  127. data/lib/sendpost_ruby_sdk/models/email_address.rb +229 -0
  128. data/lib/sendpost_ruby_sdk/models/email_message.rb +133 -103
  129. data/lib/sendpost_ruby_sdk/models/email_message_from.rb +229 -0
  130. data/lib/sendpost_ruby_sdk/models/email_message_object.rb +354 -0
  131. data/lib/sendpost_ruby_sdk/models/email_message_reply_to.rb +229 -0
  132. data/lib/sendpost_ruby_sdk/models/email_message_to_inner.rb +262 -0
  133. data/lib/sendpost_ruby_sdk/models/email_message_to_inner_bcc_inner.rb +240 -0
  134. data/lib/sendpost_ruby_sdk/models/email_message_to_inner_cc_inner.rb +240 -0
  135. data/lib/sendpost_ruby_sdk/models/email_message_with_template.rb +392 -0
  136. data/lib/sendpost_ruby_sdk/models/email_response.rb +52 -49
  137. data/lib/sendpost_ruby_sdk/models/email_stats.rb +230 -0
  138. data/lib/sendpost_ruby_sdk/models/email_stats_stats.rb +321 -0
  139. data/lib/sendpost_ruby_sdk/models/event.rb +393 -0
  140. data/lib/sendpost_ruby_sdk/models/event_metadata.rb +77 -58
  141. data/lib/sendpost_ruby_sdk/models/geo_location.rb +256 -0
  142. data/lib/sendpost_ruby_sdk/models/ip.rb +491 -0
  143. data/lib/sendpost_ruby_sdk/models/ip_allocation_request.rb +266 -0
  144. data/lib/sendpost_ruby_sdk/models/ip_deletion_response.rb +265 -0
  145. data/lib/sendpost_ruby_sdk/models/ip_pool.rb +335 -0
  146. data/lib/sendpost_ruby_sdk/models/ip_pool_create_request.rb +269 -0
  147. data/lib/sendpost_ruby_sdk/models/ip_pool_delete_response.rb +229 -0
  148. data/lib/sendpost_ruby_sdk/models/ip_pool_update_request.rb +249 -0
  149. data/lib/sendpost_ruby_sdk/models/ip_update_request.rb +238 -0
  150. data/lib/sendpost_ruby_sdk/models/label.rb +241 -0
  151. data/lib/sendpost_ruby_sdk/models/member.rb +331 -0
  152. data/lib/sendpost_ruby_sdk/models/message.rb +523 -0
  153. data/lib/sendpost_ruby_sdk/models/message_header_to.rb +268 -0
  154. data/lib/sendpost_ruby_sdk/models/message_to.rb +268 -0
  155. data/lib/sendpost_ruby_sdk/models/operating_system.rb +256 -0
  156. data/lib/sendpost_ruby_sdk/models/person.rb +231 -0
  157. data/lib/sendpost_ruby_sdk/models/recipient.rb +263 -0
  158. data/lib/sendpost_ruby_sdk/models/smtp_auth.rb +261 -0
  159. data/lib/sendpost_ruby_sdk/models/stat.rb +230 -0
  160. data/lib/sendpost_ruby_sdk/models/stat_stats.rb +321 -0
  161. data/lib/sendpost_ruby_sdk/models/sub_account.rb +415 -0
  162. data/lib/sendpost_ruby_sdk/models/suppression.rb +52 -46
  163. data/lib/sendpost_ruby_sdk/models/third_party_sending_provider.rb +310 -0
  164. data/lib/sendpost_ruby_sdk/models/update_sub_account.rb +221 -0
  165. data/lib/sendpost_ruby_sdk/models/update_webhook.rb +368 -0
  166. data/lib/sendpost_ruby_sdk/models/user_agent.rb +25 -24
  167. data/lib/sendpost_ruby_sdk/models/webhook.rb +405 -0
  168. data/lib/sendpost_ruby_sdk/version.rb +4 -4
  169. data/lib/sendpost_ruby_sdk.rb +72 -15
  170. data/spec/api/domain_api_spec.rb +85 -0
  171. data/spec/api/email_api_spec.rb +9 -9
  172. data/spec/api/ip_api_spec.rb +98 -0
  173. data/spec/api/ip_pools_api_spec.rb +98 -0
  174. data/spec/api/message_api_spec.rb +47 -0
  175. data/spec/api/stats_a_api_spec.rb +89 -0
  176. data/spec/api/stats_api_spec.rb +78 -0
  177. data/spec/api/sub_account_api_spec.rb +98 -0
  178. data/spec/api/suppression_api_spec.rb +22 -34
  179. data/spec/api/webhook_api_spec.rb +98 -0
  180. data/spec/models/account_stats_spec.rb +42 -0
  181. data/spec/models/account_stats_stat_spec.rb +96 -0
  182. data/spec/models/aggregate_stat_spec.rb +96 -0
  183. data/spec/models/aggregate_stats_spec.rb +96 -0
  184. data/spec/models/aggregated_email_stats_spec.rb +96 -0
  185. data/spec/models/attachment_spec.rb +6 -4
  186. data/spec/models/auto_warmup_plan_spec.rb +222 -0
  187. data/spec/models/copy_to_spec.rb +8 -6
  188. data/spec/models/create_domain_request_spec.rb +36 -0
  189. data/spec/models/create_sub_account_request_spec.rb +36 -0
  190. data/spec/models/create_suppression_request_hard_bounce_inner_spec.rb +36 -0
  191. data/spec/models/create_suppression_request_manual_inner_spec.rb +36 -0
  192. data/spec/models/create_suppression_request_spam_complaint_inner_spec.rb +36 -0
  193. data/spec/models/create_suppression_request_spec.rb +54 -0
  194. data/spec/models/create_suppression_request_unsubscribe_inner_spec.rb +36 -0
  195. data/spec/models/create_webhook_request_spec.rb +120 -0
  196. data/spec/models/delete_response_spec.rb +6 -4
  197. data/spec/models/delete_sub_account_response_spec.rb +42 -0
  198. data/spec/models/delete_suppression200_response_inner_spec.rb +42 -0
  199. data/spec/models/delete_suppression_request_spec.rb +36 -0
  200. data/spec/models/delete_webhook_response_spec.rb +42 -0
  201. data/spec/models/device_spec.rb +6 -4
  202. data/spec/models/domain_dkim_spec.rb +48 -0
  203. data/spec/models/domain_dmarc_spec.rb +48 -0
  204. data/spec/models/domain_gpt_spec.rb +48 -0
  205. data/spec/models/domain_return_path_spec.rb +48 -0
  206. data/spec/models/domain_spec.rb +150 -0
  207. data/spec/models/domain_track_spec.rb +48 -0
  208. data/spec/models/eip_spec.rb +36 -0
  209. data/spec/models/email_address_spec.rb +42 -0
  210. data/spec/models/email_message_from_spec.rb +42 -0
  211. data/spec/models/email_message_object_spec.rb +120 -0
  212. data/spec/models/email_message_reply_to_spec.rb +42 -0
  213. data/spec/models/email_message_spec.rb +37 -17
  214. data/spec/models/email_message_to_inner_bcc_inner_spec.rb +48 -0
  215. data/spec/models/email_message_to_inner_cc_inner_spec.rb +48 -0
  216. data/spec/models/email_message_to_inner_spec.rb +60 -0
  217. data/spec/models/email_message_with_template_spec.rb +138 -0
  218. data/spec/models/email_response_spec.rb +10 -8
  219. data/spec/models/email_stats_spec.rb +42 -0
  220. data/spec/models/email_stats_stats_spec.rb +96 -0
  221. data/spec/models/event_metadata_spec.rb +24 -10
  222. data/spec/models/event_spec.rb +150 -0
  223. data/spec/models/geo_location_spec.rb +60 -0
  224. data/spec/models/ip_allocation_request_spec.rb +42 -0
  225. data/spec/models/ip_deletion_response_spec.rb +42 -0
  226. data/spec/models/ip_pool_create_request_spec.rb +66 -0
  227. data/spec/models/ip_pool_delete_response_spec.rb +42 -0
  228. data/spec/models/ip_pool_spec.rb +108 -0
  229. data/spec/models/ip_pool_update_request_spec.rb +54 -0
  230. data/spec/models/ip_spec.rb +168 -0
  231. data/spec/models/ip_update_request_spec.rb +36 -0
  232. data/spec/models/label_spec.rb +48 -0
  233. data/spec/models/member_spec.rb +102 -0
  234. data/spec/models/message_header_to_spec.rb +60 -0
  235. data/spec/models/message_spec.rb +210 -0
  236. data/spec/models/message_to_spec.rb +60 -0
  237. data/spec/models/operating_system_spec.rb +60 -0
  238. data/spec/models/person_spec.rb +42 -0
  239. data/spec/models/recipient_spec.rb +60 -0
  240. data/spec/models/smtp_auth_spec.rb +60 -0
  241. data/spec/models/stat_spec.rb +42 -0
  242. data/spec/models/stat_stats_spec.rb +96 -0
  243. data/spec/models/sub_account_spec.rb +130 -0
  244. data/spec/models/suppression_spec.rb +11 -9
  245. data/spec/models/third_party_sending_provider_spec.rb +96 -0
  246. data/spec/models/update_sub_account_spec.rb +36 -0
  247. data/spec/models/update_webhook_spec.rb +120 -0
  248. data/spec/models/user_agent_spec.rb +6 -4
  249. data/spec/models/webhook_spec.rb +144 -0
  250. data/spec/spec_helper.rb +3 -3
  251. metadata +288 -67
  252. data/config-ruby.json +0 -11
  253. data/docs/CountStat.md +0 -18
  254. data/docs/QEmailMessage.md +0 -70
  255. data/docs/QEvent.md +0 -42
  256. data/docs/RDSuppression.md +0 -18
  257. data/docs/RSuppression.md +0 -24
  258. data/docs/WebhookEvent.md +0 -20
  259. data/generate-libs.bash +0 -1
  260. data/lib/sendpost_ruby_sdk/models/city.rb +0 -255
  261. data/lib/sendpost_ruby_sdk/models/count_stat.rb +0 -219
  262. data/lib/sendpost_ruby_sdk/models/from.rb +0 -228
  263. data/lib/sendpost_ruby_sdk/models/os.rb +0 -255
  264. data/lib/sendpost_ruby_sdk/models/q_email_message.rb +0 -461
  265. data/lib/sendpost_ruby_sdk/models/q_event.rb +0 -329
  266. data/lib/sendpost_ruby_sdk/models/r_suppression.rb +0 -254
  267. data/lib/sendpost_ruby_sdk/models/rd_suppression.rb +0 -221
  268. data/lib/sendpost_ruby_sdk/models/reply_to.rb +0 -228
  269. data/lib/sendpost_ruby_sdk/models/suppression_email.rb +0 -219
  270. data/lib/sendpost_ruby_sdk/models/to.rb +0 -259
  271. data/lib/sendpost_ruby_sdk/models/webhook_event.rb +0 -228
  272. data/sendpost.yaml +0 -662
  273. data/sendpost_ruby_sdk.gemspec +0 -38
  274. data/spec/api_client_spec.rb +0 -228
  275. data/spec/configuration_spec.rb +0 -42
  276. data/spec/models/city_spec.rb +0 -58
  277. data/spec/models/count_stat_spec.rb +0 -34
  278. data/spec/models/from_spec.rb +0 -40
  279. data/spec/models/os_spec.rb +0 -58
  280. data/spec/models/q_email_message_spec.rb +0 -190
  281. data/spec/models/q_event_spec.rb +0 -106
  282. data/spec/models/r_suppression_spec.rb +0 -52
  283. data/spec/models/rd_suppression_spec.rb +0 -34
  284. data/spec/models/reply_to_spec.rb +0 -40
  285. data/spec/models/suppression_email_spec.rb +0 -34
  286. data/spec/models/to_spec.rb +0 -58
  287. data/spec/models/webhook_event_spec.rb +0 -40
data/sendpost.yaml DELETED
@@ -1,662 +0,0 @@
1
- openapi: 3.0.2
2
- info:
3
- title: SendPost API
4
- description: Email API and SMTP relay to not just send and measure email sending,
5
- but also alert and optimise. We provide you with tools, expertise and support
6
- needed to reliably deliver emails to your customers inboxes on time, every time.
7
- version: 1.0.0
8
- termsOfService: http://sendpost.io/terms-of-service
9
- contact:
10
- email: hello@sendpost.io
11
- servers:
12
- - url: https://api.sendpost.io/api/v1/
13
- paths:
14
- /subaccount/email/:
15
- post:
16
- tags:
17
- - email
18
- description: Send Email To Contacts
19
- operationId: send_email
20
- parameters:
21
- - in: header
22
- name: X-SubAccount-ApiKey
23
- description: Sub-Account API Key
24
- required: true
25
- schema:
26
- type: string
27
- requestBody:
28
- description: "Email message"
29
- content:
30
- application/json:
31
- schema:
32
- $ref: '#/components/schemas/EmailMessage'
33
- responses:
34
- '200':
35
- description: '"Email Message Processed Successfully"'
36
- content:
37
- application/json:
38
- schema:
39
- type: array
40
- items:
41
- $ref: '#/components/schemas/EmailResponse'
42
- '401':
43
- description: Not Authorized
44
- '422':
45
- description: Request body is not in proper format
46
- '500':
47
- description: Internal Server Error
48
- /subaccount/email/template:
49
- post:
50
- tags:
51
- - email
52
- description: Send Email To Contacts With Template
53
- operationId: send_email_with_template
54
- parameters:
55
- - in: header
56
- name: X-SubAccount-ApiKey
57
- description: Sub-Account API Key
58
- required: true
59
- schema:
60
- type: string
61
- requestBody:
62
- description: "Email message"
63
- content:
64
- application/json:
65
- schema:
66
- $ref: '#/components/schemas/EmailMessage'
67
- responses:
68
- '200':
69
- description: '"Email Message Processed Successfully"'
70
- content:
71
- application/json:
72
- schema:
73
- type: array
74
- items:
75
- $ref: '#/components/schemas/EmailResponse'
76
- '401':
77
- description: Not Authorized
78
- '422':
79
- description: Request body is not in proper format
80
- '500':
81
- description: Internal Server Error
82
- /subaccount/suppression/:
83
- get:
84
- tags:
85
- - suppression
86
- description: Get all suppressions
87
- operationId: GetSuppressions
88
- parameters:
89
- - in: header
90
- name: X-SubAccount-ApiKey
91
- description: Sub-Account API Key
92
- required: true
93
- schema:
94
- type: string
95
- - in: query
96
- name: offset
97
- description: offset
98
- schema:
99
- type: integer
100
- format: int64
101
- - in: query
102
- name: limit
103
- description: limit
104
- schema:
105
- type: integer
106
- format: int64
107
- - in: query
108
- name: search
109
- description: search
110
- schema:
111
- type: string
112
- - in: query
113
- name: from
114
- description: from date
115
- schema:
116
- type: string
117
- - in: query
118
- name: to
119
- description: to date
120
- schema:
121
- type: string
122
- responses:
123
- '200':
124
- description: '"Suppressions retrieved successfully"'
125
- content:
126
- application/json:
127
- schema:
128
- type: array
129
- items:
130
- $ref: '#/components/schemas/Suppression'
131
- '401':
132
- description: Not Authorized
133
- '500':
134
- description: Internal Server Error
135
- post:
136
- tags:
137
- - suppression
138
- description: Add Email Addresses To Suppression List
139
- operationId: CreateSuppressions
140
- parameters:
141
- - in: header
142
- name: X-SubAccount-ApiKey
143
- description: Sub-Account API Key
144
- required: true
145
- schema:
146
- type: string
147
- requestBody:
148
- description: "Suppression content"
149
- content:
150
- application/json:
151
- schema:
152
- $ref: '#/components/schemas/RSuppression'
153
- responses:
154
- '200':
155
- description: '"Suppressions created successfully"'
156
- content:
157
- application/json:
158
- schema:
159
- type: array
160
- items:
161
- $ref: '#/components/schemas/Suppression'
162
- '401':
163
- description: Not Authorized
164
- '406':
165
- description: Suppression list is empty
166
- '422':
167
- description: Request body is not in proper format
168
- '500':
169
- description: Internal Server Error
170
- delete:
171
- tags:
172
- - suppression
173
- description: Delete specific emails which are in suppression list
174
- operationId: DeleteSuppression
175
- parameters:
176
- - in: header
177
- name: X-SubAccount-ApiKey
178
- description: Sub-Account API Key
179
- required: true
180
- schema:
181
- type: string
182
- requestBody:
183
- description: "Suppression content"
184
- content:
185
- application/json:
186
- schema:
187
- $ref: '#/components/schemas/RDSuppression'
188
- responses:
189
- '200':
190
- description: '"Emails in suppression list have been deleted successfully"'
191
- content:
192
- application/json:
193
- schema:
194
- type: array
195
- items:
196
- $ref: '#/components/schemas/DeleteResponse'
197
- '401':
198
- description: Not Authorized
199
- '406':
200
- description: suppression list is empty
201
- '422':
202
- description: Request body is not in proper format
203
- '500':
204
- description: Internal Server Error
205
- /subaccount/suppression/count:
206
- get:
207
- tags:
208
- - suppression
209
- description: Count Total Suppressions
210
- operationId: Count
211
- parameters:
212
- - in: header
213
- name: X-SubAccount-ApiKey
214
- description: Sub-Account API Key
215
- required: true
216
- schema:
217
- type: string
218
- - in: query
219
- name: from
220
- description: from date
221
- schema:
222
- type: string
223
- - in: query
224
- name: to
225
- description: to date
226
- schema:
227
- type: string
228
- responses:
229
- '200':
230
- description: '"Total count of Suppressions for a specific sub-account"'
231
- content:
232
- application/json:
233
- schema:
234
- $ref: '#/components/schemas/CountStat'
235
- '401':
236
- description: Not Authorized
237
- '500':
238
- description: Internal Server Error
239
- components:
240
- schemas:
241
- EmailMessage:
242
- title: EmailMessage
243
- type: object
244
- properties:
245
- attachments:
246
- type: array
247
- items:
248
- $ref: '#/components/schemas/Attachment'
249
- from:
250
- $ref: '#/components/schemas/From'
251
- groups:
252
- type: array
253
- items:
254
- type: string
255
- example: ["promotion", "techcrunch-launch"]
256
- htmlBody:
257
- type: string
258
- example: "<html><body>Thanks for your trust in Hooli {{.Name}}. We are trying launching Nucleus at TechCrunch Disrupt - our cloud based compression platform. That you could easily integrate it into {{.Company}}.</html></body>"
259
- ippool:
260
- type: string
261
- example: "promotional-hooli"
262
- preText:
263
- type: string
264
- example: "Follow the steps to integrate our video compression API"
265
- replyTo:
266
- $ref: '#/components/schemas/ReplyTo'
267
- subject:
268
- type: string
269
- example: "Welcome to Nucles {{.Name}}:) Let's get started"
270
- template:
271
- type: string
272
- example: "welcome-onboarding"
273
- textBody:
274
- type: string
275
- example: "Thanks for your trust in Hooli {{.Name}}. We are trying launching Nucleus at TechCrunch Disrupt - our cloud based compression platform. That you could easily integrate it into {{.Company}}"
276
- to:
277
- type: array
278
- items:
279
- $ref: '#/components/schemas/To'
280
- trackClicks:
281
- type: boolean
282
- example: true
283
- trackOpens:
284
- type: boolean
285
- example: true
286
- headers:
287
- type: object
288
- example:
289
- X-Campaign-Id: "techcrunch-launch"
290
- ampBody:
291
- type: string
292
- WebhookEvent:
293
- title: WebhookEvent
294
- type: object
295
- properties:
296
- event:
297
- $ref: '#/components/schemas/QEvent'
298
- emailMessage:
299
- $ref: '#/components/schemas/QEmailMessage'
300
- QEmailMessage:
301
- title: QEmailMessage
302
- type: object
303
- properties:
304
- accountID:
305
- type: integer
306
- format: int64
307
- example: 117
308
- ampBody:
309
- type: string
310
- attachments:
311
- type: array
312
- items:
313
- $ref: '#/components/schemas/Attachment'
314
- attempt:
315
- type: integer
316
- format: int64
317
- example: 1
318
- customFields:
319
- type: object
320
- example:
321
- Company: "Bachmanity"
322
- emailType:
323
- type: string
324
- example: "gmail"
325
- from:
326
- $ref: '#/components/schemas/From'
327
- groups:
328
- type: array
329
- items:
330
- type: string
331
- example: ["promotion", "techcrunch-launch"]
332
- headerBcc:
333
- type: array
334
- items:
335
- $ref: '#/components/schemas/CopyTo'
336
- headerCc:
337
- type: array
338
- items:
339
- $ref: '#/components/schemas/CopyTo'
340
- headerTo:
341
- $ref: '#/components/schemas/To'
342
- headers:
343
- type: object
344
- example:
345
- X-Campaign-Id: "techcrunch-launch"
346
- htmlBody:
347
- type: string
348
- example: "<html><body>{{.FirstName}}, I have been following your journey since {{.Company}} days. Just wanted to thank you for inspiring us.</body></html>"
349
- ipID:
350
- type: integer
351
- format: int64
352
- example: 18
353
- ipPool:
354
- type: string
355
- example: "transactional-piedpiper"
356
- localIP:
357
- type: string
358
- example: "172.30.2.45"
359
- messageID:
360
- type: string
361
- example: "0c6c7600-e68d-498e-b924-d8105130cc1d"
362
- preText:
363
- type: string
364
- example: "thanks for the inspiration ..."
365
- publicIP:
366
- type: string
367
- example: "52.13.11.9"
368
- replyTo:
369
- $ref: '#/components/schemas/ReplyTo'
370
- subAccountID:
371
- type: integer
372
- format: int64
373
- example: 234
374
- subject:
375
- type: string
376
- example: "Building great products?"
377
- submittedAt:
378
- type: integer
379
- format: int64
380
- example: 1567512491587205024
381
- textBody:
382
- type: string
383
- example: "{{.FirstName}}, I have been following your journey since {{.Company}} days. Just wanted to thank you for inspiring us."
384
- to:
385
- $ref: '#/components/schemas/To'
386
- trackClicks:
387
- type: boolean
388
- example: true
389
- trackOpens:
390
- type: boolean
391
- example: true
392
- QEvent:
393
- title: QEvent
394
- type: object
395
- properties:
396
- accountID:
397
- type: integer
398
- format: int64
399
- example: 8
400
- eventID:
401
- type: string
402
- example: "8690608c-2538-4173-a463-f0de475633da"
403
- eventMetadata:
404
- $ref: '#/components/schemas/EventMetadata'
405
- from:
406
- type: string
407
- example: "gavin@hooli.com"
408
- groups:
409
- type: array
410
- items:
411
- type: string
412
- example: ["promotion", "techcrunch-launch"]
413
- ipID:
414
- type: integer
415
- format: int64
416
- example: 7
417
- messageID:
418
- type: string
419
- example: "edcb833d-5ef6-48c3-936f-1de0b74843d4"
420
- messageType:
421
- type: string
422
- example: "default"
423
- subAccountID:
424
- type: integer
425
- format: int64
426
- example: 28
427
- submittedAt:
428
- type: integer
429
- format: int64
430
- example: 1689245147247766056
431
- to:
432
- type: string
433
- example: "richard@piedpiper.com"
434
- tpspId:
435
- type: integer
436
- format: int64
437
- example: 0
438
- type:
439
- type: integer
440
- format: int64
441
- example: 2
442
- Attachment:
443
- title: Attachment
444
- type: object
445
- properties:
446
- content:
447
- type: string
448
- example: "V2VsY29tZSB0byBTZW5kUG9zdCEgOikK"
449
- filename:
450
- type: string
451
- example: "file0.txt"
452
- To:
453
- title: To
454
- type: object
455
- properties:
456
- name:
457
- type: string
458
- example: "Elrich Bachman"
459
- email:
460
- type: string
461
- example: "elrich@bachmanity.com"
462
- cc:
463
- type: array
464
- items:
465
- $ref: '#/components/schemas/CopyTo'
466
- bcc:
467
- type: array
468
- items:
469
- $ref: '#/components/schemas/CopyTo'
470
- customFields:
471
- type: object
472
- example:
473
- Company: "Bachmanity"
474
- From:
475
- title: From
476
- type: object
477
- properties:
478
- email:
479
- type: string
480
- example: "gavin@hooli.com"
481
- name:
482
- type: string
483
- example: "Gavin Belson"
484
- ReplyTo:
485
- title: ReplyTo
486
- type: object
487
- properties:
488
- email:
489
- type: string
490
- example: "welcome@hooli.vom"
491
- name:
492
- type: string
493
- example: "Team @ Hooli"
494
- CopyTo:
495
- title: CopyTo
496
- type: object
497
- properties:
498
- name:
499
- type: string
500
- example: "Nelson Bighetti"
501
- email:
502
- type: string
503
- example: "bighead@bachmanity.com"
504
- customFields:
505
- type: object
506
- example:
507
- Company: "Bachmanity"
508
- EventMetadata:
509
- title: EventMetadata
510
- type: object
511
- properties:
512
- clickedURL:
513
- type: string
514
- device:
515
- $ref: '#/components/schemas/Device'
516
- geo:
517
- $ref: '#/components/schemas/City'
518
- os:
519
- $ref: '#/components/schemas/Os'
520
- smtpCode:
521
- type: integer
522
- format: int64
523
- example: 200
524
- smtpDescription:
525
- type: string
526
- example: "email delivered successfully"
527
- userAgent:
528
- $ref: '#/components/schemas/UserAgent'
529
- EmailResponse:
530
- title: EmailResponse
531
- type: object
532
- properties:
533
- errorCode:
534
- type: integer
535
- example: 500
536
- message:
537
- type: string
538
- example: "ok"
539
- messageId:
540
- type: string
541
- example: "0e139af1-f1xe-480d-b08d-eg28m48kf48d"
542
- submittedAt:
543
- type: integer
544
- format: int64
545
- example: 1567512491587205124
546
- to:
547
- type: string
548
- example: "bighead@bachmanity.com"
549
- Device:
550
- title: Device
551
- type: object
552
- properties:
553
- Family:
554
- type: string
555
- Os:
556
- title: Os
557
- type: object
558
- properties:
559
- Family:
560
- type: string
561
- Major:
562
- type: string
563
- Minor:
564
- type: string
565
- Patch:
566
- type: string
567
- PatchMinor:
568
- type: string
569
- UserAgent:
570
- title: UserAgent
571
- type: object
572
- properties:
573
- Family:
574
- type: string
575
- Major:
576
- type: string
577
- Minor:
578
- type: string
579
- Patch:
580
- type: string
581
- Suppression:
582
- title: Suppression
583
- type: object
584
- properties:
585
- created:
586
- type: integer
587
- format: int64
588
- email:
589
- type: string
590
- id:
591
- type: integer
592
- format: int64
593
- reason:
594
- type: integer
595
- format: int64
596
- smtp_error:
597
- type: string
598
- RSuppression:
599
- title: RSuppression
600
- type: object
601
- properties:
602
- hardBounce:
603
- type: array
604
- items:
605
- $ref: '#/components/schemas/SuppressionEmail'
606
- manual:
607
- type: array
608
- items:
609
- $ref: '#/components/schemas/SuppressionEmail'
610
- spamComplaint:
611
- type: array
612
- items:
613
- $ref: '#/components/schemas/SuppressionEmail'
614
- unsubscribe:
615
- type: array
616
- items:
617
- $ref: '#/components/schemas/SuppressionEmail'
618
- SuppressionEmail:
619
- title: SuppressionEmail
620
- type: object
621
- properties:
622
- email:
623
- type: string
624
- RDSuppression:
625
- title: RDSuppression
626
- type: object
627
- properties:
628
- suppressions:
629
- type: array
630
- items:
631
- $ref: '#/components/schemas/SuppressionEmail'
632
- DeleteResponse:
633
- title: DeleteResponse
634
- type: object
635
- properties:
636
- id:
637
- type: integer
638
- format: int64
639
- message:
640
- type: string
641
- CountStat:
642
- title: CountStat
643
- type: object
644
- properties:
645
- count:
646
- type: integer
647
- format: int64
648
- City:
649
- title: City
650
- type: object
651
- properties:
652
- cityID:
653
- type: integer
654
- format: int32
655
- continentCode:
656
- type: string
657
- countryCode:
658
- type: string
659
- postalCode:
660
- type: string
661
- timeZone:
662
- type: string
@@ -1,38 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
-
3
- =begin
4
- #SendPost API
5
-
6
- #Email API and SMTP relay to not just send and measure email sending, but also alert and optimise. We provide you with tools, expertise and support needed to reliably deliver emails to your customers inboxes on time, every time.
7
-
8
- The version of the OpenAPI document: 1.0.0
9
- Contact: hello@sendpost.io
10
- Generated by: https://openapi-generator.tech
11
- OpenAPI Generator version: 6.6.0
12
-
13
- =end
14
-
15
- $:.push File.expand_path("../lib", __FILE__)
16
- require "sendpost_ruby_sdk/version"
17
-
18
- Gem::Specification.new do |s|
19
- s.name = "sendpost_ruby_sdk"
20
- s.version = Sendpost::VERSION
21
- s.platform = Gem::Platform::RUBY
22
- s.authors = ["Sendpost"]
23
- s.email = ["dev@sendpost.io"]
24
- s.homepage = "https://github.com/sendpost/sendpost_ruby_sdk"
25
- s.summary = "SendPost Ruby API"
26
- s.description = "Email API and SMTP relay to not just send and measure email sending, but also alert and optimise. We provide you with tools, expertise and support needed to reliably deliver emails to your customers inboxes on time, every time."
27
- s.license = "Unlicense"
28
- s.required_ruby_version = ">= 2.7"
29
-
30
- s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1'
31
-
32
- s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
33
-
34
- s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
35
- s.test_files = `find spec/*`.split("\n")
36
- s.executables = []
37
- s.require_paths = ["lib"]
38
- end