late-sdk 0.0.645 → 0.0.647

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ce8d00a1b851a1ef68fd252847226d350d4935f9db3f1d7be381b50dbfa1e28
4
- data.tar.gz: 27a5056ee70ea43fec0519262b2a5cb9dd5d21ad645453356bcd0ef542c99b11
3
+ metadata.gz: de57b77a79a688810b1d5026ecf3324424e9e18e42d921c8f9a96d72b81a0bd4
4
+ data.tar.gz: 727a89b01a24aba6085ad0955b5d1d945cfcef3c3a53a422919fbf71930c6c64
5
5
  SHA512:
6
- metadata.gz: 8cde50a6be5cd099125540fa8ba783d114e450ee4b489958cef839f889d24dd0553719c493768058e4b20946400228122707e8c2a6f2eba21a0ed8c166b42928
7
- data.tar.gz: 37a4302a5f6360c23acf3169b2b26d85b5dd06360e17e4a4fe33107f1b8c81831f1c89ad87829eec2588cf174ea93290ac1a6d7c1bc2d38c8bb8f16f4d210176
6
+ metadata.gz: 03a6916b35440dbed056ff02ac5e83f3f06db2a2e7712d77f216595543fda5e12bea2798a3a887571234270cd2779473e5eb10d14eb551e132881a296926c5c2
7
+ data.tar.gz: b8e0483e7902345cd7dd0435916f2c4e0685db7be156250230a30f8f55b37a05faa9f193b07dd94f0f45948e22d8ae8172f60297154d21372581248771a0f4bd
data/README.md CHANGED
@@ -1136,6 +1136,7 @@ Class | Method | HTTP request | Description
1136
1136
  - [Zernio::GetGoogleBusinessVerifications200ResponseVoiceOfMerchantStateVerify](docs/GetGoogleBusinessVerifications200ResponseVoiceOfMerchantStateVerify.md)
1137
1137
  - [Zernio::GetInboxConversation200Response](docs/GetInboxConversation200Response.md)
1138
1138
  - [Zernio::GetInboxConversation200ResponseData](docs/GetInboxConversation200ResponseData.md)
1139
+ - [Zernio::GetInboxConversation200ResponseDataMetadata](docs/GetInboxConversation200ResponseDataMetadata.md)
1139
1140
  - [Zernio::GetInboxConversationAnalytics200Response](docs/GetInboxConversationAnalytics200Response.md)
1140
1141
  - [Zernio::GetInboxConversationAnalytics200ResponseBySourceInner](docs/GetInboxConversationAnalytics200ResponseBySourceInner.md)
1141
1142
  - [Zernio::GetInboxConversationAnalytics200ResponseSummary](docs/GetInboxConversationAnalytics200ResponseSummary.md)
@@ -1458,6 +1459,7 @@ Class | Method | HTTP request | Description
1458
1459
  - [Zernio::ListInboxConversations200Response](docs/ListInboxConversations200Response.md)
1459
1460
  - [Zernio::ListInboxConversations200ResponseDataInner](docs/ListInboxConversations200ResponseDataInner.md)
1460
1461
  - [Zernio::ListInboxConversations200ResponseDataInnerInstagramProfile](docs/ListInboxConversations200ResponseDataInnerInstagramProfile.md)
1462
+ - [Zernio::ListInboxConversations200ResponseDataInnerMetadata](docs/ListInboxConversations200ResponseDataInnerMetadata.md)
1461
1463
  - [Zernio::ListInboxConversations200ResponseMeta](docs/ListInboxConversations200ResponseMeta.md)
1462
1464
  - [Zernio::ListInboxConversations200ResponseMetaFailedAccountsInner](docs/ListInboxConversations200ResponseMetaFailedAccountsInner.md)
1463
1465
  - [Zernio::ListInboxConversations200ResponsePagination](docs/ListInboxConversations200ResponsePagination.md)
@@ -17,6 +17,7 @@
17
17
  | **updated_time** | **Time** | | [optional] |
18
18
  | **participants** | [**Array<UpdateFacebookPage200ResponseSelectedPage>**](UpdateFacebookPage200ResponseSelectedPage.md) | | [optional] |
19
19
  | **instagram_profile** | [**ListInboxConversations200ResponseDataInnerInstagramProfile**](ListInboxConversations200ResponseDataInnerInstagramProfile.md) | | [optional] |
20
+ | **metadata** | [**GetInboxConversation200ResponseDataMetadata**](GetInboxConversation200ResponseDataMetadata.md) | | [optional] |
20
21
 
21
22
  ## Example
22
23
 
@@ -36,7 +37,8 @@ instance = Zernio::GetInboxConversation200ResponseData.new(
36
37
  last_message_at: null,
37
38
  updated_time: null,
38
39
  participants: null,
39
- instagram_profile: null
40
+ instagram_profile: null,
41
+ metadata: null
40
42
  )
41
43
  ```
42
44
 
@@ -0,0 +1,38 @@
1
+ # Zernio::GetInboxConversation200ResponseDataMetadata
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **meta_ad_id** | **String** | The Meta ad ID the user clicked. Always present when a referral was captured. | [optional] |
8
+ | **meta_ad_source** | **String** | Meta-supplied source identifier, for example ADS. | [optional] |
9
+ | **meta_ad_type** | **String** | Meta-supplied referral type, for example OPEN_THREAD. | [optional] |
10
+ | **meta_ad_ref** | **String** | The ref parameter passed through from the ad creative. | [optional] |
11
+ | **meta_ad_title** | **String** | Title of the ad creative at click time. | [optional] |
12
+ | **meta_ad_photo_url** | **String** | Image of the ad creative at click time. | [optional] |
13
+ | **meta_ad_video_url** | **String** | Video of the ad creative at click time. | [optional] |
14
+ | **meta_ad_post_id** | **String** | The organic post the ad promoted, when the ad was a boosted post. | [optional] |
15
+ | **meta_ad_product_id** | **String** | The catalogue product the user clicked, for product ads. | [optional] |
16
+ | **meta_ad_flow_id** | **String** | The Meta flow the ad launched, for flow ads. | [optional] |
17
+ | **meta_ad_captured_at** | **Time** | When Zernio stored this referral. Always present when a referral was captured. | [optional] |
18
+
19
+ ## Example
20
+
21
+ ```ruby
22
+ require 'zernio-sdk'
23
+
24
+ instance = Zernio::GetInboxConversation200ResponseDataMetadata.new(
25
+ meta_ad_id: null,
26
+ meta_ad_source: null,
27
+ meta_ad_type: null,
28
+ meta_ad_ref: null,
29
+ meta_ad_title: null,
30
+ meta_ad_photo_url: null,
31
+ meta_ad_video_url: null,
32
+ meta_ad_post_id: null,
33
+ meta_ad_product_id: null,
34
+ meta_ad_flow_id: null,
35
+ meta_ad_captured_at: null
36
+ )
37
+ ```
38
+
@@ -18,6 +18,7 @@
18
18
  | **unread_count** | **Integer** | Number of unread messages | [optional] |
19
19
  | **url** | **String** | Direct link to open the conversation on the platform (if available) | [optional] |
20
20
  | **instagram_profile** | [**ListInboxConversations200ResponseDataInnerInstagramProfile**](ListInboxConversations200ResponseDataInnerInstagramProfile.md) | | [optional] |
21
+ | **metadata** | [**ListInboxConversations200ResponseDataInnerMetadata**](ListInboxConversations200ResponseDataInnerMetadata.md) | | [optional] |
21
22
 
22
23
  ## Example
23
24
 
@@ -38,7 +39,8 @@ instance = Zernio::ListInboxConversations200ResponseDataInner.new(
38
39
  status: null,
39
40
  unread_count: null,
40
41
  url: null,
41
- instagram_profile: null
42
+ instagram_profile: null,
43
+ metadata: null
42
44
  )
43
45
  ```
44
46
 
@@ -0,0 +1,50 @@
1
+ # Zernio::ListInboxConversations200ResponseDataInnerMetadata
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **ctwa_clid** | **String** | WhatsApp only. Meta's click identifier, the value to forward to the Meta Conversions API for Business Messaging. Meta omits it on some numbers, so a WhatsApp referral can arrive without it. | [optional] |
8
+ | **ctwa_source_id** | **String** | WhatsApp only. The Meta ad ID the user clicked. This is the WhatsApp equivalent of meta_ad_id. | [optional] |
9
+ | **ctwa_source_type** | **String** | WhatsApp only. What the user clicked, as supplied by Meta (for example ad or post). | [optional] |
10
+ | **ctwa_source_url** | **String** | WhatsApp only. Meta's URL for the ad that was clicked, normally an fb.me short link. | [optional] |
11
+ | **ctwa_headline** | **String** | WhatsApp only. Headline of the ad creative at click time. | [optional] |
12
+ | **ctwa_captured_at** | **Time** | WhatsApp only. When Zernio stored this referral. Always present when a WhatsApp referral was captured. | [optional] |
13
+ | **meta_ad_id** | **String** | Instagram and Facebook only. The Meta ad ID the user clicked. Always present when an Instagram or Facebook referral was captured. | [optional] |
14
+ | **meta_ad_source** | **String** | Instagram and Facebook only. Meta-supplied source identifier, for example ADS. | [optional] |
15
+ | **meta_ad_type** | **String** | Instagram and Facebook only. Meta-supplied referral type, for example OPEN_THREAD. | [optional] |
16
+ | **meta_ad_ref** | **String** | Instagram and Facebook only. The ref parameter passed through from the ad creative. | [optional] |
17
+ | **meta_ad_title** | **String** | Instagram and Facebook only. Title of the ad creative at click time. | [optional] |
18
+ | **meta_ad_photo_url** | **String** | Instagram and Facebook only. Image of the ad creative at click time. | [optional] |
19
+ | **meta_ad_video_url** | **String** | Instagram and Facebook only. Video of the ad creative at click time. | [optional] |
20
+ | **meta_ad_post_id** | **String** | Instagram and Facebook only. The organic post the ad promoted, when the ad was a boosted post. | [optional] |
21
+ | **meta_ad_product_id** | **String** | Instagram and Facebook only. The catalogue product the user clicked, for product ads. | [optional] |
22
+ | **meta_ad_flow_id** | **String** | Instagram and Facebook only. The Meta flow the ad launched, for flow ads. | [optional] |
23
+ | **meta_ad_captured_at** | **Time** | Instagram and Facebook only. When Zernio stored this referral. Always present when an Instagram or Facebook referral was captured. | [optional] |
24
+
25
+ ## Example
26
+
27
+ ```ruby
28
+ require 'zernio-sdk'
29
+
30
+ instance = Zernio::ListInboxConversations200ResponseDataInnerMetadata.new(
31
+ ctwa_clid: null,
32
+ ctwa_source_id: null,
33
+ ctwa_source_type: null,
34
+ ctwa_source_url: null,
35
+ ctwa_headline: null,
36
+ ctwa_captured_at: null,
37
+ meta_ad_id: null,
38
+ meta_ad_source: null,
39
+ meta_ad_type: null,
40
+ meta_ad_ref: null,
41
+ meta_ad_title: null,
42
+ meta_ad_photo_url: null,
43
+ meta_ad_video_url: null,
44
+ meta_ad_post_id: null,
45
+ meta_ad_product_id: null,
46
+ meta_ad_flow_id: null,
47
+ meta_ad_captured_at: null
48
+ )
49
+ ```
50
+
@@ -9,7 +9,7 @@
9
9
  | **custom_content** | **String** | Platform-specific text override. | [optional] |
10
10
  | **custom_media** | [**Array<MediaItem>**](MediaItem.md) | | [optional] |
11
11
  | **scheduled_for** | **Time** | Optional per-platform scheduled time override. | [optional] |
12
- | **platform_specific_data** | **Hash<String, Object>** | | [optional] |
12
+ | **platform_specific_data** | **Hash<String, Object>** | A <platform>Settings namespace (e.g. facebookSettings, tiktokSettings) omitted from the request is preserved from the stored post. Sending the key replaces the whole namespace; it is not deep-merged. | [optional] |
13
13
 
14
14
  ## Example
15
15
 
@@ -515,7 +515,7 @@ module Zernio
515
515
  if @api_client.config.debugging
516
516
  @api_client.config.logger.debug 'Calling API: MessagesApi.list_inbox_conversations ...'
517
517
  end
518
- allowable_values = ["facebook", "instagram", "twitter", "bluesky", "reddit", "telegram"]
518
+ allowable_values = ["facebook", "instagram", "twitter", "bluesky", "reddit", "telegram", "whatsapp"]
519
519
  if @api_client.config.client_side_validation && opts[:'platform'] && !allowable_values.include?(opts[:'platform'])
520
520
  fail ArgumentError, "invalid value for \"platform\", must be one of #{allowable_values}"
521
521
  end
@@ -42,6 +42,8 @@ module Zernio
42
42
 
43
43
  attr_accessor :instagram_profile
44
44
 
45
+ attr_accessor :metadata
46
+
45
47
  class EnumAttributeValidator
46
48
  attr_reader :datatype
47
49
  attr_reader :allowable_values
@@ -79,7 +81,8 @@ module Zernio
79
81
  :'last_message_at' => :'lastMessageAt',
80
82
  :'updated_time' => :'updatedTime',
81
83
  :'participants' => :'participants',
82
- :'instagram_profile' => :'instagramProfile'
84
+ :'instagram_profile' => :'instagramProfile',
85
+ :'metadata' => :'metadata'
83
86
  }
84
87
  end
85
88
 
@@ -108,7 +111,8 @@ module Zernio
108
111
  :'last_message_at' => :'Time',
109
112
  :'updated_time' => :'Time',
110
113
  :'participants' => :'Array<UpdateFacebookPage200ResponseSelectedPage>',
111
- :'instagram_profile' => :'ListInboxConversations200ResponseDataInnerInstagramProfile'
114
+ :'instagram_profile' => :'ListInboxConversations200ResponseDataInnerInstagramProfile',
115
+ :'metadata' => :'GetInboxConversation200ResponseDataMetadata'
112
116
  }
113
117
  end
114
118
 
@@ -188,6 +192,10 @@ module Zernio
188
192
  if attributes.key?(:'instagram_profile')
189
193
  self.instagram_profile = attributes[:'instagram_profile']
190
194
  end
195
+
196
+ if attributes.key?(:'metadata')
197
+ self.metadata = attributes[:'metadata']
198
+ end
191
199
  end
192
200
 
193
201
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -246,7 +254,8 @@ module Zernio
246
254
  last_message_at == o.last_message_at &&
247
255
  updated_time == o.updated_time &&
248
256
  participants == o.participants &&
249
- instagram_profile == o.instagram_profile
257
+ instagram_profile == o.instagram_profile &&
258
+ metadata == o.metadata
250
259
  end
251
260
 
252
261
  # @see the `==` method
@@ -258,7 +267,7 @@ module Zernio
258
267
  # Calculates hash code according to all attributes.
259
268
  # @return [Integer] Hash code
260
269
  def hash
261
- [id, account_id, account_username, platform, status, participant_name, participant_id, participant_verified_type, last_message, last_message_at, updated_time, participants, instagram_profile].hash
270
+ [id, account_id, account_username, platform, status, participant_name, participant_id, participant_verified_type, last_message, last_message_at, updated_time, participants, instagram_profile, metadata].hash
262
271
  end
263
272
 
264
273
  # Builds the object from hash
@@ -0,0 +1,249 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Zernio
17
+ # Ad-click attribution for a conversation that started from a Meta ad. Absent when the conversation did not originate from an ad click. Captured once, on the first inbound message after the click, and never overwritten. If the same person later clicks a different ad, the original values are kept. Meta only sends the referral on that first message. This operation currently returns only the `meta_ad_*` family, which covers Instagram Click-to-Direct and Facebook Messenger Click-to-Message. WhatsApp Click-to-WhatsApp attribution (the `ctwa_*` keys, where the ad ID is `ctwa_source_id`) is returned by `GET /v1/inbox/conversations` instead. Every key is optional and only the keys Meta supplied are returned, so read defensively. Meta does not send a campaign or ad set ID, so none is exposed here. More keys may be added over time. Treat any key you do not recognise as an opaque string. Key names differ from the `message.received` webhook on purpose. The webhook forwards Meta's referral verbatim (`ad_id`, `source`, `type`) while the stored conversation record uses the prefixed names below. Renaming either side would break existing integrations, so both spellings are kept.
18
+ class GetInboxConversation200ResponseDataMetadata < ApiModelBase
19
+ # The Meta ad ID the user clicked. Always present when a referral was captured.
20
+ attr_accessor :meta_ad_id
21
+
22
+ # Meta-supplied source identifier, for example ADS.
23
+ attr_accessor :meta_ad_source
24
+
25
+ # Meta-supplied referral type, for example OPEN_THREAD.
26
+ attr_accessor :meta_ad_type
27
+
28
+ # The ref parameter passed through from the ad creative.
29
+ attr_accessor :meta_ad_ref
30
+
31
+ # Title of the ad creative at click time.
32
+ attr_accessor :meta_ad_title
33
+
34
+ # Image of the ad creative at click time.
35
+ attr_accessor :meta_ad_photo_url
36
+
37
+ # Video of the ad creative at click time.
38
+ attr_accessor :meta_ad_video_url
39
+
40
+ # The organic post the ad promoted, when the ad was a boosted post.
41
+ attr_accessor :meta_ad_post_id
42
+
43
+ # The catalogue product the user clicked, for product ads.
44
+ attr_accessor :meta_ad_product_id
45
+
46
+ # The Meta flow the ad launched, for flow ads.
47
+ attr_accessor :meta_ad_flow_id
48
+
49
+ # When Zernio stored this referral. Always present when a referral was captured.
50
+ attr_accessor :meta_ad_captured_at
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'meta_ad_id' => :'meta_ad_id',
56
+ :'meta_ad_source' => :'meta_ad_source',
57
+ :'meta_ad_type' => :'meta_ad_type',
58
+ :'meta_ad_ref' => :'meta_ad_ref',
59
+ :'meta_ad_title' => :'meta_ad_title',
60
+ :'meta_ad_photo_url' => :'meta_ad_photo_url',
61
+ :'meta_ad_video_url' => :'meta_ad_video_url',
62
+ :'meta_ad_post_id' => :'meta_ad_post_id',
63
+ :'meta_ad_product_id' => :'meta_ad_product_id',
64
+ :'meta_ad_flow_id' => :'meta_ad_flow_id',
65
+ :'meta_ad_captured_at' => :'meta_ad_captured_at'
66
+ }
67
+ end
68
+
69
+ # Returns attribute mapping this model knows about
70
+ def self.acceptable_attribute_map
71
+ attribute_map
72
+ end
73
+
74
+ # Returns all the JSON keys this model knows about
75
+ def self.acceptable_attributes
76
+ acceptable_attribute_map.values
77
+ end
78
+
79
+ # Attribute type mapping.
80
+ def self.openapi_types
81
+ {
82
+ :'meta_ad_id' => :'String',
83
+ :'meta_ad_source' => :'String',
84
+ :'meta_ad_type' => :'String',
85
+ :'meta_ad_ref' => :'String',
86
+ :'meta_ad_title' => :'String',
87
+ :'meta_ad_photo_url' => :'String',
88
+ :'meta_ad_video_url' => :'String',
89
+ :'meta_ad_post_id' => :'String',
90
+ :'meta_ad_product_id' => :'String',
91
+ :'meta_ad_flow_id' => :'String',
92
+ :'meta_ad_captured_at' => :'Time'
93
+ }
94
+ end
95
+
96
+ # List of attributes with nullable: true
97
+ def self.openapi_nullable
98
+ Set.new([
99
+ ])
100
+ end
101
+
102
+ # Initializes the object
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ def initialize(attributes = {})
105
+ if (!attributes.is_a?(Hash))
106
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::GetInboxConversation200ResponseDataMetadata` initialize method"
107
+ end
108
+
109
+ # check to see if the attribute exists and convert string to symbol for hash key
110
+ acceptable_attribute_map = self.class.acceptable_attribute_map
111
+ attributes = attributes.each_with_object({}) { |(k, v), h|
112
+ if (!acceptable_attribute_map.key?(k.to_sym))
113
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::GetInboxConversation200ResponseDataMetadata`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
114
+ end
115
+ h[k.to_sym] = v
116
+ }
117
+
118
+ if attributes.key?(:'meta_ad_id')
119
+ self.meta_ad_id = attributes[:'meta_ad_id']
120
+ end
121
+
122
+ if attributes.key?(:'meta_ad_source')
123
+ self.meta_ad_source = attributes[:'meta_ad_source']
124
+ end
125
+
126
+ if attributes.key?(:'meta_ad_type')
127
+ self.meta_ad_type = attributes[:'meta_ad_type']
128
+ end
129
+
130
+ if attributes.key?(:'meta_ad_ref')
131
+ self.meta_ad_ref = attributes[:'meta_ad_ref']
132
+ end
133
+
134
+ if attributes.key?(:'meta_ad_title')
135
+ self.meta_ad_title = attributes[:'meta_ad_title']
136
+ end
137
+
138
+ if attributes.key?(:'meta_ad_photo_url')
139
+ self.meta_ad_photo_url = attributes[:'meta_ad_photo_url']
140
+ end
141
+
142
+ if attributes.key?(:'meta_ad_video_url')
143
+ self.meta_ad_video_url = attributes[:'meta_ad_video_url']
144
+ end
145
+
146
+ if attributes.key?(:'meta_ad_post_id')
147
+ self.meta_ad_post_id = attributes[:'meta_ad_post_id']
148
+ end
149
+
150
+ if attributes.key?(:'meta_ad_product_id')
151
+ self.meta_ad_product_id = attributes[:'meta_ad_product_id']
152
+ end
153
+
154
+ if attributes.key?(:'meta_ad_flow_id')
155
+ self.meta_ad_flow_id = attributes[:'meta_ad_flow_id']
156
+ end
157
+
158
+ if attributes.key?(:'meta_ad_captured_at')
159
+ self.meta_ad_captured_at = attributes[:'meta_ad_captured_at']
160
+ end
161
+ end
162
+
163
+ # Show invalid properties with the reasons. Usually used together with valid?
164
+ # @return Array for valid properties with the reasons
165
+ def list_invalid_properties
166
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
167
+ invalid_properties = Array.new
168
+ invalid_properties
169
+ end
170
+
171
+ # Check to see if the all the properties in the model are valid
172
+ # @return true if the model is valid
173
+ def valid?
174
+ warn '[DEPRECATED] the `valid?` method is obsolete'
175
+ true
176
+ end
177
+
178
+ # Checks equality by comparing each attribute.
179
+ # @param [Object] Object to be compared
180
+ def ==(o)
181
+ return true if self.equal?(o)
182
+ self.class == o.class &&
183
+ meta_ad_id == o.meta_ad_id &&
184
+ meta_ad_source == o.meta_ad_source &&
185
+ meta_ad_type == o.meta_ad_type &&
186
+ meta_ad_ref == o.meta_ad_ref &&
187
+ meta_ad_title == o.meta_ad_title &&
188
+ meta_ad_photo_url == o.meta_ad_photo_url &&
189
+ meta_ad_video_url == o.meta_ad_video_url &&
190
+ meta_ad_post_id == o.meta_ad_post_id &&
191
+ meta_ad_product_id == o.meta_ad_product_id &&
192
+ meta_ad_flow_id == o.meta_ad_flow_id &&
193
+ meta_ad_captured_at == o.meta_ad_captured_at
194
+ end
195
+
196
+ # @see the `==` method
197
+ # @param [Object] Object to be compared
198
+ def eql?(o)
199
+ self == o
200
+ end
201
+
202
+ # Calculates hash code according to all attributes.
203
+ # @return [Integer] Hash code
204
+ def hash
205
+ [meta_ad_id, meta_ad_source, meta_ad_type, meta_ad_ref, meta_ad_title, meta_ad_photo_url, meta_ad_video_url, meta_ad_post_id, meta_ad_product_id, meta_ad_flow_id, meta_ad_captured_at].hash
206
+ end
207
+
208
+ # Builds the object from hash
209
+ # @param [Hash] attributes Model attributes in the form of hash
210
+ # @return [Object] Returns the model itself
211
+ def self.build_from_hash(attributes)
212
+ return nil unless attributes.is_a?(Hash)
213
+ attributes = attributes.transform_keys(&:to_sym)
214
+ transformed_hash = {}
215
+ openapi_types.each_pair do |key, type|
216
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
217
+ transformed_hash["#{key}"] = nil
218
+ elsif type =~ /\AArray<(.*)>/i
219
+ # check to ensure the input is an array given that the attribute
220
+ # is documented as an array but the input is not
221
+ if attributes[attribute_map[key]].is_a?(Array)
222
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
223
+ end
224
+ elsif !attributes[attribute_map[key]].nil?
225
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
226
+ end
227
+ end
228
+ new(transformed_hash)
229
+ end
230
+
231
+ # Returns the object in the form of hash
232
+ # @return [Hash] Returns the object in the form of hash
233
+ def to_hash
234
+ hash = {}
235
+ self.class.attribute_map.each_pair do |attr, param|
236
+ value = self.send(attr)
237
+ if value.nil?
238
+ is_nullable = self.class.openapi_nullable.include?(attr)
239
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
240
+ end
241
+
242
+ hash[param] = _to_hash(value)
243
+ end
244
+ hash
245
+ end
246
+
247
+ end
248
+
249
+ end
@@ -47,6 +47,8 @@ module Zernio
47
47
 
48
48
  attr_accessor :instagram_profile
49
49
 
50
+ attr_accessor :metadata
51
+
50
52
  class EnumAttributeValidator
51
53
  attr_reader :datatype
52
54
  attr_reader :allowable_values
@@ -85,7 +87,8 @@ module Zernio
85
87
  :'status' => :'status',
86
88
  :'unread_count' => :'unreadCount',
87
89
  :'url' => :'url',
88
- :'instagram_profile' => :'instagramProfile'
90
+ :'instagram_profile' => :'instagramProfile',
91
+ :'metadata' => :'metadata'
89
92
  }
90
93
  end
91
94
 
@@ -115,7 +118,8 @@ module Zernio
115
118
  :'status' => :'String',
116
119
  :'unread_count' => :'Integer',
117
120
  :'url' => :'String',
118
- :'instagram_profile' => :'ListInboxConversations200ResponseDataInnerInstagramProfile'
121
+ :'instagram_profile' => :'ListInboxConversations200ResponseDataInnerInstagramProfile',
122
+ :'metadata' => :'ListInboxConversations200ResponseDataInnerMetadata'
119
123
  }
120
124
  end
121
125
 
@@ -200,6 +204,10 @@ module Zernio
200
204
  if attributes.key?(:'instagram_profile')
201
205
  self.instagram_profile = attributes[:'instagram_profile']
202
206
  end
207
+
208
+ if attributes.key?(:'metadata')
209
+ self.metadata = attributes[:'metadata']
210
+ end
203
211
  end
204
212
 
205
213
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -259,7 +267,8 @@ module Zernio
259
267
  status == o.status &&
260
268
  unread_count == o.unread_count &&
261
269
  url == o.url &&
262
- instagram_profile == o.instagram_profile
270
+ instagram_profile == o.instagram_profile &&
271
+ metadata == o.metadata
263
272
  end
264
273
 
265
274
  # @see the `==` method
@@ -271,7 +280,7 @@ module Zernio
271
280
  # Calculates hash code according to all attributes.
272
281
  # @return [Integer] Hash code
273
282
  def hash
274
- [id, platform, account_id, account_username, participant_id, participant_name, participant_picture, participant_verified_type, last_message, updated_time, status, unread_count, url, instagram_profile].hash
283
+ [id, platform, account_id, account_username, participant_id, participant_name, participant_picture, participant_verified_type, last_message, updated_time, status, unread_count, url, instagram_profile, metadata].hash
275
284
  end
276
285
 
277
286
  # Builds the object from hash