post-for-me 0.1.0.pre.alpha.10 → 0.1.0.pre.alpha.12
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/CHANGELOG.md +42 -0
- data/README.md +10 -1
- data/lib/post_for_me/client.rb +4 -0
- data/lib/post_for_me/internal/transport/pooled_net_requester.rb +12 -10
- data/lib/post_for_me/internal/util.rb +7 -2
- data/lib/post_for_me/models/create_social_post.rb +158 -8
- data/lib/post_for_me/models/platform_post.rb +843 -0
- data/lib/post_for_me/models/social_account_create_auth_url_params.rb +245 -9
- data/lib/post_for_me/models/social_account_feed_list_params.rb +81 -0
- data/lib/post_for_me/models/social_account_feed_list_response.rb +58 -0
- data/lib/post_for_me/models/social_post.rb +155 -8
- data/lib/post_for_me/models/social_post_list_params.rb +9 -1
- data/lib/post_for_me/models/social_post_result_list_params.rb +10 -1
- data/lib/post_for_me/models/youtube_configuration_dto.rb +31 -1
- data/lib/post_for_me/models.rb +4 -0
- data/lib/post_for_me/resources/social_account_feeds.rb +51 -0
- data/lib/post_for_me/resources/social_accounts.rb +8 -1
- data/lib/post_for_me/resources/social_post_results.rb +3 -1
- data/lib/post_for_me/resources/social_posts.rb +3 -1
- data/lib/post_for_me/version.rb +1 -1
- data/lib/post_for_me.rb +5 -0
- data/manifest.yaml +1 -0
- data/rbi/post_for_me/client.rbi +3 -0
- data/rbi/post_for_me/models/create_social_post.rbi +328 -8
- data/rbi/post_for_me/models/platform_post.rbi +1287 -0
- data/rbi/post_for_me/models/social_account_create_auth_url_params.rbi +545 -15
- data/rbi/post_for_me/models/social_account_feed_list_params.rbi +157 -0
- data/rbi/post_for_me/models/social_account_feed_list_response.rbi +110 -0
- data/rbi/post_for_me/models/social_post.rbi +328 -8
- data/rbi/post_for_me/models/social_post_list_params.rbi +11 -0
- data/rbi/post_for_me/models/social_post_result_list_params.rbi +13 -0
- data/rbi/post_for_me/models/youtube_configuration_dto.rbi +63 -0
- data/rbi/post_for_me/models.rbi +4 -0
- data/rbi/post_for_me/resources/social_account_feeds.rbi +51 -0
- data/rbi/post_for_me/resources/social_accounts.rbi +13 -0
- data/rbi/post_for_me/resources/social_post_results.rbi +4 -0
- data/rbi/post_for_me/resources/social_posts.rbi +3 -0
- data/sig/post_for_me/client.rbs +2 -0
- data/sig/post_for_me/models/create_social_post.rbs +120 -8
- data/sig/post_for_me/models/platform_post.rbs +660 -0
- data/sig/post_for_me/models/social_account_create_auth_url_params.rbs +193 -10
- data/sig/post_for_me/models/social_account_feed_list_params.rbs +75 -0
- data/sig/post_for_me/models/social_account_feed_list_response.rbs +54 -0
- data/sig/post_for_me/models/social_post.rbs +120 -8
- data/sig/post_for_me/models/social_post_list_params.rbs +7 -0
- data/sig/post_for_me/models/social_post_result_list_params.rbs +8 -1
- data/sig/post_for_me/models/youtube_configuration_dto.rbs +22 -0
- data/sig/post_for_me/models.rbs +4 -0
- data/sig/post_for_me/resources/social_account_feeds.rbs +18 -0
- data/sig/post_for_me/resources/social_accounts.rbs +2 -0
- data/sig/post_for_me/resources/social_post_results.rbs +1 -0
- data/sig/post_for_me/resources/social_posts.rbs +1 -0
- metadata +28 -2
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module PostForMe
|
|
4
|
+
module Models
|
|
5
|
+
class SocialAccountFeedListParams < PostForMe::Internal::Type::BaseModel
|
|
6
|
+
extend PostForMe::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include PostForMe::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
PostForMe::SocialAccountFeedListParams,
|
|
13
|
+
PostForMe::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Cursor identifying next page of results
|
|
18
|
+
sig { returns(T.nilable(String)) }
|
|
19
|
+
attr_reader :cursor
|
|
20
|
+
|
|
21
|
+
sig { params(cursor: String).void }
|
|
22
|
+
attr_writer :cursor
|
|
23
|
+
|
|
24
|
+
# Expand additional data in the response. Currently supports: "metrics" to include
|
|
25
|
+
# post analytics data.
|
|
26
|
+
sig do
|
|
27
|
+
returns(
|
|
28
|
+
T.nilable(
|
|
29
|
+
T::Array[PostForMe::SocialAccountFeedListParams::Expand::OrSymbol]
|
|
30
|
+
)
|
|
31
|
+
)
|
|
32
|
+
end
|
|
33
|
+
attr_reader :expand
|
|
34
|
+
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
expand:
|
|
38
|
+
T::Array[PostForMe::SocialAccountFeedListParams::Expand::OrSymbol]
|
|
39
|
+
).void
|
|
40
|
+
end
|
|
41
|
+
attr_writer :expand
|
|
42
|
+
|
|
43
|
+
# Filter by Post for Me Social Postexternal ID. Multiple values imply OR logic
|
|
44
|
+
# (e.g., ?external_post_id=xxxxxx&external_post_id=yyyyyy).
|
|
45
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
46
|
+
attr_reader :external_post_id
|
|
47
|
+
|
|
48
|
+
sig { params(external_post_id: T::Array[String]).void }
|
|
49
|
+
attr_writer :external_post_id
|
|
50
|
+
|
|
51
|
+
# Number of items to return; Note: some platforms will have different max limits,
|
|
52
|
+
# in the case the provided limit is over the platform's limit we will return the
|
|
53
|
+
# max allowed by the platform.
|
|
54
|
+
sig { returns(T.nilable(Float)) }
|
|
55
|
+
attr_reader :limit
|
|
56
|
+
|
|
57
|
+
sig { params(limit: Float).void }
|
|
58
|
+
attr_writer :limit
|
|
59
|
+
|
|
60
|
+
# Filter by the platform's id(s). Multiple values imply OR logic (e.g.,
|
|
61
|
+
# ?social_post_id=spr_xxxxxx&social_post_id=spr_yyyyyy).
|
|
62
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
63
|
+
attr_reader :platform_post_id
|
|
64
|
+
|
|
65
|
+
sig { params(platform_post_id: T::Array[String]).void }
|
|
66
|
+
attr_writer :platform_post_id
|
|
67
|
+
|
|
68
|
+
# Filter by Post for Me Social Post id(s). Multiple values imply OR logic (e.g.,
|
|
69
|
+
# ?social_post_id=sp_xxxxxx&social_post_id=sp_yyyyyy).
|
|
70
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
71
|
+
attr_reader :social_post_id
|
|
72
|
+
|
|
73
|
+
sig { params(social_post_id: T::Array[String]).void }
|
|
74
|
+
attr_writer :social_post_id
|
|
75
|
+
|
|
76
|
+
sig do
|
|
77
|
+
params(
|
|
78
|
+
cursor: String,
|
|
79
|
+
expand:
|
|
80
|
+
T::Array[PostForMe::SocialAccountFeedListParams::Expand::OrSymbol],
|
|
81
|
+
external_post_id: T::Array[String],
|
|
82
|
+
limit: Float,
|
|
83
|
+
platform_post_id: T::Array[String],
|
|
84
|
+
social_post_id: T::Array[String],
|
|
85
|
+
request_options: PostForMe::RequestOptions::OrHash
|
|
86
|
+
).returns(T.attached_class)
|
|
87
|
+
end
|
|
88
|
+
def self.new(
|
|
89
|
+
# Cursor identifying next page of results
|
|
90
|
+
cursor: nil,
|
|
91
|
+
# Expand additional data in the response. Currently supports: "metrics" to include
|
|
92
|
+
# post analytics data.
|
|
93
|
+
expand: nil,
|
|
94
|
+
# Filter by Post for Me Social Postexternal ID. Multiple values imply OR logic
|
|
95
|
+
# (e.g., ?external_post_id=xxxxxx&external_post_id=yyyyyy).
|
|
96
|
+
external_post_id: nil,
|
|
97
|
+
# Number of items to return; Note: some platforms will have different max limits,
|
|
98
|
+
# in the case the provided limit is over the platform's limit we will return the
|
|
99
|
+
# max allowed by the platform.
|
|
100
|
+
limit: nil,
|
|
101
|
+
# Filter by the platform's id(s). Multiple values imply OR logic (e.g.,
|
|
102
|
+
# ?social_post_id=spr_xxxxxx&social_post_id=spr_yyyyyy).
|
|
103
|
+
platform_post_id: nil,
|
|
104
|
+
# Filter by Post for Me Social Post id(s). Multiple values imply OR logic (e.g.,
|
|
105
|
+
# ?social_post_id=sp_xxxxxx&social_post_id=sp_yyyyyy).
|
|
106
|
+
social_post_id: nil,
|
|
107
|
+
request_options: {}
|
|
108
|
+
)
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
sig do
|
|
112
|
+
override.returns(
|
|
113
|
+
{
|
|
114
|
+
cursor: String,
|
|
115
|
+
expand:
|
|
116
|
+
T::Array[
|
|
117
|
+
PostForMe::SocialAccountFeedListParams::Expand::OrSymbol
|
|
118
|
+
],
|
|
119
|
+
external_post_id: T::Array[String],
|
|
120
|
+
limit: Float,
|
|
121
|
+
platform_post_id: T::Array[String],
|
|
122
|
+
social_post_id: T::Array[String],
|
|
123
|
+
request_options: PostForMe::RequestOptions
|
|
124
|
+
}
|
|
125
|
+
)
|
|
126
|
+
end
|
|
127
|
+
def to_hash
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
module Expand
|
|
131
|
+
extend PostForMe::Internal::Type::Enum
|
|
132
|
+
|
|
133
|
+
TaggedSymbol =
|
|
134
|
+
T.type_alias do
|
|
135
|
+
T.all(Symbol, PostForMe::SocialAccountFeedListParams::Expand)
|
|
136
|
+
end
|
|
137
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
138
|
+
|
|
139
|
+
METRICS =
|
|
140
|
+
T.let(
|
|
141
|
+
:metrics,
|
|
142
|
+
PostForMe::SocialAccountFeedListParams::Expand::TaggedSymbol
|
|
143
|
+
)
|
|
144
|
+
|
|
145
|
+
sig do
|
|
146
|
+
override.returns(
|
|
147
|
+
T::Array[
|
|
148
|
+
PostForMe::SocialAccountFeedListParams::Expand::TaggedSymbol
|
|
149
|
+
]
|
|
150
|
+
)
|
|
151
|
+
end
|
|
152
|
+
def self.values
|
|
153
|
+
end
|
|
154
|
+
end
|
|
155
|
+
end
|
|
156
|
+
end
|
|
157
|
+
end
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module PostForMe
|
|
4
|
+
module Models
|
|
5
|
+
class SocialAccountFeedListResponse < PostForMe::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
PostForMe::Models::SocialAccountFeedListResponse,
|
|
10
|
+
PostForMe::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(T::Array[PostForMe::PlatformPost]) }
|
|
15
|
+
attr_accessor :data
|
|
16
|
+
|
|
17
|
+
sig { returns(PostForMe::Models::SocialAccountFeedListResponse::Meta) }
|
|
18
|
+
attr_reader :meta
|
|
19
|
+
|
|
20
|
+
sig do
|
|
21
|
+
params(
|
|
22
|
+
meta: PostForMe::Models::SocialAccountFeedListResponse::Meta::OrHash
|
|
23
|
+
).void
|
|
24
|
+
end
|
|
25
|
+
attr_writer :meta
|
|
26
|
+
|
|
27
|
+
sig do
|
|
28
|
+
params(
|
|
29
|
+
data: T::Array[PostForMe::PlatformPost::OrHash],
|
|
30
|
+
meta: PostForMe::Models::SocialAccountFeedListResponse::Meta::OrHash
|
|
31
|
+
).returns(T.attached_class)
|
|
32
|
+
end
|
|
33
|
+
def self.new(data:, meta:)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
sig do
|
|
37
|
+
override.returns(
|
|
38
|
+
{
|
|
39
|
+
data: T::Array[PostForMe::PlatformPost],
|
|
40
|
+
meta: PostForMe::Models::SocialAccountFeedListResponse::Meta
|
|
41
|
+
}
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
def to_hash
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
class Meta < PostForMe::Internal::Type::BaseModel
|
|
48
|
+
OrHash =
|
|
49
|
+
T.type_alias do
|
|
50
|
+
T.any(
|
|
51
|
+
PostForMe::Models::SocialAccountFeedListResponse::Meta,
|
|
52
|
+
PostForMe::Internal::AnyHash
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# Id representing the next page of items
|
|
57
|
+
sig { returns(String) }
|
|
58
|
+
attr_accessor :cursor
|
|
59
|
+
|
|
60
|
+
# Maximum number of items returned.
|
|
61
|
+
sig { returns(Float) }
|
|
62
|
+
attr_accessor :limit
|
|
63
|
+
|
|
64
|
+
# URL to the next page of results, or null if none.
|
|
65
|
+
sig { returns(T.nilable(String)) }
|
|
66
|
+
attr_accessor :next_
|
|
67
|
+
|
|
68
|
+
# Indicates if there are more results or not
|
|
69
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
70
|
+
attr_reader :has_more
|
|
71
|
+
|
|
72
|
+
sig { params(has_more: T::Boolean).void }
|
|
73
|
+
attr_writer :has_more
|
|
74
|
+
|
|
75
|
+
sig do
|
|
76
|
+
params(
|
|
77
|
+
cursor: String,
|
|
78
|
+
limit: Float,
|
|
79
|
+
next_: T.nilable(String),
|
|
80
|
+
has_more: T::Boolean
|
|
81
|
+
).returns(T.attached_class)
|
|
82
|
+
end
|
|
83
|
+
def self.new(
|
|
84
|
+
# Id representing the next page of items
|
|
85
|
+
cursor:,
|
|
86
|
+
# Maximum number of items returned.
|
|
87
|
+
limit:,
|
|
88
|
+
# URL to the next page of results, or null if none.
|
|
89
|
+
next_:,
|
|
90
|
+
# Indicates if there are more results or not
|
|
91
|
+
has_more: nil
|
|
92
|
+
)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
sig do
|
|
96
|
+
override.returns(
|
|
97
|
+
{
|
|
98
|
+
cursor: String,
|
|
99
|
+
limit: Float,
|
|
100
|
+
next_: T.nilable(String),
|
|
101
|
+
has_more: T::Boolean
|
|
102
|
+
}
|
|
103
|
+
)
|
|
104
|
+
end
|
|
105
|
+
def to_hash
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|
|
@@ -256,8 +256,20 @@ module PostForMe
|
|
|
256
256
|
sig { returns(T.nilable(String)) }
|
|
257
257
|
attr_accessor :location
|
|
258
258
|
|
|
259
|
+
# If true will notify YouTube the video is intended for kids, defaults to false
|
|
260
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
261
|
+
attr_accessor :made_for_kids
|
|
262
|
+
|
|
259
263
|
# Overrides the `media` from the post
|
|
260
|
-
sig
|
|
264
|
+
sig do
|
|
265
|
+
returns(
|
|
266
|
+
T.nilable(
|
|
267
|
+
T::Array[
|
|
268
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media
|
|
269
|
+
]
|
|
270
|
+
)
|
|
271
|
+
)
|
|
272
|
+
end
|
|
261
273
|
attr_accessor :media
|
|
262
274
|
|
|
263
275
|
# Post placement for Facebook/Instagram/Threads
|
|
@@ -288,8 +300,15 @@ module PostForMe
|
|
|
288
300
|
end
|
|
289
301
|
attr_writer :poll
|
|
290
302
|
|
|
291
|
-
# Sets the privacy status for TikTok (private, public)
|
|
292
|
-
|
|
303
|
+
# Sets the privacy status for TikTok (private, public), or YouTube (private,
|
|
304
|
+
# public, unlisted)
|
|
305
|
+
sig do
|
|
306
|
+
returns(
|
|
307
|
+
T.nilable(
|
|
308
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
309
|
+
)
|
|
310
|
+
)
|
|
311
|
+
end
|
|
293
312
|
attr_accessor :privacy_status
|
|
294
313
|
|
|
295
314
|
# Id of the tweet you want to quote
|
|
@@ -334,14 +353,23 @@ module PostForMe
|
|
|
334
353
|
is_draft: T.nilable(T::Boolean),
|
|
335
354
|
link: T.nilable(String),
|
|
336
355
|
location: T.nilable(String),
|
|
337
|
-
|
|
356
|
+
made_for_kids: T.nilable(T::Boolean),
|
|
357
|
+
media:
|
|
358
|
+
T.nilable(
|
|
359
|
+
T::Array[
|
|
360
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::OrHash
|
|
361
|
+
]
|
|
362
|
+
),
|
|
338
363
|
placement:
|
|
339
364
|
T.nilable(
|
|
340
365
|
PostForMe::SocialPost::AccountConfiguration::Configuration::Placement::OrSymbol
|
|
341
366
|
),
|
|
342
367
|
poll:
|
|
343
368
|
PostForMe::SocialPost::AccountConfiguration::Configuration::Poll::OrHash,
|
|
344
|
-
privacy_status:
|
|
369
|
+
privacy_status:
|
|
370
|
+
T.nilable(
|
|
371
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::OrSymbol
|
|
372
|
+
),
|
|
345
373
|
quote_tweet_id: String,
|
|
346
374
|
reply_settings:
|
|
347
375
|
T.nilable(
|
|
@@ -383,13 +411,16 @@ module PostForMe
|
|
|
383
411
|
# Page id with a location that you want to tag the image or video with (Instagram
|
|
384
412
|
# and Facebook)
|
|
385
413
|
location: nil,
|
|
414
|
+
# If true will notify YouTube the video is intended for kids, defaults to false
|
|
415
|
+
made_for_kids: nil,
|
|
386
416
|
# Overrides the `media` from the post
|
|
387
417
|
media: nil,
|
|
388
418
|
# Post placement for Facebook/Instagram/Threads
|
|
389
419
|
placement: nil,
|
|
390
420
|
# Poll options for the twitter
|
|
391
421
|
poll: nil,
|
|
392
|
-
# Sets the privacy status for TikTok (private, public)
|
|
422
|
+
# Sets the privacy status for TikTok (private, public), or YouTube (private,
|
|
423
|
+
# public, unlisted)
|
|
393
424
|
privacy_status: nil,
|
|
394
425
|
# Id of the tweet you want to quote
|
|
395
426
|
quote_tweet_id: nil,
|
|
@@ -419,14 +450,23 @@ module PostForMe
|
|
|
419
450
|
is_draft: T.nilable(T::Boolean),
|
|
420
451
|
link: T.nilable(String),
|
|
421
452
|
location: T.nilable(String),
|
|
422
|
-
|
|
453
|
+
made_for_kids: T.nilable(T::Boolean),
|
|
454
|
+
media:
|
|
455
|
+
T.nilable(
|
|
456
|
+
T::Array[
|
|
457
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media
|
|
458
|
+
]
|
|
459
|
+
),
|
|
423
460
|
placement:
|
|
424
461
|
T.nilable(
|
|
425
462
|
PostForMe::SocialPost::AccountConfiguration::Configuration::Placement::TaggedSymbol
|
|
426
463
|
),
|
|
427
464
|
poll:
|
|
428
465
|
PostForMe::SocialPost::AccountConfiguration::Configuration::Poll,
|
|
429
|
-
privacy_status:
|
|
466
|
+
privacy_status:
|
|
467
|
+
T.nilable(
|
|
468
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
469
|
+
),
|
|
430
470
|
quote_tweet_id: String,
|
|
431
471
|
reply_settings:
|
|
432
472
|
T.nilable(
|
|
@@ -440,6 +480,245 @@ module PostForMe
|
|
|
440
480
|
def to_hash
|
|
441
481
|
end
|
|
442
482
|
|
|
483
|
+
class Media < PostForMe::Internal::Type::BaseModel
|
|
484
|
+
OrHash =
|
|
485
|
+
T.type_alias do
|
|
486
|
+
T.any(
|
|
487
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media,
|
|
488
|
+
PostForMe::Internal::AnyHash
|
|
489
|
+
)
|
|
490
|
+
end
|
|
491
|
+
|
|
492
|
+
# Public URL of the media
|
|
493
|
+
sig { returns(String) }
|
|
494
|
+
attr_accessor :url
|
|
495
|
+
|
|
496
|
+
# List of tags to attach to the media
|
|
497
|
+
sig do
|
|
498
|
+
returns(
|
|
499
|
+
T.nilable(
|
|
500
|
+
T::Array[
|
|
501
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag
|
|
502
|
+
]
|
|
503
|
+
)
|
|
504
|
+
)
|
|
505
|
+
end
|
|
506
|
+
attr_accessor :tags
|
|
507
|
+
|
|
508
|
+
# Timestamp in milliseconds of frame to use as thumbnail for the media
|
|
509
|
+
sig { returns(T.nilable(T.anything)) }
|
|
510
|
+
attr_accessor :thumbnail_timestamp_ms
|
|
511
|
+
|
|
512
|
+
# Public URL of the thumbnail for the media
|
|
513
|
+
sig { returns(T.nilable(T.anything)) }
|
|
514
|
+
attr_accessor :thumbnail_url
|
|
515
|
+
|
|
516
|
+
sig do
|
|
517
|
+
params(
|
|
518
|
+
url: String,
|
|
519
|
+
tags:
|
|
520
|
+
T.nilable(
|
|
521
|
+
T::Array[
|
|
522
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::OrHash
|
|
523
|
+
]
|
|
524
|
+
),
|
|
525
|
+
thumbnail_timestamp_ms: T.nilable(T.anything),
|
|
526
|
+
thumbnail_url: T.nilable(T.anything)
|
|
527
|
+
).returns(T.attached_class)
|
|
528
|
+
end
|
|
529
|
+
def self.new(
|
|
530
|
+
# Public URL of the media
|
|
531
|
+
url:,
|
|
532
|
+
# List of tags to attach to the media
|
|
533
|
+
tags: nil,
|
|
534
|
+
# Timestamp in milliseconds of frame to use as thumbnail for the media
|
|
535
|
+
thumbnail_timestamp_ms: nil,
|
|
536
|
+
# Public URL of the thumbnail for the media
|
|
537
|
+
thumbnail_url: nil
|
|
538
|
+
)
|
|
539
|
+
end
|
|
540
|
+
|
|
541
|
+
sig do
|
|
542
|
+
override.returns(
|
|
543
|
+
{
|
|
544
|
+
url: String,
|
|
545
|
+
tags:
|
|
546
|
+
T.nilable(
|
|
547
|
+
T::Array[
|
|
548
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag
|
|
549
|
+
]
|
|
550
|
+
),
|
|
551
|
+
thumbnail_timestamp_ms: T.nilable(T.anything),
|
|
552
|
+
thumbnail_url: T.nilable(T.anything)
|
|
553
|
+
}
|
|
554
|
+
)
|
|
555
|
+
end
|
|
556
|
+
def to_hash
|
|
557
|
+
end
|
|
558
|
+
|
|
559
|
+
class Tag < PostForMe::Internal::Type::BaseModel
|
|
560
|
+
OrHash =
|
|
561
|
+
T.type_alias do
|
|
562
|
+
T.any(
|
|
563
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag,
|
|
564
|
+
PostForMe::Internal::AnyHash
|
|
565
|
+
)
|
|
566
|
+
end
|
|
567
|
+
|
|
568
|
+
# Facebook User ID, Instagram Username or Instagram product id to tag
|
|
569
|
+
sig { returns(String) }
|
|
570
|
+
attr_accessor :id
|
|
571
|
+
|
|
572
|
+
# The platform for the tags
|
|
573
|
+
sig do
|
|
574
|
+
returns(
|
|
575
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
|
|
576
|
+
)
|
|
577
|
+
end
|
|
578
|
+
attr_accessor :platform
|
|
579
|
+
|
|
580
|
+
# The type of tag, user to tag accounts, product to tag products (only supported
|
|
581
|
+
# for instagram)
|
|
582
|
+
sig do
|
|
583
|
+
returns(
|
|
584
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
|
|
585
|
+
)
|
|
586
|
+
end
|
|
587
|
+
attr_accessor :type
|
|
588
|
+
|
|
589
|
+
# Percentage distance from left edge of the image, Not required for videos or
|
|
590
|
+
# stories
|
|
591
|
+
sig { returns(T.nilable(Float)) }
|
|
592
|
+
attr_reader :x
|
|
593
|
+
|
|
594
|
+
sig { params(x: Float).void }
|
|
595
|
+
attr_writer :x
|
|
596
|
+
|
|
597
|
+
# Percentage distance from top edge of the image, Not required for videos or
|
|
598
|
+
# stories
|
|
599
|
+
sig { returns(T.nilable(Float)) }
|
|
600
|
+
attr_reader :y_
|
|
601
|
+
|
|
602
|
+
sig { params(y_: Float).void }
|
|
603
|
+
attr_writer :y_
|
|
604
|
+
|
|
605
|
+
sig do
|
|
606
|
+
params(
|
|
607
|
+
id: String,
|
|
608
|
+
platform:
|
|
609
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::OrSymbol,
|
|
610
|
+
type:
|
|
611
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::OrSymbol,
|
|
612
|
+
x: Float,
|
|
613
|
+
y_: Float
|
|
614
|
+
).returns(T.attached_class)
|
|
615
|
+
end
|
|
616
|
+
def self.new(
|
|
617
|
+
# Facebook User ID, Instagram Username or Instagram product id to tag
|
|
618
|
+
id:,
|
|
619
|
+
# The platform for the tags
|
|
620
|
+
platform:,
|
|
621
|
+
# The type of tag, user to tag accounts, product to tag products (only supported
|
|
622
|
+
# for instagram)
|
|
623
|
+
type:,
|
|
624
|
+
# Percentage distance from left edge of the image, Not required for videos or
|
|
625
|
+
# stories
|
|
626
|
+
x: nil,
|
|
627
|
+
# Percentage distance from top edge of the image, Not required for videos or
|
|
628
|
+
# stories
|
|
629
|
+
y_: nil
|
|
630
|
+
)
|
|
631
|
+
end
|
|
632
|
+
|
|
633
|
+
sig do
|
|
634
|
+
override.returns(
|
|
635
|
+
{
|
|
636
|
+
id: String,
|
|
637
|
+
platform:
|
|
638
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol,
|
|
639
|
+
type:
|
|
640
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol,
|
|
641
|
+
x: Float,
|
|
642
|
+
y_: Float
|
|
643
|
+
}
|
|
644
|
+
)
|
|
645
|
+
end
|
|
646
|
+
def to_hash
|
|
647
|
+
end
|
|
648
|
+
|
|
649
|
+
# The platform for the tags
|
|
650
|
+
module Platform
|
|
651
|
+
extend PostForMe::Internal::Type::Enum
|
|
652
|
+
|
|
653
|
+
TaggedSymbol =
|
|
654
|
+
T.type_alias do
|
|
655
|
+
T.all(
|
|
656
|
+
Symbol,
|
|
657
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform
|
|
658
|
+
)
|
|
659
|
+
end
|
|
660
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
661
|
+
|
|
662
|
+
FACEBOOK =
|
|
663
|
+
T.let(
|
|
664
|
+
:facebook,
|
|
665
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
|
|
666
|
+
)
|
|
667
|
+
INSTAGRAM =
|
|
668
|
+
T.let(
|
|
669
|
+
:instagram,
|
|
670
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
|
|
671
|
+
)
|
|
672
|
+
|
|
673
|
+
sig do
|
|
674
|
+
override.returns(
|
|
675
|
+
T::Array[
|
|
676
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
|
|
677
|
+
]
|
|
678
|
+
)
|
|
679
|
+
end
|
|
680
|
+
def self.values
|
|
681
|
+
end
|
|
682
|
+
end
|
|
683
|
+
|
|
684
|
+
# The type of tag, user to tag accounts, product to tag products (only supported
|
|
685
|
+
# for instagram)
|
|
686
|
+
module Type
|
|
687
|
+
extend PostForMe::Internal::Type::Enum
|
|
688
|
+
|
|
689
|
+
TaggedSymbol =
|
|
690
|
+
T.type_alias do
|
|
691
|
+
T.all(
|
|
692
|
+
Symbol,
|
|
693
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type
|
|
694
|
+
)
|
|
695
|
+
end
|
|
696
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
697
|
+
|
|
698
|
+
USER =
|
|
699
|
+
T.let(
|
|
700
|
+
:user,
|
|
701
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
|
|
702
|
+
)
|
|
703
|
+
PRODUCT =
|
|
704
|
+
T.let(
|
|
705
|
+
:product,
|
|
706
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
|
|
707
|
+
)
|
|
708
|
+
|
|
709
|
+
sig do
|
|
710
|
+
override.returns(
|
|
711
|
+
T::Array[
|
|
712
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
|
|
713
|
+
]
|
|
714
|
+
)
|
|
715
|
+
end
|
|
716
|
+
def self.values
|
|
717
|
+
end
|
|
718
|
+
end
|
|
719
|
+
end
|
|
720
|
+
end
|
|
721
|
+
|
|
443
722
|
# Post placement for Facebook/Instagram/Threads
|
|
444
723
|
module Placement
|
|
445
724
|
extend PostForMe::Internal::Type::Enum
|
|
@@ -593,6 +872,47 @@ module PostForMe
|
|
|
593
872
|
end
|
|
594
873
|
end
|
|
595
874
|
|
|
875
|
+
# Sets the privacy status for TikTok (private, public), or YouTube (private,
|
|
876
|
+
# public, unlisted)
|
|
877
|
+
module PrivacyStatus
|
|
878
|
+
extend PostForMe::Internal::Type::Enum
|
|
879
|
+
|
|
880
|
+
TaggedSymbol =
|
|
881
|
+
T.type_alias do
|
|
882
|
+
T.all(
|
|
883
|
+
Symbol,
|
|
884
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus
|
|
885
|
+
)
|
|
886
|
+
end
|
|
887
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
888
|
+
|
|
889
|
+
PUBLIC =
|
|
890
|
+
T.let(
|
|
891
|
+
:public,
|
|
892
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
893
|
+
)
|
|
894
|
+
PRIVATE =
|
|
895
|
+
T.let(
|
|
896
|
+
:private,
|
|
897
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
898
|
+
)
|
|
899
|
+
UNLISTED =
|
|
900
|
+
T.let(
|
|
901
|
+
:unlisted,
|
|
902
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
903
|
+
)
|
|
904
|
+
|
|
905
|
+
sig do
|
|
906
|
+
override.returns(
|
|
907
|
+
T::Array[
|
|
908
|
+
PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
|
|
909
|
+
]
|
|
910
|
+
)
|
|
911
|
+
end
|
|
912
|
+
def self.values
|
|
913
|
+
end
|
|
914
|
+
end
|
|
915
|
+
|
|
596
916
|
# Who can reply to the tweet
|
|
597
917
|
module ReplySettings
|
|
598
918
|
extend PostForMe::Internal::Type::Enum
|
|
@@ -50,6 +50,13 @@ module PostForMe
|
|
|
50
50
|
end
|
|
51
51
|
attr_writer :platform
|
|
52
52
|
|
|
53
|
+
# Filter by social account ID. Multiple values imply OR logic.
|
|
54
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
55
|
+
attr_reader :social_account_id
|
|
56
|
+
|
|
57
|
+
sig { params(social_account_id: T::Array[String]).void }
|
|
58
|
+
attr_writer :social_account_id
|
|
59
|
+
|
|
53
60
|
# Filter by post status. Multiple values imply OR logic.
|
|
54
61
|
sig do
|
|
55
62
|
returns(
|
|
@@ -72,6 +79,7 @@ module PostForMe
|
|
|
72
79
|
offset: Float,
|
|
73
80
|
platform:
|
|
74
81
|
T::Array[PostForMe::SocialPostListParams::Platform::OrSymbol],
|
|
82
|
+
social_account_id: T::Array[String],
|
|
75
83
|
status: T::Array[PostForMe::SocialPostListParams::Status::OrSymbol],
|
|
76
84
|
request_options: PostForMe::RequestOptions::OrHash
|
|
77
85
|
).returns(T.attached_class)
|
|
@@ -85,6 +93,8 @@ module PostForMe
|
|
|
85
93
|
offset: nil,
|
|
86
94
|
# Filter by platforms. Multiple values imply OR logic.
|
|
87
95
|
platform: nil,
|
|
96
|
+
# Filter by social account ID. Multiple values imply OR logic.
|
|
97
|
+
social_account_id: nil,
|
|
88
98
|
# Filter by post status. Multiple values imply OR logic.
|
|
89
99
|
status: nil,
|
|
90
100
|
request_options: {}
|
|
@@ -99,6 +109,7 @@ module PostForMe
|
|
|
99
109
|
offset: Float,
|
|
100
110
|
platform:
|
|
101
111
|
T::Array[PostForMe::SocialPostListParams::Platform::OrSymbol],
|
|
112
|
+
social_account_id: T::Array[String],
|
|
102
113
|
status: T::Array[PostForMe::SocialPostListParams::Status::OrSymbol],
|
|
103
114
|
request_options: PostForMe::RequestOptions
|
|
104
115
|
}
|