late-sdk 0.0.720 → 0.0.722
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 +4 -4
- data/docs/AnalyticsListResponsePostsInner.md +9 -1
- data/docs/AnalyticsSinglePostResponse.md +9 -1
- data/docs/EditPost200Response.md +1 -1
- data/docs/EditPostRequest.md +3 -1
- data/docs/ExternalPostSummary.md +8 -0
- data/docs/ExternalPostWebhookPost.md +8 -0
- data/docs/ListWhatsAppAccountEvents200ResponseEventsInner.md +2 -0
- data/docs/PostsApi.md +1 -1
- data/lib/zernio-sdk/api/posts_api.rb +2 -2
- data/lib/zernio-sdk/models/analytics_list_response_posts_inner.rb +44 -4
- data/lib/zernio-sdk/models/analytics_single_post_response.rb +44 -4
- data/lib/zernio-sdk/models/edit_post200_response.rb +1 -1
- data/lib/zernio-sdk/models/edit_post_request.rb +16 -6
- data/lib/zernio-sdk/models/external_post_summary.rb +41 -1
- data/lib/zernio-sdk/models/external_post_webhook_post.rb +41 -1
- data/lib/zernio-sdk/models/list_whats_app_account_events200_response_events_inner.rb +11 -1
- data/lib/zernio-sdk/version.rb +1 -1
- data/openapi.yaml +109 -6
- data/spec/api/posts_api_spec.rb +1 -1
- data/spec/models/analytics_list_response_posts_inner_spec.rb +24 -0
- data/spec/models/analytics_single_post_response_spec.rb +24 -0
- data/spec/models/edit_post_request_spec.rb +7 -1
- data/spec/models/external_post_summary_spec.rb +24 -0
- data/spec/models/external_post_webhook_post_spec.rb +24 -0
- data/spec/models/list_whats_app_account_events200_response_events_inner_spec.rb +6 -0
- data/zernio-sdk-0.0.722.gem +0 -0
- metadata +3 -3
- data/zernio-sdk-0.0.720.gem +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 43b7ee1ff90a279e1c8104b2defb0084885ba7c175ebf30c1ef3dfbbb14abdb0
|
|
4
|
+
data.tar.gz: ca1c06cb0f1baa326fdc71209d78fca14498cb94a4b2067ea1d63daee85d4015
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6fc6e45dafaba431e82243c105e30a2f7ad38537a530e1f1e53065bd0e7e880a9cf63427da7cc10656838e0304005b8282a32422d9fe521c23d960fbe925fc50
|
|
7
|
+
data.tar.gz: 1ee349951a04c57495e6dc34becfe1f3cf4b76925c7c647825481cd87138e6f4eba0d066eec8860d4e82f625217aff36eb9e7ba81eec7cfe4dc4e4f6e9cede70
|
|
@@ -19,6 +19,10 @@
|
|
|
19
19
|
| **thumbnail_url** | **String** | | [optional] |
|
|
20
20
|
| **media_type** | **String** | | [optional] |
|
|
21
21
|
| **media_items** | [**Array<AnalyticsListResponsePostsInnerMediaItemsInner>**](AnalyticsListResponsePostsInnerMediaItemsInner.md) | All media items for this post. Carousel posts contain one entry per slide. | [optional] |
|
|
22
|
+
| **media_product_type** | **String** | Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it. | [optional] |
|
|
23
|
+
| **is_ai_generated** | **Boolean** | Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it. | [optional] |
|
|
24
|
+
| **is_shared_to_feed** | **Boolean** | Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it. | [optional] |
|
|
25
|
+
| **media_audio_type** | **String** | Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it. | [optional] |
|
|
22
26
|
|
|
23
27
|
## Example
|
|
24
28
|
|
|
@@ -40,7 +44,11 @@ instance = Zernio::AnalyticsListResponsePostsInner.new(
|
|
|
40
44
|
profile_id: null,
|
|
41
45
|
thumbnail_url: null,
|
|
42
46
|
media_type: null,
|
|
43
|
-
media_items: null
|
|
47
|
+
media_items: null,
|
|
48
|
+
media_product_type: null,
|
|
49
|
+
is_ai_generated: null,
|
|
50
|
+
is_shared_to_feed: null,
|
|
51
|
+
media_audio_type: null
|
|
44
52
|
)
|
|
45
53
|
```
|
|
46
54
|
|
|
@@ -20,6 +20,10 @@
|
|
|
20
20
|
| **thumbnail_url** | **String** | | [optional] |
|
|
21
21
|
| **media_type** | **String** | | [optional] |
|
|
22
22
|
| **media_items** | [**Array<AnalyticsSinglePostResponseMediaItemsInner>**](AnalyticsSinglePostResponseMediaItemsInner.md) | All media items for this post. Carousel posts contain one entry per slide. | [optional] |
|
|
23
|
+
| **media_product_type** | **String** | Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it. | [optional] |
|
|
24
|
+
| **is_ai_generated** | **Boolean** | Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it. | [optional] |
|
|
25
|
+
| **is_shared_to_feed** | **Boolean** | Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it. | [optional] |
|
|
26
|
+
| **media_audio_type** | **String** | Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it. | [optional] |
|
|
23
27
|
|
|
24
28
|
## Example
|
|
25
29
|
|
|
@@ -42,7 +46,11 @@ instance = Zernio::AnalyticsSinglePostResponse.new(
|
|
|
42
46
|
message: null,
|
|
43
47
|
thumbnail_url: null,
|
|
44
48
|
media_type: null,
|
|
45
|
-
media_items: null
|
|
49
|
+
media_items: null,
|
|
50
|
+
media_product_type: null,
|
|
51
|
+
is_ai_generated: null,
|
|
52
|
+
is_shared_to_feed: null,
|
|
53
|
+
media_audio_type: null
|
|
46
54
|
)
|
|
47
55
|
```
|
|
48
56
|
|
data/docs/EditPost200Response.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **success** | **Boolean** | | [optional] |
|
|
8
|
-
| **id** | **String** | The platform post ID after the edit. X assigns a new ID;
|
|
8
|
+
| **id** | **String** | The platform post ID after the edit. X assigns a new ID; every other platform returns the original ID unchanged. | [optional] |
|
|
9
9
|
| **url** | **String** | URL of the edited post | [optional] |
|
|
10
10
|
| **message** | **String** | | [optional] |
|
|
11
11
|
|
data/docs/EditPostRequest.md
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **platform** | **String** | The platform to edit the post on. | |
|
|
8
8
|
| **content** | **String** | The new post text content | |
|
|
9
|
+
| **account_id** | **String** | Which account's copy of the post to edit when the post was published to several accounts on the same platform; defaults to the first. | [optional] |
|
|
9
10
|
|
|
10
11
|
## Example
|
|
11
12
|
|
|
@@ -14,7 +15,8 @@ require 'zernio-sdk'
|
|
|
14
15
|
|
|
15
16
|
instance = Zernio::EditPostRequest.new(
|
|
16
17
|
platform: null,
|
|
17
|
-
content: null
|
|
18
|
+
content: null,
|
|
19
|
+
account_id: null
|
|
18
20
|
)
|
|
19
21
|
```
|
|
20
22
|
|
data/docs/ExternalPostSummary.md
CHANGED
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
| **media_type** | **String** | Media type (e.g. image, video, carousel) | [optional] |
|
|
13
13
|
| **thumbnail_url** | **String** | Thumbnail URL | [optional] |
|
|
14
14
|
| **media_items** | **Array<Object>** | Per-item media (for carousels / multi-media posts) | [optional] |
|
|
15
|
+
| **media_product_type** | **String** | Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it. | [optional] |
|
|
16
|
+
| **is_ai_generated** | **Boolean** | Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it. | [optional] |
|
|
17
|
+
| **is_shared_to_feed** | **Boolean** | Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it. | [optional] |
|
|
18
|
+
| **media_audio_type** | **String** | Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it. | [optional] |
|
|
15
19
|
| **analytics** | [**ExternalPostSummaryAnalytics**](ExternalPostSummaryAnalytics.md) | | [optional] |
|
|
16
20
|
|
|
17
21
|
## Example
|
|
@@ -28,6 +32,10 @@ instance = Zernio::ExternalPostSummary.new(
|
|
|
28
32
|
media_type: null,
|
|
29
33
|
thumbnail_url: null,
|
|
30
34
|
media_items: null,
|
|
35
|
+
media_product_type: null,
|
|
36
|
+
is_ai_generated: null,
|
|
37
|
+
is_shared_to_feed: null,
|
|
38
|
+
media_audio_type: null,
|
|
31
39
|
analytics: null
|
|
32
40
|
)
|
|
33
41
|
```
|
|
@@ -13,6 +13,10 @@
|
|
|
13
13
|
| **media_items** | [**Array<ExternalPostMediaItem>**](ExternalPostMediaItem.md) | | |
|
|
14
14
|
| **thumbnail_url** | **String** | | |
|
|
15
15
|
| **published_at** | **Time** | | |
|
|
16
|
+
| **media_product_type** | **String** | Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it. | [optional] |
|
|
17
|
+
| **is_ai_generated** | **Boolean** | Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it. | [optional] |
|
|
18
|
+
| **is_shared_to_feed** | **Boolean** | Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it. | [optional] |
|
|
19
|
+
| **media_audio_type** | **String** | Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it. | [optional] |
|
|
16
20
|
| **source** | **String** | Always \"external\" — distinguishes these from Zernio-originated post.* events. | |
|
|
17
21
|
| **deleted_at** | **Time** | Detection time of deletion. Present on post.external.deleted; null/absent otherwise. | [optional] |
|
|
18
22
|
|
|
@@ -31,6 +35,10 @@ instance = Zernio::ExternalPostWebhookPost.new(
|
|
|
31
35
|
media_items: null,
|
|
32
36
|
thumbnail_url: null,
|
|
33
37
|
published_at: null,
|
|
38
|
+
media_product_type: null,
|
|
39
|
+
is_ai_generated: null,
|
|
40
|
+
is_shared_to_feed: null,
|
|
41
|
+
media_audio_type: null,
|
|
34
42
|
source: null,
|
|
35
43
|
deleted_at: null
|
|
36
44
|
)
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **id** | **String** | | [optional] |
|
|
8
|
+
| **account_id** | **String** | WhatsApp social account the event belongs to | [optional] |
|
|
8
9
|
| **type** | **String** | Event kind, e.g. template_approved, template_rejected, account_restricted, account_disconnected | [optional] |
|
|
9
10
|
| **severity** | **String** | | [optional] |
|
|
10
11
|
| **title** | **String** | | [optional] |
|
|
@@ -18,6 +19,7 @@ require 'zernio-sdk'
|
|
|
18
19
|
|
|
19
20
|
instance = Zernio::ListWhatsAppAccountEvents200ResponseEventsInner.new(
|
|
20
21
|
id: null,
|
|
22
|
+
account_id: null,
|
|
21
23
|
type: null,
|
|
22
24
|
severity: null,
|
|
23
25
|
title: null,
|
data/docs/PostsApi.md
CHANGED
|
@@ -237,7 +237,7 @@ end
|
|
|
237
237
|
|
|
238
238
|
Edit published post
|
|
239
239
|
|
|
240
|
-
Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, and
|
|
240
|
+
Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, Reddit, LinkedIn, Telegram, Pinterest, Google Business Profile, YouTube, and Slack. When a post was published to several accounts on the same platform, pass `accountId` to pick which account's copy to edit (the first entry is edited otherwise). Each platform enforces its own rules: **X (Twitter)** - Connected X account must have an active X Premium subscription - Must be within 1 hour of original publish time - Maximum 5 edits per tweet (enforced by X) - Threads cannot be edited, only single tweets - X assigns a NEW post ID on edit, returned as `id` **Discord** - No time limit and no premium requirement - The message ID is unchanged after the edit **Facebook** - Graph only permits editing a post that the same app created, so this works on posts published through Zernio and is rejected for posts created in Meta Business Suite / Composer or by another tool - Media cannot be swapped, only the message text - Reactions, comments, and shares are preserved. The post ID is unchanged **Reddit** - Self-posts only. A link post has no editable body and is rejected before the write - Body only. Reddit exposes no API to edit a post title, ever - The post ID is unchanged **LinkedIn** - Text only, no time limit. Media, polls, articles, and reshare targets cannot be changed - Works for member and organization posts published through this API. The post keeps its ID and LinkedIn shows an \"edited\" marker - Text is limited to 3,000 characters; mentions and hashtags are preserved **Telegram** - No time limit; messages published through Zernio are editable indefinitely - Text posts: edits the message text (up to 4096 characters) - Media posts: edits the caption only (up to 1024 characters). The media itself cannot be swapped - For albums, the caption shown on the album (its first message) is edited - The message ID is unchanged **Pinterest** - Description only, maximum 800 characters. Media, link, and board cannot be changed, and a pin title derived from the old content's first line at publish stays as-is - Pinterest's pin-update endpoint is currently in closed beta; until the app is allowlisted by Pinterest, edits are rejected with a \"beta feature not yet enabled\" error - The pin ID is unchanged **Google Business Profile** - Post body (summary) text only. Call-to-action, event/offer fields, and media are untouched - No time limit and no edit limit. The post ID is unchanged - The post must still exist on Google: a post deleted from the Business Profile dashboard, or an event/offer post past its end date, returns a 404 **YouTube** - `content` replaces the video description only. The title is unchanged, even if it was originally derived from the content's first line at publish time - Title, tags, thumbnail, and privacy edits belong to `POST /v1/posts/{postId}/update-metadata` - No time window and no edit cap. The video ID is unchanged **Slack** - Text only, up to 4,000 characters. Media cannot be swapped, and media posts whose share message reference never resolved cannot be edited - No time limit unless workspace admins restrict message editing - The message ID is unchanged Media edits are not supported on any platform. The post record in Zernio is updated with the new content and an edit-history entry.
|
|
241
241
|
|
|
242
242
|
### Examples
|
|
243
243
|
|
|
@@ -222,7 +222,7 @@ module Zernio
|
|
|
222
222
|
end
|
|
223
223
|
|
|
224
224
|
# Edit published post
|
|
225
|
-
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, and
|
|
225
|
+
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, Reddit, LinkedIn, Telegram, Pinterest, Google Business Profile, YouTube, and Slack. When a post was published to several accounts on the same platform, pass `accountId` to pick which account's copy to edit (the first entry is edited otherwise). Each platform enforces its own rules: **X (Twitter)** - Connected X account must have an active X Premium subscription - Must be within 1 hour of original publish time - Maximum 5 edits per tweet (enforced by X) - Threads cannot be edited, only single tweets - X assigns a NEW post ID on edit, returned as `id` **Discord** - No time limit and no premium requirement - The message ID is unchanged after the edit **Facebook** - Graph only permits editing a post that the same app created, so this works on posts published through Zernio and is rejected for posts created in Meta Business Suite / Composer or by another tool - Media cannot be swapped, only the message text - Reactions, comments, and shares are preserved. The post ID is unchanged **Reddit** - Self-posts only. A link post has no editable body and is rejected before the write - Body only. Reddit exposes no API to edit a post title, ever - The post ID is unchanged **LinkedIn** - Text only, no time limit. Media, polls, articles, and reshare targets cannot be changed - Works for member and organization posts published through this API. The post keeps its ID and LinkedIn shows an \"edited\" marker - Text is limited to 3,000 characters; mentions and hashtags are preserved **Telegram** - No time limit; messages published through Zernio are editable indefinitely - Text posts: edits the message text (up to 4096 characters) - Media posts: edits the caption only (up to 1024 characters). The media itself cannot be swapped - For albums, the caption shown on the album (its first message) is edited - The message ID is unchanged **Pinterest** - Description only, maximum 800 characters. Media, link, and board cannot be changed, and a pin title derived from the old content's first line at publish stays as-is - Pinterest's pin-update endpoint is currently in closed beta; until the app is allowlisted by Pinterest, edits are rejected with a \"beta feature not yet enabled\" error - The pin ID is unchanged **Google Business Profile** - Post body (summary) text only. Call-to-action, event/offer fields, and media are untouched - No time limit and no edit limit. The post ID is unchanged - The post must still exist on Google: a post deleted from the Business Profile dashboard, or an event/offer post past its end date, returns a 404 **YouTube** - `content` replaces the video description only. The title is unchanged, even if it was originally derived from the content's first line at publish time - Title, tags, thumbnail, and privacy edits belong to `POST /v1/posts/{postId}/update-metadata` - No time window and no edit cap. The video ID is unchanged **Slack** - Text only, up to 4,000 characters. Media cannot be swapped, and media posts whose share message reference never resolved cannot be edited - No time limit unless workspace admins restrict message editing - The message ID is unchanged Media edits are not supported on any platform. The post record in Zernio is updated with the new content and an edit-history entry.
|
|
226
226
|
# @param post_id [String]
|
|
227
227
|
# @param edit_post_request [EditPostRequest]
|
|
228
228
|
# @param [Hash] opts the optional parameters
|
|
@@ -233,7 +233,7 @@ module Zernio
|
|
|
233
233
|
end
|
|
234
234
|
|
|
235
235
|
# Edit published post
|
|
236
|
-
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, and
|
|
236
|
+
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, Reddit, LinkedIn, Telegram, Pinterest, Google Business Profile, YouTube, and Slack. When a post was published to several accounts on the same platform, pass `accountId` to pick which account's copy to edit (the first entry is edited otherwise). Each platform enforces its own rules: **X (Twitter)** - Connected X account must have an active X Premium subscription - Must be within 1 hour of original publish time - Maximum 5 edits per tweet (enforced by X) - Threads cannot be edited, only single tweets - X assigns a NEW post ID on edit, returned as `id` **Discord** - No time limit and no premium requirement - The message ID is unchanged after the edit **Facebook** - Graph only permits editing a post that the same app created, so this works on posts published through Zernio and is rejected for posts created in Meta Business Suite / Composer or by another tool - Media cannot be swapped, only the message text - Reactions, comments, and shares are preserved. The post ID is unchanged **Reddit** - Self-posts only. A link post has no editable body and is rejected before the write - Body only. Reddit exposes no API to edit a post title, ever - The post ID is unchanged **LinkedIn** - Text only, no time limit. Media, polls, articles, and reshare targets cannot be changed - Works for member and organization posts published through this API. The post keeps its ID and LinkedIn shows an \"edited\" marker - Text is limited to 3,000 characters; mentions and hashtags are preserved **Telegram** - No time limit; messages published through Zernio are editable indefinitely - Text posts: edits the message text (up to 4096 characters) - Media posts: edits the caption only (up to 1024 characters). The media itself cannot be swapped - For albums, the caption shown on the album (its first message) is edited - The message ID is unchanged **Pinterest** - Description only, maximum 800 characters. Media, link, and board cannot be changed, and a pin title derived from the old content's first line at publish stays as-is - Pinterest's pin-update endpoint is currently in closed beta; until the app is allowlisted by Pinterest, edits are rejected with a \"beta feature not yet enabled\" error - The pin ID is unchanged **Google Business Profile** - Post body (summary) text only. Call-to-action, event/offer fields, and media are untouched - No time limit and no edit limit. The post ID is unchanged - The post must still exist on Google: a post deleted from the Business Profile dashboard, or an event/offer post past its end date, returns a 404 **YouTube** - `content` replaces the video description only. The title is unchanged, even if it was originally derived from the content's first line at publish time - Title, tags, thumbnail, and privacy edits belong to `POST /v1/posts/{postId}/update-metadata` - No time window and no edit cap. The video ID is unchanged **Slack** - Text only, up to 4,000 characters. Media cannot be swapped, and media posts whose share message reference never resolved cannot be edited - No time limit unless workspace admins restrict message editing - The message ID is unchanged Media edits are not supported on any platform. The post record in Zernio is updated with the new content and an edit-history entry.
|
|
237
237
|
# @param post_id [String]
|
|
238
238
|
# @param edit_post_request [EditPostRequest]
|
|
239
239
|
# @param [Hash] opts the optional parameters
|
|
@@ -47,6 +47,18 @@ module Zernio
|
|
|
47
47
|
# All media items for this post. Carousel posts contain one entry per slide.
|
|
48
48
|
attr_accessor :media_items
|
|
49
49
|
|
|
50
|
+
# Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.
|
|
51
|
+
attr_accessor :media_product_type
|
|
52
|
+
|
|
53
|
+
# Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.
|
|
54
|
+
attr_accessor :is_ai_generated
|
|
55
|
+
|
|
56
|
+
# Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.
|
|
57
|
+
attr_accessor :is_shared_to_feed
|
|
58
|
+
|
|
59
|
+
# Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.
|
|
60
|
+
attr_accessor :media_audio_type
|
|
61
|
+
|
|
50
62
|
class EnumAttributeValidator
|
|
51
63
|
attr_reader :datatype
|
|
52
64
|
attr_reader :allowable_values
|
|
@@ -86,7 +98,11 @@ module Zernio
|
|
|
86
98
|
:'profile_id' => :'profileId',
|
|
87
99
|
:'thumbnail_url' => :'thumbnailUrl',
|
|
88
100
|
:'media_type' => :'mediaType',
|
|
89
|
-
:'media_items' => :'mediaItems'
|
|
101
|
+
:'media_items' => :'mediaItems',
|
|
102
|
+
:'media_product_type' => :'mediaProductType',
|
|
103
|
+
:'is_ai_generated' => :'isAiGenerated',
|
|
104
|
+
:'is_shared_to_feed' => :'isSharedToFeed',
|
|
105
|
+
:'media_audio_type' => :'mediaAudioType'
|
|
90
106
|
}
|
|
91
107
|
end
|
|
92
108
|
|
|
@@ -117,7 +133,11 @@ module Zernio
|
|
|
117
133
|
:'profile_id' => :'String',
|
|
118
134
|
:'thumbnail_url' => :'String',
|
|
119
135
|
:'media_type' => :'String',
|
|
120
|
-
:'media_items' => :'Array<AnalyticsListResponsePostsInnerMediaItemsInner>'
|
|
136
|
+
:'media_items' => :'Array<AnalyticsListResponsePostsInnerMediaItemsInner>',
|
|
137
|
+
:'media_product_type' => :'String',
|
|
138
|
+
:'is_ai_generated' => :'Boolean',
|
|
139
|
+
:'is_shared_to_feed' => :'Boolean',
|
|
140
|
+
:'media_audio_type' => :'String'
|
|
121
141
|
}
|
|
122
142
|
end
|
|
123
143
|
|
|
@@ -208,6 +228,22 @@ module Zernio
|
|
|
208
228
|
self.media_items = value
|
|
209
229
|
end
|
|
210
230
|
end
|
|
231
|
+
|
|
232
|
+
if attributes.key?(:'media_product_type')
|
|
233
|
+
self.media_product_type = attributes[:'media_product_type']
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
if attributes.key?(:'is_ai_generated')
|
|
237
|
+
self.is_ai_generated = attributes[:'is_ai_generated']
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
if attributes.key?(:'is_shared_to_feed')
|
|
241
|
+
self.is_shared_to_feed = attributes[:'is_shared_to_feed']
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
if attributes.key?(:'media_audio_type')
|
|
245
|
+
self.media_audio_type = attributes[:'media_audio_type']
|
|
246
|
+
end
|
|
211
247
|
end
|
|
212
248
|
|
|
213
249
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -256,7 +292,11 @@ module Zernio
|
|
|
256
292
|
profile_id == o.profile_id &&
|
|
257
293
|
thumbnail_url == o.thumbnail_url &&
|
|
258
294
|
media_type == o.media_type &&
|
|
259
|
-
media_items == o.media_items
|
|
295
|
+
media_items == o.media_items &&
|
|
296
|
+
media_product_type == o.media_product_type &&
|
|
297
|
+
is_ai_generated == o.is_ai_generated &&
|
|
298
|
+
is_shared_to_feed == o.is_shared_to_feed &&
|
|
299
|
+
media_audio_type == o.media_audio_type
|
|
260
300
|
end
|
|
261
301
|
|
|
262
302
|
# @see the `==` method
|
|
@@ -268,7 +308,7 @@ module Zernio
|
|
|
268
308
|
# Calculates hash code according to all attributes.
|
|
269
309
|
# @return [Integer] Hash code
|
|
270
310
|
def hash
|
|
271
|
-
[_id, late_post_id, content, scheduled_for, published_at, status, analytics, platforms, platform, platform_post_url, is_external, profile_id, thumbnail_url, media_type, media_items].hash
|
|
311
|
+
[_id, late_post_id, content, scheduled_for, published_at, status, analytics, platforms, platform, platform_post_url, is_external, profile_id, thumbnail_url, media_type, media_items, media_product_type, is_ai_generated, is_shared_to_feed, media_audio_type].hash
|
|
272
312
|
end
|
|
273
313
|
|
|
274
314
|
# Builds the object from hash
|
|
@@ -52,6 +52,18 @@ module Zernio
|
|
|
52
52
|
# All media items for this post. Carousel posts contain one entry per slide.
|
|
53
53
|
attr_accessor :media_items
|
|
54
54
|
|
|
55
|
+
# Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.
|
|
56
|
+
attr_accessor :media_product_type
|
|
57
|
+
|
|
58
|
+
# Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.
|
|
59
|
+
attr_accessor :is_ai_generated
|
|
60
|
+
|
|
61
|
+
# Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.
|
|
62
|
+
attr_accessor :is_shared_to_feed
|
|
63
|
+
|
|
64
|
+
# Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.
|
|
65
|
+
attr_accessor :media_audio_type
|
|
66
|
+
|
|
55
67
|
class EnumAttributeValidator
|
|
56
68
|
attr_reader :datatype
|
|
57
69
|
attr_reader :allowable_values
|
|
@@ -92,7 +104,11 @@ module Zernio
|
|
|
92
104
|
:'message' => :'message',
|
|
93
105
|
:'thumbnail_url' => :'thumbnailUrl',
|
|
94
106
|
:'media_type' => :'mediaType',
|
|
95
|
-
:'media_items' => :'mediaItems'
|
|
107
|
+
:'media_items' => :'mediaItems',
|
|
108
|
+
:'media_product_type' => :'mediaProductType',
|
|
109
|
+
:'is_ai_generated' => :'isAiGenerated',
|
|
110
|
+
:'is_shared_to_feed' => :'isSharedToFeed',
|
|
111
|
+
:'media_audio_type' => :'mediaAudioType'
|
|
96
112
|
}
|
|
97
113
|
end
|
|
98
114
|
|
|
@@ -124,7 +140,11 @@ module Zernio
|
|
|
124
140
|
:'message' => :'String',
|
|
125
141
|
:'thumbnail_url' => :'String',
|
|
126
142
|
:'media_type' => :'String',
|
|
127
|
-
:'media_items' => :'Array<AnalyticsSinglePostResponseMediaItemsInner>'
|
|
143
|
+
:'media_items' => :'Array<AnalyticsSinglePostResponseMediaItemsInner>',
|
|
144
|
+
:'media_product_type' => :'String',
|
|
145
|
+
:'is_ai_generated' => :'Boolean',
|
|
146
|
+
:'is_shared_to_feed' => :'Boolean',
|
|
147
|
+
:'media_audio_type' => :'String'
|
|
128
148
|
}
|
|
129
149
|
end
|
|
130
150
|
|
|
@@ -223,6 +243,22 @@ module Zernio
|
|
|
223
243
|
self.media_items = value
|
|
224
244
|
end
|
|
225
245
|
end
|
|
246
|
+
|
|
247
|
+
if attributes.key?(:'media_product_type')
|
|
248
|
+
self.media_product_type = attributes[:'media_product_type']
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
if attributes.key?(:'is_ai_generated')
|
|
252
|
+
self.is_ai_generated = attributes[:'is_ai_generated']
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
if attributes.key?(:'is_shared_to_feed')
|
|
256
|
+
self.is_shared_to_feed = attributes[:'is_shared_to_feed']
|
|
257
|
+
end
|
|
258
|
+
|
|
259
|
+
if attributes.key?(:'media_audio_type')
|
|
260
|
+
self.media_audio_type = attributes[:'media_audio_type']
|
|
261
|
+
end
|
|
226
262
|
end
|
|
227
263
|
|
|
228
264
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -296,7 +332,11 @@ module Zernio
|
|
|
296
332
|
message == o.message &&
|
|
297
333
|
thumbnail_url == o.thumbnail_url &&
|
|
298
334
|
media_type == o.media_type &&
|
|
299
|
-
media_items == o.media_items
|
|
335
|
+
media_items == o.media_items &&
|
|
336
|
+
media_product_type == o.media_product_type &&
|
|
337
|
+
is_ai_generated == o.is_ai_generated &&
|
|
338
|
+
is_shared_to_feed == o.is_shared_to_feed &&
|
|
339
|
+
media_audio_type == o.media_audio_type
|
|
300
340
|
end
|
|
301
341
|
|
|
302
342
|
# @see the `==` method
|
|
@@ -308,7 +348,7 @@ module Zernio
|
|
|
308
348
|
# Calculates hash code according to all attributes.
|
|
309
349
|
# @return [Integer] Hash code
|
|
310
350
|
def hash
|
|
311
|
-
[post_id, late_post_id, status, content, scheduled_for, published_at, analytics, platform_analytics, platform, platform_post_url, is_external, sync_status, message, thumbnail_url, media_type, media_items].hash
|
|
351
|
+
[post_id, late_post_id, status, content, scheduled_for, published_at, analytics, platform_analytics, platform, platform_post_url, is_external, sync_status, message, thumbnail_url, media_type, media_items, media_product_type, is_ai_generated, is_shared_to_feed, media_audio_type].hash
|
|
312
352
|
end
|
|
313
353
|
|
|
314
354
|
# Builds the object from hash
|
|
@@ -17,7 +17,7 @@ module Zernio
|
|
|
17
17
|
class EditPost200Response < ApiModelBase
|
|
18
18
|
attr_accessor :success
|
|
19
19
|
|
|
20
|
-
# The platform post ID after the edit. X assigns a new ID;
|
|
20
|
+
# The platform post ID after the edit. X assigns a new ID; every other platform returns the original ID unchanged.
|
|
21
21
|
attr_accessor :id
|
|
22
22
|
|
|
23
23
|
# URL of the edited post
|
|
@@ -21,6 +21,9 @@ module Zernio
|
|
|
21
21
|
# The new post text content
|
|
22
22
|
attr_accessor :content
|
|
23
23
|
|
|
24
|
+
# Which account's copy of the post to edit when the post was published to several accounts on the same platform; defaults to the first.
|
|
25
|
+
attr_accessor :account_id
|
|
26
|
+
|
|
24
27
|
class EnumAttributeValidator
|
|
25
28
|
attr_reader :datatype
|
|
26
29
|
attr_reader :allowable_values
|
|
@@ -47,7 +50,8 @@ module Zernio
|
|
|
47
50
|
def self.attribute_map
|
|
48
51
|
{
|
|
49
52
|
:'platform' => :'platform',
|
|
50
|
-
:'content' => :'content'
|
|
53
|
+
:'content' => :'content',
|
|
54
|
+
:'account_id' => :'accountId'
|
|
51
55
|
}
|
|
52
56
|
end
|
|
53
57
|
|
|
@@ -65,7 +69,8 @@ module Zernio
|
|
|
65
69
|
def self.openapi_types
|
|
66
70
|
{
|
|
67
71
|
:'platform' => :'String',
|
|
68
|
-
:'content' => :'String'
|
|
72
|
+
:'content' => :'String',
|
|
73
|
+
:'account_id' => :'String'
|
|
69
74
|
}
|
|
70
75
|
end
|
|
71
76
|
|
|
@@ -102,6 +107,10 @@ module Zernio
|
|
|
102
107
|
else
|
|
103
108
|
self.content = nil
|
|
104
109
|
end
|
|
110
|
+
|
|
111
|
+
if attributes.key?(:'account_id')
|
|
112
|
+
self.account_id = attributes[:'account_id']
|
|
113
|
+
end
|
|
105
114
|
end
|
|
106
115
|
|
|
107
116
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -125,7 +134,7 @@ module Zernio
|
|
|
125
134
|
def valid?
|
|
126
135
|
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
127
136
|
return false if @platform.nil?
|
|
128
|
-
platform_validator = EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit"])
|
|
137
|
+
platform_validator = EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit", "linkedin", "telegram", "pinterest", "googlebusiness", "youtube", "slack"])
|
|
129
138
|
return false unless platform_validator.valid?(@platform)
|
|
130
139
|
return false if @content.nil?
|
|
131
140
|
true
|
|
@@ -134,7 +143,7 @@ module Zernio
|
|
|
134
143
|
# Custom attribute writer method checking allowed values (enum).
|
|
135
144
|
# @param [Object] platform Object to be assigned
|
|
136
145
|
def platform=(platform)
|
|
137
|
-
validator = EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit"])
|
|
146
|
+
validator = EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit", "linkedin", "telegram", "pinterest", "googlebusiness", "youtube", "slack"])
|
|
138
147
|
unless validator.valid?(platform)
|
|
139
148
|
fail ArgumentError, "invalid value for \"platform\", must be one of #{validator.allowable_values}."
|
|
140
149
|
end
|
|
@@ -157,7 +166,8 @@ module Zernio
|
|
|
157
166
|
return true if self.equal?(o)
|
|
158
167
|
self.class == o.class &&
|
|
159
168
|
platform == o.platform &&
|
|
160
|
-
content == o.content
|
|
169
|
+
content == o.content &&
|
|
170
|
+
account_id == o.account_id
|
|
161
171
|
end
|
|
162
172
|
|
|
163
173
|
# @see the `==` method
|
|
@@ -169,7 +179,7 @@ module Zernio
|
|
|
169
179
|
# Calculates hash code according to all attributes.
|
|
170
180
|
# @return [Integer] Hash code
|
|
171
181
|
def hash
|
|
172
|
-
[platform, content].hash
|
|
182
|
+
[platform, content, account_id].hash
|
|
173
183
|
end
|
|
174
184
|
|
|
175
185
|
# Builds the object from hash
|
|
@@ -40,6 +40,18 @@ module Zernio
|
|
|
40
40
|
# Per-item media (for carousels / multi-media posts)
|
|
41
41
|
attr_accessor :media_items
|
|
42
42
|
|
|
43
|
+
# Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.
|
|
44
|
+
attr_accessor :media_product_type
|
|
45
|
+
|
|
46
|
+
# Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.
|
|
47
|
+
attr_accessor :is_ai_generated
|
|
48
|
+
|
|
49
|
+
# Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.
|
|
50
|
+
attr_accessor :is_shared_to_feed
|
|
51
|
+
|
|
52
|
+
# Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.
|
|
53
|
+
attr_accessor :media_audio_type
|
|
54
|
+
|
|
43
55
|
attr_accessor :analytics
|
|
44
56
|
|
|
45
57
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
@@ -53,6 +65,10 @@ module Zernio
|
|
|
53
65
|
:'media_type' => :'mediaType',
|
|
54
66
|
:'thumbnail_url' => :'thumbnailUrl',
|
|
55
67
|
:'media_items' => :'mediaItems',
|
|
68
|
+
:'media_product_type' => :'mediaProductType',
|
|
69
|
+
:'is_ai_generated' => :'isAiGenerated',
|
|
70
|
+
:'is_shared_to_feed' => :'isSharedToFeed',
|
|
71
|
+
:'media_audio_type' => :'mediaAudioType',
|
|
56
72
|
:'analytics' => :'analytics'
|
|
57
73
|
}
|
|
58
74
|
end
|
|
@@ -78,6 +94,10 @@ module Zernio
|
|
|
78
94
|
:'media_type' => :'String',
|
|
79
95
|
:'thumbnail_url' => :'String',
|
|
80
96
|
:'media_items' => :'Array<Object>',
|
|
97
|
+
:'media_product_type' => :'String',
|
|
98
|
+
:'is_ai_generated' => :'Boolean',
|
|
99
|
+
:'is_shared_to_feed' => :'Boolean',
|
|
100
|
+
:'media_audio_type' => :'String',
|
|
81
101
|
:'analytics' => :'ExternalPostSummaryAnalytics'
|
|
82
102
|
}
|
|
83
103
|
end
|
|
@@ -138,6 +158,22 @@ module Zernio
|
|
|
138
158
|
end
|
|
139
159
|
end
|
|
140
160
|
|
|
161
|
+
if attributes.key?(:'media_product_type')
|
|
162
|
+
self.media_product_type = attributes[:'media_product_type']
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
if attributes.key?(:'is_ai_generated')
|
|
166
|
+
self.is_ai_generated = attributes[:'is_ai_generated']
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
if attributes.key?(:'is_shared_to_feed')
|
|
170
|
+
self.is_shared_to_feed = attributes[:'is_shared_to_feed']
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
if attributes.key?(:'media_audio_type')
|
|
174
|
+
self.media_audio_type = attributes[:'media_audio_type']
|
|
175
|
+
end
|
|
176
|
+
|
|
141
177
|
if attributes.key?(:'analytics')
|
|
142
178
|
self.analytics = attributes[:'analytics']
|
|
143
179
|
end
|
|
@@ -171,6 +207,10 @@ module Zernio
|
|
|
171
207
|
media_type == o.media_type &&
|
|
172
208
|
thumbnail_url == o.thumbnail_url &&
|
|
173
209
|
media_items == o.media_items &&
|
|
210
|
+
media_product_type == o.media_product_type &&
|
|
211
|
+
is_ai_generated == o.is_ai_generated &&
|
|
212
|
+
is_shared_to_feed == o.is_shared_to_feed &&
|
|
213
|
+
media_audio_type == o.media_audio_type &&
|
|
174
214
|
analytics == o.analytics
|
|
175
215
|
end
|
|
176
216
|
|
|
@@ -183,7 +223,7 @@ module Zernio
|
|
|
183
223
|
# Calculates hash code according to all attributes.
|
|
184
224
|
# @return [Integer] Hash code
|
|
185
225
|
def hash
|
|
186
|
-
[platform, platform_post_id, platform_post_url, content, published_at, media_type, thumbnail_url, media_items, analytics].hash
|
|
226
|
+
[platform, platform_post_id, platform_post_url, content, published_at, media_type, thumbnail_url, media_items, media_product_type, is_ai_generated, is_shared_to_feed, media_audio_type, analytics].hash
|
|
187
227
|
end
|
|
188
228
|
|
|
189
229
|
# Builds the object from hash
|
|
@@ -40,6 +40,18 @@ module Zernio
|
|
|
40
40
|
|
|
41
41
|
attr_accessor :published_at
|
|
42
42
|
|
|
43
|
+
# Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.
|
|
44
|
+
attr_accessor :media_product_type
|
|
45
|
+
|
|
46
|
+
# Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.
|
|
47
|
+
attr_accessor :is_ai_generated
|
|
48
|
+
|
|
49
|
+
# Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.
|
|
50
|
+
attr_accessor :is_shared_to_feed
|
|
51
|
+
|
|
52
|
+
# Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.
|
|
53
|
+
attr_accessor :media_audio_type
|
|
54
|
+
|
|
43
55
|
# Always \"external\" — distinguishes these from Zernio-originated post.* events.
|
|
44
56
|
attr_accessor :source
|
|
45
57
|
|
|
@@ -80,6 +92,10 @@ module Zernio
|
|
|
80
92
|
:'media_items' => :'mediaItems',
|
|
81
93
|
:'thumbnail_url' => :'thumbnailUrl',
|
|
82
94
|
:'published_at' => :'publishedAt',
|
|
95
|
+
:'media_product_type' => :'mediaProductType',
|
|
96
|
+
:'is_ai_generated' => :'isAiGenerated',
|
|
97
|
+
:'is_shared_to_feed' => :'isSharedToFeed',
|
|
98
|
+
:'media_audio_type' => :'mediaAudioType',
|
|
83
99
|
:'source' => :'source',
|
|
84
100
|
:'deleted_at' => :'deletedAt'
|
|
85
101
|
}
|
|
@@ -107,6 +123,10 @@ module Zernio
|
|
|
107
123
|
:'media_items' => :'Array<ExternalPostMediaItem>',
|
|
108
124
|
:'thumbnail_url' => :'String',
|
|
109
125
|
:'published_at' => :'Time',
|
|
126
|
+
:'media_product_type' => :'String',
|
|
127
|
+
:'is_ai_generated' => :'Boolean',
|
|
128
|
+
:'is_shared_to_feed' => :'Boolean',
|
|
129
|
+
:'media_audio_type' => :'String',
|
|
110
130
|
:'source' => :'String',
|
|
111
131
|
:'deleted_at' => :'Time'
|
|
112
132
|
}
|
|
@@ -193,6 +213,22 @@ module Zernio
|
|
|
193
213
|
self.published_at = nil
|
|
194
214
|
end
|
|
195
215
|
|
|
216
|
+
if attributes.key?(:'media_product_type')
|
|
217
|
+
self.media_product_type = attributes[:'media_product_type']
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
if attributes.key?(:'is_ai_generated')
|
|
221
|
+
self.is_ai_generated = attributes[:'is_ai_generated']
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
if attributes.key?(:'is_shared_to_feed')
|
|
225
|
+
self.is_shared_to_feed = attributes[:'is_shared_to_feed']
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
if attributes.key?(:'media_audio_type')
|
|
229
|
+
self.media_audio_type = attributes[:'media_audio_type']
|
|
230
|
+
end
|
|
231
|
+
|
|
196
232
|
if attributes.key?(:'source')
|
|
197
233
|
self.source = attributes[:'source']
|
|
198
234
|
else
|
|
@@ -355,6 +391,10 @@ module Zernio
|
|
|
355
391
|
media_items == o.media_items &&
|
|
356
392
|
thumbnail_url == o.thumbnail_url &&
|
|
357
393
|
published_at == o.published_at &&
|
|
394
|
+
media_product_type == o.media_product_type &&
|
|
395
|
+
is_ai_generated == o.is_ai_generated &&
|
|
396
|
+
is_shared_to_feed == o.is_shared_to_feed &&
|
|
397
|
+
media_audio_type == o.media_audio_type &&
|
|
358
398
|
source == o.source &&
|
|
359
399
|
deleted_at == o.deleted_at
|
|
360
400
|
end
|
|
@@ -368,7 +408,7 @@ module Zernio
|
|
|
368
408
|
# Calculates hash code according to all attributes.
|
|
369
409
|
# @return [Integer] Hash code
|
|
370
410
|
def hash
|
|
371
|
-
[id, platform, account_id, url, content, media_type, media_items, thumbnail_url, published_at, source, deleted_at].hash
|
|
411
|
+
[id, platform, account_id, url, content, media_type, media_items, thumbnail_url, published_at, media_product_type, is_ai_generated, is_shared_to_feed, media_audio_type, source, deleted_at].hash
|
|
372
412
|
end
|
|
373
413
|
|
|
374
414
|
# Builds the object from hash
|
|
@@ -17,6 +17,9 @@ module Zernio
|
|
|
17
17
|
class ListWhatsAppAccountEvents200ResponseEventsInner < ApiModelBase
|
|
18
18
|
attr_accessor :id
|
|
19
19
|
|
|
20
|
+
# WhatsApp social account the event belongs to
|
|
21
|
+
attr_accessor :account_id
|
|
22
|
+
|
|
20
23
|
# Event kind, e.g. template_approved, template_rejected, account_restricted, account_disconnected
|
|
21
24
|
attr_accessor :type
|
|
22
25
|
|
|
@@ -54,6 +57,7 @@ module Zernio
|
|
|
54
57
|
def self.attribute_map
|
|
55
58
|
{
|
|
56
59
|
:'id' => :'id',
|
|
60
|
+
:'account_id' => :'accountId',
|
|
57
61
|
:'type' => :'type',
|
|
58
62
|
:'severity' => :'severity',
|
|
59
63
|
:'title' => :'title',
|
|
@@ -76,6 +80,7 @@ module Zernio
|
|
|
76
80
|
def self.openapi_types
|
|
77
81
|
{
|
|
78
82
|
:'id' => :'String',
|
|
83
|
+
:'account_id' => :'String',
|
|
79
84
|
:'type' => :'String',
|
|
80
85
|
:'severity' => :'String',
|
|
81
86
|
:'title' => :'String',
|
|
@@ -111,6 +116,10 @@ module Zernio
|
|
|
111
116
|
self.id = attributes[:'id']
|
|
112
117
|
end
|
|
113
118
|
|
|
119
|
+
if attributes.key?(:'account_id')
|
|
120
|
+
self.account_id = attributes[:'account_id']
|
|
121
|
+
end
|
|
122
|
+
|
|
114
123
|
if attributes.key?(:'type')
|
|
115
124
|
self.type = attributes[:'type']
|
|
116
125
|
end
|
|
@@ -165,6 +174,7 @@ module Zernio
|
|
|
165
174
|
return true if self.equal?(o)
|
|
166
175
|
self.class == o.class &&
|
|
167
176
|
id == o.id &&
|
|
177
|
+
account_id == o.account_id &&
|
|
168
178
|
type == o.type &&
|
|
169
179
|
severity == o.severity &&
|
|
170
180
|
title == o.title &&
|
|
@@ -181,7 +191,7 @@ module Zernio
|
|
|
181
191
|
# Calculates hash code according to all attributes.
|
|
182
192
|
# @return [Integer] Hash code
|
|
183
193
|
def hash
|
|
184
|
-
[id, type, severity, title, detail, created_at].hash
|
|
194
|
+
[id, account_id, type, severity, title, detail, created_at].hash
|
|
185
195
|
end
|
|
186
196
|
|
|
187
197
|
# Builds the object from hash
|
data/lib/zernio-sdk/version.rb
CHANGED
data/openapi.yaml
CHANGED
|
@@ -1376,6 +1376,18 @@ components:
|
|
|
1376
1376
|
description: Per-item media (for carousels / multi-media posts)
|
|
1377
1377
|
items:
|
|
1378
1378
|
type: object
|
|
1379
|
+
mediaProductType:
|
|
1380
|
+
type: string
|
|
1381
|
+
description: 'Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.'
|
|
1382
|
+
isAiGenerated:
|
|
1383
|
+
type: boolean
|
|
1384
|
+
description: 'Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.'
|
|
1385
|
+
isSharedToFeed:
|
|
1386
|
+
type: boolean
|
|
1387
|
+
description: 'Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.'
|
|
1388
|
+
mediaAudioType:
|
|
1389
|
+
type: string
|
|
1390
|
+
description: 'Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.'
|
|
1379
1391
|
analytics:
|
|
1380
1392
|
type: object
|
|
1381
1393
|
description: |
|
|
@@ -3097,6 +3109,18 @@ components:
|
|
|
3097
3109
|
publishedAt:
|
|
3098
3110
|
type: string
|
|
3099
3111
|
format: date-time
|
|
3112
|
+
mediaProductType:
|
|
3113
|
+
type: string
|
|
3114
|
+
description: 'Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.'
|
|
3115
|
+
isAiGenerated:
|
|
3116
|
+
type: boolean
|
|
3117
|
+
description: 'Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.'
|
|
3118
|
+
isSharedToFeed:
|
|
3119
|
+
type: boolean
|
|
3120
|
+
description: 'Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.'
|
|
3121
|
+
mediaAudioType:
|
|
3122
|
+
type: string
|
|
3123
|
+
description: 'Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.'
|
|
3100
3124
|
source:
|
|
3101
3125
|
type: string
|
|
3102
3126
|
enum: [external]
|
|
@@ -7034,6 +7058,18 @@ components:
|
|
|
7034
7058
|
type: string
|
|
7035
7059
|
enum: [platform_withheld]
|
|
7036
7060
|
description: 'Why the file is missing. platform_withheld means the platform declined to return it and retrying will not help.'
|
|
7061
|
+
mediaProductType:
|
|
7062
|
+
type: string
|
|
7063
|
+
description: 'Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.'
|
|
7064
|
+
isAiGenerated:
|
|
7065
|
+
type: boolean
|
|
7066
|
+
description: 'Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.'
|
|
7067
|
+
isSharedToFeed:
|
|
7068
|
+
type: boolean
|
|
7069
|
+
description: 'Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.'
|
|
7070
|
+
mediaAudioType:
|
|
7071
|
+
type: string
|
|
7072
|
+
description: 'Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.'
|
|
7037
7073
|
AnalyticsListResponse:
|
|
7038
7074
|
type: object
|
|
7039
7075
|
properties:
|
|
@@ -7074,6 +7110,18 @@ components:
|
|
|
7074
7110
|
altText:
|
|
7075
7111
|
type: string
|
|
7076
7112
|
description: Accessibility alt text set on the media, when present.
|
|
7113
|
+
mediaProductType:
|
|
7114
|
+
type: string
|
|
7115
|
+
description: 'Instagram only: the platform media product type (e.g. FEED, REELS, STORY, AD). Absent when the platform did not report it.'
|
|
7116
|
+
isAiGenerated:
|
|
7117
|
+
type: boolean
|
|
7118
|
+
description: 'Instagram only: whether Instagram labeled the media as AI-generated. Absent when the platform did not report it.'
|
|
7119
|
+
isSharedToFeed:
|
|
7120
|
+
type: boolean
|
|
7121
|
+
description: 'Instagram reels only: whether the reel is also shared to the main feed. Absent when the platform did not report it.'
|
|
7122
|
+
mediaAudioType:
|
|
7123
|
+
type: string
|
|
7124
|
+
description: 'Instagram only: audio type of the media (MUSIC or ORIGINAL_SOUND). Absent when the platform did not report it.'
|
|
7077
7125
|
pagination:
|
|
7078
7126
|
$ref: '#/components/schemas/Pagination'
|
|
7079
7127
|
accounts:
|
|
@@ -15063,7 +15111,10 @@ paths:
|
|
|
15063
15111
|
summary: Edit published post
|
|
15064
15112
|
description: |
|
|
15065
15113
|
Edit the text of an already-published post. Supported on X (Twitter), Discord,
|
|
15066
|
-
Facebook,
|
|
15114
|
+
Facebook, Reddit, LinkedIn, Telegram, Pinterest, Google Business Profile, YouTube,
|
|
15115
|
+
and Slack. When a post was published to several accounts on the same platform,
|
|
15116
|
+
pass `accountId` to pick which account's copy to edit (the first entry is edited
|
|
15117
|
+
otherwise). Each platform enforces its own rules:
|
|
15067
15118
|
|
|
15068
15119
|
**X (Twitter)**
|
|
15069
15120
|
- Connected X account must have an active X Premium subscription
|
|
@@ -15088,6 +15139,49 @@ paths:
|
|
|
15088
15139
|
- Body only. Reddit exposes no API to edit a post title, ever
|
|
15089
15140
|
- The post ID is unchanged
|
|
15090
15141
|
|
|
15142
|
+
**LinkedIn**
|
|
15143
|
+
- Text only, no time limit. Media, polls, articles, and reshare targets cannot be
|
|
15144
|
+
changed
|
|
15145
|
+
- Works for member and organization posts published through this API. The post
|
|
15146
|
+
keeps its ID and LinkedIn shows an "edited" marker
|
|
15147
|
+
- Text is limited to 3,000 characters; mentions and hashtags are preserved
|
|
15148
|
+
|
|
15149
|
+
**Telegram**
|
|
15150
|
+
- No time limit; messages published through Zernio are editable indefinitely
|
|
15151
|
+
- Text posts: edits the message text (up to 4096 characters)
|
|
15152
|
+
- Media posts: edits the caption only (up to 1024 characters). The media itself
|
|
15153
|
+
cannot be swapped
|
|
15154
|
+
- For albums, the caption shown on the album (its first message) is edited
|
|
15155
|
+
- The message ID is unchanged
|
|
15156
|
+
|
|
15157
|
+
**Pinterest**
|
|
15158
|
+
- Description only, maximum 800 characters. Media, link, and board cannot be
|
|
15159
|
+
changed, and a pin title derived from the old content's first line at publish
|
|
15160
|
+
stays as-is
|
|
15161
|
+
- Pinterest's pin-update endpoint is currently in closed beta; until the app is
|
|
15162
|
+
allowlisted by Pinterest, edits are rejected with a "beta feature not yet
|
|
15163
|
+
enabled" error
|
|
15164
|
+
- The pin ID is unchanged
|
|
15165
|
+
|
|
15166
|
+
**Google Business Profile**
|
|
15167
|
+
- Post body (summary) text only. Call-to-action, event/offer fields, and media are
|
|
15168
|
+
untouched
|
|
15169
|
+
- No time limit and no edit limit. The post ID is unchanged
|
|
15170
|
+
- The post must still exist on Google: a post deleted from the Business Profile
|
|
15171
|
+
dashboard, or an event/offer post past its end date, returns a 404
|
|
15172
|
+
|
|
15173
|
+
**YouTube**
|
|
15174
|
+
- `content` replaces the video description only. The title is unchanged, even if
|
|
15175
|
+
it was originally derived from the content's first line at publish time
|
|
15176
|
+
- Title, tags, thumbnail, and privacy edits belong to `POST /v1/posts/{postId}/update-metadata`
|
|
15177
|
+
- No time window and no edit cap. The video ID is unchanged
|
|
15178
|
+
|
|
15179
|
+
**Slack**
|
|
15180
|
+
- Text only, up to 4,000 characters. Media cannot be swapped, and media posts
|
|
15181
|
+
whose share message reference never resolved cannot be edited
|
|
15182
|
+
- No time limit unless workspace admins restrict message editing
|
|
15183
|
+
- The message ID is unchanged
|
|
15184
|
+
|
|
15091
15185
|
Media edits are not supported on any platform. The post record in Zernio is updated
|
|
15092
15186
|
with the new content and an edit-history entry.
|
|
15093
15187
|
parameters:
|
|
@@ -15106,10 +15200,15 @@ paths:
|
|
|
15106
15200
|
platform:
|
|
15107
15201
|
type: string
|
|
15108
15202
|
description: The platform to edit the post on.
|
|
15109
|
-
enum: [twitter, discord, facebook, reddit]
|
|
15203
|
+
enum: [twitter, discord, facebook, reddit, linkedin, telegram, pinterest, googlebusiness, youtube, slack]
|
|
15110
15204
|
content:
|
|
15111
15205
|
type: string
|
|
15112
15206
|
description: The new post text content
|
|
15207
|
+
accountId:
|
|
15208
|
+
type: string
|
|
15209
|
+
description: >
|
|
15210
|
+
Which account's copy of the post to edit when the post was published
|
|
15211
|
+
to several accounts on the same platform; defaults to the first.
|
|
15113
15212
|
example:
|
|
15114
15213
|
platform: "facebook"
|
|
15115
15214
|
content: "Updated post text with corrected information"
|
|
@@ -15125,8 +15224,8 @@ paths:
|
|
|
15125
15224
|
id:
|
|
15126
15225
|
type: string
|
|
15127
15226
|
description: >
|
|
15128
|
-
The platform post ID after the edit. X assigns a new ID;
|
|
15129
|
-
|
|
15227
|
+
The platform post ID after the edit. X assigns a new ID; every other
|
|
15228
|
+
platform returns the original ID unchanged.
|
|
15130
15229
|
url: { type: string, format: uri, description: URL of the edited post }
|
|
15131
15230
|
message: { type: string }
|
|
15132
15231
|
example:
|
|
@@ -15138,8 +15237,11 @@ paths:
|
|
|
15138
15237
|
description: >
|
|
15139
15238
|
Invalid request: platform not supported, post not published, edit window expired,
|
|
15140
15239
|
not X Premium, or missing content. Also returned when the platform rejects the edit
|
|
15141
|
-
with a 4xx, which covers a Reddit link post (no editable body)
|
|
15142
|
-
that was not created by this app
|
|
15240
|
+
with a 4xx, which covers a Reddit link post (no editable body), a Facebook post
|
|
15241
|
+
that was not created by this app, content over a platform's length limit
|
|
15242
|
+
(LinkedIn 3,000, Telegram 4096 text / 1024 caption, Pinterest 800, Slack 4,000),
|
|
15243
|
+
a Telegram edit with unchanged content, and a Pinterest app not yet allowlisted
|
|
15244
|
+
for the pin-update beta.
|
|
15143
15245
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
15144
15246
|
'403':
|
|
15145
15247
|
description: Forbidden
|
|
@@ -31645,6 +31747,7 @@ paths:
|
|
|
31645
31747
|
type: object
|
|
31646
31748
|
properties:
|
|
31647
31749
|
id: { type: string }
|
|
31750
|
+
accountId: { type: string, description: WhatsApp social account the event belongs to }
|
|
31648
31751
|
type: { type: string, description: 'Event kind, e.g. template_approved, template_rejected, account_restricted, account_disconnected' }
|
|
31649
31752
|
severity: { type: string, enum: [info, success, warning, critical] }
|
|
31650
31753
|
title: { type: string }
|
data/spec/api/posts_api_spec.rb
CHANGED
|
@@ -72,7 +72,7 @@ describe 'PostsApi' do
|
|
|
72
72
|
|
|
73
73
|
# unit tests for edit_post
|
|
74
74
|
# Edit published post
|
|
75
|
-
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, and
|
|
75
|
+
# Edit the text of an already-published post. Supported on X (Twitter), Discord, Facebook, Reddit, LinkedIn, Telegram, Pinterest, Google Business Profile, YouTube, and Slack. When a post was published to several accounts on the same platform, pass `accountId` to pick which account's copy to edit (the first entry is edited otherwise). Each platform enforces its own rules: **X (Twitter)** - Connected X account must have an active X Premium subscription - Must be within 1 hour of original publish time - Maximum 5 edits per tweet (enforced by X) - Threads cannot be edited, only single tweets - X assigns a NEW post ID on edit, returned as `id` **Discord** - No time limit and no premium requirement - The message ID is unchanged after the edit **Facebook** - Graph only permits editing a post that the same app created, so this works on posts published through Zernio and is rejected for posts created in Meta Business Suite / Composer or by another tool - Media cannot be swapped, only the message text - Reactions, comments, and shares are preserved. The post ID is unchanged **Reddit** - Self-posts only. A link post has no editable body and is rejected before the write - Body only. Reddit exposes no API to edit a post title, ever - The post ID is unchanged **LinkedIn** - Text only, no time limit. Media, polls, articles, and reshare targets cannot be changed - Works for member and organization posts published through this API. The post keeps its ID and LinkedIn shows an \"edited\" marker - Text is limited to 3,000 characters; mentions and hashtags are preserved **Telegram** - No time limit; messages published through Zernio are editable indefinitely - Text posts: edits the message text (up to 4096 characters) - Media posts: edits the caption only (up to 1024 characters). The media itself cannot be swapped - For albums, the caption shown on the album (its first message) is edited - The message ID is unchanged **Pinterest** - Description only, maximum 800 characters. Media, link, and board cannot be changed, and a pin title derived from the old content's first line at publish stays as-is - Pinterest's pin-update endpoint is currently in closed beta; until the app is allowlisted by Pinterest, edits are rejected with a \"beta feature not yet enabled\" error - The pin ID is unchanged **Google Business Profile** - Post body (summary) text only. Call-to-action, event/offer fields, and media are untouched - No time limit and no edit limit. The post ID is unchanged - The post must still exist on Google: a post deleted from the Business Profile dashboard, or an event/offer post past its end date, returns a 404 **YouTube** - `content` replaces the video description only. The title is unchanged, even if it was originally derived from the content's first line at publish time - Title, tags, thumbnail, and privacy edits belong to `POST /v1/posts/{postId}/update-metadata` - No time window and no edit cap. The video ID is unchanged **Slack** - Text only, up to 4,000 characters. Media cannot be swapped, and media posts whose share message reference never resolved cannot be edited - No time limit unless workspace admins restrict message editing - The message ID is unchanged Media edits are not supported on any platform. The post record in Zernio is updated with the new content and an edit-history entry.
|
|
76
76
|
# @param post_id
|
|
77
77
|
# @param edit_post_request
|
|
78
78
|
# @param [Hash] opts the optional parameters
|
|
@@ -121,4 +121,28 @@ describe Zernio::AnalyticsListResponsePostsInner do
|
|
|
121
121
|
end
|
|
122
122
|
end
|
|
123
123
|
|
|
124
|
+
describe 'test attribute "media_product_type"' do
|
|
125
|
+
it 'should work' do
|
|
126
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
127
|
+
end
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
describe 'test attribute "is_ai_generated"' do
|
|
131
|
+
it 'should work' do
|
|
132
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
describe 'test attribute "is_shared_to_feed"' do
|
|
137
|
+
it 'should work' do
|
|
138
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
139
|
+
end
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
describe 'test attribute "media_audio_type"' do
|
|
143
|
+
it 'should work' do
|
|
144
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
124
148
|
end
|
|
@@ -135,4 +135,28 @@ describe Zernio::AnalyticsSinglePostResponse do
|
|
|
135
135
|
end
|
|
136
136
|
end
|
|
137
137
|
|
|
138
|
+
describe 'test attribute "media_product_type"' do
|
|
139
|
+
it 'should work' do
|
|
140
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
describe 'test attribute "is_ai_generated"' do
|
|
145
|
+
it 'should work' do
|
|
146
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
describe 'test attribute "is_shared_to_feed"' do
|
|
151
|
+
it 'should work' do
|
|
152
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
153
|
+
end
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
describe 'test attribute "media_audio_type"' do
|
|
157
|
+
it 'should work' do
|
|
158
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
|
|
138
162
|
end
|
|
@@ -30,7 +30,7 @@ describe Zernio::EditPostRequest do
|
|
|
30
30
|
describe 'test attribute "platform"' do
|
|
31
31
|
it 'should work' do
|
|
32
32
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
33
|
-
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit"])
|
|
33
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["twitter", "discord", "facebook", "reddit", "linkedin", "telegram", "pinterest", "googlebusiness", "youtube", "slack"])
|
|
34
34
|
# validator.allowable_values.each do |value|
|
|
35
35
|
# expect { instance.platform = value }.not_to raise_error
|
|
36
36
|
# end
|
|
@@ -43,4 +43,10 @@ describe Zernio::EditPostRequest do
|
|
|
43
43
|
end
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
+
describe 'test attribute "account_id"' do
|
|
47
|
+
it 'should work' do
|
|
48
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
46
52
|
end
|
|
@@ -75,6 +75,30 @@ describe Zernio::ExternalPostSummary do
|
|
|
75
75
|
end
|
|
76
76
|
end
|
|
77
77
|
|
|
78
|
+
describe 'test attribute "media_product_type"' do
|
|
79
|
+
it 'should work' do
|
|
80
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
describe 'test attribute "is_ai_generated"' do
|
|
85
|
+
it 'should work' do
|
|
86
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
describe 'test attribute "is_shared_to_feed"' do
|
|
91
|
+
it 'should work' do
|
|
92
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
describe 'test attribute "media_audio_type"' do
|
|
97
|
+
it 'should work' do
|
|
98
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
78
102
|
describe 'test attribute "analytics"' do
|
|
79
103
|
it 'should work' do
|
|
80
104
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -81,6 +81,30 @@ describe Zernio::ExternalPostWebhookPost do
|
|
|
81
81
|
end
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
+
describe 'test attribute "media_product_type"' do
|
|
85
|
+
it 'should work' do
|
|
86
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
describe 'test attribute "is_ai_generated"' do
|
|
91
|
+
it 'should work' do
|
|
92
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
describe 'test attribute "is_shared_to_feed"' do
|
|
97
|
+
it 'should work' do
|
|
98
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
describe 'test attribute "media_audio_type"' do
|
|
103
|
+
it 'should work' do
|
|
104
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
84
108
|
describe 'test attribute "source"' do
|
|
85
109
|
it 'should work' do
|
|
86
110
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -33,6 +33,12 @@ describe Zernio::ListWhatsAppAccountEvents200ResponseEventsInner do
|
|
|
33
33
|
end
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
+
describe 'test attribute "account_id"' do
|
|
37
|
+
it 'should work' do
|
|
38
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
36
42
|
describe 'test attribute "type"' do
|
|
37
43
|
it 'should work' do
|
|
38
44
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
Binary file
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: late-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.722
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- OpenAPI-Generator
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-08-
|
|
11
|
+
date: 2026-08-22 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: typhoeus
|
|
@@ -5318,7 +5318,7 @@ files:
|
|
|
5318
5318
|
- spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
|
|
5319
5319
|
- spec/models/you_tube_video_retention_response_spec.rb
|
|
5320
5320
|
- spec/spec_helper.rb
|
|
5321
|
-
- zernio-sdk-0.0.
|
|
5321
|
+
- zernio-sdk-0.0.722.gem
|
|
5322
5322
|
- zernio-sdk.gemspec
|
|
5323
5323
|
homepage: https://openapi-generator.tech
|
|
5324
5324
|
licenses:
|
data/zernio-sdk-0.0.720.gem
DELETED
|
Binary file
|