dub 0.12.6 → 0.12.8

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 (134) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dub.rb +1 -0
  3. data/lib/open_api_sdk/commissions.rb +240 -1
  4. data/lib/open_api_sdk/customers.rb +3 -3
  5. data/lib/open_api_sdk/domains.rb +2 -2
  6. data/lib/open_api_sdk/dub.rb +2 -1
  7. data/lib/open_api_sdk/events.rb +1 -1
  8. data/lib/open_api_sdk/folders.rb +2 -2
  9. data/lib/open_api_sdk/links.rb +1 -4
  10. data/lib/open_api_sdk/models/operations/applicationformdata.rb +36 -0
  11. data/lib/open_api_sdk/models/operations/applicationformdata.rbi +15 -0
  12. data/lib/open_api_sdk/models/operations/approvepartnerapplication_requestbody.rb +36 -0
  13. data/lib/open_api_sdk/models/operations/approvepartnerapplication_requestbody.rbi +15 -0
  14. data/lib/open_api_sdk/models/operations/approvepartnerapplication_responsebody.rb +32 -0
  15. data/lib/open_api_sdk/models/operations/approvepartnerapplication_responsebody.rbi +13 -0
  16. data/lib/open_api_sdk/models/operations/banpartner_requestbody.rb +1 -1
  17. data/lib/open_api_sdk/models/operations/createcommission_requestbody.rb +27 -0
  18. data/lib/open_api_sdk/models/operations/createcommission_requestbody.rbi +11 -0
  19. data/lib/open_api_sdk/models/operations/{gettags_queryparam_sortorder.rb → createcommission_requestbody_commissions_type.rb} +3 -4
  20. data/lib/open_api_sdk/models/operations/createcommission_requestbody_commissions_type.rbi +11 -0
  21. data/lib/open_api_sdk/models/operations/{gettags_queryparam_sortby.rb → createcommission_requestbody_type.rb} +3 -4
  22. data/lib/open_api_sdk/models/operations/createcommission_requestbody_type.rbi +11 -0
  23. data/lib/open_api_sdk/models/operations/createcommission_responsebody.rb +36 -0
  24. data/lib/open_api_sdk/models/operations/createcommission_responsebody.rbi +15 -0
  25. data/lib/open_api_sdk/models/operations/createpartner_networkstatus.rb +22 -0
  26. data/lib/open_api_sdk/models/operations/createpartner_networkstatus.rbi +11 -0
  27. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +32 -10
  28. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rbi +14 -4
  29. data/lib/open_api_sdk/models/operations/createpartner_tags.rb +36 -0
  30. data/lib/open_api_sdk/models/operations/createpartner_tags.rbi +15 -0
  31. data/lib/open_api_sdk/models/operations/customer.rb +24 -16
  32. data/lib/open_api_sdk/models/operations/customer.rbi +8 -4
  33. data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +6 -6
  34. data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rbi +2 -2
  35. data/lib/open_api_sdk/models/operations/getcustomers_responsebody.rb +6 -6
  36. data/lib/open_api_sdk/models/operations/getcustomers_responsebody.rbi +2 -2
  37. data/lib/open_api_sdk/models/operations/getlinks_request.rb +2 -14
  38. data/lib/open_api_sdk/models/operations/getlinks_request.rbi +0 -6
  39. data/lib/open_api_sdk/models/operations/gettags_request.rb +4 -4
  40. data/lib/open_api_sdk/models/operations/listcommissions_customer.rb +6 -6
  41. data/lib/open_api_sdk/models/operations/listcommissions_customer.rbi +2 -2
  42. data/lib/open_api_sdk/models/operations/listcommissions_request.rb +9 -5
  43. data/lib/open_api_sdk/models/operations/listcommissions_request.rbi +2 -0
  44. data/lib/open_api_sdk/models/operations/listcommissions_type.rb +1 -0
  45. data/lib/open_api_sdk/models/operations/listevents_request.rb +8 -4
  46. data/lib/open_api_sdk/models/operations/listevents_request.rbi +2 -0
  47. data/lib/open_api_sdk/models/operations/listevents_responsebody_customer.rb +6 -6
  48. data/lib/open_api_sdk/models/operations/listevents_responsebody_customer.rbi +2 -2
  49. data/lib/open_api_sdk/models/operations/listpartnerapplications_partner.rb +88 -0
  50. data/lib/open_api_sdk/models/operations/listpartnerapplications_partner.rbi +41 -0
  51. data/lib/open_api_sdk/models/operations/listpartnerapplications_request.rb +44 -0
  52. data/lib/open_api_sdk/models/operations/listpartnerapplications_request.rbi +19 -0
  53. data/lib/open_api_sdk/models/operations/listpartnerapplications_responsebody.rb +44 -0
  54. data/lib/open_api_sdk/models/operations/listpartnerapplications_responsebody.rbi +19 -0
  55. data/lib/open_api_sdk/models/operations/listpartnerapplications_status.rb +25 -0
  56. data/lib/open_api_sdk/models/operations/listpartnerapplications_status.rbi +11 -0
  57. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rb +32 -10
  58. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rbi +14 -4
  59. data/lib/open_api_sdk/models/operations/networkstatus.rb +22 -0
  60. data/lib/open_api_sdk/models/operations/networkstatus.rbi +11 -0
  61. data/lib/open_api_sdk/models/operations/paymentprocessor.rb +2 -0
  62. data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +1 -0
  63. data/lib/open_api_sdk/models/operations/queryparam_sortby.rb +3 -2
  64. data/lib/open_api_sdk/models/operations/queryparam_sortorder.rb +1 -1
  65. data/lib/open_api_sdk/models/operations/reapplicationtimeframe.rb +20 -0
  66. data/lib/open_api_sdk/models/operations/reapplicationtimeframe.rbi +11 -0
  67. data/lib/open_api_sdk/models/operations/reason.rb +1 -1
  68. data/lib/open_api_sdk/models/operations/rejectbountysubmission_rejectionreason.rb +22 -0
  69. data/lib/open_api_sdk/models/operations/rejectbountysubmission_rejectionreason.rbi +11 -0
  70. data/lib/open_api_sdk/models/operations/rejectbountysubmission_requestbody.rb +2 -2
  71. data/lib/open_api_sdk/models/operations/rejectionreason.rb +4 -5
  72. data/lib/open_api_sdk/models/operations/rejectpartnerapplication_requestbody.rb +52 -0
  73. data/lib/open_api_sdk/models/operations/rejectpartnerapplication_requestbody.rbi +23 -0
  74. data/lib/open_api_sdk/models/operations/rejectpartnerapplication_responsebody.rb +32 -0
  75. data/lib/open_api_sdk/models/operations/rejectpartnerapplication_responsebody.rbi +13 -0
  76. data/lib/open_api_sdk/models/operations/requestbody_1.rb +48 -0
  77. data/lib/open_api_sdk/models/operations/requestbody_1.rbi +21 -0
  78. data/lib/open_api_sdk/models/operations/requestbody_2.rb +56 -0
  79. data/lib/open_api_sdk/models/operations/requestbody_2.rbi +25 -0
  80. data/lib/open_api_sdk/models/operations/requestbody_3.rb +68 -0
  81. data/lib/open_api_sdk/models/operations/requestbody_3.rbi +31 -0
  82. data/lib/open_api_sdk/models/operations/requestbody_customer.rb +52 -0
  83. data/lib/open_api_sdk/models/operations/requestbody_customer.rbi +23 -0
  84. data/lib/open_api_sdk/models/operations/requestbody_type.rb +18 -0
  85. data/lib/open_api_sdk/models/operations/requestbody_type.rbi +11 -0
  86. data/lib/open_api_sdk/models/operations/responsebody_customer.rb +6 -6
  87. data/lib/open_api_sdk/models/operations/responsebody_customer.rbi +2 -2
  88. data/lib/open_api_sdk/models/operations/responsebody_paymentprocessor.rb +2 -0
  89. data/lib/open_api_sdk/models/operations/responsebody_sale.rb +6 -2
  90. data/lib/open_api_sdk/models/operations/responsebody_sale.rbi +2 -0
  91. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +6 -2
  92. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rbi +2 -0
  93. data/lib/open_api_sdk/models/operations/{retrievelinks_request.rb → retrievepartnerlinks_request.rb} +1 -1
  94. data/lib/open_api_sdk/models/operations/{retrievelinks_request.rbi → retrievepartnerlinks_request.rbi} +2 -2
  95. data/lib/open_api_sdk/models/operations/{retrievelinks_responsebody.rb → retrievepartnerlinks_responsebody.rb} +1 -1
  96. data/lib/open_api_sdk/models/operations/{retrievelinks_responsebody.rbi → retrievepartnerlinks_responsebody.rbi} +2 -2
  97. data/lib/open_api_sdk/models/operations/sortby.rb +2 -5
  98. data/lib/open_api_sdk/models/operations/tags.rb +36 -0
  99. data/lib/open_api_sdk/models/operations/tags.rbi +15 -0
  100. data/lib/open_api_sdk/models/operations/tracklead_customer.rb +44 -0
  101. data/lib/open_api_sdk/models/operations/tracklead_customer.rbi +19 -0
  102. data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +2 -2
  103. data/lib/open_api_sdk/models/operations/type.rb +2 -1
  104. data/lib/open_api_sdk/models/operations/updatecommission_customer.rb +6 -6
  105. data/lib/open_api_sdk/models/operations/updatecommission_customer.rbi +2 -2
  106. data/lib/open_api_sdk/models/operations/updatecommission_requestbody.rb +6 -6
  107. data/lib/open_api_sdk/models/operations/updatecommission_requestbody.rbi +2 -2
  108. data/lib/open_api_sdk/models/operations/updatecommission_type.rb +1 -0
  109. data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +6 -6
  110. data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rbi +2 -2
  111. data/lib/open_api_sdk/models/operations.rb +27 -5
  112. data/lib/open_api_sdk/models/shared/commissioncreatedevent_customer.rb +6 -6
  113. data/lib/open_api_sdk/models/shared/commissioncreatedevent_customer.rbi +2 -2
  114. data/lib/open_api_sdk/models/shared/commissioncreatedevent_type.rb +1 -0
  115. data/lib/open_api_sdk/models/shared/customer.rb +6 -6
  116. data/lib/open_api_sdk/models/shared/customer.rbi +2 -2
  117. data/lib/open_api_sdk/models/shared/networkstatus.rb +22 -0
  118. data/lib/open_api_sdk/models/{operations/sort.rbi → shared/networkstatus.rbi} +2 -2
  119. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rb +32 -10
  120. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rbi +14 -4
  121. data/lib/open_api_sdk/models/shared/salecreatedevent_customer.rb +6 -6
  122. data/lib/open_api_sdk/models/shared/salecreatedevent_customer.rbi +2 -2
  123. data/lib/open_api_sdk/models/shared/tags.rb +36 -0
  124. data/lib/open_api_sdk/models/shared/tags.rbi +15 -0
  125. data/lib/open_api_sdk/models/shared.rb +2 -0
  126. data/lib/open_api_sdk/partner_applications.rb +750 -0
  127. data/lib/open_api_sdk/partners.rb +4 -4
  128. data/lib/open_api_sdk/payouts.rb +1 -1
  129. data/lib/open_api_sdk/sdkconfiguration.rb +3 -3
  130. data/lib/open_api_sdk/tags.rb +2 -2
  131. metadata +61 -12
  132. data/lib/open_api_sdk/models/operations/gettags_queryparam_sortby.rbi +0 -11
  133. data/lib/open_api_sdk/models/operations/gettags_queryparam_sortorder.rbi +0 -11
  134. data/lib/open_api_sdk/models/operations/sort.rb +0 -23
@@ -19,14 +19,14 @@ module OpenApiSDK
19
19
  # The page number for pagination.
20
20
  field :page, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
21
21
  # The field to sort the tags by.
22
- field :sort_by, Crystalline::Nilable.new(Models::Operations::GetTagsQueryParamSortBy), { 'query_param': { 'field_name': 'sortBy', 'style': 'form', 'explode': true } }
22
+ field :sort_by, Crystalline::Nilable.new(Models::Operations::QueryParamSortBy), { 'query_param': { 'field_name': 'sortBy', 'style': 'form', 'explode': true } }
23
23
  # The order to sort the tags by.
24
- field :sort_order, Crystalline::Nilable.new(Models::Operations::GetTagsQueryParamSortOrder), { 'query_param': { 'field_name': 'sortOrder', 'style': 'form', 'explode': true } }
24
+ field :sort_order, Crystalline::Nilable.new(Models::Operations::QueryParamSortOrder), { 'query_param': { 'field_name': 'sortOrder', 'style': 'form', 'explode': true } }
25
25
  # The number of items per page.
26
26
  field :page_size, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'pageSize', 'style': 'form', 'explode': true } }
27
27
 
28
- sig { params(search: T.nilable(::String), ids: T.nilable(T.any(::String, T::Array[::String])), page: T.nilable(::Float), sort_by: T.nilable(Models::Operations::GetTagsQueryParamSortBy), sort_order: T.nilable(Models::Operations::GetTagsQueryParamSortOrder), page_size: T.nilable(::Float)).void }
29
- def initialize(search: nil, ids: nil, page: nil, sort_by: Models::Operations::GetTagsQueryParamSortBy::NAME, sort_order: Models::Operations::GetTagsQueryParamSortOrder::ASC, page_size: 100.0)
28
+ sig { params(search: T.nilable(::String), ids: T.nilable(T.any(::String, T::Array[::String])), page: T.nilable(::Float), sort_by: T.nilable(Models::Operations::QueryParamSortBy), sort_order: T.nilable(Models::Operations::QueryParamSortOrder), page_size: T.nilable(::Float)).void }
29
+ def initialize(search: nil, ids: nil, page: nil, sort_by: Models::Operations::QueryParamSortBy::NAME, sort_order: Models::Operations::QueryParamSortOrder::ASC, page_size: 100.0)
30
30
  @search = search
31
31
  @ids = ids
32
32
  @page = page
@@ -14,12 +14,12 @@ module OpenApiSDK
14
14
 
15
15
  # The unique ID of the customer. You may use either the customer's `id` on Dub (obtained via `/customers` endpoint) or their `externalId` (unique ID within your system, prefixed with `ext_`, e.g. `ext_123`).
16
16
  field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id'), required: true } }
17
- # Name of the customer.
18
- field :name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name'), required: true } }
19
17
  # Unique identifier for the customer in the client's app.
20
18
  field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId'), required: true } }
21
19
  # The date the customer was created (usually the signup date or trial start date).
22
20
  field :created_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('createdAt'), required: true } }
21
+ # Name of the customer.
22
+ field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name') } }
23
23
  # Email of the customer.
24
24
  field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('email') } }
25
25
  # Avatar URL of the customer.
@@ -37,12 +37,12 @@ module OpenApiSDK
37
37
  # The date the customer canceled their subscription. Useful for calculating LTV and churn rate.
38
38
  field :subscription_canceled_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('subscriptionCanceledAt') } }
39
39
 
40
- sig { params(id: ::String, name: ::String, external_id: ::String, created_at: ::String, email: T.nilable(::String), avatar: T.nilable(::String), stripe_customer_id: T.nilable(::String), country: T.nilable(::String), sales: T.nilable(::Float), sale_amount: T.nilable(::Float), first_sale_at: T.nilable(::String), subscription_canceled_at: T.nilable(::String)).void }
41
- def initialize(id:, name:, external_id:, created_at:, email: nil, avatar: nil, stripe_customer_id: nil, country: nil, sales: nil, sale_amount: nil, first_sale_at: nil, subscription_canceled_at: nil)
40
+ sig { params(id: ::String, external_id: ::String, created_at: ::String, name: T.nilable(::String), email: T.nilable(::String), avatar: T.nilable(::String), stripe_customer_id: T.nilable(::String), country: T.nilable(::String), sales: T.nilable(::Float), sale_amount: T.nilable(::Float), first_sale_at: T.nilable(::String), subscription_canceled_at: T.nilable(::String)).void }
41
+ def initialize(id:, external_id:, created_at:, name: nil, email: nil, avatar: nil, stripe_customer_id: nil, country: nil, sales: nil, sale_amount: nil, first_sale_at: nil, subscription_canceled_at: nil)
42
42
  @id = id
43
- @name = name
44
43
  @external_id = external_id
45
44
  @created_at = created_at
45
+ @name = name
46
46
  @email = email
47
47
  @avatar = avatar
48
48
  @stripe_customer_id = stripe_customer_id
@@ -57,9 +57,9 @@ module OpenApiSDK
57
57
  def ==(other)
58
58
  return false unless other.is_a? self.class
59
59
  return false unless @id == other.id
60
- return false unless @name == other.name
61
60
  return false unless @external_id == other.external_id
62
61
  return false unless @created_at == other.created_at
62
+ return false unless @name == other.name
63
63
  return false unless @email == other.email
64
64
  return false unless @avatar == other.avatar
65
65
  return false unless @stripe_customer_id == other.stripe_customer_id
@@ -10,12 +10,12 @@ end
10
10
  class OpenApiSDK::Models::Operations::ListCommissionsCustomer
11
11
  def id(); end
12
12
  def id=(str_); end
13
- def name(); end
14
- def name=(str_); end
15
13
  def external_id(); end
16
14
  def external_id=(str_); end
17
15
  def created_at(); end
18
16
  def created_at=(str_); end
17
+ def name(); end
18
+ def name=(str_); end
19
19
  def email(); end
20
20
  def email=(str_); end
21
21
  def avatar(); end
@@ -12,18 +12,20 @@ module OpenApiSDK
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
-
15
+ # Filter the list of commissions by type. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `sale`, `sale,lead`, `-click`.
16
16
  field :type, Crystalline::Nilable.new(Models::Operations::Type), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
17
17
  # Filter the list of commissions by the associated customer.
18
18
  field :customer_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'customerId', 'style': 'form', 'explode': true } }
19
19
  # Filter the list of commissions by the associated payout.
20
20
  field :payout_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'payoutId', 'style': 'form', 'explode': true } }
21
- # Filter the list of commissions by the associated partner. When specified, takes precedence over `tenantId`.
21
+ # Filter the list of commissions by the associated partner. When specified, takes precedence over `tenantId`. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `partner_abc`, `partner_abc,partner_xyz`, `-partner_abc`.
22
22
  field :partner_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'partnerId', 'style': 'form', 'explode': true } }
23
23
  # Filter the list of commissions by the associated partner's `tenantId` (their unique ID within your database).
24
24
  field :tenant_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'tenantId', 'style': 'form', 'explode': true } }
25
- # Filter the list of commissions by the associated partner group.
25
+ # Filter the list of commissions by the associated partner group. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `group_abc`, `group_abc,group_xyz`, `-group_abc`.
26
26
  field :group_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'groupId', 'style': 'form', 'explode': true } }
27
+ # Filter the list of commissions by the associated partner tag. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `ptag_abc`, `ptag_abc,ptag_xyz`, `-ptag_abc`.
28
+ field :partner_tag_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'partnerTagId', 'style': 'form', 'explode': true } }
27
29
  # Filter the list of commissions by the associated invoice. Since invoiceId is unique on a per-program basis, this will only return one commission per invoice.
28
30
  field :invoice_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'invoiceId', 'style': 'form', 'explode': true } }
29
31
  # Filter the list of commissions by their corresponding status.
@@ -49,14 +51,15 @@ module OpenApiSDK
49
51
  # The number of items per page.
50
52
  field :page_size, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'pageSize', 'style': 'form', 'explode': true } }
51
53
 
52
- sig { params(type: T.nilable(Models::Operations::Type), customer_id: T.nilable(::String), payout_id: T.nilable(::String), partner_id: T.nilable(::String), tenant_id: T.nilable(::String), group_id: T.nilable(::String), invoice_id: T.nilable(::String), status: T.nilable(Models::Operations::QueryParamStatus), start: T.nilable(::String), end_: T.nilable(::String), timezone: T.nilable(::String), ending_before: T.nilable(::String), starting_after: T.nilable(::String), page: T.nilable(::Float), sort_by: T.nilable(Models::Operations::ListCommissionsQueryParamSortBy), sort_order: T.nilable(Models::Operations::ListCommissionsQueryParamSortOrder), interval: T.nilable(Models::Operations::ListCommissionsQueryParamInterval), page_size: T.nilable(::Float)).void }
53
- def initialize(type: nil, customer_id: nil, payout_id: nil, partner_id: nil, tenant_id: nil, group_id: nil, invoice_id: nil, status: nil, start: nil, end_: nil, timezone: nil, ending_before: nil, starting_after: nil, page: nil, sort_by: Models::Operations::ListCommissionsQueryParamSortBy::CREATED_AT, sort_order: Models::Operations::ListCommissionsQueryParamSortOrder::DESC, interval: Models::Operations::ListCommissionsQueryParamInterval::ALL, page_size: 100.0)
54
+ sig { params(type: T.nilable(Models::Operations::Type), customer_id: T.nilable(::String), payout_id: T.nilable(::String), partner_id: T.nilable(::String), tenant_id: T.nilable(::String), group_id: T.nilable(::String), partner_tag_id: T.nilable(::String), invoice_id: T.nilable(::String), status: T.nilable(Models::Operations::QueryParamStatus), start: T.nilable(::String), end_: T.nilable(::String), timezone: T.nilable(::String), ending_before: T.nilable(::String), starting_after: T.nilable(::String), page: T.nilable(::Float), sort_by: T.nilable(Models::Operations::ListCommissionsQueryParamSortBy), sort_order: T.nilable(Models::Operations::ListCommissionsQueryParamSortOrder), interval: T.nilable(Models::Operations::ListCommissionsQueryParamInterval), page_size: T.nilable(::Float)).void }
55
+ def initialize(type: nil, customer_id: nil, payout_id: nil, partner_id: nil, tenant_id: nil, group_id: nil, partner_tag_id: nil, invoice_id: nil, status: nil, start: nil, end_: nil, timezone: nil, ending_before: nil, starting_after: nil, page: nil, sort_by: Models::Operations::ListCommissionsQueryParamSortBy::CREATED_AT, sort_order: Models::Operations::ListCommissionsQueryParamSortOrder::DESC, interval: Models::Operations::ListCommissionsQueryParamInterval::ALL, page_size: 100.0)
54
56
  @type = type
55
57
  @customer_id = customer_id
56
58
  @payout_id = payout_id
57
59
  @partner_id = partner_id
58
60
  @tenant_id = tenant_id
59
61
  @group_id = group_id
62
+ @partner_tag_id = partner_tag_id
60
63
  @invoice_id = invoice_id
61
64
  @status = status
62
65
  @start = start
@@ -80,6 +83,7 @@ module OpenApiSDK
80
83
  return false unless @partner_id == other.partner_id
81
84
  return false unless @tenant_id == other.tenant_id
82
85
  return false unless @group_id == other.group_id
86
+ return false unless @partner_tag_id == other.partner_tag_id
83
87
  return false unless @invoice_id == other.invoice_id
84
88
  return false unless @status == other.status
85
89
  return false unless @start == other.start
@@ -20,6 +20,8 @@ class OpenApiSDK::Models::Operations::ListCommissionsRequest
20
20
  def tenant_id=(str_); end
21
21
  def group_id(); end
22
22
  def group_id=(str_); end
23
+ def partner_tag_id(); end
24
+ def partner_tag_id=(str_); end
23
25
  def invoice_id(); end
24
26
  def invoice_id=(str_); end
25
27
  def status(); end
@@ -13,6 +13,7 @@ module OpenApiSDK
13
13
  CLICK = new('click')
14
14
  LEAD = new('lead')
15
15
  SALE = new('sale')
16
+ REFERRAL = new('referral')
16
17
  CUSTOM = new('custom')
17
18
  end
18
19
  end
@@ -26,6 +26,8 @@ module OpenApiSDK
26
26
  field :tag_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'tagId', 'style': 'form', 'explode': true } }
27
27
  # The folder ID to retrieve analytics for. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `folder_123`, `folder_123,folder_456`, `-folder_789`. If not provided, return analytics for all links.
28
28
  field :folder_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'folderId', 'style': 'form', 'explode': true } }
29
+ # The partner tag ID(s) to retrieve analytics for. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `ptag_123`, `ptag_123,ptag_456`, `-ptag_789`.
30
+ field :partner_tag_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'partnerTagId', 'style': 'form', 'explode': true } }
29
31
  # The group ID to retrieve analytics for. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `grp_123`, `grp_123,grp_456`, `-grp_789`.
30
32
  field :group_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'groupId', 'style': 'form', 'explode': true } }
31
33
  # The ID of the partner to retrieve analytics for. Supports advanced filtering: single value, multiple values (comma-separated), or exclusion (prefix with `-`). Examples: `pn_123`, `pn_123,pn_456`, `-pn_789`.
@@ -91,14 +93,14 @@ module OpenApiSDK
91
93
 
92
94
  field :limit, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'limit', 'style': 'form', 'explode': true } }
93
95
  # The sort order. The default is `desc`.
94
- field :sort_order, Crystalline::Nilable.new(Models::Operations::QueryParamSortOrder), { 'query_param': { 'field_name': 'sortOrder', 'style': 'form', 'explode': true } }
96
+ field :sort_order, Crystalline::Nilable.new(Models::Operations::SortOrder), { 'query_param': { 'field_name': 'sortOrder', 'style': 'form', 'explode': true } }
95
97
  # The field to sort the events by. The default is `timestamp`.
96
- field :sort_by, Crystalline::Nilable.new(Models::Operations::QueryParamSortBy), { 'query_param': { 'field_name': 'sortBy', 'style': 'form', 'explode': true } }
98
+ field :sort_by, Crystalline::Nilable.new(Models::Operations::SortBy), { 'query_param': { 'field_name': 'sortBy', 'style': 'form', 'explode': true } }
97
99
  # DEPRECATED. Use `sortOrder` instead.
98
100
  field :order, Crystalline::Nilable.new(Models::Operations::Order), { 'query_param': { 'field_name': 'order', 'style': 'form', 'explode': true } }
99
101
 
100
- sig { params(domain: T.nilable(::String), key: T.nilable(::String), link_id: T.nilable(::String), external_id: T.nilable(::String), tenant_id: T.nilable(::String), tag_id: T.nilable(::String), folder_id: T.nilable(::String), group_id: T.nilable(::String), partner_id: T.nilable(::String), customer_id: T.nilable(::String), interval: T.nilable(Models::Operations::QueryParamInterval), start: T.nilable(::String), end_: T.nilable(::String), country: T.nilable(::String), city: T.nilable(::String), region: T.nilable(::String), continent: T.nilable(::String), device: T.nilable(::String), browser: T.nilable(::String), os: T.nilable(::String), trigger: T.nilable(::String), referer: T.nilable(::String), referer_url: T.nilable(::String), url: 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), root: T.nilable(T::Boolean), sale_type: T.nilable(Models::Operations::QueryParamSaleType), query: T.nilable(::String), program_id: T.nilable(::String), tag_ids: T.nilable(::String), qr: T.nilable(T::Boolean), event: T.nilable(Models::Operations::QueryParamEvent), timezone: T.nilable(::String), page: T.nilable(::Float), limit: T.nilable(::Float), sort_order: T.nilable(Models::Operations::QueryParamSortOrder), sort_by: T.nilable(Models::Operations::QueryParamSortBy), order: T.nilable(Models::Operations::Order)).void }
101
- def initialize(domain: nil, key: nil, link_id: nil, external_id: nil, tenant_id: nil, tag_id: nil, folder_id: nil, group_id: nil, partner_id: nil, customer_id: nil, interval: nil, start: nil, end_: nil, country: nil, city: nil, region: nil, continent: nil, device: nil, browser: nil, os: nil, trigger: nil, referer: nil, referer_url: nil, url: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, root: nil, sale_type: nil, query: nil, program_id: nil, tag_ids: nil, qr: nil, event: Models::Operations::QueryParamEvent::CLICKS, timezone: 'UTC', page: 1.0, limit: 100.0, sort_order: Models::Operations::QueryParamSortOrder::DESC, sort_by: Models::Operations::QueryParamSortBy::TIMESTAMP, order: Models::Operations::Order::DESC)
102
+ sig { params(domain: T.nilable(::String), key: T.nilable(::String), link_id: T.nilable(::String), external_id: T.nilable(::String), tenant_id: T.nilable(::String), tag_id: T.nilable(::String), folder_id: T.nilable(::String), partner_tag_id: T.nilable(::String), group_id: T.nilable(::String), partner_id: T.nilable(::String), customer_id: T.nilable(::String), interval: T.nilable(Models::Operations::QueryParamInterval), start: T.nilable(::String), end_: T.nilable(::String), country: T.nilable(::String), city: T.nilable(::String), region: T.nilable(::String), continent: T.nilable(::String), device: T.nilable(::String), browser: T.nilable(::String), os: T.nilable(::String), trigger: T.nilable(::String), referer: T.nilable(::String), referer_url: T.nilable(::String), url: 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), root: T.nilable(T::Boolean), sale_type: T.nilable(Models::Operations::QueryParamSaleType), query: T.nilable(::String), program_id: T.nilable(::String), tag_ids: T.nilable(::String), qr: T.nilable(T::Boolean), event: T.nilable(Models::Operations::QueryParamEvent), timezone: T.nilable(::String), page: T.nilable(::Float), limit: T.nilable(::Float), sort_order: T.nilable(Models::Operations::SortOrder), sort_by: T.nilable(Models::Operations::SortBy), order: T.nilable(Models::Operations::Order)).void }
103
+ def initialize(domain: nil, key: nil, link_id: nil, external_id: nil, tenant_id: nil, tag_id: nil, folder_id: nil, partner_tag_id: nil, group_id: nil, partner_id: nil, customer_id: nil, interval: nil, start: nil, end_: nil, country: nil, city: nil, region: nil, continent: nil, device: nil, browser: nil, os: nil, trigger: nil, referer: nil, referer_url: nil, url: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, root: nil, sale_type: nil, query: nil, program_id: nil, tag_ids: nil, qr: nil, event: Models::Operations::QueryParamEvent::CLICKS, timezone: 'UTC', page: 1.0, limit: 100.0, sort_order: Models::Operations::SortOrder::DESC, sort_by: Models::Operations::SortBy::TIMESTAMP, order: Models::Operations::Order::DESC)
102
104
  @domain = domain
103
105
  @key = key
104
106
  @link_id = link_id
@@ -106,6 +108,7 @@ module OpenApiSDK
106
108
  @tenant_id = tenant_id
107
109
  @tag_id = tag_id
108
110
  @folder_id = folder_id
111
+ @partner_tag_id = partner_tag_id
109
112
  @group_id = group_id
110
113
  @partner_id = partner_id
111
114
  @customer_id = customer_id
@@ -153,6 +156,7 @@ module OpenApiSDK
153
156
  return false unless @tenant_id == other.tenant_id
154
157
  return false unless @tag_id == other.tag_id
155
158
  return false unless @folder_id == other.folder_id
159
+ return false unless @partner_tag_id == other.partner_tag_id
156
160
  return false unless @group_id == other.group_id
157
161
  return false unless @partner_id == other.partner_id
158
162
  return false unless @customer_id == other.customer_id
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Operations::ListEventsRequest
22
22
  def tag_id=(str_); end
23
23
  def folder_id(); end
24
24
  def folder_id=(str_); end
25
+ def partner_tag_id(); end
26
+ def partner_tag_id=(str_); end
25
27
  def group_id(); end
26
28
  def group_id=(str_); end
27
29
  def partner_id(); end
@@ -14,12 +14,12 @@ module OpenApiSDK
14
14
 
15
15
  # The unique ID of the customer. You may use either the customer's `id` on Dub (obtained via `/customers` endpoint) or their `externalId` (unique ID within your system, prefixed with `ext_`, e.g. `ext_123`).
16
16
  field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id'), required: true } }
17
- # Name of the customer.
18
- field :name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name'), required: true } }
19
17
  # Unique identifier for the customer in the client's app.
20
18
  field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId'), required: true } }
21
19
  # The date the customer was created (usually the signup date or trial start date).
22
20
  field :created_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('createdAt'), required: true } }
21
+ # Name of the customer.
22
+ field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name') } }
23
23
  # Email of the customer.
24
24
  field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('email') } }
25
25
  # Avatar URL of the customer.
@@ -37,12 +37,12 @@ module OpenApiSDK
37
37
  # The date the customer canceled their subscription. Useful for calculating LTV and churn rate.
38
38
  field :subscription_canceled_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('subscriptionCanceledAt') } }
39
39
 
40
- sig { params(id: ::String, name: ::String, external_id: ::String, created_at: ::String, email: T.nilable(::String), avatar: T.nilable(::String), stripe_customer_id: T.nilable(::String), country: T.nilable(::String), sales: T.nilable(::Float), sale_amount: T.nilable(::Float), first_sale_at: T.nilable(::String), subscription_canceled_at: T.nilable(::String)).void }
41
- def initialize(id:, name:, external_id:, created_at:, email: nil, avatar: nil, stripe_customer_id: nil, country: nil, sales: nil, sale_amount: nil, first_sale_at: nil, subscription_canceled_at: nil)
40
+ sig { params(id: ::String, external_id: ::String, created_at: ::String, name: T.nilable(::String), email: T.nilable(::String), avatar: T.nilable(::String), stripe_customer_id: T.nilable(::String), country: T.nilable(::String), sales: T.nilable(::Float), sale_amount: T.nilable(::Float), first_sale_at: T.nilable(::String), subscription_canceled_at: T.nilable(::String)).void }
41
+ def initialize(id:, external_id:, created_at:, name: nil, email: nil, avatar: nil, stripe_customer_id: nil, country: nil, sales: nil, sale_amount: nil, first_sale_at: nil, subscription_canceled_at: nil)
42
42
  @id = id
43
- @name = name
44
43
  @external_id = external_id
45
44
  @created_at = created_at
45
+ @name = name
46
46
  @email = email
47
47
  @avatar = avatar
48
48
  @stripe_customer_id = stripe_customer_id
@@ -57,9 +57,9 @@ module OpenApiSDK
57
57
  def ==(other)
58
58
  return false unless other.is_a? self.class
59
59
  return false unless @id == other.id
60
- return false unless @name == other.name
61
60
  return false unless @external_id == other.external_id
62
61
  return false unless @created_at == other.created_at
62
+ return false unless @name == other.name
63
63
  return false unless @email == other.email
64
64
  return false unless @avatar == other.avatar
65
65
  return false unless @stripe_customer_id == other.stripe_customer_id
@@ -10,12 +10,12 @@ end
10
10
  class OpenApiSDK::Models::Operations::ListEventsResponseBodyCustomer
11
11
  def id(); end
12
12
  def id=(str_); end
13
- def name(); end
14
- def name=(str_); end
15
13
  def external_id(); end
16
14
  def external_id=(str_); end
17
15
  def created_at(); end
18
16
  def created_at=(str_); end
17
+ def name(); end
18
+ def name=(str_); end
19
19
  def email(); end
20
20
  def email=(str_); end
21
21
  def avatar(); end
@@ -0,0 +1,88 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Models
9
+ module Operations
10
+
11
+ class ListPartnerApplicationsPartner
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The partner's unique ID on Dub.
16
+ field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id'), required: true } }
17
+ # The partner's full legal name.
18
+ field :name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name'), required: true } }
19
+ # The status of the partner's enrollment in the program.
20
+ field :status, Models::Operations::ListPartnerApplicationsStatus, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('status'), required: true, 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::ListPartnerApplicationsStatus, false) } }
21
+ # If the partner profile type is a company, this is the partner's legal company name.
22
+ field :company_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('companyName'), required: true } }
23
+ # The partner's email address. Should be a unique value across Dub.
24
+ field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('email'), required: true } }
25
+ # The partner's avatar image.
26
+ field :image, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('image'), required: true } }
27
+ # The partner's country (required for tax purposes).
28
+ field :country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('country'), required: true } }
29
+ # A brief description of the partner and their background.
30
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
31
+ # The partner's group ID on Dub.
32
+ field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('groupId') } }
33
+ # The partner's website URL (including the https protocol).
34
+ field :website, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('website') } }
35
+ # The partner's YouTube channel username (e.g. `johndoe`).
36
+ field :youtube, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('youtube') } }
37
+ # The partner's Twitter username (e.g. `johndoe`).
38
+ field :twitter, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('twitter') } }
39
+ # The partner's LinkedIn username (e.g. `johndoe`).
40
+ field :linkedin, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('linkedin') } }
41
+ # The partner's Instagram username (e.g. `johndoe`).
42
+ field :instagram, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('instagram') } }
43
+ # The partner's TikTok username (e.g. `johndoe`).
44
+ field :tiktok, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tiktok') } }
45
+
46
+ sig { params(id: ::String, name: ::String, status: Models::Operations::ListPartnerApplicationsStatus, company_name: T.nilable(::String), email: T.nilable(::String), image: T.nilable(::String), country: T.nilable(::String), description: T.nilable(::String), group_id: T.nilable(::String), 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 }
47
+ def initialize(id:, name:, status:, company_name: nil, email: nil, image: nil, country: nil, description: nil, group_id: nil, website: nil, youtube: nil, twitter: nil, linkedin: nil, instagram: nil, tiktok: nil)
48
+ @id = id
49
+ @name = name
50
+ @status = status
51
+ @company_name = company_name
52
+ @email = email
53
+ @image = image
54
+ @country = country
55
+ @description = description
56
+ @group_id = group_id
57
+ @website = website
58
+ @youtube = youtube
59
+ @twitter = twitter
60
+ @linkedin = linkedin
61
+ @instagram = instagram
62
+ @tiktok = tiktok
63
+ end
64
+
65
+ sig { params(other: T.untyped).returns(T::Boolean) }
66
+ def ==(other)
67
+ return false unless other.is_a? self.class
68
+ return false unless @id == other.id
69
+ return false unless @name == other.name
70
+ return false unless @status == other.status
71
+ return false unless @company_name == other.company_name
72
+ return false unless @email == other.email
73
+ return false unless @image == other.image
74
+ return false unless @country == other.country
75
+ return false unless @description == other.description
76
+ return false unless @group_id == other.group_id
77
+ return false unless @website == other.website
78
+ return false unless @youtube == other.youtube
79
+ return false unless @twitter == other.twitter
80
+ return false unless @linkedin == other.linkedin
81
+ return false unless @instagram == other.instagram
82
+ return false unless @tiktok == other.tiktok
83
+ true
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,41 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsPartner
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsPartner
11
+ def id(); end
12
+ def id=(str_); end
13
+ def name(); end
14
+ def name=(str_); end
15
+ def status(); end
16
+ def status=(str_); end
17
+ def company_name(); end
18
+ def company_name=(str_); end
19
+ def email(); end
20
+ def email=(str_); end
21
+ def image(); end
22
+ def image=(str_); end
23
+ def country(); end
24
+ def country=(str_); end
25
+ def description(); end
26
+ def description=(str_); end
27
+ def group_id(); end
28
+ def group_id=(str_); end
29
+ def website(); end
30
+ def website=(str_); end
31
+ def youtube(); end
32
+ def youtube=(str_); end
33
+ def twitter(); end
34
+ def twitter=(str_); end
35
+ def linkedin(); end
36
+ def linkedin=(str_); end
37
+ def instagram(); end
38
+ def instagram=(str_); end
39
+ def tiktok(); end
40
+ def tiktok=(str_); end
41
+ end
@@ -0,0 +1,44 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Models
9
+ module Operations
10
+
11
+ class ListPartnerApplicationsRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # A filter on the list based on the partner's `country` field.
16
+ field :country, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'country', 'style': 'form', 'explode': true } }
17
+ # A filter on the list based on the partner's `groupId` field.
18
+ field :group_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'groupId', 'style': 'form', 'explode': true } }
19
+ # The page number for pagination.
20
+ field :page, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
21
+ # The number of items per page.
22
+ field :page_size, Crystalline::Nilable.new(::Float), { 'query_param': { 'field_name': 'pageSize', 'style': 'form', 'explode': true } }
23
+
24
+ sig { params(country: T.nilable(::String), group_id: T.nilable(::String), page: T.nilable(::Float), page_size: T.nilable(::Float)).void }
25
+ def initialize(country: nil, group_id: nil, page: nil, page_size: 100.0)
26
+ @country = country
27
+ @group_id = group_id
28
+ @page = page
29
+ @page_size = page_size
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @country == other.country
36
+ return false unless @group_id == other.group_id
37
+ return false unless @page == other.page
38
+ return false unless @page_size == other.page_size
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsRequest
11
+ def country(); end
12
+ def country=(str_); end
13
+ def group_id(); end
14
+ def group_id=(str_); end
15
+ def page(); end
16
+ def page=(str_); end
17
+ def page_size(); end
18
+ def page_size=(str_); end
19
+ end
@@ -0,0 +1,44 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Models
9
+ module Operations
10
+
11
+ class ListPartnerApplicationsResponseBody
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id'), required: true } }
17
+
18
+ field :created_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('createdAt'), required: true } }
19
+
20
+ field :partner, Models::Operations::ListPartnerApplicationsPartner, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partner'), required: true } }
21
+
22
+ field :application_form_data, Crystalline::Nilable.new(Crystalline::Array.new(Models::Operations::ApplicationFormData)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('applicationFormData'), required: true } }
23
+
24
+ sig { params(id: ::String, created_at: ::String, partner: Models::Operations::ListPartnerApplicationsPartner, application_form_data: T.nilable(T::Array[Models::Operations::ApplicationFormData])).void }
25
+ def initialize(id:, created_at:, partner:, application_form_data: nil)
26
+ @id = id
27
+ @created_at = created_at
28
+ @partner = partner
29
+ @application_form_data = application_form_data
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @id == other.id
36
+ return false unless @created_at == other.created_at
37
+ return false unless @partner == other.partner
38
+ return false unless @application_form_data == other.application_form_data
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsResponseBody
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsResponseBody
11
+ def id(); end
12
+ def id=(str_); end
13
+ def created_at(); end
14
+ def created_at=(str_); end
15
+ def partner(); end
16
+ def partner=(str_); end
17
+ def application_form_data(); end
18
+ def application_form_data=(str_); end
19
+ end
@@ -0,0 +1,25 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Models
9
+ module Operations
10
+ # ListPartnerApplicationsStatus - The status of the partner's enrollment in the program.
11
+ class ListPartnerApplicationsStatus < T::Enum
12
+ enums do
13
+ PENDING = new('pending')
14
+ APPROVED = new('approved')
15
+ REJECTED = new('rejected')
16
+ INVITED = new('invited')
17
+ DECLINED = new('declined')
18
+ DEACTIVATED = new('deactivated')
19
+ BANNED = new('banned')
20
+ ARCHIVED = new('archived')
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsStatus
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class OpenApiSDK::Models::Operations::ListPartnerApplicationsStatus
11
+ end