diff --git a/.gitignore b/.gitignore index 3d26ceed..fc9eb287 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ .idea/ .ignore .prism.log +.stdy.log .ruby-lsp/ .yardoc/ bin/tapioca diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 9682ed86..cacb3a0e 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.0.35" + ".": "0.0.36" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index c2e464bf..e45843d7 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 191 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/frostedinc%2Fwhopsdk-97e920db587b07c064bef1bf31de5e110a3750ddfddc8fca26642e79e6b827f8.yml -openapi_spec_hash: 97ca16cc55271602443a4329d1e02895 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/frostedinc%2Fwhopsdk-47d955d6b9631b4ad43668426ff3867e9d7566926680ea2b4c4bd16869ccaff5.yml +openapi_spec_hash: d8f3bb32c233225f85b20b69318dada9 config_hash: 1a836d20bb988f001cc66d1526f71306 diff --git a/CHANGELOG.md b/CHANGELOG.md index 30f26638..7c9f6c0d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## 0.0.36 (2026-03-23) + +Full Changelog: [v0.0.35...v0.0.36](https://github.com/whopio/whopsdk-ruby/compare/v0.0.35...v0.0.36) + +### Features + +* **api:** api update ([eaacc3d](https://github.com/whopio/whopsdk-ruby/commit/eaacc3d5f6a85e8fa2a13d4b9cb57eb390801b90)) +* **api:** api update ([c1ce4e0](https://github.com/whopio/whopsdk-ruby/commit/c1ce4e08b7a1c33b6e43da9c81d00a4cba547067)) +* **api:** api update ([bc8226e](https://github.com/whopio/whopsdk-ruby/commit/bc8226e36a365d09cd1503725ca24106f45633a6)) + + +### Chores + +* **internal:** update gitignore ([70a6981](https://github.com/whopio/whopsdk-ruby/commit/70a69813a7a9afdeebf401362aa020f851cc4ac8)) + ## 0.0.35 (2026-03-18) Full Changelog: [v0.0.34...v0.0.35](https://github.com/whopio/whopsdk-ruby/compare/v0.0.34...v0.0.35) diff --git a/Gemfile.lock b/Gemfile.lock index 3ffd2371..6b1e00f1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,7 +11,7 @@ GIT PATH remote: . specs: - whop_sdk (0.0.35) + whop_sdk (0.0.36) cgi connection_pool standardwebhooks diff --git a/README.md b/README.md index 857ec72c..759c64eb 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "whop_sdk", "~> 0.0.35" +gem "whop_sdk", "~> 0.0.36" ``` diff --git a/lib/whop_sdk/models/affiliate.rb b/lib/whop_sdk/models/affiliate.rb index 4a965873..eb1d26e5 100644 --- a/lib/whop_sdk/models/affiliate.rb +++ b/lib/whop_sdk/models/affiliate.rb @@ -29,19 +29,20 @@ class Affiliate < WhopSDK::Internal::Type::BaseModel required :created_at, Time # @!attribute customer_retention_rate - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members # # @return [String] required :customer_retention_rate, String # @!attribute customer_retention_rate_ninety_days - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days # # @return [String] required :customer_retention_rate_ninety_days, String # @!attribute monthly_recurring_revenue_usd - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string # # @return [String] required :monthly_recurring_revenue_usd, String @@ -59,7 +60,8 @@ class Affiliate < WhopSDK::Internal::Type::BaseModel required :total_overrides_count, Integer # @!attribute total_referral_earnings_usd - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string # # @return [String] required :total_referral_earnings_usd, String @@ -71,7 +73,8 @@ class Affiliate < WhopSDK::Internal::Type::BaseModel required :total_referrals_count, Integer # @!attribute total_revenue_usd - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string # # @return [String] required :total_revenue_usd, String @@ -89,7 +92,11 @@ class Affiliate < WhopSDK::Internal::Type::BaseModel required :user, -> { WhopSDK::Affiliate::User } # @!method initialize(id:, active_members_count:, company:, created_at:, customer_retention_rate:, customer_retention_rate_ninety_days:, monthly_recurring_revenue_usd:, status:, total_overrides_count:, total_referral_earnings_usd:, total_referrals_count:, total_revenue_usd:, updated_at:, user:) - # An affiliate of a company or a global affiliate + # Some parameter documentations has been truncated, see + # {WhopSDK::Models::Affiliate} for more details. + # + # An affiliate tracks a user's referral performance and commission earnings for a + # company, including retention rates, revenue metrics, and payout configurations. # # @param id [String] The unique identifier for the affiliate. # @@ -99,21 +106,21 @@ class Affiliate < WhopSDK::Internal::Type::BaseModel # # @param created_at [Time] The datetime the affiliate was created. # - # @param customer_retention_rate [String] How many referrals have remained since they joined as members + # @param customer_retention_rate [String] The percentage of referred customers who are still active members # - # @param customer_retention_rate_ninety_days [String] A rolling 90-day retention rate for this affiliate + # @param customer_retention_rate_ninety_days [String] The percentage of referred customers who remained active over the last 90 days # - # @param monthly_recurring_revenue_usd [String] The total MRR of the affiliate + # @param monthly_recurring_revenue_usd [String] The monthly recurring revenue generated by this affiliate's referrals, formatted # # @param status [Symbol, WhopSDK::Models::Status, nil] Statuses for resources # # @param total_overrides_count [Integer] The total count of all overrides for this affiliate # - # @param total_referral_earnings_usd [String] The total earnings of the affiliate from the users they referred + # @param total_referral_earnings_usd [String] The total commission earnings paid to this affiliate, formatted as a USD currenc # # @param total_referrals_count [Integer] The total referrals of the affiliate # - # @param total_revenue_usd [String] The total revenue of the affiliate from their referrals + # @param total_revenue_usd [String] The total revenue generated from this affiliate's referrals, formatted as a USD # # @param updated_at [Time] The datetime the affiliate was last updated. # diff --git a/lib/whop_sdk/models/affiliate_list_response.rb b/lib/whop_sdk/models/affiliate_list_response.rb index 1968ec5a..f263506a 100644 --- a/lib/whop_sdk/models/affiliate_list_response.rb +++ b/lib/whop_sdk/models/affiliate_list_response.rb @@ -29,19 +29,20 @@ class AffiliateListResponse < WhopSDK::Internal::Type::BaseModel required :created_at, Time # @!attribute customer_retention_rate - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members # # @return [String] required :customer_retention_rate, String # @!attribute customer_retention_rate_ninety_days - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days # # @return [String] required :customer_retention_rate_ninety_days, String # @!attribute monthly_recurring_revenue_usd - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string # # @return [String] required :monthly_recurring_revenue_usd, String @@ -59,7 +60,8 @@ class AffiliateListResponse < WhopSDK::Internal::Type::BaseModel required :total_overrides_count, Integer # @!attribute total_referral_earnings_usd - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string # # @return [String] required :total_referral_earnings_usd, String @@ -71,7 +73,8 @@ class AffiliateListResponse < WhopSDK::Internal::Type::BaseModel required :total_referrals_count, Integer # @!attribute total_revenue_usd - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string # # @return [String] required :total_revenue_usd, String @@ -89,7 +92,11 @@ class AffiliateListResponse < WhopSDK::Internal::Type::BaseModel required :user, -> { WhopSDK::Models::AffiliateListResponse::User } # @!method initialize(id:, active_members_count:, company:, created_at:, customer_retention_rate:, customer_retention_rate_ninety_days:, monthly_recurring_revenue_usd:, status:, total_overrides_count:, total_referral_earnings_usd:, total_referrals_count:, total_revenue_usd:, updated_at:, user:) - # An affiliate of a company or a global affiliate + # Some parameter documentations has been truncated, see + # {WhopSDK::Models::AffiliateListResponse} for more details. + # + # An affiliate tracks a user's referral performance and commission earnings for a + # company, including retention rates, revenue metrics, and payout configurations. # # @param id [String] The unique identifier for the affiliate. # @@ -99,21 +106,21 @@ class AffiliateListResponse < WhopSDK::Internal::Type::BaseModel # # @param created_at [Time] The datetime the affiliate was created. # - # @param customer_retention_rate [String] How many referrals have remained since they joined as members + # @param customer_retention_rate [String] The percentage of referred customers who are still active members # - # @param customer_retention_rate_ninety_days [String] A rolling 90-day retention rate for this affiliate + # @param customer_retention_rate_ninety_days [String] The percentage of referred customers who remained active over the last 90 days # - # @param monthly_recurring_revenue_usd [String] The total MRR of the affiliate + # @param monthly_recurring_revenue_usd [String] The monthly recurring revenue generated by this affiliate's referrals, formatted # # @param status [Symbol, WhopSDK::Models::Status, nil] Statuses for resources # # @param total_overrides_count [Integer] The total count of all overrides for this affiliate # - # @param total_referral_earnings_usd [String] The total earnings of the affiliate from the users they referred + # @param total_referral_earnings_usd [String] The total commission earnings paid to this affiliate, formatted as a USD currenc # # @param total_referrals_count [Integer] The total referrals of the affiliate # - # @param total_revenue_usd [String] The total revenue of the affiliate from their referrals + # @param total_revenue_usd [String] The total revenue generated from this affiliate's referrals, formatted as a USD # # @param updated_at [Time] The datetime the affiliate was last updated. # diff --git a/lib/whop_sdk/models/affiliates/override_create_response.rb b/lib/whop_sdk/models/affiliates/override_create_response.rb index b64ac8ce..36d4eeba 100644 --- a/lib/whop_sdk/models/affiliates/override_create_response.rb +++ b/lib/whop_sdk/models/affiliates/override_create_response.rb @@ -44,7 +44,8 @@ class OverrideCreateResponse < WhopSDK::Internal::Type::BaseModel required :commission_type, enum: -> { WhopSDK::Affiliates::AffiliatePayoutTypes } # @!attribute commission_value - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. # # @return [Float] required :commission_value, Float @@ -90,7 +91,8 @@ class OverrideCreateResponse < WhopSDK::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {WhopSDK::Models::Affiliates::OverrideCreateResponse} for more details. # - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share # # @param id [String] The unique identifier for the affiliate override. # @@ -102,7 +104,7 @@ class OverrideCreateResponse < WhopSDK::Internal::Type::BaseModel # # @param commission_type [Symbol, WhopSDK::Models::Affiliates::AffiliatePayoutTypes] The type of commission (percentage or flat_fee). # - # @param commission_value [Float] The commission value (percentage 1-100 or flat fee in dollars). + # @param commission_value [Float] The commission amount. A percentage (1-100) when commission_type is percentage, # # @param override_type [Symbol, WhopSDK::Models::Affiliates::AffiliateOverrideRoles] The type of override (standard or rev_share). # diff --git a/lib/whop_sdk/models/affiliates/override_list_response.rb b/lib/whop_sdk/models/affiliates/override_list_response.rb index 17be44e4..2f1aeb14 100644 --- a/lib/whop_sdk/models/affiliates/override_list_response.rb +++ b/lib/whop_sdk/models/affiliates/override_list_response.rb @@ -44,7 +44,8 @@ class OverrideListResponse < WhopSDK::Internal::Type::BaseModel required :commission_type, enum: -> { WhopSDK::Affiliates::AffiliatePayoutTypes } # @!attribute commission_value - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. # # @return [Float] required :commission_value, Float @@ -90,7 +91,8 @@ class OverrideListResponse < WhopSDK::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {WhopSDK::Models::Affiliates::OverrideListResponse} for more details. # - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share # # @param id [String] The unique identifier for the affiliate override. # @@ -102,7 +104,7 @@ class OverrideListResponse < WhopSDK::Internal::Type::BaseModel # # @param commission_type [Symbol, WhopSDK::Models::Affiliates::AffiliatePayoutTypes] The type of commission (percentage or flat_fee). # - # @param commission_value [Float] The commission value (percentage 1-100 or flat fee in dollars). + # @param commission_value [Float] The commission amount. A percentage (1-100) when commission_type is percentage, # # @param override_type [Symbol, WhopSDK::Models::Affiliates::AffiliateOverrideRoles] The type of override (standard or rev_share). # diff --git a/lib/whop_sdk/models/affiliates/override_retrieve_response.rb b/lib/whop_sdk/models/affiliates/override_retrieve_response.rb index d74593cd..b0bb0d09 100644 --- a/lib/whop_sdk/models/affiliates/override_retrieve_response.rb +++ b/lib/whop_sdk/models/affiliates/override_retrieve_response.rb @@ -44,7 +44,8 @@ class OverrideRetrieveResponse < WhopSDK::Internal::Type::BaseModel required :commission_type, enum: -> { WhopSDK::Affiliates::AffiliatePayoutTypes } # @!attribute commission_value - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. # # @return [Float] required :commission_value, Float @@ -90,7 +91,8 @@ class OverrideRetrieveResponse < WhopSDK::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {WhopSDK::Models::Affiliates::OverrideRetrieveResponse} for more details. # - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share # # @param id [String] The unique identifier for the affiliate override. # @@ -102,7 +104,7 @@ class OverrideRetrieveResponse < WhopSDK::Internal::Type::BaseModel # # @param commission_type [Symbol, WhopSDK::Models::Affiliates::AffiliatePayoutTypes] The type of commission (percentage or flat_fee). # - # @param commission_value [Float] The commission value (percentage 1-100 or flat fee in dollars). + # @param commission_value [Float] The commission amount. A percentage (1-100) when commission_type is percentage, # # @param override_type [Symbol, WhopSDK::Models::Affiliates::AffiliateOverrideRoles] The type of override (standard or rev_share). # diff --git a/lib/whop_sdk/models/affiliates/override_update_response.rb b/lib/whop_sdk/models/affiliates/override_update_response.rb index a2ba6b74..e3f0f835 100644 --- a/lib/whop_sdk/models/affiliates/override_update_response.rb +++ b/lib/whop_sdk/models/affiliates/override_update_response.rb @@ -44,7 +44,8 @@ class OverrideUpdateResponse < WhopSDK::Internal::Type::BaseModel required :commission_type, enum: -> { WhopSDK::Affiliates::AffiliatePayoutTypes } # @!attribute commission_value - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. # # @return [Float] required :commission_value, Float @@ -90,7 +91,8 @@ class OverrideUpdateResponse < WhopSDK::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {WhopSDK::Models::Affiliates::OverrideUpdateResponse} for more details. # - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share # # @param id [String] The unique identifier for the affiliate override. # @@ -102,7 +104,7 @@ class OverrideUpdateResponse < WhopSDK::Internal::Type::BaseModel # # @param commission_type [Symbol, WhopSDK::Models::Affiliates::AffiliatePayoutTypes] The type of commission (percentage or flat_fee). # - # @param commission_value [Float] The commission value (percentage 1-100 or flat fee in dollars). + # @param commission_value [Float] The commission amount. A percentage (1-100) when commission_type is percentage, # # @param override_type [Symbol, WhopSDK::Models::Affiliates::AffiliateOverrideRoles] The type of override (standard or rev_share). # diff --git a/lib/whop_sdk/models/app.rb b/lib/whop_sdk/models/app.rb index 6521cf51..e6fa5be1 100644 --- a/lib/whop_sdk/models/app.rb +++ b/lib/whop_sdk/models/app.rb @@ -94,6 +94,21 @@ class App < WhopSDK::Internal::Type::BaseModel # @return [String] required :name, String + # @!attribute openapi_path + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + # + # @return [String, nil] + required :openapi_path, String, nil?: true + + # @!attribute origin + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + # + # @return [String, nil] + required :origin, String, nil?: true + # @!attribute redirect_uris # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app. @@ -109,6 +124,14 @@ class App < WhopSDK::Internal::Type::BaseModel required :requested_permissions, -> { WhopSDK::Internal::Type::ArrayOf[WhopSDK::App::RequestedPermission] } + # @!attribute skills_path + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + # + # @return [String, nil] + required :skills_path, String, nil?: true + # @!attribute stats # Aggregate usage statistics for this app, including daily, weekly, and monthly # active user counts. @@ -131,7 +154,7 @@ class App < WhopSDK::Internal::Type::BaseModel # @return [Boolean] required :verified, WhopSDK::Internal::Type::Boolean - # @!method initialize(id:, api_key:, app_type:, base_url:, company:, creator:, dashboard_path:, description:, discover_path:, domain_id:, experience_path:, icon:, name:, redirect_uris:, requested_permissions:, stats:, status:, verified:) + # @!method initialize(id:, api_key:, app_type:, base_url:, company:, creator:, dashboard_path:, description:, discover_path:, domain_id:, experience_path:, icon:, name:, openapi_path:, origin:, redirect_uris:, requested_permissions:, skills_path:, stats:, status:, verified:) # Some parameter documentations has been truncated, see {WhopSDK::Models::App} for # more details. # @@ -164,10 +187,16 @@ class App < WhopSDK::Internal::Type::BaseModel # # @param name [String] The display name of this app shown on the app store and in experience navigation # + # @param openapi_path [String, nil] The URL path template for a specific view of this app, appended to the base doma + # + # @param origin [String, nil] The full origin URL for this app's proxied domain (e.g., 'https://myapp.apps.who + # # @param redirect_uris [Array] The whitelisted OAuth callback URLs that users are redirected to after authorizi # # @param requested_permissions [Array] The list of permissions this app requests when installed, including both require # + # @param skills_path [String, nil] The URL path template for a specific view of this app, appended to the base doma + # # @param stats [WhopSDK::Models::App::Stats, nil] Aggregate usage statistics for this app, including daily, weekly, and monthly ac # # @param status [Symbol, WhopSDK::Models::AppStatuses] The current visibility status of this app on the Whop app store. 'live' means pu diff --git a/lib/whop_sdk/models/app_list_response.rb b/lib/whop_sdk/models/app_list_response.rb index 7d17be6f..f495bf1b 100644 --- a/lib/whop_sdk/models/app_list_response.rb +++ b/lib/whop_sdk/models/app_list_response.rb @@ -88,6 +88,29 @@ class AppListResponse < WhopSDK::Internal::Type::BaseModel # @return [String] required :name, String + # @!attribute openapi_path + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + # + # @return [String, nil] + required :openapi_path, String, nil?: true + + # @!attribute origin + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + # + # @return [String, nil] + required :origin, String, nil?: true + + # @!attribute skills_path + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + # + # @return [String, nil] + required :skills_path, String, nil?: true + # @!attribute status # The current visibility status of this app on the Whop app store. 'live' means # publicly discoverable, 'unlisted' means accessible only via direct link, and @@ -103,7 +126,7 @@ class AppListResponse < WhopSDK::Internal::Type::BaseModel # @return [Boolean] required :verified, WhopSDK::Internal::Type::Boolean - # @!method initialize(id:, app_type:, base_url:, company:, creator:, dashboard_path:, description:, discover_path:, domain_id:, experience_path:, icon:, name:, status:, verified:) + # @!method initialize(id:, app_type:, base_url:, company:, creator:, dashboard_path:, description:, discover_path:, domain_id:, experience_path:, icon:, name:, openapi_path:, origin:, skills_path:, status:, verified:) # Some parameter documentations has been truncated, see # {WhopSDK::Models::AppListResponse} for more details. # @@ -134,6 +157,12 @@ class AppListResponse < WhopSDK::Internal::Type::BaseModel # # @param name [String] The display name of this app shown on the app store and in experience navigation # + # @param openapi_path [String, nil] The URL path template for a specific view of this app, appended to the base doma + # + # @param origin [String, nil] The full origin URL for this app's proxied domain (e.g., 'https://myapp.apps.who + # + # @param skills_path [String, nil] The URL path template for a specific view of this app, appended to the base doma + # # @param status [Symbol, WhopSDK::Models::AppStatuses] The current visibility status of this app on the Whop app store. 'live' means pu # # @param verified [Boolean] Whether this app has been verified by Whop. Verified apps are endorsed by Whop a diff --git a/lib/whop_sdk/models/app_update_params.rb b/lib/whop_sdk/models/app_update_params.rb index 0ef4c81b..3bd7d155 100644 --- a/lib/whop_sdk/models/app_update_params.rb +++ b/lib/whop_sdk/models/app_update_params.rb @@ -74,6 +74,13 @@ class AppUpdateParams < WhopSDK::Internal::Type::BaseModel # @return [Symbol, WhopSDK::Models::AppUpdateParams::OAuthClientType, nil] optional :oauth_client_type, enum: -> { WhopSDK::AppUpdateParams::OAuthClientType }, nil?: true + # @!attribute openapi_path + # The URL path to the OpenAPI spec file of the app, such as + # '/assets/openapi.json'. + # + # @return [String, nil] + optional :openapi_path, String, nil?: true + # @!attribute redirect_uris # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app @@ -89,13 +96,19 @@ class AppUpdateParams < WhopSDK::Internal::Type::BaseModel -> { WhopSDK::Internal::Type::ArrayOf[enum: WhopSDK::AppUpdateParams::RequiredScope] }, nil?: true + # @!attribute skills_path + # The URL path to the skills directory of the app, such as '/assets/skills/'. + # + # @return [String, nil] + optional :skills_path, String, nil?: true + # @!attribute status # The status of an experience interface # # @return [Symbol, WhopSDK::Models::AppStatuses, nil] optional :status, enum: -> { WhopSDK::AppStatuses }, nil?: true - # @!method initialize(id:, app_store_description: nil, app_type: nil, base_url: nil, dashboard_path: nil, description: nil, discover_path: nil, experience_path: nil, icon: nil, name: nil, oauth_client_type: nil, redirect_uris: nil, required_scopes: nil, status: nil, request_options: {}) + # @!method initialize(id:, app_store_description: nil, app_type: nil, base_url: nil, dashboard_path: nil, description: nil, discover_path: nil, experience_path: nil, icon: nil, name: nil, oauth_client_type: nil, openapi_path: nil, redirect_uris: nil, required_scopes: nil, skills_path: nil, status: nil, request_options: {}) # Some parameter documentations has been truncated, see # {WhopSDK::Models::AppUpdateParams} for more details. # @@ -121,10 +134,14 @@ class AppUpdateParams < WhopSDK::Internal::Type::BaseModel # # @param oauth_client_type [Symbol, WhopSDK::Models::AppUpdateParams::OAuthClientType, nil] How this app authenticates at the OAuth token endpoint. # + # @param openapi_path [String, nil] The URL path to the OpenAPI spec file of the app, such as '/assets/openapi.json' + # # @param redirect_uris [Array, nil] The whitelisted OAuth callback URLs that users are redirected to after authorizi # # @param required_scopes [Array, nil] The permission scopes the app will request from users when they install it. # + # @param skills_path [String, nil] The URL path to the skills directory of the app, such as '/assets/skills/'. + # # @param status [Symbol, WhopSDK::Models::AppStatuses, nil] The status of an experience interface # # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/whop_sdk/models/app_view_type.rb b/lib/whop_sdk/models/app_view_type.rb index ae585881..c4efc92d 100644 --- a/lib/whop_sdk/models/app_view_type.rb +++ b/lib/whop_sdk/models/app_view_type.rb @@ -11,6 +11,8 @@ module AppViewType DASH = :dash DASHBOARD = :dashboard ANALYTICS = :analytics + SKILLS = :skills + OPENAPI = :openapi # @!method self.values # @return [Array] diff --git a/lib/whop_sdk/models/company.rb b/lib/whop_sdk/models/company.rb index 181a9638..8f1d6aee 100644 --- a/lib/whop_sdk/models/company.rb +++ b/lib/whop_sdk/models/company.rb @@ -9,6 +9,13 @@ class Company < WhopSDK::Internal::Type::BaseModel # @return [String] required :id, String + # @!attribute affiliate_instructions + # Guidelines and instructions provided to affiliates explaining how to promote + # this company's products. + # + # @return [String, nil] + required :affiliate_instructions, String, nil?: true + # @!attribute created_at # The datetime the company was created. # @@ -22,6 +29,13 @@ class Company < WhopSDK::Internal::Type::BaseModel # @return [String, nil] required :description, String, nil?: true + # @!attribute featured_affiliate_product + # The product featured for affiliates to promote on this company's affiliate page. + # Null if none is configured. + # + # @return [WhopSDK::Models::Company::FeaturedAffiliateProduct, nil] + required :featured_affiliate_product, -> { WhopSDK::Company::FeaturedAffiliateProduct }, nil?: true + # @!attribute logo # The company's logo. # @@ -75,6 +89,12 @@ class Company < WhopSDK::Internal::Type::BaseModel # @return [Array] required :social_links, -> { WhopSDK::Internal::Type::ArrayOf[WhopSDK::Company::SocialLink] } + # @!attribute target_audience + # The target audience for the company. Null if not set. + # + # @return [String, nil] + required :target_audience, String, nil?: true + # @!attribute title # The display name of the company shown to customers. # @@ -93,7 +113,7 @@ class Company < WhopSDK::Internal::Type::BaseModel # @return [Boolean] required :verified, WhopSDK::Internal::Type::Boolean - # @!method initialize(id:, created_at:, description:, logo:, member_count:, metadata:, owner_user:, published_reviews_count:, route:, send_customer_emails:, social_links:, title:, updated_at:, verified:) + # @!method initialize(id:, affiliate_instructions:, created_at:, description:, featured_affiliate_product:, logo:, member_count:, metadata:, owner_user:, published_reviews_count:, route:, send_customer_emails:, social_links:, target_audience:, title:, updated_at:, verified:) # Some parameter documentations has been truncated, see {WhopSDK::Models::Company} # for more details. # @@ -102,10 +122,14 @@ class Company < WhopSDK::Internal::Type::BaseModel # # @param id [String] The unique identifier for the company. # + # @param affiliate_instructions [String, nil] Guidelines and instructions provided to affiliates explaining how to promote thi + # # @param created_at [Time] The datetime the company was created. # # @param description [String, nil] A promotional pitch written by the company creator, displayed to potential custo # + # @param featured_affiliate_product [WhopSDK::Models::Company::FeaturedAffiliateProduct, nil] The product featured for affiliates to promote on this company's affiliate page. + # # @param logo [WhopSDK::Models::Company::Logo, nil] The company's logo. # # @param member_count [Integer] The total number of users who currently hold active memberships across all of th @@ -122,12 +146,37 @@ class Company < WhopSDK::Internal::Type::BaseModel # # @param social_links [Array] The list of social media accounts and external links associated with this compan # + # @param target_audience [String, nil] The target audience for the company. Null if not set. + # # @param title [String] The display name of the company shown to customers. # # @param updated_at [Time] The datetime the company was last updated. # # @param verified [Boolean] Whether this company has been verified by Whop's trust and safety team. + # @see WhopSDK::Models::Company#featured_affiliate_product + class FeaturedAffiliateProduct < WhopSDK::Internal::Type::BaseModel + # @!attribute id + # The unique identifier for the product. + # + # @return [String] + required :id, String + + # @!attribute name + # The display name of the product shown to customers. Maximum 50 characters. + # + # @return [String] + required :name, String + + # @!method initialize(id:, name:) + # The product featured for affiliates to promote on this company's affiliate page. + # Null if none is configured. + # + # @param id [String] The unique identifier for the product. + # + # @param name [String] The display name of the product shown to customers. Maximum 50 characters. + end + # @see WhopSDK::Models::Company#logo class Logo < WhopSDK::Internal::Type::BaseModel # @!attribute url diff --git a/lib/whop_sdk/models/company_list_response.rb b/lib/whop_sdk/models/company_list_response.rb index 0d91ca2b..ed2560ee 100644 --- a/lib/whop_sdk/models/company_list_response.rb +++ b/lib/whop_sdk/models/company_list_response.rb @@ -69,6 +69,12 @@ class CompanyListResponse < WhopSDK::Internal::Type::BaseModel # @return [Boolean] required :send_customer_emails, WhopSDK::Internal::Type::Boolean + # @!attribute target_audience + # The target audience for the company. Null if not set. + # + # @return [String, nil] + required :target_audience, String, nil?: true + # @!attribute title # The display name of the company shown to customers. # @@ -87,7 +93,7 @@ class CompanyListResponse < WhopSDK::Internal::Type::BaseModel # @return [Boolean] required :verified, WhopSDK::Internal::Type::Boolean - # @!method initialize(id:, created_at:, description:, logo:, member_count:, metadata:, owner_user:, published_reviews_count:, route:, send_customer_emails:, title:, updated_at:, verified:) + # @!method initialize(id:, created_at:, description:, logo:, member_count:, metadata:, owner_user:, published_reviews_count:, route:, send_customer_emails:, target_audience:, title:, updated_at:, verified:) # Some parameter documentations has been truncated, see # {WhopSDK::Models::CompanyListResponse} for more details. # @@ -114,6 +120,8 @@ class CompanyListResponse < WhopSDK::Internal::Type::BaseModel # # @param send_customer_emails [Boolean] Whether Whop sends transactional emails (receipts, updates) to customers on beha # + # @param target_audience [String, nil] The target audience for the company. Null if not set. + # # @param title [String] The display name of the company shown to customers. # # @param updated_at [Time] The datetime the company was last updated. diff --git a/lib/whop_sdk/models/company_update_params.rb b/lib/whop_sdk/models/company_update_params.rb index b2ff1939..1ac7e81a 100644 --- a/lib/whop_sdk/models/company_update_params.rb +++ b/lib/whop_sdk/models/company_update_params.rb @@ -12,6 +12,20 @@ class CompanyUpdateParams < WhopSDK::Internal::Type::BaseModel # @return [String] required :id, String + # @!attribute affiliate_application_required + # Whether prospective affiliates must submit an application before they can + # promote this company. + # + # @return [Boolean, nil] + optional :affiliate_application_required, WhopSDK::Internal::Type::Boolean, nil?: true + + # @!attribute affiliate_instructions + # Guidelines and instructions shown to affiliates explaining how to promote this + # company's products. + # + # @return [String, nil] + optional :affiliate_instructions, String, nil?: true + # @!attribute banner_image # The company's banner image. Accepts PNG or JPEG format. # @@ -25,6 +39,13 @@ class CompanyUpdateParams < WhopSDK::Internal::Type::BaseModel # @return [String, nil] optional :description, String, nil?: true + # @!attribute featured_affiliate_product_id + # The ID of the product to feature on this company's affiliate page. Pass null to + # clear. + # + # @return [String, nil] + optional :featured_affiliate_product_id, String, nil?: true + # @!attribute logo # The company's logo image. Accepts PNG, JPEG, or GIF format. # @@ -68,16 +89,22 @@ class CompanyUpdateParams < WhopSDK::Internal::Type::BaseModel # @return [String, nil] optional :title, String, nil?: true - # @!method initialize(id:, banner_image: nil, description: nil, logo: nil, route: nil, send_customer_emails: nil, social_links: nil, target_audience: nil, title: nil, request_options: {}) + # @!method initialize(id:, affiliate_application_required: nil, affiliate_instructions: nil, banner_image: nil, description: nil, featured_affiliate_product_id: nil, logo: nil, route: nil, send_customer_emails: nil, social_links: nil, target_audience: nil, title: nil, request_options: {}) # Some parameter documentations has been truncated, see # {WhopSDK::Models::CompanyUpdateParams} for more details. # # @param id [String] # + # @param affiliate_application_required [Boolean, nil] Whether prospective affiliates must submit an application before they can promot + # + # @param affiliate_instructions [String, nil] Guidelines and instructions shown to affiliates explaining how to promote this c + # # @param banner_image [WhopSDK::Models::CompanyUpdateParams::BannerImage, nil] The company's banner image. Accepts PNG or JPEG format. # # @param description [String, nil] A promotional pitch displayed to potential customers on the company's store page # + # @param featured_affiliate_product_id [String, nil] The ID of the product to feature on this company's affiliate page. Pass null to + # # @param logo [WhopSDK::Models::CompanyUpdateParams::Logo, nil] The company's logo image. Accepts PNG, JPEG, or GIF format. # # @param route [String, nil] The unique URL slug for the company's store page. Must be lowercase and can incl diff --git a/lib/whop_sdk/resources/apps.rb b/lib/whop_sdk/resources/apps.rb index da2f1145..181a33a1 100644 --- a/lib/whop_sdk/resources/apps.rb +++ b/lib/whop_sdk/resources/apps.rb @@ -73,7 +73,7 @@ def retrieve(id, params = {}) # - `developer:update_app` # - `developer:manage_api_key` # - # @overload update(id, app_store_description: nil, app_type: nil, base_url: nil, dashboard_path: nil, description: nil, discover_path: nil, experience_path: nil, icon: nil, name: nil, oauth_client_type: nil, redirect_uris: nil, required_scopes: nil, status: nil, request_options: {}) + # @overload update(id, app_store_description: nil, app_type: nil, base_url: nil, dashboard_path: nil, description: nil, discover_path: nil, experience_path: nil, icon: nil, name: nil, oauth_client_type: nil, openapi_path: nil, redirect_uris: nil, required_scopes: nil, skills_path: nil, status: nil, request_options: {}) # # @param id [String] The unique identifier of the app to update, starting with 'app\_'. # @@ -97,10 +97,14 @@ def retrieve(id, params = {}) # # @param oauth_client_type [Symbol, WhopSDK::Models::AppUpdateParams::OAuthClientType, nil] How this app authenticates at the OAuth token endpoint. # + # @param openapi_path [String, nil] The URL path to the OpenAPI spec file of the app, such as '/assets/openapi.json' + # # @param redirect_uris [Array, nil] The whitelisted OAuth callback URLs that users are redirected to after authorizi # # @param required_scopes [Array, nil] The permission scopes the app will request from users when they install it. # + # @param skills_path [String, nil] The URL path to the skills directory of the app, such as '/assets/skills/'. + # # @param status [Symbol, WhopSDK::Models::AppStatuses, nil] The status of an experience interface # # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/whop_sdk/resources/companies.rb b/lib/whop_sdk/resources/companies.rb index d2475000..f73e5ee8 100644 --- a/lib/whop_sdk/resources/companies.rb +++ b/lib/whop_sdk/resources/companies.rb @@ -81,14 +81,20 @@ def retrieve(id, params = {}) # - `company:update` # - `company:basic:read` # - # @overload update(id, banner_image: nil, description: nil, logo: nil, route: nil, send_customer_emails: nil, social_links: nil, target_audience: nil, title: nil, request_options: {}) + # @overload update(id, affiliate_application_required: nil, affiliate_instructions: nil, banner_image: nil, description: nil, featured_affiliate_product_id: nil, logo: nil, route: nil, send_customer_emails: nil, social_links: nil, target_audience: nil, title: nil, request_options: {}) # # @param id [String] The unique identifier of the company to update. # + # @param affiliate_application_required [Boolean, nil] Whether prospective affiliates must submit an application before they can promot + # + # @param affiliate_instructions [String, nil] Guidelines and instructions shown to affiliates explaining how to promote this c + # # @param banner_image [WhopSDK::Models::CompanyUpdateParams::BannerImage, nil] The company's banner image. Accepts PNG or JPEG format. # # @param description [String, nil] A promotional pitch displayed to potential customers on the company's store page # + # @param featured_affiliate_product_id [String, nil] The ID of the product to feature on this company's affiliate page. Pass null to + # # @param logo [WhopSDK::Models::CompanyUpdateParams::Logo, nil] The company's logo image. Accepts PNG, JPEG, or GIF format. # # @param route [String, nil] The unique URL slug for the company's store page. Must be lowercase and can incl diff --git a/lib/whop_sdk/version.rb b/lib/whop_sdk/version.rb index 48d35db5..a3f3d9dc 100644 --- a/lib/whop_sdk/version.rb +++ b/lib/whop_sdk/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module WhopSDK - VERSION = "0.0.35" + VERSION = "0.0.36" end diff --git a/rbi/whop_sdk/models/affiliate.rbi b/rbi/whop_sdk/models/affiliate.rbi index 67c2f131..5f5ca1a6 100644 --- a/rbi/whop_sdk/models/affiliate.rbi +++ b/rbi/whop_sdk/models/affiliate.rbi @@ -25,15 +25,16 @@ module WhopSDK sig { returns(Time) } attr_accessor :created_at - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members sig { returns(String) } attr_accessor :customer_retention_rate - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days sig { returns(String) } attr_accessor :customer_retention_rate_ninety_days - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string sig { returns(String) } attr_accessor :monthly_recurring_revenue_usd @@ -45,7 +46,8 @@ module WhopSDK sig { returns(Integer) } attr_accessor :total_overrides_count - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string sig { returns(String) } attr_accessor :total_referral_earnings_usd @@ -53,7 +55,8 @@ module WhopSDK sig { returns(Integer) } attr_accessor :total_referrals_count - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string sig { returns(String) } attr_accessor :total_revenue_usd @@ -68,7 +71,8 @@ module WhopSDK sig { params(user: WhopSDK::Affiliate::User::OrHash).void } attr_writer :user - # An affiliate of a company or a global affiliate + # An affiliate tracks a user's referral performance and commission earnings for a + # company, including retention rates, revenue metrics, and payout configurations. sig do params( id: String, @@ -96,21 +100,24 @@ module WhopSDK company:, # The datetime the affiliate was created. created_at:, - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members customer_retention_rate:, - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days customer_retention_rate_ninety_days:, - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string monthly_recurring_revenue_usd:, # Statuses for resources status:, # The total count of all overrides for this affiliate total_overrides_count:, - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string total_referral_earnings_usd:, # The total referrals of the affiliate total_referrals_count:, - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string total_revenue_usd:, # The datetime the affiliate was last updated. updated_at:, diff --git a/rbi/whop_sdk/models/affiliate_list_response.rbi b/rbi/whop_sdk/models/affiliate_list_response.rbi index f5e3e67b..5a496253 100644 --- a/rbi/whop_sdk/models/affiliate_list_response.rbi +++ b/rbi/whop_sdk/models/affiliate_list_response.rbi @@ -34,15 +34,16 @@ module WhopSDK sig { returns(Time) } attr_accessor :created_at - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members sig { returns(String) } attr_accessor :customer_retention_rate - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days sig { returns(String) } attr_accessor :customer_retention_rate_ninety_days - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string sig { returns(String) } attr_accessor :monthly_recurring_revenue_usd @@ -54,7 +55,8 @@ module WhopSDK sig { returns(Integer) } attr_accessor :total_overrides_count - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string sig { returns(String) } attr_accessor :total_referral_earnings_usd @@ -62,7 +64,8 @@ module WhopSDK sig { returns(Integer) } attr_accessor :total_referrals_count - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string sig { returns(String) } attr_accessor :total_revenue_usd @@ -79,7 +82,8 @@ module WhopSDK end attr_writer :user - # An affiliate of a company or a global affiliate + # An affiliate tracks a user's referral performance and commission earnings for a + # company, including retention rates, revenue metrics, and payout configurations. sig do params( id: String, @@ -107,21 +111,24 @@ module WhopSDK company:, # The datetime the affiliate was created. created_at:, - # How many referrals have remained since they joined as members + # The percentage of referred customers who are still active members customer_retention_rate:, - # A rolling 90-day retention rate for this affiliate + # The percentage of referred customers who remained active over the last 90 days customer_retention_rate_ninety_days:, - # The total MRR of the affiliate + # The monthly recurring revenue generated by this affiliate's referrals, formatted + # as a USD currency string monthly_recurring_revenue_usd:, # Statuses for resources status:, # The total count of all overrides for this affiliate total_overrides_count:, - # The total earnings of the affiliate from the users they referred + # The total commission earnings paid to this affiliate, formatted as a USD + # currency string total_referral_earnings_usd:, # The total referrals of the affiliate total_referrals_count:, - # The total revenue of the affiliate from their referrals + # The total revenue generated from this affiliate's referrals, formatted as a USD + # currency string total_revenue_usd:, # The datetime the affiliate was last updated. updated_at:, diff --git a/rbi/whop_sdk/models/affiliates/override_create_response.rbi b/rbi/whop_sdk/models/affiliates/override_create_response.rbi index 4ea3a841..9e370975 100644 --- a/rbi/whop_sdk/models/affiliates/override_create_response.rbi +++ b/rbi/whop_sdk/models/affiliates/override_create_response.rbi @@ -44,7 +44,8 @@ module WhopSDK sig { returns(WhopSDK::Affiliates::AffiliatePayoutTypes::TaggedSymbol) } attr_accessor :commission_type - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. sig { returns(Float) } attr_accessor :commission_value @@ -79,7 +80,8 @@ module WhopSDK sig { returns(Float) } attr_accessor :total_referral_earnings_usd - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share sig do params( id: String, @@ -116,7 +118,8 @@ module WhopSDK checkout_direct_link:, # The type of commission (percentage or flat_fee). commission_type:, - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. commission_value:, # The type of override (standard or rev_share). override_type:, diff --git a/rbi/whop_sdk/models/affiliates/override_list_response.rbi b/rbi/whop_sdk/models/affiliates/override_list_response.rbi index 179cd883..b3a7d88e 100644 --- a/rbi/whop_sdk/models/affiliates/override_list_response.rbi +++ b/rbi/whop_sdk/models/affiliates/override_list_response.rbi @@ -44,7 +44,8 @@ module WhopSDK sig { returns(WhopSDK::Affiliates::AffiliatePayoutTypes::TaggedSymbol) } attr_accessor :commission_type - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. sig { returns(Float) } attr_accessor :commission_value @@ -79,7 +80,8 @@ module WhopSDK sig { returns(Float) } attr_accessor :total_referral_earnings_usd - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share sig do params( id: String, @@ -116,7 +118,8 @@ module WhopSDK checkout_direct_link:, # The type of commission (percentage or flat_fee). commission_type:, - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. commission_value:, # The type of override (standard or rev_share). override_type:, diff --git a/rbi/whop_sdk/models/affiliates/override_retrieve_response.rbi b/rbi/whop_sdk/models/affiliates/override_retrieve_response.rbi index 1e904eb2..c2a19fcc 100644 --- a/rbi/whop_sdk/models/affiliates/override_retrieve_response.rbi +++ b/rbi/whop_sdk/models/affiliates/override_retrieve_response.rbi @@ -44,7 +44,8 @@ module WhopSDK sig { returns(WhopSDK::Affiliates::AffiliatePayoutTypes::TaggedSymbol) } attr_accessor :commission_type - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. sig { returns(Float) } attr_accessor :commission_value @@ -79,7 +80,8 @@ module WhopSDK sig { returns(Float) } attr_accessor :total_referral_earnings_usd - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share sig do params( id: String, @@ -116,7 +118,8 @@ module WhopSDK checkout_direct_link:, # The type of commission (percentage or flat_fee). commission_type:, - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. commission_value:, # The type of override (standard or rev_share). override_type:, diff --git a/rbi/whop_sdk/models/affiliates/override_update_response.rbi b/rbi/whop_sdk/models/affiliates/override_update_response.rbi index 5cc2caf9..9962dcfe 100644 --- a/rbi/whop_sdk/models/affiliates/override_update_response.rbi +++ b/rbi/whop_sdk/models/affiliates/override_update_response.rbi @@ -44,7 +44,8 @@ module WhopSDK sig { returns(WhopSDK::Affiliates::AffiliatePayoutTypes::TaggedSymbol) } attr_accessor :commission_type - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. sig { returns(Float) } attr_accessor :commission_value @@ -79,7 +80,8 @@ module WhopSDK sig { returns(Float) } attr_accessor :total_referral_earnings_usd - # An object storing information about the affiliate + # A commission configuration for an affiliate, defining payout terms for a + # specific plan or revenue share sig do params( id: String, @@ -116,7 +118,8 @@ module WhopSDK checkout_direct_link:, # The type of commission (percentage or flat_fee). commission_type:, - # The commission value (percentage 1-100 or flat fee in dollars). + # The commission amount. A percentage (1-100) when commission_type is percentage, + # or a dollar amount when flat_fee. commission_value:, # The type of override (standard or rev_share). override_type:, diff --git a/rbi/whop_sdk/models/app.rbi b/rbi/whop_sdk/models/app.rbi index 32f2f4da..eadc4a65 100644 --- a/rbi/whop_sdk/models/app.rbi +++ b/rbi/whop_sdk/models/app.rbi @@ -82,6 +82,17 @@ module WhopSDK sig { returns(String) } attr_accessor :name + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + sig { returns(T.nilable(String)) } + attr_accessor :openapi_path + + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + sig { returns(T.nilable(String)) } + attr_accessor :origin + # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app. sig { returns(T::Array[String]) } @@ -92,6 +103,12 @@ module WhopSDK sig { returns(T::Array[WhopSDK::App::RequestedPermission]) } attr_accessor :requested_permissions + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + sig { returns(T.nilable(String)) } + attr_accessor :skills_path + # Aggregate usage statistics for this app, including daily, weekly, and monthly # active user counts. sig { returns(T.nilable(WhopSDK::App::Stats)) } @@ -128,9 +145,12 @@ module WhopSDK experience_path: T.nilable(String), icon: T.nilable(WhopSDK::App::Icon::OrHash), name: String, + openapi_path: T.nilable(String), + origin: T.nilable(String), redirect_uris: T::Array[String], requested_permissions: T::Array[WhopSDK::App::RequestedPermission::OrHash], + skills_path: T.nilable(String), stats: T.nilable(WhopSDK::App::Stats::OrHash), status: WhopSDK::AppStatuses::OrSymbol, verified: T::Boolean @@ -176,12 +196,23 @@ module WhopSDK # The display name of this app shown on the app store and in experience # navigation. Maximum 30 characters. name:, + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + openapi_path:, + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + origin:, # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app. redirect_uris:, # The list of permissions this app requests when installed, including both # required and optional permissions with justifications. requested_permissions:, + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + skills_path:, # Aggregate usage statistics for this app, including daily, weekly, and monthly # active user counts. stats:, @@ -211,8 +242,11 @@ module WhopSDK experience_path: T.nilable(String), icon: T.nilable(WhopSDK::App::Icon), name: String, + openapi_path: T.nilable(String), + origin: T.nilable(String), redirect_uris: T::Array[String], requested_permissions: T::Array[WhopSDK::App::RequestedPermission], + skills_path: T.nilable(String), stats: T.nilable(WhopSDK::App::Stats), status: WhopSDK::AppStatuses::TaggedSymbol, verified: T::Boolean diff --git a/rbi/whop_sdk/models/app_list_response.rbi b/rbi/whop_sdk/models/app_list_response.rbi index a219d07c..112a9697 100644 --- a/rbi/whop_sdk/models/app_list_response.rbi +++ b/rbi/whop_sdk/models/app_list_response.rbi @@ -85,6 +85,23 @@ module WhopSDK sig { returns(String) } attr_accessor :name + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + sig { returns(T.nilable(String)) } + attr_accessor :openapi_path + + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + sig { returns(T.nilable(String)) } + attr_accessor :origin + + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + sig { returns(T.nilable(String)) } + attr_accessor :skills_path + # The current visibility status of this app on the Whop app store. 'live' means # publicly discoverable, 'unlisted' means accessible only via direct link, and # 'hidden' means not visible anywhere. @@ -112,6 +129,9 @@ module WhopSDK experience_path: T.nilable(String), icon: T.nilable(WhopSDK::Models::AppListResponse::Icon::OrHash), name: String, + openapi_path: T.nilable(String), + origin: T.nilable(String), + skills_path: T.nilable(String), status: WhopSDK::AppStatuses::OrSymbol, verified: T::Boolean ).returns(T.attached_class) @@ -153,6 +173,17 @@ module WhopSDK # The display name of this app shown on the app store and in experience # navigation. Maximum 30 characters. name:, + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + openapi_path:, + # The full origin URL for this app's proxied domain (e.g., + # 'https://myapp.apps.whop.com'). Null if no proxy domain is configured. + origin:, + # The URL path template for a specific view of this app, appended to the base + # domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is + # not configured. + skills_path:, # The current visibility status of this app on the Whop app store. 'live' means # publicly discoverable, 'unlisted' means accessible only via direct link, and # 'hidden' means not visible anywhere. @@ -178,6 +209,9 @@ module WhopSDK experience_path: T.nilable(String), icon: T.nilable(WhopSDK::Models::AppListResponse::Icon), name: String, + openapi_path: T.nilable(String), + origin: T.nilable(String), + skills_path: T.nilable(String), status: WhopSDK::AppStatuses::TaggedSymbol, verified: T::Boolean } diff --git a/rbi/whop_sdk/models/app_update_params.rbi b/rbi/whop_sdk/models/app_update_params.rbi index 98a98aa8..8c4c5d5b 100644 --- a/rbi/whop_sdk/models/app_update_params.rbi +++ b/rbi/whop_sdk/models/app_update_params.rbi @@ -63,6 +63,11 @@ module WhopSDK end attr_accessor :oauth_client_type + # The URL path to the OpenAPI spec file of the app, such as + # '/assets/openapi.json'. + sig { returns(T.nilable(String)) } + attr_accessor :openapi_path + # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app sig { returns(T.nilable(T::Array[String])) } @@ -76,6 +81,10 @@ module WhopSDK end attr_accessor :required_scopes + # The URL path to the skills directory of the app, such as '/assets/skills/'. + sig { returns(T.nilable(String)) } + attr_accessor :skills_path + # The status of an experience interface sig { returns(T.nilable(WhopSDK::AppStatuses::OrSymbol)) } attr_accessor :status @@ -94,11 +103,13 @@ module WhopSDK name: T.nilable(String), oauth_client_type: T.nilable(WhopSDK::AppUpdateParams::OAuthClientType::OrSymbol), + openapi_path: T.nilable(String), redirect_uris: T.nilable(T::Array[String]), required_scopes: T.nilable( T::Array[WhopSDK::AppUpdateParams::RequiredScope::OrSymbol] ), + skills_path: T.nilable(String), status: T.nilable(WhopSDK::AppStatuses::OrSymbol), request_options: WhopSDK::RequestOptions::OrHash ).returns(T.attached_class) @@ -127,11 +138,16 @@ module WhopSDK name: nil, # How this app authenticates at the OAuth token endpoint. oauth_client_type: nil, + # The URL path to the OpenAPI spec file of the app, such as + # '/assets/openapi.json'. + openapi_path: nil, # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app redirect_uris: nil, # The permission scopes the app will request from users when they install it. required_scopes: nil, + # The URL path to the skills directory of the app, such as '/assets/skills/'. + skills_path: nil, # The status of an experience interface status: nil, request_options: {} @@ -153,11 +169,13 @@ module WhopSDK name: T.nilable(String), oauth_client_type: T.nilable(WhopSDK::AppUpdateParams::OAuthClientType::OrSymbol), + openapi_path: T.nilable(String), redirect_uris: T.nilable(T::Array[String]), required_scopes: T.nilable( T::Array[WhopSDK::AppUpdateParams::RequiredScope::OrSymbol] ), + skills_path: T.nilable(String), status: T.nilable(WhopSDK::AppStatuses::OrSymbol), request_options: WhopSDK::RequestOptions } diff --git a/rbi/whop_sdk/models/app_view_type.rbi b/rbi/whop_sdk/models/app_view_type.rbi index 50633e1c..e6eb9a6a 100644 --- a/rbi/whop_sdk/models/app_view_type.rbi +++ b/rbi/whop_sdk/models/app_view_type.rbi @@ -14,6 +14,8 @@ module WhopSDK DASH = T.let(:dash, WhopSDK::AppViewType::TaggedSymbol) DASHBOARD = T.let(:dashboard, WhopSDK::AppViewType::TaggedSymbol) ANALYTICS = T.let(:analytics, WhopSDK::AppViewType::TaggedSymbol) + SKILLS = T.let(:skills, WhopSDK::AppViewType::TaggedSymbol) + OPENAPI = T.let(:openapi, WhopSDK::AppViewType::TaggedSymbol) sig { override.returns(T::Array[WhopSDK::AppViewType::TaggedSymbol]) } def self.values diff --git a/rbi/whop_sdk/models/company.rbi b/rbi/whop_sdk/models/company.rbi index 10ccc900..92a86fbb 100644 --- a/rbi/whop_sdk/models/company.rbi +++ b/rbi/whop_sdk/models/company.rbi @@ -10,6 +10,11 @@ module WhopSDK sig { returns(String) } attr_accessor :id + # Guidelines and instructions provided to affiliates explaining how to promote + # this company's products. + sig { returns(T.nilable(String)) } + attr_accessor :affiliate_instructions + # The datetime the company was created. sig { returns(Time) } attr_accessor :created_at @@ -19,6 +24,19 @@ module WhopSDK sig { returns(T.nilable(String)) } attr_accessor :description + # The product featured for affiliates to promote on this company's affiliate page. + # Null if none is configured. + sig { returns(T.nilable(WhopSDK::Company::FeaturedAffiliateProduct)) } + attr_reader :featured_affiliate_product + + sig do + params( + featured_affiliate_product: + T.nilable(WhopSDK::Company::FeaturedAffiliateProduct::OrHash) + ).void + end + attr_writer :featured_affiliate_product + # The company's logo. sig { returns(T.nilable(WhopSDK::Company::Logo)) } attr_reader :logo @@ -62,6 +80,10 @@ module WhopSDK sig { returns(T::Array[WhopSDK::Company::SocialLink]) } attr_accessor :social_links + # The target audience for the company. Null if not set. + sig { returns(T.nilable(String)) } + attr_accessor :target_audience + # The display name of the company shown to customers. sig { returns(String) } attr_accessor :title @@ -79,8 +101,11 @@ module WhopSDK sig do params( id: String, + affiliate_instructions: T.nilable(String), created_at: Time, description: T.nilable(String), + featured_affiliate_product: + T.nilable(WhopSDK::Company::FeaturedAffiliateProduct::OrHash), logo: T.nilable(WhopSDK::Company::Logo::OrHash), member_count: Integer, metadata: T.nilable(T::Hash[Symbol, T.anything]), @@ -89,6 +114,7 @@ module WhopSDK route: String, send_customer_emails: T::Boolean, social_links: T::Array[WhopSDK::Company::SocialLink::OrHash], + target_audience: T.nilable(String), title: String, updated_at: Time, verified: T::Boolean @@ -97,11 +123,17 @@ module WhopSDK def self.new( # The unique identifier for the company. id:, + # Guidelines and instructions provided to affiliates explaining how to promote + # this company's products. + affiliate_instructions:, # The datetime the company was created. created_at:, # A promotional pitch written by the company creator, displayed to potential # customers on the store page. description:, + # The product featured for affiliates to promote on this company's affiliate page. + # Null if none is configured. + featured_affiliate_product:, # The company's logo. logo:, # The total number of users who currently hold active memberships across all of @@ -123,6 +155,8 @@ module WhopSDK # The list of social media accounts and external links associated with this # company. social_links:, + # The target audience for the company. Null if not set. + target_audience:, # The display name of the company shown to customers. title:, # The datetime the company was last updated. @@ -136,8 +170,11 @@ module WhopSDK override.returns( { id: String, + affiliate_instructions: T.nilable(String), created_at: Time, description: T.nilable(String), + featured_affiliate_product: + T.nilable(WhopSDK::Company::FeaturedAffiliateProduct), logo: T.nilable(WhopSDK::Company::Logo), member_count: Integer, metadata: T.nilable(T::Hash[Symbol, T.anything]), @@ -146,6 +183,7 @@ module WhopSDK route: String, send_customer_emails: T::Boolean, social_links: T::Array[WhopSDK::Company::SocialLink], + target_audience: T.nilable(String), title: String, updated_at: Time, verified: T::Boolean @@ -155,6 +193,39 @@ module WhopSDK def to_hash end + class FeaturedAffiliateProduct < WhopSDK::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any( + WhopSDK::Company::FeaturedAffiliateProduct, + WhopSDK::Internal::AnyHash + ) + end + + # The unique identifier for the product. + sig { returns(String) } + attr_accessor :id + + # The display name of the product shown to customers. Maximum 50 characters. + sig { returns(String) } + attr_accessor :name + + # The product featured for affiliates to promote on this company's affiliate page. + # Null if none is configured. + sig { params(id: String, name: String).returns(T.attached_class) } + def self.new( + # The unique identifier for the product. + id:, + # The display name of the product shown to customers. Maximum 50 characters. + name: + ) + end + + sig { override.returns({ id: String, name: String }) } + def to_hash + end + end + class Logo < WhopSDK::Internal::Type::BaseModel OrHash = T.type_alias do diff --git a/rbi/whop_sdk/models/company_list_response.rbi b/rbi/whop_sdk/models/company_list_response.rbi index f56d56d9..91bc4272 100644 --- a/rbi/whop_sdk/models/company_list_response.rbi +++ b/rbi/whop_sdk/models/company_list_response.rbi @@ -70,6 +70,10 @@ module WhopSDK sig { returns(T::Boolean) } attr_accessor :send_customer_emails + # The target audience for the company. Null if not set. + sig { returns(T.nilable(String)) } + attr_accessor :target_audience + # The display name of the company shown to customers. sig { returns(String) } attr_accessor :title @@ -96,6 +100,7 @@ module WhopSDK published_reviews_count: Integer, route: String, send_customer_emails: T::Boolean, + target_audience: T.nilable(String), title: String, updated_at: Time, verified: T::Boolean @@ -127,6 +132,8 @@ module WhopSDK # Whether Whop sends transactional emails (receipts, updates) to customers on # behalf of this company. send_customer_emails:, + # The target audience for the company. Null if not set. + target_audience:, # The display name of the company shown to customers. title:, # The datetime the company was last updated. @@ -149,6 +156,7 @@ module WhopSDK published_reviews_count: Integer, route: String, send_customer_emails: T::Boolean, + target_audience: T.nilable(String), title: String, updated_at: Time, verified: T::Boolean diff --git a/rbi/whop_sdk/models/company_update_params.rbi b/rbi/whop_sdk/models/company_update_params.rbi index b7cef91a..0212f18a 100644 --- a/rbi/whop_sdk/models/company_update_params.rbi +++ b/rbi/whop_sdk/models/company_update_params.rbi @@ -14,6 +14,16 @@ module WhopSDK sig { returns(String) } attr_accessor :id + # Whether prospective affiliates must submit an application before they can + # promote this company. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :affiliate_application_required + + # Guidelines and instructions shown to affiliates explaining how to promote this + # company's products. + sig { returns(T.nilable(String)) } + attr_accessor :affiliate_instructions + # The company's banner image. Accepts PNG or JPEG format. sig { returns(T.nilable(WhopSDK::CompanyUpdateParams::BannerImage)) } attr_reader :banner_image @@ -31,6 +41,11 @@ module WhopSDK sig { returns(T.nilable(String)) } attr_accessor :description + # The ID of the product to feature on this company's affiliate page. Pass null to + # clear. + sig { returns(T.nilable(String)) } + attr_accessor :featured_affiliate_product_id + # The company's logo image. Accepts PNG, JPEG, or GIF format. sig { returns(T.nilable(WhopSDK::CompanyUpdateParams::Logo)) } attr_reader :logo @@ -70,9 +85,12 @@ module WhopSDK sig do params( id: String, + affiliate_application_required: T.nilable(T::Boolean), + affiliate_instructions: T.nilable(String), banner_image: T.nilable(WhopSDK::CompanyUpdateParams::BannerImage::OrHash), description: T.nilable(String), + featured_affiliate_product_id: T.nilable(String), logo: T.nilable(WhopSDK::CompanyUpdateParams::Logo::OrHash), route: T.nilable(String), send_customer_emails: T.nilable(T::Boolean), @@ -87,11 +105,20 @@ module WhopSDK end def self.new( id:, + # Whether prospective affiliates must submit an application before they can + # promote this company. + affiliate_application_required: nil, + # Guidelines and instructions shown to affiliates explaining how to promote this + # company's products. + affiliate_instructions: nil, # The company's banner image. Accepts PNG or JPEG format. banner_image: nil, # A promotional pitch displayed to potential customers on the company's store # page. description: nil, + # The ID of the product to feature on this company's affiliate page. Pass null to + # clear. + featured_affiliate_product_id: nil, # The company's logo image. Accepts PNG, JPEG, or GIF format. logo: nil, # The unique URL slug for the company's store page. Must be lowercase and can @@ -117,8 +144,11 @@ module WhopSDK override.returns( { id: String, + affiliate_application_required: T.nilable(T::Boolean), + affiliate_instructions: T.nilable(String), banner_image: T.nilable(WhopSDK::CompanyUpdateParams::BannerImage), description: T.nilable(String), + featured_affiliate_product_id: T.nilable(String), logo: T.nilable(WhopSDK::CompanyUpdateParams::Logo), route: T.nilable(String), send_customer_emails: T.nilable(T::Boolean), diff --git a/rbi/whop_sdk/resources/apps.rbi b/rbi/whop_sdk/resources/apps.rbi index 0f541b85..19dab6fc 100644 --- a/rbi/whop_sdk/resources/apps.rbi +++ b/rbi/whop_sdk/resources/apps.rbi @@ -78,11 +78,13 @@ module WhopSDK name: T.nilable(String), oauth_client_type: T.nilable(WhopSDK::AppUpdateParams::OAuthClientType::OrSymbol), + openapi_path: T.nilable(String), redirect_uris: T.nilable(T::Array[String]), required_scopes: T.nilable( T::Array[WhopSDK::AppUpdateParams::RequiredScope::OrSymbol] ), + skills_path: T.nilable(String), status: T.nilable(WhopSDK::AppStatuses::OrSymbol), request_options: WhopSDK::RequestOptions::OrHash ).returns(WhopSDK::App) @@ -112,11 +114,16 @@ module WhopSDK name: nil, # How this app authenticates at the OAuth token endpoint. oauth_client_type: nil, + # The URL path to the OpenAPI spec file of the app, such as + # '/assets/openapi.json'. + openapi_path: nil, # The whitelisted OAuth callback URLs that users are redirected to after # authorizing the app redirect_uris: nil, # The permission scopes the app will request from users when they install it. required_scopes: nil, + # The URL path to the skills directory of the app, such as '/assets/skills/'. + skills_path: nil, # The status of an experience interface status: nil, request_options: {} diff --git a/rbi/whop_sdk/resources/companies.rbi b/rbi/whop_sdk/resources/companies.rbi index 0648f2c7..14b7358d 100644 --- a/rbi/whop_sdk/resources/companies.rbi +++ b/rbi/whop_sdk/resources/companies.rbi @@ -74,9 +74,12 @@ module WhopSDK sig do params( id: String, + affiliate_application_required: T.nilable(T::Boolean), + affiliate_instructions: T.nilable(String), banner_image: T.nilable(WhopSDK::CompanyUpdateParams::BannerImage::OrHash), description: T.nilable(String), + featured_affiliate_product_id: T.nilable(String), logo: T.nilable(WhopSDK::CompanyUpdateParams::Logo::OrHash), route: T.nilable(String), send_customer_emails: T.nilable(T::Boolean), @@ -92,11 +95,20 @@ module WhopSDK def update( # The unique identifier of the company to update. id, + # Whether prospective affiliates must submit an application before they can + # promote this company. + affiliate_application_required: nil, + # Guidelines and instructions shown to affiliates explaining how to promote this + # company's products. + affiliate_instructions: nil, # The company's banner image. Accepts PNG or JPEG format. banner_image: nil, # A promotional pitch displayed to potential customers on the company's store # page. description: nil, + # The ID of the product to feature on this company's affiliate page. Pass null to + # clear. + featured_affiliate_product_id: nil, # The company's logo image. Accepts PNG, JPEG, or GIF format. logo: nil, # The unique URL slug for the company's store page. Must be lowercase and can diff --git a/sig/whop_sdk/models/app.rbs b/sig/whop_sdk/models/app.rbs index 9d4c6e03..c4c61c1b 100644 --- a/sig/whop_sdk/models/app.rbs +++ b/sig/whop_sdk/models/app.rbs @@ -15,8 +15,11 @@ module WhopSDK experience_path: String?, icon: WhopSDK::App::Icon?, name: String, + openapi_path: String?, + origin: String?, redirect_uris: ::Array[String], requested_permissions: ::Array[WhopSDK::App::RequestedPermission], + skills_path: String?, stats: WhopSDK::App::Stats?, status: WhopSDK::Models::app_statuses, verified: bool @@ -49,10 +52,16 @@ module WhopSDK attr_accessor name: String + attr_accessor openapi_path: String? + + attr_accessor origin: String? + attr_accessor redirect_uris: ::Array[String] attr_accessor requested_permissions: ::Array[WhopSDK::App::RequestedPermission] + attr_accessor skills_path: String? + attr_accessor stats: WhopSDK::App::Stats? attr_accessor status: WhopSDK::Models::app_statuses @@ -73,8 +82,11 @@ module WhopSDK experience_path: String?, icon: WhopSDK::App::Icon?, name: String, + openapi_path: String?, + origin: String?, redirect_uris: ::Array[String], requested_permissions: ::Array[WhopSDK::App::RequestedPermission], + skills_path: String?, stats: WhopSDK::App::Stats?, status: WhopSDK::Models::app_statuses, verified: bool @@ -94,8 +106,11 @@ module WhopSDK experience_path: String?, icon: WhopSDK::App::Icon?, name: String, + openapi_path: String?, + origin: String?, redirect_uris: ::Array[String], requested_permissions: ::Array[WhopSDK::App::RequestedPermission], + skills_path: String?, stats: WhopSDK::App::Stats?, status: WhopSDK::Models::app_statuses, verified: bool diff --git a/sig/whop_sdk/models/app_list_response.rbs b/sig/whop_sdk/models/app_list_response.rbs index 84443278..ebc23355 100644 --- a/sig/whop_sdk/models/app_list_response.rbs +++ b/sig/whop_sdk/models/app_list_response.rbs @@ -14,6 +14,9 @@ module WhopSDK experience_path: String?, icon: WhopSDK::Models::AppListResponse::Icon?, name: String, + openapi_path: String?, + origin: String?, + skills_path: String?, status: WhopSDK::Models::app_statuses, verified: bool } @@ -43,6 +46,12 @@ module WhopSDK attr_accessor name: String + attr_accessor openapi_path: String? + + attr_accessor origin: String? + + attr_accessor skills_path: String? + attr_accessor status: WhopSDK::Models::app_statuses attr_accessor verified: bool @@ -60,6 +69,9 @@ module WhopSDK experience_path: String?, icon: WhopSDK::Models::AppListResponse::Icon?, name: String, + openapi_path: String?, + origin: String?, + skills_path: String?, status: WhopSDK::Models::app_statuses, verified: bool ) -> void @@ -77,6 +89,9 @@ module WhopSDK experience_path: String?, icon: WhopSDK::Models::AppListResponse::Icon?, name: String, + openapi_path: String?, + origin: String?, + skills_path: String?, status: WhopSDK::Models::app_statuses, verified: bool } diff --git a/sig/whop_sdk/models/app_update_params.rbs b/sig/whop_sdk/models/app_update_params.rbs index 0ce12ab1..8161ef01 100644 --- a/sig/whop_sdk/models/app_update_params.rbs +++ b/sig/whop_sdk/models/app_update_params.rbs @@ -13,8 +13,10 @@ module WhopSDK icon: WhopSDK::AppUpdateParams::Icon?, name: String?, oauth_client_type: WhopSDK::Models::AppUpdateParams::oauth_client_type?, + openapi_path: String?, redirect_uris: ::Array[String]?, required_scopes: ::Array[WhopSDK::Models::AppUpdateParams::required_scope]?, + skills_path: String?, status: WhopSDK::Models::app_statuses? } & WhopSDK::Internal::Type::request_parameters @@ -45,10 +47,14 @@ module WhopSDK attr_accessor oauth_client_type: WhopSDK::Models::AppUpdateParams::oauth_client_type? + attr_accessor openapi_path: String? + attr_accessor redirect_uris: ::Array[String]? attr_accessor required_scopes: ::Array[WhopSDK::Models::AppUpdateParams::required_scope]? + attr_accessor skills_path: String? + attr_accessor status: WhopSDK::Models::app_statuses? def initialize: ( @@ -63,8 +69,10 @@ module WhopSDK ?icon: WhopSDK::AppUpdateParams::Icon?, ?name: String?, ?oauth_client_type: WhopSDK::Models::AppUpdateParams::oauth_client_type?, + ?openapi_path: String?, ?redirect_uris: ::Array[String]?, ?required_scopes: ::Array[WhopSDK::Models::AppUpdateParams::required_scope]?, + ?skills_path: String?, ?status: WhopSDK::Models::app_statuses?, ?request_options: WhopSDK::request_opts ) -> void @@ -81,8 +89,10 @@ module WhopSDK icon: WhopSDK::AppUpdateParams::Icon?, name: String?, oauth_client_type: WhopSDK::Models::AppUpdateParams::oauth_client_type?, + openapi_path: String?, redirect_uris: ::Array[String]?, required_scopes: ::Array[WhopSDK::Models::AppUpdateParams::required_scope]?, + skills_path: String?, status: WhopSDK::Models::app_statuses?, request_options: WhopSDK::RequestOptions } diff --git a/sig/whop_sdk/models/app_view_type.rbs b/sig/whop_sdk/models/app_view_type.rbs index 9e70fa94..14531035 100644 --- a/sig/whop_sdk/models/app_view_type.rbs +++ b/sig/whop_sdk/models/app_view_type.rbs @@ -1,6 +1,7 @@ module WhopSDK module Models - type app_view_type = :hub | :discover | :dash | :dashboard | :analytics + type app_view_type = + :hub | :discover | :dash | :dashboard | :analytics | :skills | :openapi module AppViewType extend WhopSDK::Internal::Type::Enum @@ -10,6 +11,8 @@ module WhopSDK DASH: :dash DASHBOARD: :dashboard ANALYTICS: :analytics + SKILLS: :skills + OPENAPI: :openapi def self?.values: -> ::Array[WhopSDK::Models::app_view_type] end diff --git a/sig/whop_sdk/models/company.rbs b/sig/whop_sdk/models/company.rbs index 2bdca1ac..a90dd177 100644 --- a/sig/whop_sdk/models/company.rbs +++ b/sig/whop_sdk/models/company.rbs @@ -3,8 +3,10 @@ module WhopSDK type company = { id: String, + affiliate_instructions: String?, created_at: Time, description: String?, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct?, logo: WhopSDK::Company::Logo?, member_count: Integer, metadata: ::Hash[Symbol, top]?, @@ -13,6 +15,7 @@ module WhopSDK route: String, send_customer_emails: bool, social_links: ::Array[WhopSDK::Company::SocialLink], + target_audience: String?, title: String, updated_at: Time, verified: bool @@ -21,10 +24,14 @@ module WhopSDK class Company < WhopSDK::Internal::Type::BaseModel attr_accessor id: String + attr_accessor affiliate_instructions: String? + attr_accessor created_at: Time attr_accessor description: String? + attr_accessor featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct? + attr_accessor logo: WhopSDK::Company::Logo? attr_accessor member_count: Integer @@ -41,6 +48,8 @@ module WhopSDK attr_accessor social_links: ::Array[WhopSDK::Company::SocialLink] + attr_accessor target_audience: String? + attr_accessor title: String attr_accessor updated_at: Time @@ -49,8 +58,10 @@ module WhopSDK def initialize: ( id: String, + affiliate_instructions: String?, created_at: Time, description: String?, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct?, logo: WhopSDK::Company::Logo?, member_count: Integer, metadata: ::Hash[Symbol, top]?, @@ -59,6 +70,7 @@ module WhopSDK route: String, send_customer_emails: bool, social_links: ::Array[WhopSDK::Company::SocialLink], + target_audience: String?, title: String, updated_at: Time, verified: bool @@ -66,8 +78,10 @@ module WhopSDK def to_hash: -> { id: String, + affiliate_instructions: String?, created_at: Time, description: String?, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct?, logo: WhopSDK::Company::Logo?, member_count: Integer, metadata: ::Hash[Symbol, top]?, @@ -76,11 +90,24 @@ module WhopSDK route: String, send_customer_emails: bool, social_links: ::Array[WhopSDK::Company::SocialLink], + target_audience: String?, title: String, updated_at: Time, verified: bool } + type featured_affiliate_product = { id: String, name: String } + + class FeaturedAffiliateProduct < WhopSDK::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor name: String + + def initialize: (id: String, name: String) -> void + + def to_hash: -> { id: String, name: String } + end + type logo = { url: String? } class Logo < WhopSDK::Internal::Type::BaseModel diff --git a/sig/whop_sdk/models/company_list_response.rbs b/sig/whop_sdk/models/company_list_response.rbs index 53d8f0f6..6748def6 100644 --- a/sig/whop_sdk/models/company_list_response.rbs +++ b/sig/whop_sdk/models/company_list_response.rbs @@ -12,6 +12,7 @@ module WhopSDK published_reviews_count: Integer, route: String, send_customer_emails: bool, + target_audience: String?, title: String, updated_at: Time, verified: bool @@ -38,6 +39,8 @@ module WhopSDK attr_accessor send_customer_emails: bool + attr_accessor target_audience: String? + attr_accessor title: String attr_accessor updated_at: Time @@ -55,6 +58,7 @@ module WhopSDK published_reviews_count: Integer, route: String, send_customer_emails: bool, + target_audience: String?, title: String, updated_at: Time, verified: bool @@ -71,6 +75,7 @@ module WhopSDK published_reviews_count: Integer, route: String, send_customer_emails: bool, + target_audience: String?, title: String, updated_at: Time, verified: bool diff --git a/sig/whop_sdk/models/company_update_params.rbs b/sig/whop_sdk/models/company_update_params.rbs index 8577e050..a2f08436 100644 --- a/sig/whop_sdk/models/company_update_params.rbs +++ b/sig/whop_sdk/models/company_update_params.rbs @@ -3,8 +3,11 @@ module WhopSDK type company_update_params = { id: String, + affiliate_application_required: bool?, + affiliate_instructions: String?, banner_image: WhopSDK::CompanyUpdateParams::BannerImage?, description: String?, + featured_affiliate_product_id: String?, logo: WhopSDK::CompanyUpdateParams::Logo?, route: String?, send_customer_emails: bool?, @@ -20,10 +23,16 @@ module WhopSDK attr_accessor id: String + attr_accessor affiliate_application_required: bool? + + attr_accessor affiliate_instructions: String? + attr_accessor banner_image: WhopSDK::CompanyUpdateParams::BannerImage? attr_accessor description: String? + attr_accessor featured_affiliate_product_id: String? + attr_accessor logo: WhopSDK::CompanyUpdateParams::Logo? attr_accessor route: String? @@ -38,8 +47,11 @@ module WhopSDK def initialize: ( id: String, + ?affiliate_application_required: bool?, + ?affiliate_instructions: String?, ?banner_image: WhopSDK::CompanyUpdateParams::BannerImage?, ?description: String?, + ?featured_affiliate_product_id: String?, ?logo: WhopSDK::CompanyUpdateParams::Logo?, ?route: String?, ?send_customer_emails: bool?, @@ -51,8 +63,11 @@ module WhopSDK def to_hash: -> { id: String, + affiliate_application_required: bool?, + affiliate_instructions: String?, banner_image: WhopSDK::CompanyUpdateParams::BannerImage?, description: String?, + featured_affiliate_product_id: String?, logo: WhopSDK::CompanyUpdateParams::Logo?, route: String?, send_customer_emails: bool?, diff --git a/sig/whop_sdk/resources/apps.rbs b/sig/whop_sdk/resources/apps.rbs index de97ab50..5365ce0a 100644 --- a/sig/whop_sdk/resources/apps.rbs +++ b/sig/whop_sdk/resources/apps.rbs @@ -27,8 +27,10 @@ module WhopSDK ?icon: WhopSDK::AppUpdateParams::Icon?, ?name: String?, ?oauth_client_type: WhopSDK::Models::AppUpdateParams::oauth_client_type?, + ?openapi_path: String?, ?redirect_uris: ::Array[String]?, ?required_scopes: ::Array[WhopSDK::Models::AppUpdateParams::required_scope]?, + ?skills_path: String?, ?status: WhopSDK::Models::app_statuses?, ?request_options: WhopSDK::request_opts ) -> WhopSDK::App diff --git a/sig/whop_sdk/resources/companies.rbs b/sig/whop_sdk/resources/companies.rbs index 14334dde..c380483b 100644 --- a/sig/whop_sdk/resources/companies.rbs +++ b/sig/whop_sdk/resources/companies.rbs @@ -19,8 +19,11 @@ module WhopSDK def update: ( String id, + ?affiliate_application_required: bool?, + ?affiliate_instructions: String?, ?banner_image: WhopSDK::CompanyUpdateParams::BannerImage?, ?description: String?, + ?featured_affiliate_product_id: String?, ?logo: WhopSDK::CompanyUpdateParams::Logo?, ?route: String?, ?send_customer_emails: bool?, diff --git a/test/whop_sdk/resources/apps_test.rb b/test/whop_sdk/resources/apps_test.rb index cda6a1b4..c3e797d0 100644 --- a/test/whop_sdk/resources/apps_test.rb +++ b/test/whop_sdk/resources/apps_test.rb @@ -27,8 +27,11 @@ def test_create_required_params experience_path: String | nil, icon: WhopSDK::App::Icon | nil, name: String, + openapi_path: String | nil, + origin: String | nil, redirect_uris: ^(WhopSDK::Internal::Type::ArrayOf[String]), requested_permissions: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::App::RequestedPermission]), + skills_path: String | nil, stats: WhopSDK::App::Stats | nil, status: WhopSDK::AppStatuses, verified: WhopSDK::Internal::Type::Boolean @@ -60,8 +63,11 @@ def test_retrieve experience_path: String | nil, icon: WhopSDK::App::Icon | nil, name: String, + openapi_path: String | nil, + origin: String | nil, redirect_uris: ^(WhopSDK::Internal::Type::ArrayOf[String]), requested_permissions: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::App::RequestedPermission]), + skills_path: String | nil, stats: WhopSDK::App::Stats | nil, status: WhopSDK::AppStatuses, verified: WhopSDK::Internal::Type::Boolean @@ -93,8 +99,11 @@ def test_update experience_path: String | nil, icon: WhopSDK::App::Icon | nil, name: String, + openapi_path: String | nil, + origin: String | nil, redirect_uris: ^(WhopSDK::Internal::Type::ArrayOf[String]), requested_permissions: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::App::RequestedPermission]), + skills_path: String | nil, stats: WhopSDK::App::Stats | nil, status: WhopSDK::AppStatuses, verified: WhopSDK::Internal::Type::Boolean @@ -132,6 +141,9 @@ def test_list experience_path: String | nil, icon: WhopSDK::Models::AppListResponse::Icon | nil, name: String, + openapi_path: String | nil, + origin: String | nil, + skills_path: String | nil, status: WhopSDK::AppStatuses, verified: WhopSDK::Internal::Type::Boolean } diff --git a/test/whop_sdk/resources/companies_test.rb b/test/whop_sdk/resources/companies_test.rb index 3901958d..e988d99a 100644 --- a/test/whop_sdk/resources/companies_test.rb +++ b/test/whop_sdk/resources/companies_test.rb @@ -15,8 +15,10 @@ def test_create_required_params assert_pattern do response => { id: String, + affiliate_instructions: String | nil, created_at: Time, description: String | nil, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct | nil, logo: WhopSDK::Company::Logo | nil, member_count: Integer, metadata: ^(WhopSDK::Internal::Type::HashOf[WhopSDK::Internal::Type::Unknown]) | nil, @@ -25,6 +27,7 @@ def test_create_required_params route: String, send_customer_emails: WhopSDK::Internal::Type::Boolean, social_links: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::Company::SocialLink]), + target_audience: String | nil, title: String, updated_at: Time, verified: WhopSDK::Internal::Type::Boolean @@ -44,8 +47,10 @@ def test_retrieve assert_pattern do response => { id: String, + affiliate_instructions: String | nil, created_at: Time, description: String | nil, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct | nil, logo: WhopSDK::Company::Logo | nil, member_count: Integer, metadata: ^(WhopSDK::Internal::Type::HashOf[WhopSDK::Internal::Type::Unknown]) | nil, @@ -54,6 +59,7 @@ def test_retrieve route: String, send_customer_emails: WhopSDK::Internal::Type::Boolean, social_links: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::Company::SocialLink]), + target_audience: String | nil, title: String, updated_at: Time, verified: WhopSDK::Internal::Type::Boolean @@ -73,8 +79,10 @@ def test_update assert_pattern do response => { id: String, + affiliate_instructions: String | nil, created_at: Time, description: String | nil, + featured_affiliate_product: WhopSDK::Company::FeaturedAffiliateProduct | nil, logo: WhopSDK::Company::Logo | nil, member_count: Integer, metadata: ^(WhopSDK::Internal::Type::HashOf[WhopSDK::Internal::Type::Unknown]) | nil, @@ -83,6 +91,7 @@ def test_update route: String, send_customer_emails: WhopSDK::Internal::Type::Boolean, social_links: ^(WhopSDK::Internal::Type::ArrayOf[WhopSDK::Company::SocialLink]), + target_audience: String | nil, title: String, updated_at: Time, verified: WhopSDK::Internal::Type::Boolean @@ -118,6 +127,7 @@ def test_list published_reviews_count: Integer, route: String, send_customer_emails: WhopSDK::Internal::Type::Boolean, + target_audience: String | nil, title: String, updated_at: Time, verified: WhopSDK::Internal::Type::Boolean