(partners)
- create - Create a new partner
- create_link - Create a link for a partner
- upsert_link - Upsert a link for a partner
- analytics - Retrieve analytics for a partner
- update_sale - Update a sale for a partner.
Create a new partner for a program. If partner exists, automatically enrolls them.
require 'dub'
s = ::OpenApiSDK::Dub.new(
security: ::OpenApiSDK::Shared::Security.new(
token: "DUB_API_KEY",
),
)
req = ::OpenApiSDK::Operations::CreatePartnerRequestBody.new(
program_id: "<id>",
name: "<value>",
email: "[email protected]",
link_props: ::OpenApiSDK::Operations::LinkProps.new(
external_id: "123456",
tag_ids: [
"clux0rgak00011...",
],
),
)
res = s.partners.create(req)
if ! res.object.nil?
# handle response
end
Parameter | Type | Required | Description |
---|---|---|---|
request |
::OpenApiSDK::Operations::CreatePartnerRequestBody | ✔️ | The request object to use for the request. |
T.nilable(::OpenApiSDK::Operations::CreatePartnerResponse)
Create a new link for a partner that is enrolled in your program.
require 'dub'
s = ::OpenApiSDK::Dub.new(
security: ::OpenApiSDK::Shared::Security.new(
token: "DUB_API_KEY",
),
)
req = ::OpenApiSDK::Operations::CreatePartnerLinkRequestBody.new(
program_id: "<id>",
link_props: ::OpenApiSDK::Operations::CreatePartnerLinkLinkProps.new(
external_id: "123456",
tag_ids: [
"clux0rgak00011...",
],
),
)
res = s.partners.create_link(req)
if ! res.link_schema.nil?
# handle response
end
Parameter | Type | Required | Description |
---|---|---|---|
request |
::OpenApiSDK::Operations::CreatePartnerLinkRequestBody | ✔️ | The request object to use for the request. |
T.nilable(::OpenApiSDK::Operations::CreatePartnerLinkResponse)
Upsert a link for a partner that is enrolled in your program. If a link with the same URL already exists, return it (or update it if there are any changes). Otherwise, a new link will be created.
require 'dub'
s = ::OpenApiSDK::Dub.new(
security: ::OpenApiSDK::Shared::Security.new(
token: "DUB_API_KEY",
),
)
req = ::OpenApiSDK::Operations::UpsertPartnerLinkRequestBody.new(
program_id: "<id>",
link_props: ::OpenApiSDK::Operations::UpsertPartnerLinkLinkProps.new(
external_id: "123456",
tag_ids: [
"clux0rgak00011...",
],
),
)
res = s.partners.upsert_link(req)
if ! res.link_schema.nil?
# handle response
end
Parameter | Type | Required | Description |
---|---|---|---|
request |
::OpenApiSDK::Operations::UpsertPartnerLinkRequestBody | ✔️ | The request object to use for the request. |
T.nilable(::OpenApiSDK::Operations::UpsertPartnerLinkResponse)
Retrieve analytics for a partner within a program. The response type vary based on the groupBy
query parameter.
require 'dub'
s = ::OpenApiSDK::Dub.new(
security: ::OpenApiSDK::Shared::Security.new(
token: "DUB_API_KEY",
),
)
req = ::OpenApiSDK::Operations::RetrievePartnerAnalyticsRequest.new(
timezone: "America/New_York",
program_id: "<id>",
)
res = s.partners.analytics(req)
if ! res.one_of.nil?
# handle response
end
Parameter | Type | Required | Description |
---|---|---|---|
request |
::OpenApiSDK::Operations::RetrievePartnerAnalyticsRequest | ✔️ | The request object to use for the request. |
T.nilable(::OpenApiSDK::Operations::RetrievePartnerAnalyticsResponse)
Update an existing sale amount. This is useful for handling refunds (partial or full) or fraudulent sales.
require 'dub'
s = ::OpenApiSDK::Dub.new(
security: ::OpenApiSDK::Shared::Security.new(
token: "DUB_API_KEY",
),
)
req = ::OpenApiSDK::Operations::UpdatePartnerSaleRequestBody.new(
program_id: "<id>",
invoice_id: "<id>",
)
res = s.partners.update_sale(req)
if ! res.object.nil?
# handle response
end
Parameter | Type | Required | Description |
---|---|---|---|
request |
::OpenApiSDK::Operations::UpdatePartnerSaleRequestBody | ✔️ | The request object to use for the request. |
T.nilable(::OpenApiSDK::Operations::UpdatePartnerSaleResponse)