dub 0.10.5 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/module.rb +4 -0
  3. data/lib/crystalline/utils.rb +13 -0
  4. data/lib/open_api_sdk/analytics.rb +1 -1
  5. data/lib/open_api_sdk/commissions.rb +2 -2
  6. data/lib/open_api_sdk/customers.rb +4 -241
  7. data/lib/open_api_sdk/domains.rb +6 -6
  8. data/lib/open_api_sdk/embed_tokens.rb +1 -1
  9. data/lib/open_api_sdk/events.rb +1 -1
  10. data/lib/open_api_sdk/folders.rb +4 -4
  11. data/lib/open_api_sdk/links.rb +10 -10
  12. data/lib/open_api_sdk/models/operations/banpartner_requestbody.rb +41 -0
  13. data/lib/open_api_sdk/models/operations/banpartner_requestbody.rbi +17 -0
  14. data/lib/open_api_sdk/models/operations/banpartner_responsebody.rb +33 -0
  15. data/lib/open_api_sdk/models/operations/banpartner_responsebody.rbi +13 -0
  16. data/lib/open_api_sdk/models/operations/createfolder_requestbody.rb +6 -2
  17. data/lib/open_api_sdk/models/operations/createfolder_requestbody.rbi +2 -0
  18. data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +1 -1
  19. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +52 -24
  20. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rbi +24 -10
  21. data/lib/open_api_sdk/models/operations/listcommissions_partner.rb +6 -2
  22. data/lib/open_api_sdk/models/operations/listcommissions_partner.rbi +2 -0
  23. data/lib/open_api_sdk/models/operations/listcommissions_request.rb +6 -2
  24. data/lib/open_api_sdk/models/operations/listcommissions_request.rbi +2 -0
  25. data/lib/open_api_sdk/models/operations/listevents_request.rb +6 -2
  26. data/lib/open_api_sdk/models/operations/listevents_request.rbi +2 -0
  27. data/lib/open_api_sdk/models/operations/listpartners_queryparam_sortby.rb +11 -6
  28. data/lib/open_api_sdk/models/operations/listpartners_request.rb +3 -7
  29. data/lib/open_api_sdk/models/operations/listpartners_request.rbi +0 -2
  30. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rb +52 -24
  31. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rbi +24 -10
  32. data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +6 -1
  33. data/lib/open_api_sdk/models/operations/reason.rb +26 -0
  34. data/lib/open_api_sdk/models/operations/reason.rbi +11 -0
  35. data/lib/open_api_sdk/models/operations/requestbody.rb +1 -1
  36. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +6 -2
  37. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rbi +2 -0
  38. data/lib/open_api_sdk/models/operations/retrievelinks_request.rb +2 -2
  39. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rb +10 -10
  40. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rbi +4 -4
  41. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +1 -1
  42. data/lib/open_api_sdk/models/operations/updatecommission_partner.rb +6 -2
  43. data/lib/open_api_sdk/models/operations/updatecommission_partner.rbi +2 -0
  44. data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rb +6 -2
  45. data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rbi +2 -0
  46. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +1 -1
  47. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +1 -1
  48. data/lib/open_api_sdk/models/operations.rb +3 -6
  49. data/lib/open_api_sdk/models/shared/analyticstopurls.rb +1 -1
  50. data/lib/open_api_sdk/models/shared/applicationformdata.rb +37 -0
  51. data/lib/open_api_sdk/models/shared/applicationformdata.rbi +15 -0
  52. data/lib/open_api_sdk/models/shared/commissioncreatedevent_partner.rb +6 -2
  53. data/lib/open_api_sdk/models/shared/commissioncreatedevent_partner.rbi +2 -0
  54. data/lib/open_api_sdk/models/shared/folderschema.rb +6 -2
  55. data/lib/open_api_sdk/models/shared/folderschema.rbi +2 -0
  56. data/lib/open_api_sdk/models/shared/leadcreatedevent_link.rb +15 -11
  57. data/lib/open_api_sdk/models/shared/leadcreatedevent_link.rbi +6 -4
  58. data/lib/open_api_sdk/models/shared/leadevent_link.rb +15 -11
  59. data/lib/open_api_sdk/models/shared/leadevent_link.rbi +6 -4
  60. data/lib/open_api_sdk/models/shared/link.rb +15 -11
  61. data/lib/open_api_sdk/models/shared/link.rbi +6 -4
  62. data/lib/open_api_sdk/models/shared/linkclickedevent_link.rb +15 -11
  63. data/lib/open_api_sdk/models/shared/linkclickedevent_link.rbi +6 -4
  64. data/lib/open_api_sdk/models/shared/linkschema.rb +7 -3
  65. data/lib/open_api_sdk/models/shared/linkschema.rbi +2 -0
  66. data/lib/open_api_sdk/models/shared/{tagschema.rb → linktagschema.rb} +1 -1
  67. data/lib/open_api_sdk/models/shared/{tagschema.rbi → linktagschema.rbi} +2 -2
  68. data/lib/open_api_sdk/models/shared/linkwebhookevent_link.rb +15 -11
  69. data/lib/open_api_sdk/models/shared/linkwebhookevent_link.rbi +6 -4
  70. data/lib/open_api_sdk/models/shared/partner.rb +6 -2
  71. data/lib/open_api_sdk/models/shared/partner.rbi +2 -0
  72. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent.rb +45 -0
  73. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent.rbi +19 -0
  74. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_data.rb +45 -0
  75. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_data.rbi +19 -0
  76. data/lib/open_api_sdk/models/{operations/createcustomer_type.rb → shared/partnerapplicationsubmittedevent_event.rb} +3 -4
  77. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_event.rbi +11 -0
  78. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_partner.rb +89 -0
  79. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_partner.rbi +41 -0
  80. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_status.rb +28 -0
  81. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_status.rbi +11 -0
  82. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rb +52 -24
  83. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rbi +24 -10
  84. data/lib/open_api_sdk/models/shared/salecreatedevent_link.rb +15 -11
  85. data/lib/open_api_sdk/models/shared/salecreatedevent_link.rbi +6 -4
  86. data/lib/open_api_sdk/models/shared/salecreatedevent_partner.rb +6 -2
  87. data/lib/open_api_sdk/models/shared/salecreatedevent_partner.rbi +2 -0
  88. data/lib/open_api_sdk/models/shared/saleevent_link.rb +15 -11
  89. data/lib/open_api_sdk/models/shared/saleevent_link.rbi +6 -4
  90. data/lib/open_api_sdk/models/shared/workspaceschema.rb +10 -2
  91. data/lib/open_api_sdk/models/shared/workspaceschema.rbi +4 -0
  92. data/lib/open_api_sdk/models/shared.rb +7 -1
  93. data/lib/open_api_sdk/partners.rb +241 -6
  94. data/lib/open_api_sdk/qr_codes.rb +1 -1
  95. data/lib/open_api_sdk/sdkconfiguration.rb +3 -3
  96. data/lib/open_api_sdk/tags.rb +10 -10
  97. data/lib/open_api_sdk/track.rb +2 -2
  98. data/lib/open_api_sdk/workspaces.rb +2 -2
  99. metadata +22 -16
  100. data/lib/open_api_sdk/models/operations/createcustomer_discount.rb +0 -61
  101. data/lib/open_api_sdk/models/operations/createcustomer_discount.rbi +0 -27
  102. data/lib/open_api_sdk/models/operations/createcustomer_link.rb +0 -53
  103. data/lib/open_api_sdk/models/operations/createcustomer_link.rbi +0 -23
  104. data/lib/open_api_sdk/models/operations/createcustomer_partner.rb +0 -45
  105. data/lib/open_api_sdk/models/operations/createcustomer_partner.rbi +0 -19
  106. data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rb +0 -49
  107. data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rbi +0 -21
  108. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rb +0 -81
  109. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rbi +0 -37
  110. data/lib/open_api_sdk/models/operations/createcustomer_type.rbi +0 -11
@@ -39,6 +39,8 @@ module OpenApiSDK
39
39
  field :stripe_connect_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('stripeConnectId'), required: true } }
40
40
  # The date when the partner enabled payouts.
41
41
  field :payouts_enabled_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('payoutsEnabledAt'), required: true } }
42
+ # The date when the partner received the trusted badge in the partner network.
43
+ field :trusted_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('trustedAt'), required: true } }
42
44
  # The partner's unique ID within your database. Can be useful for associating the partner with a user in your database and retrieving/update their data in the future.
43
45
  field :tenant_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId'), required: true } }
44
46
  # The partner's referral links in this program.
@@ -47,7 +49,7 @@ module OpenApiSDK
47
49
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
48
50
  # The partner's group ID on Dub.
49
51
  field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('groupId') } }
50
- # The total commissions paid to the partner for their referrals. Defaults to 0 if `includeExpandedFields` is false.
52
+ # The total commissions paid to the partner for their referrals
51
53
  field :total_commissions, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalCommissions') } }
52
54
 
53
55
  field :click_reward_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickRewardId') } }
@@ -63,18 +65,30 @@ module OpenApiSDK
63
65
  field :banned_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('bannedAt') } }
64
66
  # If the partner was banned from the program, this is the reason for the ban.
65
67
  field :banned_reason, Crystalline::Nilable.new(Models::Shared::BannedReason), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('bannedReason'), 'decoder': Utils.enum_from_string(Models::Shared::BannedReason, true) } }
66
- # The total number of clicks on the partner's links. Defaults to 0 if `includeExpandedFields` is false.
67
- field :clicks, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clicks') } }
68
- # The total number of leads generated by the partner's links. Defaults to 0 if `includeExpandedFields` is false.
69
- field :leads, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leads') } }
70
- # The total number of leads that converted to paying customers. Defaults to 0 if `includeExpandedFields` is false.
71
- field :conversions, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('conversions') } }
72
- # The total number of sales generated by the partner's links (includes recurring sales). Defaults to 0 if `includeExpandedFields` is false.
73
- field :sales, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('sales') } }
74
- # The total amount of sales (in cents) generated by the partner's links. Defaults to 0 if `includeExpandedFields` is false.
75
- field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
76
- # The total net revenue generated by the partner. Defaults to 0 if `includeExpandedFields` is false.
68
+ # The total number of clicks on the partner's links
69
+ field :total_clicks, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalClicks') } }
70
+ # The total number of leads generated by the partner's links
71
+ field :total_leads, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalLeads') } }
72
+ # The total number of leads that converted to paying customers
73
+ field :total_conversions, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalConversions') } }
74
+ # The total number of sales generated by the partner's links (includes recurring sales)
75
+ field :total_sales, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalSales') } }
76
+ # Total revenue generated by the partner's links
77
+ field :total_sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('totalSaleAmount') } }
78
+ # Net revenue after commissions (`Total Revenue - Total Commissions`)
77
79
  field :net_revenue, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('netRevenue') } }
80
+ # Earnings Per Click (EPC) (`Total Revenue ÷ Total Clicks`)
81
+ field :earnings_per_click, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('earningsPerClick') } }
82
+ # Average lifetime value for each paying customer (`Total Revenue ÷ Total Conversions`)
83
+ field :average_lifetime_value, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('averageLifetimeValue') } }
84
+ # Percentage of clicks that become leads (`Total Leads ÷ Total Clicks`)
85
+ field :click_to_lead_rate, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickToLeadRate') } }
86
+ # Percentage of clicks that convert to paying customers (`Total Conversions ÷ Total Clicks`)
87
+ field :click_to_conversion_rate, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickToConversionRate') } }
88
+ # Percentage of leads that convert to paying customers (`Total Conversions ÷ Total Leads`)
89
+ field :lead_to_conversion_rate, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadToConversionRate') } }
90
+ # Return On Ad Spend (ROAS) (`Total Revenue ÷ Total Commissions`)
91
+ field :return_on_ad_spend, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('returnOnAdSpend') } }
78
92
  # The partner's website URL (including the https protocol).
79
93
  field :website, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('website') } }
80
94
  # The partner's YouTube channel username (e.g. `johndoe`).
@@ -88,8 +102,8 @@ module OpenApiSDK
88
102
  # The partner's TikTok username (e.g. `johndoe`).
89
103
  field :tiktok, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tiktok') } }
90
104
 
91
- sig { params(id: ::String, name: ::String, program_id: ::String, partner_id: ::String, created_at: ::String, status: Models::Shared::Status, company_name: T.nilable(::String), email: T.nilable(::String), image: T.nilable(::String), country: T.nilable(::String), paypal_email: T.nilable(::String), stripe_connect_id: T.nilable(::String), payouts_enabled_at: T.nilable(::String), tenant_id: T.nilable(::String), links: T.nilable(T::Array[Models::Shared::PartnerEnrolledEventLink]), description: T.nilable(::String), group_id: T.nilable(::String), total_commissions: T.nilable(::Float), click_reward_id: T.nilable(::String), lead_reward_id: T.nilable(::String), sale_reward_id: T.nilable(::String), discount_id: T.nilable(::String), application_id: T.nilable(::String), banned_at: T.nilable(::String), banned_reason: T.nilable(Models::Shared::BannedReason), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float), net_revenue: T.nilable(::Float), website: T.nilable(::String), youtube: T.nilable(::String), twitter: T.nilable(::String), linkedin: T.nilable(::String), instagram: T.nilable(::String), tiktok: T.nilable(::String)).void }
92
- def initialize(id:, name:, program_id:, partner_id:, created_at:, status:, company_name: nil, email: nil, image: nil, country: nil, paypal_email: nil, stripe_connect_id: nil, payouts_enabled_at: nil, tenant_id: nil, links: nil, description: nil, group_id: nil, total_commissions: 0.0, click_reward_id: nil, lead_reward_id: nil, sale_reward_id: nil, discount_id: nil, application_id: nil, banned_at: nil, banned_reason: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0, net_revenue: 0.0, website: nil, youtube: nil, twitter: nil, linkedin: nil, instagram: nil, tiktok: nil)
105
+ sig { params(id: ::String, name: ::String, program_id: ::String, partner_id: ::String, created_at: ::String, status: Models::Shared::Status, company_name: T.nilable(::String), email: T.nilable(::String), image: T.nilable(::String), country: T.nilable(::String), paypal_email: T.nilable(::String), stripe_connect_id: T.nilable(::String), payouts_enabled_at: T.nilable(::String), trusted_at: T.nilable(::String), tenant_id: T.nilable(::String), links: T.nilable(T::Array[Models::Shared::PartnerEnrolledEventLink]), description: T.nilable(::String), group_id: T.nilable(::String), total_commissions: T.nilable(::Float), click_reward_id: T.nilable(::String), lead_reward_id: T.nilable(::String), sale_reward_id: T.nilable(::String), discount_id: T.nilable(::String), application_id: T.nilable(::String), banned_at: T.nilable(::String), banned_reason: T.nilable(Models::Shared::BannedReason), total_clicks: T.nilable(::Float), total_leads: T.nilable(::Float), total_conversions: T.nilable(::Float), total_sales: T.nilable(::Float), total_sale_amount: T.nilable(::Float), net_revenue: T.nilable(::Float), earnings_per_click: T.nilable(::Float), average_lifetime_value: T.nilable(::Float), click_to_lead_rate: T.nilable(::Float), click_to_conversion_rate: T.nilable(::Float), lead_to_conversion_rate: T.nilable(::Float), return_on_ad_spend: T.nilable(::Float), website: T.nilable(::String), youtube: T.nilable(::String), twitter: T.nilable(::String), linkedin: T.nilable(::String), instagram: T.nilable(::String), tiktok: T.nilable(::String)).void }
106
+ def initialize(id:, name:, program_id:, partner_id:, created_at:, status:, company_name: nil, email: nil, image: nil, country: nil, paypal_email: nil, stripe_connect_id: nil, payouts_enabled_at: nil, trusted_at: nil, tenant_id: nil, links: nil, description: nil, group_id: nil, total_commissions: 0.0, click_reward_id: nil, lead_reward_id: nil, sale_reward_id: nil, discount_id: nil, application_id: nil, banned_at: nil, banned_reason: nil, total_clicks: 0.0, total_leads: 0.0, total_conversions: 0.0, total_sales: 0.0, total_sale_amount: 0.0, net_revenue: 0.0, earnings_per_click: nil, average_lifetime_value: nil, click_to_lead_rate: nil, click_to_conversion_rate: nil, lead_to_conversion_rate: nil, return_on_ad_spend: nil, website: nil, youtube: nil, twitter: nil, linkedin: nil, instagram: nil, tiktok: nil)
93
107
  @id = id
94
108
  @name = name
95
109
  @program_id = program_id
@@ -103,6 +117,7 @@ module OpenApiSDK
103
117
  @paypal_email = paypal_email
104
118
  @stripe_connect_id = stripe_connect_id
105
119
  @payouts_enabled_at = payouts_enabled_at
120
+ @trusted_at = trusted_at
106
121
  @tenant_id = tenant_id
107
122
  @links = links
108
123
  @description = description
@@ -115,12 +130,18 @@ module OpenApiSDK
115
130
  @application_id = application_id
116
131
  @banned_at = banned_at
117
132
  @banned_reason = banned_reason
118
- @clicks = clicks
119
- @leads = leads
120
- @conversions = conversions
121
- @sales = sales
122
- @sale_amount = sale_amount
133
+ @total_clicks = total_clicks
134
+ @total_leads = total_leads
135
+ @total_conversions = total_conversions
136
+ @total_sales = total_sales
137
+ @total_sale_amount = total_sale_amount
123
138
  @net_revenue = net_revenue
139
+ @earnings_per_click = earnings_per_click
140
+ @average_lifetime_value = average_lifetime_value
141
+ @click_to_lead_rate = click_to_lead_rate
142
+ @click_to_conversion_rate = click_to_conversion_rate
143
+ @lead_to_conversion_rate = lead_to_conversion_rate
144
+ @return_on_ad_spend = return_on_ad_spend
124
145
  @website = website
125
146
  @youtube = youtube
126
147
  @twitter = twitter
@@ -145,6 +166,7 @@ module OpenApiSDK
145
166
  return false unless @paypal_email == other.paypal_email
146
167
  return false unless @stripe_connect_id == other.stripe_connect_id
147
168
  return false unless @payouts_enabled_at == other.payouts_enabled_at
169
+ return false unless @trusted_at == other.trusted_at
148
170
  return false unless @tenant_id == other.tenant_id
149
171
  return false unless @links == other.links
150
172
  return false unless @description == other.description
@@ -157,12 +179,18 @@ module OpenApiSDK
157
179
  return false unless @application_id == other.application_id
158
180
  return false unless @banned_at == other.banned_at
159
181
  return false unless @banned_reason == other.banned_reason
160
- return false unless @clicks == other.clicks
161
- return false unless @leads == other.leads
162
- return false unless @conversions == other.conversions
163
- return false unless @sales == other.sales
164
- return false unless @sale_amount == other.sale_amount
182
+ return false unless @total_clicks == other.total_clicks
183
+ return false unless @total_leads == other.total_leads
184
+ return false unless @total_conversions == other.total_conversions
185
+ return false unless @total_sales == other.total_sales
186
+ return false unless @total_sale_amount == other.total_sale_amount
165
187
  return false unless @net_revenue == other.net_revenue
188
+ return false unless @earnings_per_click == other.earnings_per_click
189
+ return false unless @average_lifetime_value == other.average_lifetime_value
190
+ return false unless @click_to_lead_rate == other.click_to_lead_rate
191
+ return false unless @click_to_conversion_rate == other.click_to_conversion_rate
192
+ return false unless @lead_to_conversion_rate == other.lead_to_conversion_rate
193
+ return false unless @return_on_ad_spend == other.return_on_ad_spend
166
194
  return false unless @website == other.website
167
195
  return false unless @youtube == other.youtube
168
196
  return false unless @twitter == other.twitter
@@ -34,6 +34,8 @@ class OpenApiSDK::Models::Shared::PartnerEnrolledEventData
34
34
  def stripe_connect_id=(str_); end
35
35
  def payouts_enabled_at(); end
36
36
  def payouts_enabled_at=(str_); end
37
+ def trusted_at(); end
38
+ def trusted_at=(str_); end
37
39
  def tenant_id(); end
38
40
  def tenant_id=(str_); end
39
41
  def links(); end
@@ -58,18 +60,30 @@ class OpenApiSDK::Models::Shared::PartnerEnrolledEventData
58
60
  def banned_at=(str_); end
59
61
  def banned_reason(); end
60
62
  def banned_reason=(str_); end
61
- def clicks(); end
62
- def clicks=(str_); end
63
- def leads(); end
64
- def leads=(str_); end
65
- def conversions(); end
66
- def conversions=(str_); end
67
- def sales(); end
68
- def sales=(str_); end
69
- def sale_amount(); end
70
- def sale_amount=(str_); end
63
+ def total_clicks(); end
64
+ def total_clicks=(str_); end
65
+ def total_leads(); end
66
+ def total_leads=(str_); end
67
+ def total_conversions(); end
68
+ def total_conversions=(str_); end
69
+ def total_sales(); end
70
+ def total_sales=(str_); end
71
+ def total_sale_amount(); end
72
+ def total_sale_amount=(str_); end
71
73
  def net_revenue(); end
72
74
  def net_revenue=(str_); end
75
+ def earnings_per_click(); end
76
+ def earnings_per_click=(str_); end
77
+ def average_lifetime_value(); end
78
+ def average_lifetime_value=(str_); end
79
+ def click_to_lead_rate(); end
80
+ def click_to_lead_rate=(str_); end
81
+ def click_to_conversion_rate(); end
82
+ def click_to_conversion_rate=(str_); end
83
+ def lead_to_conversion_rate(); end
84
+ def lead_to_conversion_rate=(str_); end
85
+ def return_on_ad_spend(); end
86
+ def return_on_ad_spend=(str_); end
73
87
  def website(); end
74
88
  def website=(str_); end
75
89
  def youtube(); end
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::SaleCreatedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::SaleCreatedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::SaleCreatedEventLink
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::SaleCreatedEventLink
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::SaleCreatedEventLink
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -38,8 +38,10 @@ module OpenApiSDK
38
38
  # The partner's country (required for tax purposes).
39
39
  field :country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('country'), required: true } }
40
40
 
41
- sig { params(id: ::String, name: ::String, total_clicks: ::Float, total_leads: ::Float, total_conversions: ::Float, total_sales: ::Float, total_sale_amount: ::Float, total_commissions: ::Float, email: T.nilable(::String), image: T.nilable(::String), payouts_enabled_at: T.nilable(::String), country: T.nilable(::String)).void }
42
- def initialize(id:, name:, total_clicks:, total_leads:, total_conversions:, total_sales:, total_sale_amount:, total_commissions:, email: nil, image: nil, payouts_enabled_at: nil, country: nil)
41
+ field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('groupId') } }
42
+
43
+ sig { params(id: ::String, name: ::String, total_clicks: ::Float, total_leads: ::Float, total_conversions: ::Float, total_sales: ::Float, total_sale_amount: ::Float, total_commissions: ::Float, email: T.nilable(::String), image: T.nilable(::String), payouts_enabled_at: T.nilable(::String), country: T.nilable(::String), group_id: T.nilable(::String)).void }
44
+ def initialize(id:, name:, total_clicks:, total_leads:, total_conversions:, total_sales:, total_sale_amount:, total_commissions:, email: nil, image: nil, payouts_enabled_at: nil, country: nil, group_id: nil)
43
45
  @id = id
44
46
  @name = name
45
47
  @total_clicks = total_clicks
@@ -52,6 +54,7 @@ module OpenApiSDK
52
54
  @image = image
53
55
  @payouts_enabled_at = payouts_enabled_at
54
56
  @country = country
57
+ @group_id = group_id
55
58
  end
56
59
 
57
60
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -69,6 +72,7 @@ module OpenApiSDK
69
72
  return false unless @image == other.image
70
73
  return false unless @payouts_enabled_at == other.payouts_enabled_at
71
74
  return false unless @country == other.country
75
+ return false unless @group_id == other.group_id
72
76
  true
73
77
  end
74
78
  end
@@ -32,4 +32,6 @@ class OpenApiSDK::Models::Shared::SaleCreatedEventPartner
32
32
  def payouts_enabled_at=(str_); end
33
33
  def country(); end
34
34
  def country=(str_); end
35
+ def group_id(); end
36
+ def group_id=(str_); end
35
37
  end
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::SaleEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::SaleEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::SaleEventLink
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::SaleEventLink
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::SaleEventLink
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -49,6 +49,8 @@ module OpenApiSDK
49
49
  field :folders_limit, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('foldersLimit'), required: true } }
50
50
  # The groups limit of the workspace.
51
51
  field :groups_limit, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('groupsLimit'), required: true } }
52
+ # The weekly network invites limit of the workspace.
53
+ field :network_invites_limit, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('networkInvitesLimit'), required: true } }
52
54
  # The users limit of the workspace.
53
55
  field :users_limit, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('usersLimit'), required: true } }
54
56
  # The AI usage of the workspace.
@@ -67,6 +69,8 @@ module OpenApiSDK
67
69
  field :domains, Crystalline::Array.new(Models::Shared::Domains), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domains'), required: true } }
68
70
  # The invite code of the workspace.
69
71
  field :invite_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('inviteCode'), required: true } }
72
+ # The tier of the workspace's plan.
73
+ field :plan_tier, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('planTier'), required: true } }
70
74
  # The Stripe ID of the workspace.
71
75
  field :stripe_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('stripeId'), required: true } }
72
76
  # The date and time when the payment failed for the workspace.
@@ -86,8 +90,8 @@ module OpenApiSDK
86
90
  # The logo of the workspace.
87
91
  field :logo, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('logo') } }
88
92
 
89
- sig { params(id: ::String, name: ::String, slug: ::String, plan: Models::Shared::Plan, billing_cycle_start: ::Float, total_links: ::Float, usage: ::Float, usage_limit: ::Float, links_usage: ::Float, links_limit: ::Float, payouts_usage: ::Float, payouts_limit: ::Float, payout_fee: ::Float, domains_limit: ::Float, tags_limit: ::Float, folders_usage: ::Float, folders_limit: ::Float, groups_limit: ::Float, users_limit: ::Float, ai_usage: ::Float, ai_limit: ::Float, conversion_enabled: T::Boolean, dot_link_claimed: T::Boolean, created_at: ::String, users: T::Array[Models::Shared::Users], domains: T::Array[Models::Shared::Domains], invite_code: T.nilable(::String), stripe_id: T.nilable(::String), payment_failed_at: T.nilable(::String), stripe_connect_id: T.nilable(::String), flags: T.nilable(T::Hash[Symbol, T::Boolean]), store: T.nilable(T::Hash[Symbol, ::Object]), allowed_hostnames: T.nilable(T::Array[::String]), sso_email_domain: T.nilable(::String), sso_enforced_at: T.nilable(::String), logo: T.nilable(::String)).void }
90
- def initialize(id:, name:, slug:, plan:, billing_cycle_start:, total_links:, usage:, usage_limit:, links_usage:, links_limit:, payouts_usage:, payouts_limit:, payout_fee:, domains_limit:, tags_limit:, folders_usage:, folders_limit:, groups_limit:, users_limit:, ai_usage:, ai_limit:, conversion_enabled:, dot_link_claimed:, created_at:, users:, domains:, invite_code: nil, stripe_id: nil, payment_failed_at: nil, stripe_connect_id: nil, flags: nil, store: nil, allowed_hostnames: nil, sso_email_domain: nil, sso_enforced_at: nil, logo: nil)
93
+ sig { params(id: ::String, name: ::String, slug: ::String, plan: Models::Shared::Plan, billing_cycle_start: ::Float, total_links: ::Float, usage: ::Float, usage_limit: ::Float, links_usage: ::Float, links_limit: ::Float, payouts_usage: ::Float, payouts_limit: ::Float, payout_fee: ::Float, domains_limit: ::Float, tags_limit: ::Float, folders_usage: ::Float, folders_limit: ::Float, groups_limit: ::Float, network_invites_limit: ::Float, users_limit: ::Float, ai_usage: ::Float, ai_limit: ::Float, conversion_enabled: T::Boolean, dot_link_claimed: T::Boolean, created_at: ::String, users: T::Array[Models::Shared::Users], domains: T::Array[Models::Shared::Domains], invite_code: T.nilable(::String), plan_tier: T.nilable(::Float), stripe_id: T.nilable(::String), payment_failed_at: T.nilable(::String), stripe_connect_id: T.nilable(::String), flags: T.nilable(T::Hash[Symbol, T::Boolean]), store: T.nilable(T::Hash[Symbol, ::Object]), allowed_hostnames: T.nilable(T::Array[::String]), sso_email_domain: T.nilable(::String), sso_enforced_at: T.nilable(::String), logo: T.nilable(::String)).void }
94
+ def initialize(id:, name:, slug:, plan:, billing_cycle_start:, total_links:, usage:, usage_limit:, links_usage:, links_limit:, payouts_usage:, payouts_limit:, payout_fee:, domains_limit:, tags_limit:, folders_usage:, folders_limit:, groups_limit:, network_invites_limit:, users_limit:, ai_usage:, ai_limit:, conversion_enabled:, dot_link_claimed:, created_at:, users:, domains:, invite_code: nil, plan_tier: nil, stripe_id: nil, payment_failed_at: nil, stripe_connect_id: nil, flags: nil, store: nil, allowed_hostnames: nil, sso_email_domain: nil, sso_enforced_at: nil, logo: nil)
91
95
  @id = id
92
96
  @name = name
93
97
  @slug = slug
@@ -106,6 +110,7 @@ module OpenApiSDK
106
110
  @folders_usage = folders_usage
107
111
  @folders_limit = folders_limit
108
112
  @groups_limit = groups_limit
113
+ @network_invites_limit = network_invites_limit
109
114
  @users_limit = users_limit
110
115
  @ai_usage = ai_usage
111
116
  @ai_limit = ai_limit
@@ -115,6 +120,7 @@ module OpenApiSDK
115
120
  @users = users
116
121
  @domains = domains
117
122
  @invite_code = invite_code
123
+ @plan_tier = plan_tier
118
124
  @stripe_id = stripe_id
119
125
  @payment_failed_at = payment_failed_at
120
126
  @stripe_connect_id = stripe_connect_id
@@ -147,6 +153,7 @@ module OpenApiSDK
147
153
  return false unless @folders_usage == other.folders_usage
148
154
  return false unless @folders_limit == other.folders_limit
149
155
  return false unless @groups_limit == other.groups_limit
156
+ return false unless @network_invites_limit == other.network_invites_limit
150
157
  return false unless @users_limit == other.users_limit
151
158
  return false unless @ai_usage == other.ai_usage
152
159
  return false unless @ai_limit == other.ai_limit
@@ -156,6 +163,7 @@ module OpenApiSDK
156
163
  return false unless @users == other.users
157
164
  return false unless @domains == other.domains
158
165
  return false unless @invite_code == other.invite_code
166
+ return false unless @plan_tier == other.plan_tier
159
167
  return false unless @stripe_id == other.stripe_id
160
168
  return false unless @payment_failed_at == other.payment_failed_at
161
169
  return false unless @stripe_connect_id == other.stripe_connect_id
@@ -44,6 +44,8 @@ class OpenApiSDK::Models::Shared::WorkspaceSchema
44
44
  def folders_limit=(str_); end
45
45
  def groups_limit(); end
46
46
  def groups_limit=(str_); end
47
+ def network_invites_limit(); end
48
+ def network_invites_limit=(str_); end
47
49
  def users_limit(); end
48
50
  def users_limit=(str_); end
49
51
  def ai_usage(); end
@@ -62,6 +64,8 @@ class OpenApiSDK::Models::Shared::WorkspaceSchema
62
64
  def domains=(str_); end
63
65
  def invite_code(); end
64
66
  def invite_code=(str_); end
67
+ def plan_tier(); end
68
+ def plan_tier=(str_); end
65
69
  def stripe_id(); end
66
70
  def stripe_id=(str_); end
67
71
  def payment_failed_at(); end
@@ -55,6 +55,7 @@ module OpenApiSDK
55
55
  autoload :LinkClickedEventTestVariants, 'open_api_sdk/models/shared/linkclickedevent_testvariants.rb'
56
56
  autoload :LinkErrorSchema, 'open_api_sdk/models/shared/linkerrorschema.rb'
57
57
  autoload :LinkSchema, 'open_api_sdk/models/shared/linkschema.rb'
58
+ autoload :LinkTagSchema, 'open_api_sdk/models/shared/linktagschema.rb'
58
59
  autoload :LinkWebhookEvent, 'open_api_sdk/models/shared/linkwebhookevent.rb'
59
60
  autoload :LinkWebhookEventLink, 'open_api_sdk/models/shared/linkwebhookevent_link.rb'
60
61
  autoload :LinkWebhookEventEvent, 'open_api_sdk/models/shared/linkwebhookevent_event.rb'
@@ -62,6 +63,11 @@ module OpenApiSDK
62
63
  autoload :PartnerAnalyticsCount, 'open_api_sdk/models/shared/partneranalyticscount.rb'
63
64
  autoload :PartnerAnalyticsTimeseries, 'open_api_sdk/models/shared/partneranalyticstimeseries.rb'
64
65
  autoload :PartnerAnalyticsTopLinks, 'open_api_sdk/models/shared/partneranalyticstoplinks.rb'
66
+ autoload :PartnerApplicationSubmittedEvent, 'open_api_sdk/models/shared/partnerapplicationsubmittedevent.rb'
67
+ autoload :PartnerApplicationSubmittedEventData, 'open_api_sdk/models/shared/partnerapplicationsubmittedevent_data.rb'
68
+ autoload :PartnerApplicationSubmittedEventEvent, 'open_api_sdk/models/shared/partnerapplicationsubmittedevent_event.rb'
69
+ autoload :PartnerApplicationSubmittedEventPartner, 'open_api_sdk/models/shared/partnerapplicationsubmittedevent_partner.rb'
70
+ autoload :PartnerApplicationSubmittedEventStatus, 'open_api_sdk/models/shared/partnerapplicationsubmittedevent_status.rb'
65
71
  autoload :PartnerEnrolledEvent, 'open_api_sdk/models/shared/partnerenrolledevent.rb'
66
72
  autoload :PartnerEnrolledEventLink, 'open_api_sdk/models/shared/partnerenrolledevent_link.rb'
67
73
  autoload :PartnerEnrolledEventData, 'open_api_sdk/models/shared/partnerenrolledevent_data.rb'
@@ -82,10 +88,10 @@ module OpenApiSDK
82
88
  autoload :SaleEventEvent, 'open_api_sdk/models/shared/saleevent_event.rb'
83
89
  autoload :SaleEventTestVariants, 'open_api_sdk/models/shared/saleevent_testvariants.rb'
84
90
  autoload :Security, 'open_api_sdk/models/shared/security.rb'
85
- autoload :TagSchema, 'open_api_sdk/models/shared/tagschema.rb'
86
91
  autoload :WebhookEvent, 'open_api_sdk/models/shared/webhookevent.rb'
87
92
  autoload :WorkspaceSchema, 'open_api_sdk/models/shared/workspaceschema.rb'
88
93
  autoload :AccessLevel, 'open_api_sdk/models/shared/accesslevel.rb'
94
+ autoload :ApplicationFormData, 'open_api_sdk/models/shared/applicationformdata.rb'
89
95
  autoload :BannedReason, 'open_api_sdk/models/shared/bannedreason.rb'
90
96
  autoload :City, 'open_api_sdk/models/shared/city.rb'
91
97
  autoload :Click, 'open_api_sdk/models/shared/click.rb'