whop_sdk 0.0.3 → 0.0.4

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 (155) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +4 -0
  5. data/lib/whop_sdk/models/app_build_create_params.rb +53 -29
  6. data/lib/whop_sdk/models/app_update_params.rb +53 -29
  7. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +115 -39
  8. data/lib/whop_sdk/models/company.rb +13 -1
  9. data/lib/whop_sdk/models/company_create_params.rb +46 -0
  10. data/lib/whop_sdk/models/company_list_params.rb +62 -0
  11. data/lib/whop_sdk/models/company_list_response.rb +175 -0
  12. data/lib/whop_sdk/models/course_create_params.rb +75 -30
  13. data/lib/whop_sdk/models/course_lesson_update_params.rb +204 -83
  14. data/lib/whop_sdk/models/course_student_list_params.rb +62 -0
  15. data/lib/whop_sdk/models/course_student_list_response.rb +97 -0
  16. data/lib/whop_sdk/models/course_student_retrieve_params.rb +14 -0
  17. data/lib/whop_sdk/models/course_student_retrieve_response.rb +149 -0
  18. data/lib/whop_sdk/models/course_update_params.rb +51 -27
  19. data/lib/whop_sdk/models/experience_update_params.rb +53 -29
  20. data/lib/whop_sdk/models/forum_post_create_params.rb +51 -27
  21. data/lib/whop_sdk/models/forum_post_update_params.rb +51 -27
  22. data/lib/whop_sdk/models/invoice_create_params.rb +48 -32
  23. data/lib/whop_sdk/models/lesson.rb +16 -8
  24. data/lib/whop_sdk/models/message_create_params.rb +51 -27
  25. data/lib/whop_sdk/models/message_update_params.rb +51 -27
  26. data/lib/whop_sdk/models/payment.rb +10 -1
  27. data/lib/whop_sdk/models/payment_list_response.rb +10 -1
  28. data/lib/whop_sdk/models/payment_method_types.rb +2 -1
  29. data/lib/whop_sdk/models/plan.rb +48 -1
  30. data/lib/whop_sdk/models/plan_create_params.rb +97 -22
  31. data/lib/whop_sdk/models/plan_list_response.rb +51 -1
  32. data/lib/whop_sdk/models/plan_update_params.rb +97 -22
  33. data/lib/whop_sdk/models/product_update_params.rb +53 -29
  34. data/lib/whop_sdk/models/transfer.rb +9 -1
  35. data/lib/whop_sdk/models/transfer_create_params.rb +9 -1
  36. data/lib/whop_sdk/models/transfer_list_response.rb +9 -1
  37. data/lib/whop_sdk/models.rb +8 -0
  38. data/lib/whop_sdk/resources/app_builds.rb +1 -1
  39. data/lib/whop_sdk/resources/apps.rb +1 -1
  40. data/lib/whop_sdk/resources/checkout_configurations.rb +6 -6
  41. data/lib/whop_sdk/resources/companies.rb +70 -0
  42. data/lib/whop_sdk/resources/course_lesson_interactions.rb +2 -2
  43. data/lib/whop_sdk/resources/course_lessons.rb +7 -3
  44. data/lib/whop_sdk/resources/course_students.rb +76 -0
  45. data/lib/whop_sdk/resources/courses.rb +10 -3
  46. data/lib/whop_sdk/resources/experiences.rb +1 -1
  47. data/lib/whop_sdk/resources/forum_posts.rb +2 -2
  48. data/lib/whop_sdk/resources/invoices.rb +11 -11
  49. data/lib/whop_sdk/resources/messages.rb +2 -2
  50. data/lib/whop_sdk/resources/plans.rb +8 -4
  51. data/lib/whop_sdk/resources/products.rb +1 -1
  52. data/lib/whop_sdk/resources/transfers.rb +3 -1
  53. data/lib/whop_sdk/version.rb +1 -1
  54. data/lib/whop_sdk.rb +8 -1
  55. data/rbi/whop_sdk/client.rbi +3 -0
  56. data/rbi/whop_sdk/models/app_build_create_params.rbi +80 -40
  57. data/rbi/whop_sdk/models/app_update_params.rbi +86 -37
  58. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +192 -64
  59. data/rbi/whop_sdk/models/company.rbi +10 -0
  60. data/rbi/whop_sdk/models/company_create_params.rbi +67 -0
  61. data/rbi/whop_sdk/models/company_list_params.rbi +83 -0
  62. data/rbi/whop_sdk/models/company_list_response.rbi +235 -0
  63. data/rbi/whop_sdk/models/course_create_params.rbi +104 -38
  64. data/rbi/whop_sdk/models/course_lesson_update_params.rbi +326 -114
  65. data/rbi/whop_sdk/models/course_student_list_params.rbi +83 -0
  66. data/rbi/whop_sdk/models/course_student_list_response.rbi +142 -0
  67. data/rbi/whop_sdk/models/course_student_retrieve_params.rbi +30 -0
  68. data/rbi/whop_sdk/models/course_student_retrieve_response.rbi +250 -0
  69. data/rbi/whop_sdk/models/course_update_params.rbi +84 -38
  70. data/rbi/whop_sdk/models/experience_update_params.rbi +84 -38
  71. data/rbi/whop_sdk/models/forum_post_create_params.rbi +85 -32
  72. data/rbi/whop_sdk/models/forum_post_update_params.rbi +85 -32
  73. data/rbi/whop_sdk/models/invoice_create_params.rbi +58 -44
  74. data/rbi/whop_sdk/models/lesson.rbi +14 -10
  75. data/rbi/whop_sdk/models/message_create_params.rbi +85 -32
  76. data/rbi/whop_sdk/models/message_update_params.rbi +85 -32
  77. data/rbi/whop_sdk/models/payment.rbi +10 -0
  78. data/rbi/whop_sdk/models/payment_list_response.rbi +10 -0
  79. data/rbi/whop_sdk/models/payment_method_types.rbi +3 -1
  80. data/rbi/whop_sdk/models/plan.rbi +82 -0
  81. data/rbi/whop_sdk/models/plan_create_params.rbi +174 -32
  82. data/rbi/whop_sdk/models/plan_list_response.rbi +94 -0
  83. data/rbi/whop_sdk/models/plan_update_params.rbi +174 -32
  84. data/rbi/whop_sdk/models/product_update_params.rbi +83 -39
  85. data/rbi/whop_sdk/models/transfer.rbi +8 -0
  86. data/rbi/whop_sdk/models/transfer_create_params.rbi +8 -0
  87. data/rbi/whop_sdk/models/transfer_list_response.rbi +8 -0
  88. data/rbi/whop_sdk/models.rbi +8 -0
  89. data/rbi/whop_sdk/resources/app_builds.rbi +5 -1
  90. data/rbi/whop_sdk/resources/apps.rbi +7 -1
  91. data/rbi/whop_sdk/resources/checkout_configurations.rbi +6 -7
  92. data/rbi/whop_sdk/resources/companies.rbi +63 -0
  93. data/rbi/whop_sdk/resources/course_lesson_interactions.rbi +2 -2
  94. data/rbi/whop_sdk/resources/course_lessons.rbi +21 -2
  95. data/rbi/whop_sdk/resources/course_students.rbi +65 -0
  96. data/rbi/whop_sdk/resources/courses.rbi +22 -2
  97. data/rbi/whop_sdk/resources/experiences.rbi +7 -1
  98. data/rbi/whop_sdk/resources/forum_posts.rbi +12 -2
  99. data/rbi/whop_sdk/resources/invoices.rbi +18 -18
  100. data/rbi/whop_sdk/resources/messages.rbi +12 -2
  101. data/rbi/whop_sdk/resources/plans.rbi +28 -2
  102. data/rbi/whop_sdk/resources/products.rbi +6 -1
  103. data/rbi/whop_sdk/resources/transfers.rbi +3 -0
  104. data/sig/whop_sdk/client.rbs +2 -0
  105. data/sig/whop_sdk/models/app_build_create_params.rbs +29 -10
  106. data/sig/whop_sdk/models/app_update_params.rbs +29 -10
  107. data/sig/whop_sdk/models/checkout_configuration_create_params.rbs +72 -21
  108. data/sig/whop_sdk/models/company.rbs +5 -0
  109. data/sig/whop_sdk/models/company_create_params.rbs +41 -0
  110. data/sig/whop_sdk/models/company_list_params.rbs +51 -0
  111. data/sig/whop_sdk/models/company_list_response.rbs +109 -0
  112. data/sig/whop_sdk/models/course_create_params.rbs +39 -10
  113. data/sig/whop_sdk/models/course_lesson_update_params.rbs +116 -30
  114. data/sig/whop_sdk/models/course_student_list_params.rbs +51 -0
  115. data/sig/whop_sdk/models/course_student_list_response.rbs +64 -0
  116. data/sig/whop_sdk/models/course_student_retrieve_params.rbs +15 -0
  117. data/sig/whop_sdk/models/course_student_retrieve_response.rbs +106 -0
  118. data/sig/whop_sdk/models/course_update_params.rbs +29 -10
  119. data/sig/whop_sdk/models/experience_update_params.rbs +29 -10
  120. data/sig/whop_sdk/models/forum_post_create_params.rbs +29 -10
  121. data/sig/whop_sdk/models/forum_post_update_params.rbs +29 -10
  122. data/sig/whop_sdk/models/invoice_create_params.rbs +28 -18
  123. data/sig/whop_sdk/models/lesson.rbs +8 -8
  124. data/sig/whop_sdk/models/message_create_params.rbs +29 -10
  125. data/sig/whop_sdk/models/message_update_params.rbs +29 -10
  126. data/sig/whop_sdk/models/payment.rbs +5 -0
  127. data/sig/whop_sdk/models/payment_list_response.rbs +5 -0
  128. data/sig/whop_sdk/models/payment_method_types.rbs +4 -2
  129. data/sig/whop_sdk/models/plan.rbs +32 -0
  130. data/sig/whop_sdk/models/plan_create_params.rbs +61 -10
  131. data/sig/whop_sdk/models/plan_list_response.rbs +32 -0
  132. data/sig/whop_sdk/models/plan_update_params.rbs +61 -10
  133. data/sig/whop_sdk/models/product_update_params.rbs +29 -10
  134. data/sig/whop_sdk/models/transfer.rbs +5 -0
  135. data/sig/whop_sdk/models/transfer_create_params.rbs +5 -0
  136. data/sig/whop_sdk/models/transfer_list_response.rbs +5 -0
  137. data/sig/whop_sdk/models.rbs +8 -0
  138. data/sig/whop_sdk/resources/app_builds.rbs +1 -1
  139. data/sig/whop_sdk/resources/apps.rbs +1 -1
  140. data/sig/whop_sdk/resources/checkout_configurations.rbs +2 -2
  141. data/sig/whop_sdk/resources/companies.rbs +18 -0
  142. data/sig/whop_sdk/resources/course_lessons.rbs +4 -2
  143. data/sig/whop_sdk/resources/course_students.rbs +22 -0
  144. data/sig/whop_sdk/resources/courses.rbs +4 -2
  145. data/sig/whop_sdk/resources/experiences.rbs +1 -1
  146. data/sig/whop_sdk/resources/forum_posts.rbs +2 -2
  147. data/sig/whop_sdk/resources/invoices.rbs +5 -5
  148. data/sig/whop_sdk/resources/messages.rbs +2 -2
  149. data/sig/whop_sdk/resources/plans.rbs +4 -2
  150. data/sig/whop_sdk/resources/products.rbs +1 -1
  151. data/sig/whop_sdk/resources/transfers.rbs +1 -0
  152. metadata +26 -5
  153. data/lib/whop_sdk/models/invoice_create_response.rb +0 -27
  154. data/rbi/whop_sdk/models/invoice_create_response.rbi +0 -49
  155. data/sig/whop_sdk/models/invoice_create_response.rbs +0 -19
@@ -0,0 +1,62 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::Companies#list
6
+ class CompanyListParams < WhopSDK::Internal::Type::BaseModel
7
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
8
+ include WhopSDK::Internal::Type::RequestParameters
9
+
10
+ # @!attribute parent_company_id
11
+ # The ID of the parent company to list sub companies for
12
+ #
13
+ # @return [String]
14
+ required :parent_company_id, String
15
+
16
+ # @!attribute after
17
+ # Returns the elements in the list that come after the specified cursor.
18
+ #
19
+ # @return [String, nil]
20
+ optional :after, String, nil?: true
21
+
22
+ # @!attribute before
23
+ # Returns the elements in the list that come before the specified cursor.
24
+ #
25
+ # @return [String, nil]
26
+ optional :before, String, nil?: true
27
+
28
+ # @!attribute direction
29
+ # The direction of the sort.
30
+ #
31
+ # @return [Symbol, WhopSDK::Models::Direction, nil]
32
+ optional :direction, enum: -> { WhopSDK::Direction }, nil?: true
33
+
34
+ # @!attribute first
35
+ # Returns the first _n_ elements from the list.
36
+ #
37
+ # @return [Integer, nil]
38
+ optional :first, Integer, nil?: true
39
+
40
+ # @!attribute last
41
+ # Returns the last _n_ elements from the list.
42
+ #
43
+ # @return [Integer, nil]
44
+ optional :last, Integer, nil?: true
45
+
46
+ # @!method initialize(parent_company_id:, after: nil, before: nil, direction: nil, first: nil, last: nil, request_options: {})
47
+ # @param parent_company_id [String] The ID of the parent company to list sub companies for
48
+ #
49
+ # @param after [String, nil] Returns the elements in the list that come after the specified cursor.
50
+ #
51
+ # @param before [String, nil] Returns the elements in the list that come before the specified cursor.
52
+ #
53
+ # @param direction [Symbol, WhopSDK::Models::Direction, nil] The direction of the sort.
54
+ #
55
+ # @param first [Integer, nil] Returns the first _n_ elements from the list.
56
+ #
57
+ # @param last [Integer, nil] Returns the last _n_ elements from the list.
58
+ #
59
+ # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
60
+ end
61
+ end
62
+ end
@@ -0,0 +1,175 @@
1
+ # frozen_string_literal: true
2
+
3
+ module WhopSDK
4
+ module Models
5
+ # @see WhopSDK::Resources::Companies#list
6
+ class CompanyListResponse < WhopSDK::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # The ID (tag) of the company.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute business_type
14
+ # The different business types a company can be.
15
+ #
16
+ # @return [Symbol, WhopSDK::Models::BusinessTypes, nil]
17
+ required :business_type, enum: -> { WhopSDK::BusinessTypes }, nil?: true
18
+
19
+ # @!attribute created_at
20
+ # When the company was created (signed up)
21
+ #
22
+ # @return [Time]
23
+ required :created_at, Time
24
+
25
+ # @!attribute description
26
+ # The creator pitch for the company.
27
+ #
28
+ # @return [String, nil]
29
+ required :description, String, nil?: true
30
+
31
+ # @!attribute industry_type
32
+ # The different industry types a company can be in.
33
+ #
34
+ # @return [Symbol, WhopSDK::Models::IndustryTypes, nil]
35
+ required :industry_type, enum: -> { WhopSDK::IndustryTypes }, nil?: true
36
+
37
+ # @!attribute logo
38
+ # The company's logo.
39
+ #
40
+ # @return [WhopSDK::Models::CompanyListResponse::Logo, nil]
41
+ required :logo, -> { WhopSDK::Models::CompanyListResponse::Logo }, nil?: true
42
+
43
+ # @!attribute member_count
44
+ # The number of members in the company.
45
+ #
46
+ # @return [Integer]
47
+ required :member_count, Integer
48
+
49
+ # @!attribute metadata
50
+ # A key-value store of data for the account, created/updated by the platform that
51
+ # made the account.
52
+ #
53
+ # @return [Hash{Symbol=>Object}, nil]
54
+ required :metadata, WhopSDK::Internal::Type::HashOf[WhopSDK::Internal::Type::Unknown], nil?: true
55
+
56
+ # @!attribute owner_user
57
+ # The user who owns this company
58
+ #
59
+ # @return [WhopSDK::Models::CompanyListResponse::OwnerUser]
60
+ required :owner_user, -> { WhopSDK::Models::CompanyListResponse::OwnerUser }
61
+
62
+ # @!attribute published_reviews_count
63
+ # The number of reviews that have been published for the company.
64
+ #
65
+ # @return [Integer]
66
+ required :published_reviews_count, Integer
67
+
68
+ # @!attribute route
69
+ # The slug/route of the company on the Whop site.
70
+ #
71
+ # @return [String]
72
+ required :route, String
73
+
74
+ # @!attribute title
75
+ # The title of the company.
76
+ #
77
+ # @return [String]
78
+ required :title, String
79
+
80
+ # @!attribute updated_at
81
+ # The time the company was last updated.
82
+ #
83
+ # @return [Time]
84
+ required :updated_at, Time
85
+
86
+ # @!attribute verified
87
+ # If the company is Whop Verified
88
+ #
89
+ # @return [Boolean]
90
+ required :verified, WhopSDK::Internal::Type::Boolean
91
+
92
+ # @!method initialize(id:, business_type:, created_at:, description:, industry_type:, logo:, member_count:, metadata:, owner_user:, published_reviews_count:, route:, title:, updated_at:, verified:)
93
+ # Some parameter documentations has been truncated, see
94
+ # {WhopSDK::Models::CompanyListResponse} for more details.
95
+ #
96
+ # An object representing a (sanitized) company.
97
+ #
98
+ # @param id [String] The ID (tag) of the company.
99
+ #
100
+ # @param business_type [Symbol, WhopSDK::Models::BusinessTypes, nil] The different business types a company can be.
101
+ #
102
+ # @param created_at [Time] When the company was created (signed up)
103
+ #
104
+ # @param description [String, nil] The creator pitch for the company.
105
+ #
106
+ # @param industry_type [Symbol, WhopSDK::Models::IndustryTypes, nil] The different industry types a company can be in.
107
+ #
108
+ # @param logo [WhopSDK::Models::CompanyListResponse::Logo, nil] The company's logo.
109
+ #
110
+ # @param member_count [Integer] The number of members in the company.
111
+ #
112
+ # @param metadata [Hash{Symbol=>Object}, nil] A key-value store of data for the account, created/updated by the platform that
113
+ #
114
+ # @param owner_user [WhopSDK::Models::CompanyListResponse::OwnerUser] The user who owns this company
115
+ #
116
+ # @param published_reviews_count [Integer] The number of reviews that have been published for the company.
117
+ #
118
+ # @param route [String] The slug/route of the company on the Whop site.
119
+ #
120
+ # @param title [String] The title of the company.
121
+ #
122
+ # @param updated_at [Time] The time the company was last updated.
123
+ #
124
+ # @param verified [Boolean] If the company is Whop Verified
125
+
126
+ # @see WhopSDK::Models::CompanyListResponse#logo
127
+ class Logo < WhopSDK::Internal::Type::BaseModel
128
+ # @!attribute url
129
+ # This is the URL you use to render optimized attachments on the client. This
130
+ # should be used for apps.
131
+ #
132
+ # @return [String, nil]
133
+ required :url, String, nil?: true
134
+
135
+ # @!method initialize(url:)
136
+ # Some parameter documentations has been truncated, see
137
+ # {WhopSDK::Models::CompanyListResponse::Logo} for more details.
138
+ #
139
+ # The company's logo.
140
+ #
141
+ # @param url [String, nil] This is the URL you use to render optimized attachments on the client. This shou
142
+ end
143
+
144
+ # @see WhopSDK::Models::CompanyListResponse#owner_user
145
+ class OwnerUser < WhopSDK::Internal::Type::BaseModel
146
+ # @!attribute id
147
+ # The internal ID of the user.
148
+ #
149
+ # @return [String]
150
+ required :id, String
151
+
152
+ # @!attribute name
153
+ # The name of the user from their Whop account.
154
+ #
155
+ # @return [String, nil]
156
+ required :name, String, nil?: true
157
+
158
+ # @!attribute username
159
+ # The username of the user from their Whop account.
160
+ #
161
+ # @return [String]
162
+ required :username, String
163
+
164
+ # @!method initialize(id:, name:, username:)
165
+ # The user who owns this company
166
+ #
167
+ # @param id [String] The internal ID of the user.
168
+ #
169
+ # @param name [String, nil] The name of the user from their Whop account.
170
+ #
171
+ # @param username [String] The username of the user from their Whop account.
172
+ end
173
+ end
174
+ end
175
+ end
@@ -19,12 +19,26 @@ module WhopSDK
19
19
  # @return [String]
20
20
  required :title, String
21
21
 
22
+ # @!attribute certificate_after_completion_enabled
23
+ # Whether the course will award its students a PDF certificate after completing
24
+ # all lessons
25
+ #
26
+ # @return [Boolean, nil]
27
+ optional :certificate_after_completion_enabled, WhopSDK::Internal::Type::Boolean, nil?: true
28
+
22
29
  # @!attribute cover_image
23
30
  # The cover image URL of the course
24
31
  #
25
32
  # @return [String, nil]
26
33
  optional :cover_image, String, nil?: true
27
34
 
35
+ # @!attribute require_completing_lessons_in_order
36
+ # Whether the course requires students to complete the previous lesson before
37
+ # moving on to the next one
38
+ #
39
+ # @return [Boolean, nil]
40
+ optional :require_completing_lessons_in_order, WhopSDK::Internal::Type::Boolean, nil?: true
41
+
28
42
  # @!attribute tagline
29
43
  # The tagline of the course
30
44
  #
@@ -34,48 +48,79 @@ module WhopSDK
34
48
  # @!attribute thumbnail
35
49
  # The thumbnail for the course in png, jpeg, or gif format
36
50
  #
37
- # @return [WhopSDK::Models::CourseCreateParams::Thumbnail, nil]
38
- optional :thumbnail, -> { WhopSDK::CourseCreateParams::Thumbnail }, nil?: true
51
+ # @return [WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithID, nil]
52
+ optional :thumbnail, union: -> { WhopSDK::CourseCreateParams::Thumbnail }, nil?: true
39
53
 
40
- # @!method initialize(experience_id:, title:, cover_image: nil, tagline: nil, thumbnail: nil, request_options: {})
54
+ # @!method initialize(experience_id:, title:, certificate_after_completion_enabled: nil, cover_image: nil, require_completing_lessons_in_order: nil, tagline: nil, thumbnail: nil, request_options: {})
55
+ # Some parameter documentations has been truncated, see
56
+ # {WhopSDK::Models::CourseCreateParams} for more details.
57
+ #
41
58
  # @param experience_id [String] The ID of the experience to create the course in
42
59
  #
43
60
  # @param title [String] The title of the course
44
61
  #
62
+ # @param certificate_after_completion_enabled [Boolean, nil] Whether the course will award its students a PDF certificate after completing al
63
+ #
45
64
  # @param cover_image [String, nil] The cover image URL of the course
46
65
  #
66
+ # @param require_completing_lessons_in_order [Boolean, nil] Whether the course requires students to complete the previous lesson before movi
67
+ #
47
68
  # @param tagline [String, nil] The tagline of the course
48
69
  #
49
- # @param thumbnail [WhopSDK::Models::CourseCreateParams::Thumbnail, nil] The thumbnail for the course in png, jpeg, or gif format
70
+ # @param thumbnail [WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithID, nil] The thumbnail for the course in png, jpeg, or gif format
50
71
  #
51
72
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
52
73
 
53
- class Thumbnail < WhopSDK::Internal::Type::BaseModel
54
- # @!attribute id
55
- # The ID of an existing attachment object. Use this when updating a resource and
56
- # keeping a subset of the attachments. Don't use this unless you know what you're
57
- # doing.
58
- #
59
- # @return [String, nil]
60
- optional :id, String, nil?: true
61
-
62
- # @!attribute direct_upload_id
63
- # This ID should be used the first time you upload an attachment. It is the ID of
64
- # the direct upload that was created when uploading the file to S3 via the
65
- # mediaDirectUpload mutation.
66
- #
67
- # @return [String, nil]
68
- optional :direct_upload_id, String, nil?: true
69
-
70
- # @!method initialize(id: nil, direct_upload_id: nil)
71
- # Some parameter documentations has been truncated, see
72
- # {WhopSDK::Models::CourseCreateParams::Thumbnail} for more details.
73
- #
74
- # The thumbnail for the course in png, jpeg, or gif format
75
- #
76
- # @param id [String, nil] The ID of an existing attachment object. Use this when updating a resource and k
77
- #
78
- # @param direct_upload_id [String, nil] This ID should be used the first time you upload an attachment. It is the ID of
74
+ # The thumbnail for the course in png, jpeg, or gif format
75
+ module Thumbnail
76
+ extend WhopSDK::Internal::Type::Union
77
+
78
+ # Input for an attachment
79
+ variant -> { WhopSDK::CourseCreateParams::Thumbnail::AttachmentInputWithDirectUploadID }
80
+
81
+ # Input for an attachment
82
+ variant -> { WhopSDK::CourseCreateParams::Thumbnail::AttachmentInputWithID }
83
+
84
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
85
+ # @!attribute direct_upload_id
86
+ # This ID should be used the first time you upload an attachment. It is the ID of
87
+ # the direct upload that was created when uploading the file to S3 via the
88
+ # mediaDirectUpload mutation.
89
+ #
90
+ # @return [String]
91
+ required :direct_upload_id, String
92
+
93
+ # @!method initialize(direct_upload_id:)
94
+ # Some parameter documentations has been truncated, see
95
+ # {WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithDirectUploadID}
96
+ # for more details.
97
+ #
98
+ # Input for an attachment
99
+ #
100
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
101
+ end
102
+
103
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
104
+ # @!attribute id
105
+ # The ID of an existing attachment object. Use this when updating a resource and
106
+ # keeping a subset of the attachments. Don't use this unless you know what you're
107
+ # doing.
108
+ #
109
+ # @return [String]
110
+ required :id, String
111
+
112
+ # @!method initialize(id:)
113
+ # Some parameter documentations has been truncated, see
114
+ # {WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithID} for more
115
+ # details.
116
+ #
117
+ # Input for an attachment
118
+ #
119
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
120
+ end
121
+
122
+ # @!method self.variants
123
+ # @return [Array(WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithDirectUploadID, WhopSDK::Models::CourseCreateParams::Thumbnail::AttachmentInputWithID)]
79
124
  end
80
125
  end
81
126
  end