Class: WhopSDK::Resources::Experiences
- Inherits:
-
Object
- Object
- WhopSDK::Resources::Experiences
- Defined in:
- lib/whop_sdk/resources/experiences.rb
Instance Method Summary collapse
-
#attach(id, product_id: , request_options: {}) ⇒ WhopSDK::Models::Experience
Adds an experience to an product, making it accessible to the product’s customers.
-
#create(app_id: , company_id: , name: nil, section_id: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Required permissions:.
-
#delete(id, request_options: {}) ⇒ Boolean
Required permissions:.
-
#detach(id, product_id: , request_options: {}) ⇒ WhopSDK::Models::Experience
Removes an experience from an product, making it inaccessible to the product’s customers.
-
#duplicate(id, name: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Duplicates an existing experience.
-
#initialize(client:) ⇒ Experiences
constructor
private
A new instance of Experiences.
-
#list(company_id: , after: nil, app_id: nil, before: nil, first: nil, last: nil, product_id: nil, request_options: {}) ⇒ WhopSDK::Internal::CursorPage<WhopSDK::Models::ExperienceListResponse>
Lists experiences for a company.
-
#retrieve(id, request_options: {}) ⇒ WhopSDK::Models::Experience
Retrieves an experience by ID.
-
#update(id, access_level: nil, logo: nil, name: nil, order: nil, section_id: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Required permissions:.
Constructor Details
#initialize(client:) ⇒ Experiences
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Experiences.
243 244 245 |
# File 'lib/whop_sdk/resources/experiences.rb', line 243 def initialize(client:) @client = client end |
Instance Method Details
#attach(id, product_id: , request_options: {}) ⇒ WhopSDK::Models::Experience
Adds an experience to an product, making it accessible to the product’s customers.
Required permissions:
-
‘experience:attach`
167 168 169 170 171 172 173 174 175 176 |
# File 'lib/whop_sdk/resources/experiences.rb', line 167 def attach(id, params) parsed, = WhopSDK::ExperienceAttachParams.dump_request(params) @client.request( method: :post, path: ["experiences/%1$s/attach", id], body: parsed, model: WhopSDK::Experience, options: ) end |
#create(app_id: , company_id: , name: nil, section_id: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Required permissions:
-
‘experience:create`
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/whop_sdk/resources/experiences.rb', line 25 def create(params) parsed, = WhopSDK::ExperienceCreateParams.dump_request(params) @client.request( method: :post, path: "experiences", body: parsed, model: WhopSDK::Experience, options: ) end |
#delete(id, request_options: {}) ⇒ Boolean
Required permissions:
-
‘experience:delete`
140 141 142 143 144 145 146 147 |
# File 'lib/whop_sdk/resources/experiences.rb', line 140 def delete(id, params = {}) @client.request( method: :delete, path: ["experiences/%1$s", id], model: WhopSDK::Internal::Type::Boolean, options: params[:request_options] ) end |
#detach(id, product_id: , request_options: {}) ⇒ WhopSDK::Models::Experience
Removes an experience from an product, making it inaccessible to the product’s customers.
Required permissions:
-
‘experience:detach`
196 197 198 199 200 201 202 203 204 205 |
# File 'lib/whop_sdk/resources/experiences.rb', line 196 def detach(id, params) parsed, = WhopSDK::ExperienceDetachParams.dump_request(params) @client.request( method: :post, path: ["experiences/%1$s/detach", id], body: parsed, model: WhopSDK::Experience, options: ) end |
#duplicate(id, name: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Duplicates an existing experience. The name will be copied, unless provided. The new experience will be attached to the same products as the original experience. If duplicating a Forum or Chat experience, the new experience will have the same settings as the original experience, e.g. who can post, who can comment, etc. No content, e.g. posts, messages, lessons from within the original experience will be copied.
Required permissions:
-
‘experience:create`
229 230 231 232 233 234 235 236 237 238 |
# File 'lib/whop_sdk/resources/experiences.rb', line 229 def duplicate(id, params = {}) parsed, = WhopSDK::ExperienceDuplicateParams.dump_request(params) @client.request( method: :post, path: ["experiences/%1$s/duplicate", id], body: parsed, model: WhopSDK::Experience, options: ) end |
#list(company_id: , after: nil, app_id: nil, before: nil, first: nil, last: nil, product_id: nil, request_options: {}) ⇒ WhopSDK::Internal::CursorPage<WhopSDK::Models::ExperienceListResponse>
Lists experiences for a company
Required permissions:
-
‘experience:hidden_experience:read`
116 117 118 119 120 121 122 123 124 125 126 |
# File 'lib/whop_sdk/resources/experiences.rb', line 116 def list(params) parsed, = WhopSDK::ExperienceListParams.dump_request(params) @client.request( method: :get, path: "experiences", query: parsed, page: WhopSDK::Internal::CursorPage, model: WhopSDK::Models::ExperienceListResponse, options: ) end |
#retrieve(id, request_options: {}) ⇒ WhopSDK::Models::Experience
Retrieves an experience by ID
46 47 48 49 50 51 52 53 |
# File 'lib/whop_sdk/resources/experiences.rb', line 46 def retrieve(id, params = {}) @client.request( method: :get, path: ["experiences/%1$s", id], model: WhopSDK::Experience, options: params[:request_options] ) end |
#update(id, access_level: nil, logo: nil, name: nil, order: nil, section_id: nil, request_options: {}) ⇒ WhopSDK::Models::Experience
Required permissions:
-
‘experience:update`
78 79 80 81 82 83 84 85 86 87 |
# File 'lib/whop_sdk/resources/experiences.rb', line 78 def update(id, params = {}) parsed, = WhopSDK::ExperienceUpdateParams.dump_request(params) @client.request( method: :patch, path: ["experiences/%1$s", id], body: parsed, model: WhopSDK::Experience, options: ) end |