post-for-me 0.1.0.pre.alpha.11 → 0.1.0.pre.alpha.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +10 -1
  4. data/lib/post_for_me/models/create_social_post.rb +187 -8
  5. data/lib/post_for_me/models/instagram_configuration_dto.rb +29 -1
  6. data/lib/post_for_me/models/social_post.rb +182 -8
  7. data/lib/post_for_me/models/social_post_list_params.rb +9 -1
  8. data/lib/post_for_me/models/social_post_result_list_params.rb +10 -1
  9. data/lib/post_for_me/models/youtube_configuration_dto.rb +31 -1
  10. data/lib/post_for_me/resources/social_post_results.rb +3 -1
  11. data/lib/post_for_me/resources/social_posts.rb +3 -1
  12. data/lib/post_for_me/version.rb +1 -1
  13. data/rbi/post_for_me/models/create_social_post.rbi +392 -11
  14. data/rbi/post_for_me/models/instagram_configuration_dto.rbi +61 -3
  15. data/rbi/post_for_me/models/social_post.rbi +392 -11
  16. data/rbi/post_for_me/models/social_post_list_params.rbi +11 -0
  17. data/rbi/post_for_me/models/social_post_result_list_params.rbi +13 -0
  18. data/rbi/post_for_me/models/youtube_configuration_dto.rbi +63 -0
  19. data/rbi/post_for_me/resources/social_post_results.rbi +4 -0
  20. data/rbi/post_for_me/resources/social_posts.rbi +3 -0
  21. data/sig/post_for_me/models/create_social_post.rbs +139 -11
  22. data/sig/post_for_me/models/instagram_configuration_dto.rbs +19 -3
  23. data/sig/post_for_me/models/social_post.rbs +139 -11
  24. data/sig/post_for_me/models/social_post_list_params.rbs +7 -0
  25. data/sig/post_for_me/models/social_post_result_list_params.rbs +8 -1
  26. data/sig/post_for_me/models/youtube_configuration_dto.rbs +22 -0
  27. data/sig/post_for_me/resources/social_post_results.rbs +1 -0
  28. data/sig/post_for_me/resources/social_posts.rbs +1 -0
  29. metadata +16 -2
@@ -43,6 +43,18 @@ module PostForMe
43
43
  sig { returns(T.nilable(T::Boolean)) }
44
44
  attr_accessor :share_to_feed
45
45
 
46
+ # Instagram trial reel type, when passed will be created as a trial reel. If
47
+ # manual the trial reel can be manually graduated in the native app. If perfomance
48
+ # the trial reel will be automatically graduated if the trial reel performs well.
49
+ sig do
50
+ returns(
51
+ T.nilable(
52
+ PostForMe::InstagramConfigurationDto::TrialReelType::OrSymbol
53
+ )
54
+ )
55
+ end
56
+ attr_accessor :trial_reel_type
57
+
46
58
  sig do
47
59
  params(
48
60
  caption: T.nilable(T.anything),
@@ -56,7 +68,11 @@ module PostForMe
56
68
  T.nilable(
57
69
  PostForMe::InstagramConfigurationDto::Placement::OrSymbol
58
70
  ),
59
- share_to_feed: T.nilable(T::Boolean)
71
+ share_to_feed: T.nilable(T::Boolean),
72
+ trial_reel_type:
73
+ T.nilable(
74
+ PostForMe::InstagramConfigurationDto::TrialReelType::OrSymbol
75
+ )
60
76
  ).returns(T.attached_class)
61
77
  end
62
78
  def self.new(
@@ -71,7 +87,11 @@ module PostForMe
71
87
  # Instagram post placement
72
88
  placement: nil,
73
89
  # If false video posts will only be shown in the Reels tab
74
- share_to_feed: nil
90
+ share_to_feed: nil,
91
+ # Instagram trial reel type, when passed will be created as a trial reel. If
92
+ # manual the trial reel can be manually graduated in the native app. If perfomance
93
+ # the trial reel will be automatically graduated if the trial reel performs well.
94
+ trial_reel_type: nil
75
95
  )
76
96
  end
77
97
 
@@ -87,7 +107,11 @@ module PostForMe
87
107
  T.nilable(
88
108
  PostForMe::InstagramConfigurationDto::Placement::OrSymbol
89
109
  ),
90
- share_to_feed: T.nilable(T::Boolean)
110
+ share_to_feed: T.nilable(T::Boolean),
111
+ trial_reel_type:
112
+ T.nilable(
113
+ PostForMe::InstagramConfigurationDto::TrialReelType::OrSymbol
114
+ )
91
115
  }
92
116
  )
93
117
  end
@@ -365,6 +389,40 @@ module PostForMe
365
389
  def self.values
366
390
  end
367
391
  end
392
+
393
+ # Instagram trial reel type, when passed will be created as a trial reel. If
394
+ # manual the trial reel can be manually graduated in the native app. If perfomance
395
+ # the trial reel will be automatically graduated if the trial reel performs well.
396
+ module TrialReelType
397
+ extend PostForMe::Internal::Type::Enum
398
+
399
+ TaggedSymbol =
400
+ T.type_alias do
401
+ T.all(Symbol, PostForMe::InstagramConfigurationDto::TrialReelType)
402
+ end
403
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
404
+
405
+ MANUAL =
406
+ T.let(
407
+ :manual,
408
+ PostForMe::InstagramConfigurationDto::TrialReelType::TaggedSymbol
409
+ )
410
+ PERFORMANCE =
411
+ T.let(
412
+ :performance,
413
+ PostForMe::InstagramConfigurationDto::TrialReelType::TaggedSymbol
414
+ )
415
+
416
+ sig do
417
+ override.returns(
418
+ T::Array[
419
+ PostForMe::InstagramConfigurationDto::TrialReelType::TaggedSymbol
420
+ ]
421
+ )
422
+ end
423
+ def self.values
424
+ end
425
+ end
368
426
  end
369
427
  end
370
428
  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 { returns(T.nilable(T::Array[String])) }
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
- sig { returns(T.nilable(String)) }
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
@@ -317,6 +336,18 @@ module PostForMe
317
336
  sig { returns(T.nilable(String)) }
318
337
  attr_accessor :title
319
338
 
339
+ # Instagram trial reel type, when passed will be created as a trial reel. If
340
+ # manual the trial reel can be manually graduated in the native app. If perfomance
341
+ # the trial reel will be automatically graduated if the trial reel performs well.
342
+ sig do
343
+ returns(
344
+ T.nilable(
345
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::TaggedSymbol
346
+ )
347
+ )
348
+ end
349
+ attr_accessor :trial_reel_type
350
+
320
351
  # Configuration for the social account
321
352
  sig do
322
353
  params(
@@ -334,21 +365,34 @@ module PostForMe
334
365
  is_draft: T.nilable(T::Boolean),
335
366
  link: T.nilable(String),
336
367
  location: T.nilable(String),
337
- media: T.nilable(T::Array[String]),
368
+ made_for_kids: T.nilable(T::Boolean),
369
+ media:
370
+ T.nilable(
371
+ T::Array[
372
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::OrHash
373
+ ]
374
+ ),
338
375
  placement:
339
376
  T.nilable(
340
377
  PostForMe::SocialPost::AccountConfiguration::Configuration::Placement::OrSymbol
341
378
  ),
342
379
  poll:
343
380
  PostForMe::SocialPost::AccountConfiguration::Configuration::Poll::OrHash,
344
- privacy_status: T.nilable(String),
381
+ privacy_status:
382
+ T.nilable(
383
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::OrSymbol
384
+ ),
345
385
  quote_tweet_id: String,
346
386
  reply_settings:
347
387
  T.nilable(
348
388
  PostForMe::SocialPost::AccountConfiguration::Configuration::ReplySettings::OrSymbol
349
389
  ),
350
390
  share_to_feed: T.nilable(T::Boolean),
351
- title: T.nilable(String)
391
+ title: T.nilable(String),
392
+ trial_reel_type:
393
+ T.nilable(
394
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::OrSymbol
395
+ )
352
396
  ).returns(T.attached_class)
353
397
  end
354
398
  def self.new(
@@ -383,13 +427,16 @@ module PostForMe
383
427
  # Page id with a location that you want to tag the image or video with (Instagram
384
428
  # and Facebook)
385
429
  location: nil,
430
+ # If true will notify YouTube the video is intended for kids, defaults to false
431
+ made_for_kids: nil,
386
432
  # Overrides the `media` from the post
387
433
  media: nil,
388
434
  # Post placement for Facebook/Instagram/Threads
389
435
  placement: nil,
390
436
  # Poll options for the twitter
391
437
  poll: nil,
392
- # Sets the privacy status for TikTok (private, public)
438
+ # Sets the privacy status for TikTok (private, public), or YouTube (private,
439
+ # public, unlisted)
393
440
  privacy_status: nil,
394
441
  # Id of the tweet you want to quote
395
442
  quote_tweet_id: nil,
@@ -398,7 +445,11 @@ module PostForMe
398
445
  # If false Instagram video posts will only be shown in the Reels tab
399
446
  share_to_feed: nil,
400
447
  # Overrides the `title` from the post
401
- title: nil
448
+ title: nil,
449
+ # Instagram trial reel type, when passed will be created as a trial reel. If
450
+ # manual the trial reel can be manually graduated in the native app. If perfomance
451
+ # the trial reel will be automatically graduated if the trial reel performs well.
452
+ trial_reel_type: nil
402
453
  )
403
454
  end
404
455
 
@@ -419,27 +470,279 @@ module PostForMe
419
470
  is_draft: T.nilable(T::Boolean),
420
471
  link: T.nilable(String),
421
472
  location: T.nilable(String),
422
- media: T.nilable(T::Array[String]),
473
+ made_for_kids: T.nilable(T::Boolean),
474
+ media:
475
+ T.nilable(
476
+ T::Array[
477
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media
478
+ ]
479
+ ),
423
480
  placement:
424
481
  T.nilable(
425
482
  PostForMe::SocialPost::AccountConfiguration::Configuration::Placement::TaggedSymbol
426
483
  ),
427
484
  poll:
428
485
  PostForMe::SocialPost::AccountConfiguration::Configuration::Poll,
429
- privacy_status: T.nilable(String),
486
+ privacy_status:
487
+ T.nilable(
488
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
489
+ ),
430
490
  quote_tweet_id: String,
431
491
  reply_settings:
432
492
  T.nilable(
433
493
  PostForMe::SocialPost::AccountConfiguration::Configuration::ReplySettings::TaggedSymbol
434
494
  ),
435
495
  share_to_feed: T.nilable(T::Boolean),
436
- title: T.nilable(String)
496
+ title: T.nilable(String),
497
+ trial_reel_type:
498
+ T.nilable(
499
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::TaggedSymbol
500
+ )
437
501
  }
438
502
  )
439
503
  end
440
504
  def to_hash
441
505
  end
442
506
 
507
+ class Media < PostForMe::Internal::Type::BaseModel
508
+ OrHash =
509
+ T.type_alias do
510
+ T.any(
511
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media,
512
+ PostForMe::Internal::AnyHash
513
+ )
514
+ end
515
+
516
+ # Public URL of the media
517
+ sig { returns(String) }
518
+ attr_accessor :url
519
+
520
+ # List of tags to attach to the media
521
+ sig do
522
+ returns(
523
+ T.nilable(
524
+ T::Array[
525
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag
526
+ ]
527
+ )
528
+ )
529
+ end
530
+ attr_accessor :tags
531
+
532
+ # Timestamp in milliseconds of frame to use as thumbnail for the media
533
+ sig { returns(T.nilable(T.anything)) }
534
+ attr_accessor :thumbnail_timestamp_ms
535
+
536
+ # Public URL of the thumbnail for the media
537
+ sig { returns(T.nilable(T.anything)) }
538
+ attr_accessor :thumbnail_url
539
+
540
+ sig do
541
+ params(
542
+ url: String,
543
+ tags:
544
+ T.nilable(
545
+ T::Array[
546
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::OrHash
547
+ ]
548
+ ),
549
+ thumbnail_timestamp_ms: T.nilable(T.anything),
550
+ thumbnail_url: T.nilable(T.anything)
551
+ ).returns(T.attached_class)
552
+ end
553
+ def self.new(
554
+ # Public URL of the media
555
+ url:,
556
+ # List of tags to attach to the media
557
+ tags: nil,
558
+ # Timestamp in milliseconds of frame to use as thumbnail for the media
559
+ thumbnail_timestamp_ms: nil,
560
+ # Public URL of the thumbnail for the media
561
+ thumbnail_url: nil
562
+ )
563
+ end
564
+
565
+ sig do
566
+ override.returns(
567
+ {
568
+ url: String,
569
+ tags:
570
+ T.nilable(
571
+ T::Array[
572
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag
573
+ ]
574
+ ),
575
+ thumbnail_timestamp_ms: T.nilable(T.anything),
576
+ thumbnail_url: T.nilable(T.anything)
577
+ }
578
+ )
579
+ end
580
+ def to_hash
581
+ end
582
+
583
+ class Tag < PostForMe::Internal::Type::BaseModel
584
+ OrHash =
585
+ T.type_alias do
586
+ T.any(
587
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag,
588
+ PostForMe::Internal::AnyHash
589
+ )
590
+ end
591
+
592
+ # Facebook User ID, Instagram Username or Instagram product id to tag
593
+ sig { returns(String) }
594
+ attr_accessor :id
595
+
596
+ # The platform for the tags
597
+ sig do
598
+ returns(
599
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
600
+ )
601
+ end
602
+ attr_accessor :platform
603
+
604
+ # The type of tag, user to tag accounts, product to tag products (only supported
605
+ # for instagram)
606
+ sig do
607
+ returns(
608
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
609
+ )
610
+ end
611
+ attr_accessor :type
612
+
613
+ # Percentage distance from left edge of the image, Not required for videos or
614
+ # stories
615
+ sig { returns(T.nilable(Float)) }
616
+ attr_reader :x
617
+
618
+ sig { params(x: Float).void }
619
+ attr_writer :x
620
+
621
+ # Percentage distance from top edge of the image, Not required for videos or
622
+ # stories
623
+ sig { returns(T.nilable(Float)) }
624
+ attr_reader :y_
625
+
626
+ sig { params(y_: Float).void }
627
+ attr_writer :y_
628
+
629
+ sig do
630
+ params(
631
+ id: String,
632
+ platform:
633
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::OrSymbol,
634
+ type:
635
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::OrSymbol,
636
+ x: Float,
637
+ y_: Float
638
+ ).returns(T.attached_class)
639
+ end
640
+ def self.new(
641
+ # Facebook User ID, Instagram Username or Instagram product id to tag
642
+ id:,
643
+ # The platform for the tags
644
+ platform:,
645
+ # The type of tag, user to tag accounts, product to tag products (only supported
646
+ # for instagram)
647
+ type:,
648
+ # Percentage distance from left edge of the image, Not required for videos or
649
+ # stories
650
+ x: nil,
651
+ # Percentage distance from top edge of the image, Not required for videos or
652
+ # stories
653
+ y_: nil
654
+ )
655
+ end
656
+
657
+ sig do
658
+ override.returns(
659
+ {
660
+ id: String,
661
+ platform:
662
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol,
663
+ type:
664
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol,
665
+ x: Float,
666
+ y_: Float
667
+ }
668
+ )
669
+ end
670
+ def to_hash
671
+ end
672
+
673
+ # The platform for the tags
674
+ module Platform
675
+ extend PostForMe::Internal::Type::Enum
676
+
677
+ TaggedSymbol =
678
+ T.type_alias do
679
+ T.all(
680
+ Symbol,
681
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform
682
+ )
683
+ end
684
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
685
+
686
+ FACEBOOK =
687
+ T.let(
688
+ :facebook,
689
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
690
+ )
691
+ INSTAGRAM =
692
+ T.let(
693
+ :instagram,
694
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
695
+ )
696
+
697
+ sig do
698
+ override.returns(
699
+ T::Array[
700
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Platform::TaggedSymbol
701
+ ]
702
+ )
703
+ end
704
+ def self.values
705
+ end
706
+ end
707
+
708
+ # The type of tag, user to tag accounts, product to tag products (only supported
709
+ # for instagram)
710
+ module Type
711
+ extend PostForMe::Internal::Type::Enum
712
+
713
+ TaggedSymbol =
714
+ T.type_alias do
715
+ T.all(
716
+ Symbol,
717
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type
718
+ )
719
+ end
720
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
721
+
722
+ USER =
723
+ T.let(
724
+ :user,
725
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
726
+ )
727
+ PRODUCT =
728
+ T.let(
729
+ :product,
730
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
731
+ )
732
+
733
+ sig do
734
+ override.returns(
735
+ T::Array[
736
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Media::Tag::Type::TaggedSymbol
737
+ ]
738
+ )
739
+ end
740
+ def self.values
741
+ end
742
+ end
743
+ end
744
+ end
745
+
443
746
  # Post placement for Facebook/Instagram/Threads
444
747
  module Placement
445
748
  extend PostForMe::Internal::Type::Enum
@@ -593,6 +896,47 @@ module PostForMe
593
896
  end
594
897
  end
595
898
 
899
+ # Sets the privacy status for TikTok (private, public), or YouTube (private,
900
+ # public, unlisted)
901
+ module PrivacyStatus
902
+ extend PostForMe::Internal::Type::Enum
903
+
904
+ TaggedSymbol =
905
+ T.type_alias do
906
+ T.all(
907
+ Symbol,
908
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus
909
+ )
910
+ end
911
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
912
+
913
+ PUBLIC =
914
+ T.let(
915
+ :public,
916
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
917
+ )
918
+ PRIVATE =
919
+ T.let(
920
+ :private,
921
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
922
+ )
923
+ UNLISTED =
924
+ T.let(
925
+ :unlisted,
926
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
927
+ )
928
+
929
+ sig do
930
+ override.returns(
931
+ T::Array[
932
+ PostForMe::SocialPost::AccountConfiguration::Configuration::PrivacyStatus::TaggedSymbol
933
+ ]
934
+ )
935
+ end
936
+ def self.values
937
+ end
938
+ end
939
+
596
940
  # Who can reply to the tweet
597
941
  module ReplySettings
598
942
  extend PostForMe::Internal::Type::Enum
@@ -637,6 +981,43 @@ module PostForMe
637
981
  def self.values
638
982
  end
639
983
  end
984
+
985
+ # Instagram trial reel type, when passed will be created as a trial reel. If
986
+ # manual the trial reel can be manually graduated in the native app. If perfomance
987
+ # the trial reel will be automatically graduated if the trial reel performs well.
988
+ module TrialReelType
989
+ extend PostForMe::Internal::Type::Enum
990
+
991
+ TaggedSymbol =
992
+ T.type_alias do
993
+ T.all(
994
+ Symbol,
995
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType
996
+ )
997
+ end
998
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
999
+
1000
+ MANUAL =
1001
+ T.let(
1002
+ :manual,
1003
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::TaggedSymbol
1004
+ )
1005
+ PERFORMANCE =
1006
+ T.let(
1007
+ :performance,
1008
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::TaggedSymbol
1009
+ )
1010
+
1011
+ sig do
1012
+ override.returns(
1013
+ T::Array[
1014
+ PostForMe::SocialPost::AccountConfiguration::Configuration::TrialReelType::TaggedSymbol
1015
+ ]
1016
+ )
1017
+ end
1018
+ def self.values
1019
+ end
1020
+ end
640
1021
  end
641
1022
  end
642
1023
 
@@ -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
  }
@@ -44,12 +44,21 @@ module PostForMe
44
44
  sig { params(post_id: T::Array[String]).void }
45
45
  attr_writer :post_id
46
46
 
47
+ # Filter by social account ID(s). Multiple values imply OR logic (e.g.,
48
+ # ?social_account_id=123&social_account_id=456).
49
+ sig { returns(T.nilable(T::Array[String])) }
50
+ attr_reader :social_account_id
51
+
52
+ sig { params(social_account_id: T::Array[String]).void }
53
+ attr_writer :social_account_id
54
+
47
55
  sig do
48
56
  params(
49
57
  limit: Float,
50
58
  offset: Float,
51
59
  platform: T::Array[String],
52
60
  post_id: T::Array[String],
61
+ social_account_id: T::Array[String],
53
62
  request_options: PostForMe::RequestOptions::OrHash
54
63
  ).returns(T.attached_class)
55
64
  end
@@ -64,6 +73,9 @@ module PostForMe
64
73
  # Filter by post IDs. Multiple values imply OR logic (e.g.,
65
74
  # ?post_id=123&post_id=456).
66
75
  post_id: nil,
76
+ # Filter by social account ID(s). Multiple values imply OR logic (e.g.,
77
+ # ?social_account_id=123&social_account_id=456).
78
+ social_account_id: nil,
67
79
  request_options: {}
68
80
  )
69
81
  end
@@ -75,6 +87,7 @@ module PostForMe
75
87
  offset: Float,
76
88
  platform: T::Array[String],
77
89
  post_id: T::Array[String],
90
+ social_account_id: T::Array[String],
78
91
  request_options: PostForMe::RequestOptions
79
92
  }
80
93
  )