sendx-ruby-sdk 1.0.2 → 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 (169) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +226 -75
  3. data/lib/sendx-ruby-sdk/api/campaign_api.rb +96 -144
  4. data/lib/sendx-ruby-sdk/api/contact_api.rb +130 -97
  5. data/lib/sendx-ruby-sdk/api/custom_field_api.rb +391 -0
  6. data/lib/sendx-ruby-sdk/api/email_sending_api.rb +158 -0
  7. data/lib/sendx-ruby-sdk/api/event_api.rb +192 -0
  8. data/lib/sendx-ruby-sdk/api/events_api.rb +158 -0
  9. data/lib/sendx-ruby-sdk/api/getting_started_api.rb +158 -0
  10. data/lib/sendx-ruby-sdk/api/list_api.rb +127 -92
  11. data/lib/sendx-ruby-sdk/api/post_api.rb +380 -0
  12. data/lib/sendx-ruby-sdk/api/post_category_api.rb +362 -0
  13. data/lib/sendx-ruby-sdk/api/post_tag_api.rb +362 -0
  14. data/lib/sendx-ruby-sdk/api/report_api.rb +90 -0
  15. data/lib/sendx-ruby-sdk/api/reports_api.rb +5 -5
  16. data/lib/sendx-ruby-sdk/api/sender_api.rb +29 -38
  17. data/lib/sendx-ruby-sdk/api/tag_api.rb +380 -0
  18. data/lib/sendx-ruby-sdk/api/tags_api.rb +9 -9
  19. data/lib/sendx-ruby-sdk/api/team_member_api.rb +147 -0
  20. data/lib/sendx-ruby-sdk/api/template_api.rb +391 -0
  21. data/lib/sendx-ruby-sdk/api/tracking_api.rb +158 -0
  22. data/lib/sendx-ruby-sdk/api/webhook_api.rb +362 -0
  23. data/lib/sendx-ruby-sdk/api_client.rb +11 -12
  24. data/lib/sendx-ruby-sdk/api_error.rb +4 -4
  25. data/lib/sendx-ruby-sdk/configuration.rb +7 -11
  26. data/lib/sendx-ruby-sdk/models/campaign.rb +24 -8
  27. data/lib/sendx-ruby-sdk/models/campaign_dashboard_data.rb +12 -6
  28. data/lib/sendx-ruby-sdk/models/campaign_request.rb +14 -42
  29. data/lib/sendx-ruby-sdk/models/contact.rb +12 -6
  30. data/lib/sendx-ruby-sdk/models/contact_request.rb +12 -6
  31. data/lib/sendx-ruby-sdk/models/create_response.rb +12 -6
  32. data/lib/sendx-ruby-sdk/models/custom_event_request.rb +270 -0
  33. data/lib/sendx-ruby-sdk/models/custom_field.rb +285 -0
  34. data/lib/sendx-ruby-sdk/models/customfield_customfield_id_delete200_response.rb +220 -0
  35. data/lib/sendx-ruby-sdk/models/dashboard_stats.rb +12 -6
  36. data/lib/sendx-ruby-sdk/models/delete_campaign200_response.rb +12 -6
  37. data/lib/sendx-ruby-sdk/models/delete_request.rb +12 -6
  38. data/lib/sendx-ruby-sdk/models/delete_response.rb +78 -14
  39. data/lib/sendx-ruby-sdk/models/e_custom_field.rb +295 -0
  40. data/lib/sendx-ruby-sdk/models/error_response.rb +288 -0
  41. data/lib/sendx-ruby-sdk/models/event_response.rb +229 -0
  42. data/lib/sendx-ruby-sdk/models/events_revenue_postback_get200_response.rb +229 -0
  43. data/lib/sendx-ruby-sdk/models/events_revenue_postback_get400_response.rb +220 -0
  44. data/lib/sendx-ruby-sdk/models/events_revenue_postback_get500_response.rb +220 -0
  45. data/lib/sendx-ruby-sdk/models/identify_error_response.rb +220 -0
  46. data/lib/sendx-ruby-sdk/models/identify_request.rb +296 -0
  47. data/lib/sendx-ruby-sdk/models/identify_response.rb +229 -0
  48. data/lib/sendx-ruby-sdk/models/last_sent_campaign_stat.rb +12 -6
  49. data/lib/sendx-ruby-sdk/models/link_stat.rb +232 -0
  50. data/lib/sendx-ruby-sdk/models/list_model.rb +12 -7
  51. data/lib/sendx-ruby-sdk/models/list_request.rb +12 -6
  52. data/lib/sendx-ruby-sdk/models/message_response.rb +229 -0
  53. data/lib/sendx-ruby-sdk/models/operation_response.rb +241 -0
  54. data/lib/sendx-ruby-sdk/models/postback_response.rb +229 -0
  55. data/lib/sendx-ruby-sdk/models/report_data.rb +12 -6
  56. data/lib/sendx-ruby-sdk/models/response.rb +12 -6
  57. data/lib/sendx-ruby-sdk/models/rest_e_campaign.rb +539 -0
  58. data/lib/sendx-ruby-sdk/models/rest_e_contact.rb +380 -0
  59. data/lib/sendx-ruby-sdk/models/rest_e_custom_field.rb +299 -0
  60. data/lib/sendx-ruby-sdk/models/rest_e_list.rb +238 -0
  61. data/lib/sendx-ruby-sdk/models/rest_e_post.rb +443 -0
  62. data/lib/sendx-ruby-sdk/models/rest_e_post_category.rb +238 -0
  63. data/lib/sendx-ruby-sdk/models/rest_e_post_tag.rb +238 -0
  64. data/lib/sendx-ruby-sdk/models/rest_e_sender.rb +265 -0
  65. data/lib/sendx-ruby-sdk/models/rest_e_tag.rb +238 -0
  66. data/lib/sendx-ruby-sdk/models/rest_e_template.rb +307 -0
  67. data/lib/sendx-ruby-sdk/models/rest_e_webhook.rb +349 -0
  68. data/lib/sendx-ruby-sdk/models/rest_r_campaign.rb +580 -0
  69. data/lib/sendx-ruby-sdk/models/rest_r_contact.rb +438 -0
  70. data/lib/sendx-ruby-sdk/models/rest_r_custom_field.rb +306 -0
  71. data/lib/sendx-ruby-sdk/models/rest_r_list.rb +291 -0
  72. data/lib/sendx-ruby-sdk/models/rest_r_member.rb +274 -0
  73. data/lib/sendx-ruby-sdk/models/rest_r_post.rb +384 -0
  74. data/lib/sendx-ruby-sdk/models/rest_r_post_category.rb +251 -0
  75. data/lib/sendx-ruby-sdk/models/rest_r_post_tag.rb +250 -0
  76. data/lib/sendx-ruby-sdk/models/rest_r_sender.rb +272 -0
  77. data/lib/sendx-ruby-sdk/models/rest_r_tag.rb +272 -0
  78. data/lib/sendx-ruby-sdk/models/rest_r_template.rb +366 -0
  79. data/lib/sendx-ruby-sdk/models/rest_r_webhook.rb +326 -0
  80. data/lib/sendx-ruby-sdk/models/rest_report_data.rb +312 -0
  81. data/lib/sendx-ruby-sdk/models/revenue_event_request.rb +285 -0
  82. data/lib/sendx-ruby-sdk/models/sender.rb +42 -6
  83. data/lib/sendx-ruby-sdk/models/sender_request.rb +32 -6
  84. data/lib/sendx-ruby-sdk/models/sender_response.rb +52 -6
  85. data/lib/sendx-ruby-sdk/models/tag.rb +12 -6
  86. data/lib/sendx-ruby-sdk/models/tag_request.rb +12 -6
  87. data/lib/sendx-ruby-sdk/models/template_email_message.rb +337 -0
  88. data/lib/sendx-ruby-sdk/models/track_request.rb +245 -0
  89. data/lib/sendx-ruby-sdk/models/track_response.rb +229 -0
  90. data/lib/sendx-ruby-sdk/models/webhook.rb +311 -0
  91. data/lib/sendx-ruby-sdk/models/webhook_object.rb +451 -0
  92. data/lib/sendx-ruby-sdk/models/webhook_request.rb +291 -0
  93. data/lib/sendx-ruby-sdk/models/x_attachment.rb +263 -0
  94. data/lib/sendx-ruby-sdk/models/x_email_message.rb +356 -0
  95. data/lib/sendx-ruby-sdk/models/x_email_response.rb +261 -0
  96. data/lib/sendx-ruby-sdk/models/x_from.rb +246 -0
  97. data/lib/sendx-ruby-sdk/models/x_reply_to.rb +246 -0
  98. data/lib/sendx-ruby-sdk/models/xto.rb +279 -0
  99. data/lib/sendx-ruby-sdk/version.rb +5 -5
  100. data/lib/sendx-ruby-sdk.rb +62 -25
  101. data/spec/api/custom_field_api_spec.rb +98 -0
  102. data/spec/api/email_sending_api_spec.rb +59 -0
  103. data/spec/api/event_api_spec.rb +59 -0
  104. data/spec/api/events_api_spec.rb +59 -0
  105. data/spec/api/getting_started_api_spec.rb +59 -0
  106. data/spec/api/post_api_spec.rb +97 -0
  107. data/spec/api/post_category_api_spec.rb +95 -0
  108. data/spec/api/post_tag_api_spec.rb +95 -0
  109. data/spec/api/report_api_spec.rb +47 -0
  110. data/spec/api/tag_api_spec.rb +97 -0
  111. data/spec/api/team_member_api_spec.rb +58 -0
  112. data/spec/api/template_api_spec.rb +98 -0
  113. data/spec/api/tracking_api_spec.rb +59 -0
  114. data/spec/api/webhook_api_spec.rb +95 -0
  115. data/spec/models/custom_event_request_spec.rb +54 -0
  116. data/spec/models/custom_field_spec.rb +58 -0
  117. data/spec/models/customfield_customfield_id_delete200_response_spec.rb +36 -0
  118. data/spec/models/e_custom_field_spec.rb +64 -0
  119. data/spec/models/error_response_spec.rb +46 -0
  120. data/spec/models/event_response_spec.rb +48 -0
  121. data/spec/models/events_revenue_postback_get200_response_spec.rb +42 -0
  122. data/spec/models/events_revenue_postback_get400_response_spec.rb +36 -0
  123. data/spec/models/events_revenue_postback_get500_response_spec.rb +36 -0
  124. data/spec/models/identify_error_response_spec.rb +36 -0
  125. data/spec/models/identify_request_spec.rb +72 -0
  126. data/spec/models/identify_response_spec.rb +48 -0
  127. data/spec/models/link_stat_spec.rb +42 -0
  128. data/spec/models/message_response_spec.rb +42 -0
  129. data/spec/models/operation_response_spec.rb +48 -0
  130. data/spec/models/postback_response_spec.rb +42 -0
  131. data/spec/models/rest_e_campaign_spec.rb +154 -0
  132. data/spec/models/rest_e_contact_spec.rb +78 -0
  133. data/spec/models/rest_e_custom_field_spec.rb +52 -0
  134. data/spec/models/rest_e_list_spec.rb +36 -0
  135. data/spec/models/rest_e_post_category_spec.rb +36 -0
  136. data/spec/models/rest_e_post_spec.rb +144 -0
  137. data/spec/models/rest_e_post_tag_spec.rb +36 -0
  138. data/spec/models/rest_e_sender_spec.rb +42 -0
  139. data/spec/models/rest_e_tag_spec.rb +36 -0
  140. data/spec/models/rest_e_template_spec.rb +66 -0
  141. data/spec/models/rest_e_webhook_spec.rb +84 -0
  142. data/spec/models/rest_r_campaign_spec.rb +178 -0
  143. data/spec/models/rest_r_contact_spec.rb +150 -0
  144. data/spec/models/rest_r_custom_field_spec.rb +58 -0
  145. data/spec/models/rest_r_list_spec.rb +64 -0
  146. data/spec/models/rest_r_member_spec.rb +72 -0
  147. data/spec/models/rest_r_post_category_spec.rb +54 -0
  148. data/spec/models/rest_r_post_spec.rb +144 -0
  149. data/spec/models/rest_r_post_tag_spec.rb +54 -0
  150. data/spec/models/rest_r_sender_spec.rb +54 -0
  151. data/spec/models/rest_r_tag_spec.rb +54 -0
  152. data/spec/models/rest_r_template_spec.rb +94 -0
  153. data/spec/models/rest_r_webhook_spec.rb +90 -0
  154. data/spec/models/rest_report_data_spec.rb +90 -0
  155. data/spec/models/revenue_event_request_spec.rb +60 -0
  156. data/spec/models/template_email_message_spec.rb +72 -0
  157. data/spec/models/track_request_spec.rb +48 -0
  158. data/spec/models/track_response_spec.rb +42 -0
  159. data/spec/models/webhook_object_spec.rb +180 -0
  160. data/spec/models/webhook_request_spec.rb +78 -0
  161. data/spec/models/webhook_spec.rb +90 -0
  162. data/spec/models/x_attachment_spec.rb +42 -0
  163. data/spec/models/x_email_message_spec.rb +90 -0
  164. data/spec/models/x_email_response_spec.rb +60 -0
  165. data/spec/models/x_from_spec.rb +42 -0
  166. data/spec/models/x_reply_to_spec.rb +42 -0
  167. data/spec/models/xto_spec.rb +60 -0
  168. data/spec/spec_helper.rb +4 -4
  169. metadata +221 -20
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3a42a2cd69e7b9ea8e4162a38183effa20ede3c7954be0281883f927d29387df
4
- data.tar.gz: 3831f17146ae2e3d23043f0e8ede428a85e8118b27c4c3cc2337a178d22f8472
3
+ metadata.gz: 0c079c2e0f832e6e1c7c7a8c790a33b820a8a79c3be9a6c8992344c84621491d
4
+ data.tar.gz: 97677f8ca83e36f98dbefac98179196469571acb837b07771ac9f0dc1ff8beeb
5
5
  SHA512:
6
- metadata.gz: 9212032cb16a569bd2a394a1f87bb8e27b0fb08dc363b363d43f910b5413ff614a6e335d9dcec11930b9ff2fb3f885317d871daa1883c2aefc654709fe71f5ca
7
- data.tar.gz: 17bb196b661df70d5180214f73e90e9ff224df8eaab050bf36b44e3f9c116ee34d180b79d62f1c858d0287410b69b82f8270476663f2d8e9e1fd0c96e70cca7e
6
+ metadata.gz: a6af99c6ad3600970f4e088461923f1e1366911129e792d55cffbd3a1b1e8896bd267581637b4ca4d27209bb29228f94a02a9b617011234aff372c1e26934878
7
+ data.tar.gz: cbfd7b5b332090fd4bcd57a135b68429ae236a9a37382718b2cf250bc60802e5e0fec02b48b31f5246716f326f9114c81edd999ee53e93243f0920a557ef34d2
data/README.md CHANGED
@@ -1,48 +1,133 @@
1
1
  # SendX Ruby SDK
2
2
 
3
- SendX - the Ruby gem for the SendX REST API
3
+ # SendX REST API Documentation
4
4
 
5
- ## Introduction
5
+ ## 🚀 Introduction
6
6
 
7
- SendX is an email marketing product. It helps you convert website visitors to customers, send them promotional emails, engage with them using drip sequences and craft custom journeys using powerful but simple automations.
7
+ The SendX API is organized around REST principles. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
8
8
 
9
- The SendX API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
10
- The SendX Rest API doesn’t support bulk updates. You can work on only one object per request. <br>
9
+ **Key Features:**
10
+ - 🔒 **Security**: Team-based authentication with optional member-level access
11
+ - 🎯 **Resource-Oriented**: RESTful design with clear resource boundaries
12
+ - 📊 **Rich Data Models**: Three-layer model system (Input/Output/Internal)
13
+ - 🔗 **Relationships**: Automatic prefix handling for resource relationships
14
+ - 📈 **Scalable**: Built for high-volume email marketing operations
11
15
 
16
+ ## 🏗️ Architecture Overview
12
17
 
13
- ## Installation
18
+ SendX uses a three-layer model architecture:
14
19
 
15
- ### Build a gem
20
+ 1. **Input Models** (`RestE*`): For API requests
21
+ 2. **Output Models** (`RestR*`): For API responses with prefixed IDs
22
+ 3. **Internal Models**: Core business logic (not exposed in API)
16
23
 
24
+ ## 🔐 Security & Authentication
17
25
 
18
- To install the gem:
26
+ SendX uses API key authentication:
19
27
 
20
- Install via command line
21
- ```shell
22
- gem install sendx-ruby-sdk
28
+ ### Team API Key
29
+ ```http
30
+ X-Team-ApiKey: YOUR_TEAM_API_KEY
23
31
  ```
32
+ - **Required for all requests**
33
+ - Team-level access to resources
34
+ - Available in SendX Settings → Team API Key
24
35
 
25
- Install via Gemfile
36
+ ## 🆔 Encrypted ID System
26
37
 
27
- ```ruby
28
- source "https://rubygems.pkg.github.com/sendx" do
29
- gem "sendx-ruby-sdk", "1.0.1"
30
- end
38
+ SendX uses encrypted IDs for security and better developer experience:
39
+
40
+ - **Internal IDs**: Sequential integers (not exposed)
41
+ - **Encrypted IDs**: 22-character alphanumeric strings
42
+ - **Prefixed IDs**: Resource-type prefixes in API responses (`contact_<22-char-id>`)
43
+
44
+ ### ID Format
45
+
46
+ **All resource IDs follow this pattern:**
47
+ ```
48
+ <resource_prefix>_<22_character_alphanumeric_string>
31
49
  ```
32
50
 
51
+ **Example:**
52
+ ```json
53
+ {
54
+ "id": "contact_BnKjkbBBS500CoBCP0oChQ",
55
+ "lists": ["list_OcuxJHdiAvujmwQVJfd3ss", "list_0tOFLp5RgV7s3LNiHrjGYs"],
56
+ "tags": ["tag_UhsDkjL772Qbj5lWtT62VK", "tag_fL7t9lsnZ9swvx2HrtQ9wM"]
57
+ }
58
+ ```
33
59
 
34
- ### Install from Git
60
+ ## 📚 Resource Prefixes
61
+
62
+ | Resource | Prefix | Example |
63
+ |----------|--------|---------|
64
+ | Contact | `contact_` | `contact_BnKjkbBBS500CoBCP0oChQ` |
65
+ | Campaign | `campaign_` | `campaign_LUE9BTxmksSmqHWbh96zsn` |
66
+ | List | `list_` | `list_OcuxJHdiAvujmwQVJfd3ss` |
67
+ | Tag | `tag_` | `tag_UhsDkjL772Qbj5lWtT62VK` |
68
+ | Sender | `sender_` | `sender_4vK3WFhMgvOwUNyaL4QxCD` |
69
+ | Template | `template_` | `template_f3lJvTEhSjKGVb5Lwc5SWS` |
70
+ | Custom Field | `field_` | `field_MnuqBAG2NPLm7PZMWbjQxt` |
71
+ | Webhook | `webhook_` | `webhook_9l154iiXlZoPo7vngmamee` |
72
+ | Post | `post_` | `post_XyZ123aBc456DeF789GhI` |
73
+ | Post Category | `post_category_` | `post_category_YzS1wOU20yw87UUHKxMzwn` |
74
+ | Post Tag | `post_tag_` | `post_tag_123XyZ456AbC` |
75
+ | Member | `member_` | `member_JkL012MnO345PqR678` |
76
+
77
+ ## 🎯 Best Practices
78
+
79
+ ### Error Handling
80
+ - **Always check status codes**: 2xx = success, 4xx = client error, 5xx = server error
81
+ - **Read error messages**: Descriptive messages help debug issues
82
+ - **Handle rate limits**: Respect API rate limits for optimal performance
83
+
84
+ ### Data Validation
85
+ - **Email format**: Must be valid email addresses
86
+ - **Required fields**: Check documentation for mandatory fields
87
+ - **Field lengths**: Respect maximum length constraints
88
+
89
+ ### Performance
90
+ - **Pagination**: Use offset/limit for large datasets
91
+ - **Batch operations**: Process multiple items when supported
92
+ - **Caching**: Cache responses when appropriate
93
+
94
+ ## 🛠️ SDKs & Integration
95
+
96
+ Official SDKs available for:
97
+ - [Golang](https://github.com/sendx/sendx-go-sdk)
98
+ - [Python](https://github.com/sendx/sendx-python-sdk)
99
+ - [Ruby](https://github.com/sendx/sendx-ruby-sdk)
100
+ - [Java](https://github.com/sendx/sendx-java-sdk)
101
+ - [PHP](https://github.com/sendx/sendx-php-sdk)
102
+ - [JavaScript](https://github.com/sendx/sendx-javascript-sdk)
103
+
104
+ ## 📞 Support
105
+
106
+ Need help? Contact us:
107
+ - 💬 **Website Chat**: Available on sendx.io
108
+ - 📧 **Email**: hello@sendx.io
109
+ - 📚 **Documentation**: Full guides at help.sendx.io
110
+
111
+ ---
112
+
113
+ **API Endpoint:** `https://api.sendx.io/api/v1/rest`
35
114
 
36
- The Ruby gem is hosted at a git repository: https://github.com/sendx/sendx-ruby-sdk, add the following in the Gemfile:
115
+ ## Installation
37
116
 
38
- gem 'sendx-ruby-sdk', :git => 'https://github.com/sendx/sendx-ruby-sdk.git'
117
+ ### To install the gem:
39
118
 
40
- ### Include the Ruby code directly
119
+ Install via command line
41
120
 
42
- Include the Ruby code directly using `-I` as follows:
121
+ ```
122
+ gem install sendx-ruby-sdk
123
+ ```
124
+
125
+ Install via Gemfile
43
126
 
44
- ```shell
45
- ruby -Ilib script.rb
127
+ ```
128
+ source "https://rubygems.pkg.github.com/sendx" do
129
+ gem "sendx-ruby-sdk", "1.1.0"
130
+ end
46
131
  ```
47
132
 
48
133
  ## Getting Started
@@ -51,13 +136,14 @@ Please follow the [installation](#installation) procedure and then run the follo
51
136
 
52
137
  ```ruby
53
138
  # Load the gem
54
- require 'time'
55
139
  require 'sendx-ruby-sdk'
56
- # setup authorization
140
+
141
+ # Setup authorization
57
142
  SendX.configure do |config|
58
- # Configure API key authorization: apiKeyAuth
59
- config.api_key['apiKeyAuth'] = 'YOUR API KEY'
60
- config.server_index = 2
143
+ # Configure API key authorization: TeamApiKey
144
+ config.api_key['X-Team-ApiKey'] = 'YOUR API KEY'
145
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
146
+ # config.api_key_prefix['X-Team-ApiKey'] = 'Bearer'
61
147
  end
62
148
 
63
149
  api_instance = SendX::ContactApi.new
@@ -67,10 +153,10 @@ contact_request = SendX::ContactRequest.new(
67
153
  last_name: "Doe",
68
154
  company: "SendX",
69
155
  last_tracked_ip: "34.94.159.140",
70
- tags: ["MKdhTovsTJDetCyrJmRySL"],
156
+ tags: ["tag_MKdhTovsTJDetCyrJmRySL"],
71
157
  custom_fields: {
72
- 'fnwfnke23kn4kn' => "VIP",
73
- "9i0jinjn0ib0"=> "Subscribers"
158
+ 'custom_field_MKdhTovsTJDetCyrJmRySe' => "VIP",
159
+ "custom_field_MKdhTovsTFDetCyrJerRySL"=> "Subscribers"
74
160
  },
75
161
  )
76
162
 
@@ -90,61 +176,126 @@ All URIs are relative to *https://api.sendx.io/api/v1/rest*
90
176
 
91
177
  Class | Method | HTTP request | Description
92
178
  ------------ | ------------- | ------------- | -------------
93
- *SendX::CampaignApi* | [**create_campaign**](docs/CampaignApi.md#create_campaign) | **POST** /campaign | Create Campaign
94
- *SendX::CampaignApi* | [**delete_campaign**](docs/CampaignApi.md#delete_campaign) | **DELETE** /campaign/{campaignId} | Delete Campaign
95
- *SendX::CampaignApi* | [**edit_campaign**](docs/CampaignApi.md#edit_campaign) | **PUT** /campaign/{campaignId} | Edit Campaign
96
- *SendX::CampaignApi* | [**get_all_campaigns**](docs/CampaignApi.md#get_all_campaigns) | **GET** /campaign | Get All Campaigns
97
- *SendX::CampaignApi* | [**get_campaign_by_id**](docs/CampaignApi.md#get_campaign_by_id) | **GET** /campaign/{campaignId} | Get Campaign By Id
98
- *SendX::ContactApi* | [**create_contact**](docs/ContactApi.md#create_contact) | **POST** /contact | Create a contact
99
- *SendX::ContactApi* | [**delete_contact**](docs/ContactApi.md#delete_contact) | **DELETE** /contact/{contactId} | Delete Contact
100
- *SendX::ContactApi* | [**get_all_contacts**](docs/ContactApi.md#get_all_contacts) | **GET** /contact | Get All Contacts
101
- *SendX::ContactApi* | [**get_contact_by_id**](docs/ContactApi.md#get_contact_by_id) | **GET** /contact/{contactId} | Get Contact by ID
102
- *SendX::ContactApi* | [**unsubscribe_contact**](docs/ContactApi.md#unsubscribe_contact) | **POST** /contact/unsubscribe/{contactId} | Unsubscribe Contact
103
- *SendX::ContactApi* | [**update_contact**](docs/ContactApi.md#update_contact) | **PUT** /contact/{contactId} | Update Contact
104
- *SendX::ListApi* | [**create_list**](docs/ListApi.md#create_list) | **POST** /list | Create List
105
- *SendX::ListApi* | [**delete_list**](docs/ListApi.md#delete_list) | **DELETE** /list/{listId} | Delete List
106
- *SendX::ListApi* | [**get_all_lists**](docs/ListApi.md#get_all_lists) | **GET** /list | Get All Lists
107
- *SendX::ListApi* | [**get_list_by_id**](docs/ListApi.md#get_list_by_id) | **GET** /list/{listId} | Get List
108
- *SendX::ListApi* | [**update_list**](docs/ListApi.md#update_list) | **PUT** /list/{listId} | Update List
109
- *SendX::ReportsApi* | [**get_campaign_report**](docs/ReportsApi.md#get_campaign_report) | **GET** /report/campaign/{campaignId} | Get CampaignReport Data
110
- *SendX::SenderApi* | [**create_sender**](docs/SenderApi.md#create_sender) | **POST** /sender | Create Sender
111
- *SendX::SenderApi* | [**get_all_senders**](docs/SenderApi.md#get_all_senders) | **GET** /sender | Get All Senders
112
- *SendX::TagsApi* | [**create_tag**](docs/TagsApi.md#create_tag) | **POST** /tag | Create a Tag
113
- *SendX::TagsApi* | [**delete_tag**](docs/TagsApi.md#delete_tag) | **DELETE** /tag/{tagId} | Delete a Tag
114
- *SendX::TagsApi* | [**get_all_tags**](docs/TagsApi.md#get_all_tags) | **GET** /tag | Get All Tags
115
- *SendX::TagsApi* | [**get_tag_by_id**](docs/TagsApi.md#get_tag_by_id) | **GET** /tag/{tagId} | Get a Tag by ID
116
- *SendX::TagsApi* | [**update_tag**](docs/TagsApi.md#update_tag) | **PUT** /tag/{tagId} | Update a Tag
179
+ *SendX::CampaignApi* | [**create_campaign**](docs/CampaignApi.md#create_campaign) | **POST** /campaign | Create campaign
180
+ *SendX::CampaignApi* | [**delete_campaign**](docs/CampaignApi.md#delete_campaign) | **DELETE** /campaign/{identifier} | Delete campaign
181
+ *SendX::CampaignApi* | [**get_all_campaigns**](docs/CampaignApi.md#get_all_campaigns) | **GET** /campaign | Get all campaigns
182
+ *SendX::CampaignApi* | [**get_campaign**](docs/CampaignApi.md#get_campaign) | **GET** /campaign/{identifier} | Get campaign by ID
183
+ *SendX::ContactApi* | [**create_contact**](docs/ContactApi.md#create_contact) | **POST** /contact | Create a new contact
184
+ *SendX::ContactApi* | [**delete_contact**](docs/ContactApi.md#delete_contact) | **DELETE** /contact/{identifier} | Delete contact
185
+ *SendX::ContactApi* | [**get_all_contacts**](docs/ContactApi.md#get_all_contacts) | **GET** /contact | Get all contacts
186
+ *SendX::ContactApi* | [**get_contact**](docs/ContactApi.md#get_contact) | **GET** /contact/{identifier} | Get contact by ID
187
+ *SendX::ContactApi* | [**unsubscribe_contact**](docs/ContactApi.md#unsubscribe_contact) | **POST** /contact/unsubscribe/{identifier} | Unsubscribe contact
188
+ *SendX::ContactApi* | [**update_contact**](docs/ContactApi.md#update_contact) | **PUT** /contact/{identifier} | Update contact
189
+ *SendX::CustomFieldApi* | [**create_custom_field**](docs/CustomFieldApi.md#create_custom_field) | **POST** /customfield | Create custom field
190
+ *SendX::CustomFieldApi* | [**delete_custom_field**](docs/CustomFieldApi.md#delete_custom_field) | **DELETE** /customfield/{identifier} | Delete custom field
191
+ *SendX::CustomFieldApi* | [**get_all_custom_fields**](docs/CustomFieldApi.md#get_all_custom_fields) | **GET** /customfield | Get all custom fields
192
+ *SendX::CustomFieldApi* | [**get_custom_field**](docs/CustomFieldApi.md#get_custom_field) | **GET** /customfield/{identifier} | Get custom field by ID
193
+ *SendX::CustomFieldApi* | [**update_custom_field**](docs/CustomFieldApi.md#update_custom_field) | **PUT** /customfield/{identifier} | Update custom field
194
+ *SendX::EmailSendingApi* | [**send_email**](docs/EmailSendingApi.md#send_email) | **POST** /send/email | Send transactional email
195
+ *SendX::EmailSendingApi* | [**send_email_with_template**](docs/EmailSendingApi.md#send_email_with_template) | **POST** /send/template | Send email using template
196
+ *SendX::EventApi* | [**events_custom_postback_get**](docs/EventApi.md#events_custom_postback_get) | **GET** /events/custom/postback | Custom Event Postback URL
197
+ *SendX::EventApi* | [**events_revenue_postback_get**](docs/EventApi.md#events_revenue_postback_get) | **GET** /events/revenue/postback | Revenue Event Postback URL
198
+ *SendX::EventsApi* | [**track_custom_event**](docs/EventsApi.md#track_custom_event) | **POST** /events/custom | Track custom event
199
+ *SendX::EventsApi* | [**track_revenue_event**](docs/EventsApi.md#track_revenue_event) | **POST** /events/revenue | Track revenue event
200
+ *SendX::ListApi* | [**create_list**](docs/ListApi.md#create_list) | **POST** /list | Create list
201
+ *SendX::ListApi* | [**delete_list**](docs/ListApi.md#delete_list) | **DELETE** /list/{identifier} | Delete list
202
+ *SendX::ListApi* | [**get_all_lists**](docs/ListApi.md#get_all_lists) | **GET** /list | Get all lists
203
+ *SendX::ListApi* | [**get_list**](docs/ListApi.md#get_list) | **GET** /list/{identifier} | Get list by ID
204
+ *SendX::ListApi* | [**update_list**](docs/ListApi.md#update_list) | **PUT** /list/{identifier} | Update list
205
+ *SendX::PostApi* | [**create_post**](docs/PostApi.md#create_post) | **POST** /post | Create blog post
206
+ *SendX::PostApi* | [**delete_post**](docs/PostApi.md#delete_post) | **DELETE** /post/{identifier} | Delete post
207
+ *SendX::PostApi* | [**get_all_posts**](docs/PostApi.md#get_all_posts) | **GET** /post | Get all posts
208
+ *SendX::PostApi* | [**get_post**](docs/PostApi.md#get_post) | **GET** /post/{identifier} | Get post by ID
209
+ *SendX::PostApi* | [**update_post**](docs/PostApi.md#update_post) | **PUT** /post/{identifier} | Update post
210
+ *SendX::PostCategoryApi* | [**create_post_category**](docs/PostCategoryApi.md#create_post_category) | **POST** /post/category | Create post category
211
+ *SendX::PostCategoryApi* | [**delete_post_category**](docs/PostCategoryApi.md#delete_post_category) | **DELETE** /post/category/{identifier} | Delete post category
212
+ *SendX::PostCategoryApi* | [**get_all_post_categories**](docs/PostCategoryApi.md#get_all_post_categories) | **GET** /post/category | Get all post categories
213
+ *SendX::PostCategoryApi* | [**get_post_category**](docs/PostCategoryApi.md#get_post_category) | **GET** /post/category/{identifier} | Get post category by ID
214
+ *SendX::PostCategoryApi* | [**update_post_category**](docs/PostCategoryApi.md#update_post_category) | **PUT** /post/category/{identifier} | Update post category
215
+ *SendX::PostTagApi* | [**create_post_tag**](docs/PostTagApi.md#create_post_tag) | **POST** /post/tag | Create post tag
216
+ *SendX::PostTagApi* | [**delete_post_tag**](docs/PostTagApi.md#delete_post_tag) | **DELETE** /post/tag/{identifier} | Delete post tag
217
+ *SendX::PostTagApi* | [**get_all_post_tags**](docs/PostTagApi.md#get_all_post_tags) | **GET** /post/tag | Get all post tags
218
+ *SendX::PostTagApi* | [**get_post_tag**](docs/PostTagApi.md#get_post_tag) | **GET** /post/tag/{identifier} | Get post tag by ID
219
+ *SendX::PostTagApi* | [**update_post_tag**](docs/PostTagApi.md#update_post_tag) | **PUT** /post/tag/{identifier} | Update post tag
220
+ *SendX::ReportApi* | [**get_campaign_report**](docs/ReportApi.md#get_campaign_report) | **GET** /report/campaign/{identifier} | Get campaign report
221
+ *SendX::SenderApi* | [**create_sender**](docs/SenderApi.md#create_sender) | **POST** /sender | Create sender
222
+ *SendX::SenderApi* | [**get_all_senders**](docs/SenderApi.md#get_all_senders) | **GET** /sender | Get all senders
223
+ *SendX::TagApi* | [**create_tag**](docs/TagApi.md#create_tag) | **POST** /tag | Create tag
224
+ *SendX::TagApi* | [**delete_tag**](docs/TagApi.md#delete_tag) | **DELETE** /tag/{identifier} | Delete tag
225
+ *SendX::TagApi* | [**get_all_tags**](docs/TagApi.md#get_all_tags) | **GET** /tag | Get all tags
226
+ *SendX::TagApi* | [**get_tag**](docs/TagApi.md#get_tag) | **GET** /tag/{identifier} | Get tag by ID
227
+ *SendX::TagApi* | [**update_tag**](docs/TagApi.md#update_tag) | **PUT** /tag/{identifier} | Update tag
228
+ *SendX::TeamMemberApi* | [**get_all_team_members**](docs/TeamMemberApi.md#get_all_team_members) | **GET** /team/member | Get all team members
229
+ *SendX::TeamMemberApi* | [**get_team_member**](docs/TeamMemberApi.md#get_team_member) | **GET** /team/member/{identifier} | Get a team member by ID
230
+ *SendX::TemplateApi* | [**create_email_template**](docs/TemplateApi.md#create_email_template) | **POST** /template/email | Create email template
231
+ *SendX::TemplateApi* | [**delete_email_template**](docs/TemplateApi.md#delete_email_template) | **DELETE** /template/email/{identifier} | Delete template
232
+ *SendX::TemplateApi* | [**get_all_email_templates**](docs/TemplateApi.md#get_all_email_templates) | **GET** /template/email | Get all templates
233
+ *SendX::TemplateApi* | [**get_email_template**](docs/TemplateApi.md#get_email_template) | **GET** /template/email/{identifier} | Get template by ID
234
+ *SendX::TemplateApi* | [**update_email_template**](docs/TemplateApi.md#update_email_template) | **PUT** /template/email/{identifier} | Update template
235
+ *SendX::TrackingApi* | [**identify_contact**](docs/TrackingApi.md#identify_contact) | **POST** /contact/identify | Identify contact
236
+ *SendX::TrackingApi* | [**track_contact**](docs/TrackingApi.md#track_contact) | **POST** /contact/track | Track contact
237
+ *SendX::WebhookApi* | [**create_webhook**](docs/WebhookApi.md#create_webhook) | **POST** /webhook | Create webhook
238
+ *SendX::WebhookApi* | [**delete_webhook**](docs/WebhookApi.md#delete_webhook) | **DELETE** /webhook/{identifier} | Delete webhook
239
+ *SendX::WebhookApi* | [**get_all_webhooks**](docs/WebhookApi.md#get_all_webhooks) | **GET** /webhook | Get all webhooks
240
+ *SendX::WebhookApi* | [**get_webhook**](docs/WebhookApi.md#get_webhook) | **GET** /webhook/{identifier} | Get webhook by ID
241
+ *SendX::WebhookApi* | [**update_webhook**](docs/WebhookApi.md#update_webhook) | **PUT** /webhook/{identifier} | Update webhook
117
242
 
118
243
 
119
244
  ## Documentation for Models
120
245
 
121
- - [SendX::Campaign](docs/Campaign.md)
122
- - [SendX::CampaignDashboardData](docs/CampaignDashboardData.md)
123
- - [SendX::CampaignRequest](docs/CampaignRequest.md)
124
- - [SendX::Contact](docs/Contact.md)
125
- - [SendX::ContactRequest](docs/ContactRequest.md)
126
- - [SendX::CreateResponse](docs/CreateResponse.md)
127
- - [SendX::DashboardStats](docs/DashboardStats.md)
128
- - [SendX::DeleteCampaign200Response](docs/DeleteCampaign200Response.md)
129
- - [SendX::DeleteRequest](docs/DeleteRequest.md)
246
+ - [SendX::CustomEventRequest](docs/CustomEventRequest.md)
130
247
  - [SendX::DeleteResponse](docs/DeleteResponse.md)
131
- - [SendX::LastSentCampaignStat](docs/LastSentCampaignStat.md)
132
- - [SendX::ListModel](docs/ListModel.md)
133
- - [SendX::ListRequest](docs/ListRequest.md)
134
- - [SendX::ReportData](docs/ReportData.md)
135
- - [SendX::Response](docs/Response.md)
136
- - [SendX::Sender](docs/Sender.md)
137
- - [SendX::SenderRequest](docs/SenderRequest.md)
138
- - [SendX::SenderResponse](docs/SenderResponse.md)
139
- - [SendX::Tag](docs/Tag.md)
140
- - [SendX::TagRequest](docs/TagRequest.md)
248
+ - [SendX::ErrorResponse](docs/ErrorResponse.md)
249
+ - [SendX::EventResponse](docs/EventResponse.md)
250
+ - [SendX::EventsRevenuePostbackGet200Response](docs/EventsRevenuePostbackGet200Response.md)
251
+ - [SendX::EventsRevenuePostbackGet400Response](docs/EventsRevenuePostbackGet400Response.md)
252
+ - [SendX::EventsRevenuePostbackGet500Response](docs/EventsRevenuePostbackGet500Response.md)
253
+ - [SendX::IdentifyRequest](docs/IdentifyRequest.md)
254
+ - [SendX::IdentifyResponse](docs/IdentifyResponse.md)
255
+ - [SendX::LinkStat](docs/LinkStat.md)
256
+ - [SendX::MessageResponse](docs/MessageResponse.md)
257
+ - [SendX::PostbackResponse](docs/PostbackResponse.md)
258
+ - [SendX::RestECampaign](docs/RestECampaign.md)
259
+ - [SendX::RestEContact](docs/RestEContact.md)
260
+ - [SendX::RestECustomField](docs/RestECustomField.md)
261
+ - [SendX::RestEList](docs/RestEList.md)
262
+ - [SendX::RestEPost](docs/RestEPost.md)
263
+ - [SendX::RestEPostCategory](docs/RestEPostCategory.md)
264
+ - [SendX::RestEPostTag](docs/RestEPostTag.md)
265
+ - [SendX::RestESender](docs/RestESender.md)
266
+ - [SendX::RestETag](docs/RestETag.md)
267
+ - [SendX::RestETemplate](docs/RestETemplate.md)
268
+ - [SendX::RestEWebhook](docs/RestEWebhook.md)
269
+ - [SendX::RestRCampaign](docs/RestRCampaign.md)
270
+ - [SendX::RestRContact](docs/RestRContact.md)
271
+ - [SendX::RestRCustomField](docs/RestRCustomField.md)
272
+ - [SendX::RestRList](docs/RestRList.md)
273
+ - [SendX::RestRMember](docs/RestRMember.md)
274
+ - [SendX::RestRPost](docs/RestRPost.md)
275
+ - [SendX::RestRPostCategory](docs/RestRPostCategory.md)
276
+ - [SendX::RestRPostTag](docs/RestRPostTag.md)
277
+ - [SendX::RestRSender](docs/RestRSender.md)
278
+ - [SendX::RestRTag](docs/RestRTag.md)
279
+ - [SendX::RestRTemplate](docs/RestRTemplate.md)
280
+ - [SendX::RestRWebhook](docs/RestRWebhook.md)
281
+ - [SendX::RestReportData](docs/RestReportData.md)
282
+ - [SendX::RevenueEventRequest](docs/RevenueEventRequest.md)
283
+ - [SendX::TemplateEmailMessage](docs/TemplateEmailMessage.md)
284
+ - [SendX::TrackRequest](docs/TrackRequest.md)
285
+ - [SendX::TrackResponse](docs/TrackResponse.md)
286
+ - [SendX::WebhookObject](docs/WebhookObject.md)
287
+ - [SendX::XEmailMessage](docs/XEmailMessage.md)
288
+ - [SendX::XEmailResponse](docs/XEmailResponse.md)
289
+ - [SendX::XFrom](docs/XFrom.md)
290
+ - [SendX::XReplyTo](docs/XReplyTo.md)
291
+ - [SendX::XTo](docs/XTo.md)
141
292
 
142
293
 
143
294
  ## Documentation for Authorization
144
295
 
145
296
 
146
297
  Authentication schemes defined for the API:
147
- ### apiKeyAuth
298
+ ### TeamApiKey
148
299
 
149
300
 
150
301
  - **Type**: API key