Class: Whop_sdk::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/whop_sdk/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(token:, base_url: nil, api_version_date: "2026-08-21-1", idempotency_key: nil, max_retries: 2) ⇒ void

Parameters:

  • token (String)
  • base_url (String, nil) (defaults to: nil)
  • api_version_date (String, nil) (defaults to: "2026-08-21-1")
  • idempotency_key (String, nil) (defaults to: nil)
  • max_retries (Integer) (defaults to: 2)


12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/whop_sdk/client.rb', line 12

def initialize(token:, base_url: nil, api_version_date: "2026-08-21-1", idempotency_key: nil, max_retries: 2)
  headers = {
    "X-Fern-Language" => "Ruby",
    Authorization: "Bearer #{token}",
    "Api-Version-Date" => api_version_date.to_s
  }
  headers["Idempotency-Key"] = idempotency_key.to_s unless idempotency_key.nil?
  @raw_client = Whop_sdk::Internal::Http::RawClient.new(
    base_url: base_url || Whop_sdk::Environment::DEFAULT,
    headers: headers,
    overridable_headers: %w[Api-Version-Date Idempotency-Key],
    max_retries: max_retries
  )
end

Instance Method Details

#access_tokensWhop_sdk::AccessTokens::Client



28
29
30
# File 'lib/whop_sdk/client.rb', line 28

def access_tokens
  @access_tokens ||= Whop_sdk::AccessTokens::Client.new(client: @raw_client)
end


33
34
35
# File 'lib/whop_sdk/client.rb', line 33

def 
  @account_links ||= Whop_sdk::AccountLinks::Client.new(client: @raw_client)
end

#accountsWhop_sdk::Accounts::Client



38
39
40
# File 'lib/whop_sdk/client.rb', line 38

def accounts
  @accounts ||= Whop_sdk::Accounts::Client.new(client: @raw_client)
end

#ad_campaignsWhop_sdk::AdCampaigns::Client



43
44
45
# File 'lib/whop_sdk/client.rb', line 43

def ad_campaigns
  @ad_campaigns ||= Whop_sdk::AdCampaigns::Client.new(client: @raw_client)
end

#ad_groupsWhop_sdk::AdGroups::Client



48
49
50
# File 'lib/whop_sdk/client.rb', line 48

def ad_groups
  @ad_groups ||= Whop_sdk::AdGroups::Client.new(client: @raw_client)
end

#ad_reportsWhop_sdk::AdReports::Client



53
54
55
# File 'lib/whop_sdk/client.rb', line 53

def ad_reports
  @ad_reports ||= Whop_sdk::AdReports::Client.new(client: @raw_client)
end

#adsWhop_sdk::Ads::Client



58
59
60
# File 'lib/whop_sdk/client.rb', line 58

def ads
  @ads ||= Whop_sdk::Ads::Client.new(client: @raw_client)
end

#affiliatesWhop_sdk::Affiliates::Client



63
64
65
# File 'lib/whop_sdk/client.rb', line 63

def affiliates
  @affiliates ||= Whop_sdk::Affiliates::Client.new(client: @raw_client)
end

#ai_chatsWhop_sdk::AiChats::Client



68
69
70
# File 'lib/whop_sdk/client.rb', line 68

def ai_chats
  @ai_chats ||= Whop_sdk::AiChats::Client.new(client: @raw_client)
end

#api_keysWhop_sdk::APIKeys::Client



73
74
75
# File 'lib/whop_sdk/client.rb', line 73

def api_keys
  @api_keys ||= Whop_sdk::APIKeys::Client.new(client: @raw_client)
end

#app_buildsWhop_sdk::AppBuilds::Client



78
79
80
# File 'lib/whop_sdk/client.rb', line 78

def app_builds
  @app_builds ||= Whop_sdk::AppBuilds::Client.new(client: @raw_client)
end

#appsWhop_sdk::Apps::Client



83
84
85
# File 'lib/whop_sdk/client.rb', line 83

def apps
  @apps ||= Whop_sdk::Apps::Client.new(client: @raw_client)
end

#audiencesWhop_sdk::Audiences::Client



88
89
90
# File 'lib/whop_sdk/client.rb', line 88

def audiences
  @audiences ||= Whop_sdk::Audiences::Client.new(client: @raw_client)
end

#authorized_usersWhop_sdk::AuthorizedUsers::Client



93
94
95
# File 'lib/whop_sdk/client.rb', line 93

def authorized_users
  @authorized_users ||= Whop_sdk::AuthorizedUsers::Client.new(client: @raw_client)
end

#bountiesWhop_sdk::Bounties::Client



98
99
100
# File 'lib/whop_sdk/client.rb', line 98

def bounties
  @bounties ||= Whop_sdk::Bounties::Client.new(client: @raw_client)
end

#bounty_submissionsWhop_sdk::BountySubmissions::Client



103
104
105
# File 'lib/whop_sdk/client.rb', line 103

def bounty_submissions
  @bounty_submissions ||= Whop_sdk::BountySubmissions::Client.new(client: @raw_client)
end

#card_transactionsWhop_sdk::CardTransactions::Client



108
109
110
# File 'lib/whop_sdk/client.rb', line 108

def card_transactions
  @card_transactions ||= Whop_sdk::CardTransactions::Client.new(client: @raw_client)
end

#cardsWhop_sdk::Cards::Client



113
114
115
# File 'lib/whop_sdk/client.rb', line 113

def cards
  @cards ||= Whop_sdk::Cards::Client.new(client: @raw_client)
end

#chat_channelsWhop_sdk::ChatChannels::Client



118
119
120
# File 'lib/whop_sdk/client.rb', line 118

def chat_channels
  @chat_channels ||= Whop_sdk::ChatChannels::Client.new(client: @raw_client)
end

#checkout_configurationsWhop_sdk::CheckoutConfigurations::Client



123
124
125
# File 'lib/whop_sdk/client.rb', line 123

def checkout_configurations
  @checkout_configurations ||= Whop_sdk::CheckoutConfigurations::Client.new(client: @raw_client)
end

#checkout_sessionsWhop_sdk::CheckoutSessions::Client



128
129
130
# File 'lib/whop_sdk/client.rb', line 128

def checkout_sessions
  @checkout_sessions ||= Whop_sdk::CheckoutSessions::Client.new(client: @raw_client)
end

#companiesWhop_sdk::Companies::Client



133
134
135
# File 'lib/whop_sdk/client.rb', line 133

def companies
  @companies ||= Whop_sdk::Companies::Client.new(client: @raw_client)
end

#company_token_transactionsWhop_sdk::CompanyTokenTransactions::Client



138
139
140
# File 'lib/whop_sdk/client.rb', line 138

def company_token_transactions
  @company_token_transactions ||= Whop_sdk::CompanyTokenTransactions::Client.new(client: @raw_client)
end

#course_chaptersWhop_sdk::CourseChapters::Client



143
144
145
# File 'lib/whop_sdk/client.rb', line 143

def course_chapters
  @course_chapters ||= Whop_sdk::CourseChapters::Client.new(client: @raw_client)
end

#course_lesson_interactionsWhop_sdk::CourseLessonInteractions::Client



148
149
150
# File 'lib/whop_sdk/client.rb', line 148

def course_lesson_interactions
  @course_lesson_interactions ||= Whop_sdk::CourseLessonInteractions::Client.new(client: @raw_client)
end

#course_lessonsWhop_sdk::CourseLessons::Client



153
154
155
# File 'lib/whop_sdk/client.rb', line 153

def course_lessons
  @course_lessons ||= Whop_sdk::CourseLessons::Client.new(client: @raw_client)
end

#course_studentsWhop_sdk::CourseStudents::Client



158
159
160
# File 'lib/whop_sdk/client.rb', line 158

def course_students
  @course_students ||= Whop_sdk::CourseStudents::Client.new(client: @raw_client)
end

#coursesWhop_sdk::Courses::Client



163
164
165
# File 'lib/whop_sdk/client.rb', line 163

def courses
  @courses ||= Whop_sdk::Courses::Client.new(client: @raw_client)
end

#depositsWhop_sdk::Deposits::Client



168
169
170
# File 'lib/whop_sdk/client.rb', line 168

def deposits
  @deposits ||= Whop_sdk::Deposits::Client.new(client: @raw_client)
end

#dispute_alertsWhop_sdk::DisputeAlerts::Client



173
174
175
# File 'lib/whop_sdk/client.rb', line 173

def dispute_alerts
  @dispute_alerts ||= Whop_sdk::DisputeAlerts::Client.new(client: @raw_client)
end

#disputesWhop_sdk::Disputes::Client



178
179
180
# File 'lib/whop_sdk/client.rb', line 178

def disputes
  @disputes ||= Whop_sdk::Disputes::Client.new(client: @raw_client)
end

#dm_channelsWhop_sdk::DmChannels::Client



183
184
185
# File 'lib/whop_sdk/client.rb', line 183

def dm_channels
  @dm_channels ||= Whop_sdk::DmChannels::Client.new(client: @raw_client)
end

#dm_membersWhop_sdk::DmMembers::Client



188
189
190
# File 'lib/whop_sdk/client.rb', line 188

def dm_members
  @dm_members ||= Whop_sdk::DmMembers::Client.new(client: @raw_client)
end

#entriesWhop_sdk::Entries::Client



193
194
195
# File 'lib/whop_sdk/client.rb', line 193

def entries
  @entries ||= Whop_sdk::Entries::Client.new(client: @raw_client)
end

#eventsWhop_sdk::Events::Client



198
199
200
# File 'lib/whop_sdk/client.rb', line 198

def events
  @events ||= Whop_sdk::Events::Client.new(client: @raw_client)
end

#experiencesWhop_sdk::Experiences::Client



203
204
205
# File 'lib/whop_sdk/client.rb', line 203

def experiences
  @experiences ||= Whop_sdk::Experiences::Client.new(client: @raw_client)
end

#exportsWhop_sdk::Exports::Client



208
209
210
# File 'lib/whop_sdk/client.rb', line 208

def exports
  @exports ||= Whop_sdk::Exports::Client.new(client: @raw_client)
end

#fee_markupsWhop_sdk::FeeMarkups::Client



213
214
215
# File 'lib/whop_sdk/client.rb', line 213

def fee_markups
  @fee_markups ||= Whop_sdk::FeeMarkups::Client.new(client: @raw_client)
end

#filesWhop_sdk::Files::Client



218
219
220
# File 'lib/whop_sdk/client.rb', line 218

def files
  @files ||= Whop_sdk::Files::Client.new(client: @raw_client)
end

#financial_activityWhop_sdk::FinancialActivity::Client



223
224
225
# File 'lib/whop_sdk/client.rb', line 223

def financial_activity
  @financial_activity ||= Whop_sdk::FinancialActivity::Client.new(client: @raw_client)
end

#forum_postsWhop_sdk::ForumPosts::Client



233
234
235
# File 'lib/whop_sdk/client.rb', line 233

def forum_posts
  @forum_posts ||= Whop_sdk::ForumPosts::Client.new(client: @raw_client)
end

#forumsWhop_sdk::Forums::Client



238
239
240
# File 'lib/whop_sdk/client.rb', line 238

def forums
  @forums ||= Whop_sdk::Forums::Client.new(client: @raw_client)
end

#identity_profilesWhop_sdk::IdentityProfiles::Client



243
244
245
# File 'lib/whop_sdk/client.rb', line 243

def identity_profiles
  @identity_profiles ||= Whop_sdk::IdentityProfiles::Client.new(client: @raw_client)
end

#invoicesWhop_sdk::Invoices::Client



248
249
250
# File 'lib/whop_sdk/client.rb', line 248

def invoices
  @invoices ||= Whop_sdk::Invoices::Client.new(client: @raw_client)
end

#leadsWhop_sdk::Leads::Client



253
254
255
# File 'lib/whop_sdk/client.rb', line 253

def leads
  @leads ||= Whop_sdk::Leads::Client.new(client: @raw_client)
end

#ledger_accountsWhop_sdk::LedgerAccounts::Client



258
259
260
# File 'lib/whop_sdk/client.rb', line 258

def ledger_accounts
  @ledger_accounts ||= Whop_sdk::LedgerAccounts::Client.new(client: @raw_client)
end

#ledgersWhop_sdk::Ledgers::Client



228
229
230
# File 'lib/whop_sdk/client.rb', line 228

def ledgers
  @ledgers ||= Whop_sdk::Ledgers::Client.new(client: @raw_client)
end

#mediaWhop_sdk::Media::Client



263
264
265
# File 'lib/whop_sdk/client.rb', line 263

def media
  @media ||= Whop_sdk::Media::Client.new(client: @raw_client)
end

#membersWhop_sdk::Members::Client



268
269
270
# File 'lib/whop_sdk/client.rb', line 268

def members
  @members ||= Whop_sdk::Members::Client.new(client: @raw_client)
end

#membershipsWhop_sdk::Memberships::Client



273
274
275
# File 'lib/whop_sdk/client.rb', line 273

def memberships
  @memberships ||= Whop_sdk::Memberships::Client.new(client: @raw_client)
end

#messagesWhop_sdk::Messages::Client



278
279
280
# File 'lib/whop_sdk/client.rb', line 278

def messages
  @messages ||= Whop_sdk::Messages::Client.new(client: @raw_client)
end

#notificationsWhop_sdk::Notifications::Client



283
284
285
# File 'lib/whop_sdk/client.rb', line 283

def notifications
  @notifications ||= Whop_sdk::Notifications::Client.new(client: @raw_client)
end

#partnersWhop_sdk::Partners::Client



288
289
290
# File 'lib/whop_sdk/client.rb', line 288

def partners
  @partners ||= Whop_sdk::Partners::Client.new(client: @raw_client)
end

#payment_method_domainsWhop_sdk::PaymentMethodDomains::Client



293
294
295
# File 'lib/whop_sdk/client.rb', line 293

def payment_method_domains
  @payment_method_domains ||= Whop_sdk::PaymentMethodDomains::Client.new(client: @raw_client)
end

#payment_methodsWhop_sdk::PaymentMethods::Client



298
299
300
# File 'lib/whop_sdk/client.rb', line 298

def payment_methods
  @payment_methods ||= Whop_sdk::PaymentMethods::Client.new(client: @raw_client)
end

#paymentsWhop_sdk::Payments::Client



303
304
305
# File 'lib/whop_sdk/client.rb', line 303

def payments
  @payments ||= Whop_sdk::Payments::Client.new(client: @raw_client)
end

#payout_accountsWhop_sdk::PayoutAccounts::Client



308
309
310
# File 'lib/whop_sdk/client.rb', line 308

def payout_accounts
  @payout_accounts ||= Whop_sdk::PayoutAccounts::Client.new(client: @raw_client)
end

#payout_methodsWhop_sdk::PayoutMethods::Client



313
314
315
# File 'lib/whop_sdk/client.rb', line 313

def payout_methods
  @payout_methods ||= Whop_sdk::PayoutMethods::Client.new(client: @raw_client)
end

#payoutsWhop_sdk::Payouts::Client



318
319
320
# File 'lib/whop_sdk/client.rb', line 318

def payouts
  @payouts ||= Whop_sdk::Payouts::Client.new(client: @raw_client)
end

#peopleWhop_sdk::People::Client



323
324
325
# File 'lib/whop_sdk/client.rb', line 323

def people
  @people ||= Whop_sdk::People::Client.new(client: @raw_client)
end

#permissionsWhop_sdk::Permissions::Client



328
329
330
# File 'lib/whop_sdk/client.rb', line 328

def permissions
  @permissions ||= Whop_sdk::Permissions::Client.new(client: @raw_client)
end

#plansWhop_sdk::Plans::Client



333
334
335
# File 'lib/whop_sdk/client.rb', line 333

def plans
  @plans ||= Whop_sdk::Plans::Client.new(client: @raw_client)
end

#productsWhop_sdk::Products::Client



338
339
340
# File 'lib/whop_sdk/client.rb', line 338

def products
  @products ||= Whop_sdk::Products::Client.new(client: @raw_client)
end

#promo_codesWhop_sdk::PromoCodes::Client



343
344
345
# File 'lib/whop_sdk/client.rb', line 343

def promo_codes
  @promo_codes ||= Whop_sdk::PromoCodes::Client.new(client: @raw_client)
end

#reactionsWhop_sdk::Reactions::Client



348
349
350
# File 'lib/whop_sdk/client.rb', line 348

def reactions
  @reactions ||= Whop_sdk::Reactions::Client.new(client: @raw_client)
end


353
354
355
# File 'lib/whop_sdk/client.rb', line 353

def recommended_actions
  @recommended_actions ||= Whop_sdk::RecommendedActions::Client.new(client: @raw_client)
end

#refundsWhop_sdk::Refunds::Client



358
359
360
# File 'lib/whop_sdk/client.rb', line 358

def refunds
  @refunds ||= Whop_sdk::Refunds::Client.new(client: @raw_client)
end

#resolution_center_casesWhop_sdk::ResolutionCenterCases::Client



363
364
365
# File 'lib/whop_sdk/client.rb', line 363

def resolution_center_cases
  @resolution_center_cases ||= Whop_sdk::ResolutionCenterCases::Client.new(client: @raw_client)
end

#reviewsWhop_sdk::Reviews::Client



368
369
370
# File 'lib/whop_sdk/client.rb', line 368

def reviews
  @reviews ||= Whop_sdk::Reviews::Client.new(client: @raw_client)
end

#setup_intentsWhop_sdk::SetupIntents::Client



373
374
375
# File 'lib/whop_sdk/client.rb', line 373

def setup_intents
  @setup_intents ||= Whop_sdk::SetupIntents::Client.new(client: @raw_client)
end

#shipmentsWhop_sdk::Shipments::Client



378
379
380
# File 'lib/whop_sdk/client.rb', line 378

def shipments
  @shipments ||= Whop_sdk::Shipments::Client.new(client: @raw_client)
end

#social_accountsWhop_sdk::SocialAccounts::Client



383
384
385
# File 'lib/whop_sdk/client.rb', line 383

def social_accounts
  @social_accounts ||= Whop_sdk::SocialAccounts::Client.new(client: @raw_client)
end

#statsWhop_sdk::Stats::Client



388
389
390
# File 'lib/whop_sdk/client.rb', line 388

def stats
  @stats ||= Whop_sdk::Stats::Client.new(client: @raw_client)
end

#support_channelsWhop_sdk::SupportChannels::Client



393
394
395
# File 'lib/whop_sdk/client.rb', line 393

def support_channels
  @support_channels ||= Whop_sdk::SupportChannels::Client.new(client: @raw_client)
end

#swapsWhop_sdk::Swaps::Client



398
399
400
# File 'lib/whop_sdk/client.rb', line 398

def swaps
  @swaps ||= Whop_sdk::Swaps::Client.new(client: @raw_client)
end

#team_membersWhop_sdk::TeamMembers::Client



403
404
405
# File 'lib/whop_sdk/client.rb', line 403

def team_members
  @team_members ||= Whop_sdk::TeamMembers::Client.new(client: @raw_client)
end

#topupsWhop_sdk::Topups::Client



408
409
410
# File 'lib/whop_sdk/client.rb', line 408

def topups
  @topups ||= Whop_sdk::Topups::Client.new(client: @raw_client)
end

#transfersWhop_sdk::Transfers::Client



413
414
415
# File 'lib/whop_sdk/client.rb', line 413

def transfers
  @transfers ||= Whop_sdk::Transfers::Client.new(client: @raw_client)
end

#usersWhop_sdk::Users::Client



418
419
420
# File 'lib/whop_sdk/client.rb', line 418

def users
  @users ||= Whop_sdk::Users::Client.new(client: @raw_client)
end

#verificationsWhop_sdk::Verifications::Client



423
424
425
# File 'lib/whop_sdk/client.rb', line 423

def verifications
  @verifications ||= Whop_sdk::Verifications::Client.new(client: @raw_client)
end

#webhooksWhop_sdk::Webhooks::Client



428
429
430
# File 'lib/whop_sdk/client.rb', line 428

def webhooks
  @webhooks ||= Whop_sdk::Webhooks::Client.new(client: @raw_client)
end

#withdrawalsWhop_sdk::Withdrawals::Client



433
434
435
# File 'lib/whop_sdk/client.rb', line 433

def withdrawals
  @withdrawals ||= Whop_sdk::Withdrawals::Client.new(client: @raw_client)
end