Create a partner for a program. If partner exists, automatically enrolls them.
declare(strict_types=1);
require 'vendor/autoload.php';
use Dub;
use Dub\Models\Operations;
$sdk = Dub\Dub::builder()
->setSecurity(
'DUB_API_KEY'
)
->build();
$request = new Operations\CreatePartnerRequestBody(
email: 'Summer50@yahoo.com',
linkProps: new Operations\LinkProps(
externalId: '123456',
tagIds: [
'clux0rgak00011...',
],
testVariants: [
new Operations\CreatePartnerTestVariants(
url: 'https://example.com/variant-1',
percentage: 50,
),
new Operations\CreatePartnerTestVariants(
url: 'https://example.com/variant-2',
percentage: 50,
),
],
),
);
$response = $sdk->partners->create(
request: $request
);
if ($response->object !== null) {
// handle response
}
{
"id": "<string>",
"name": "<string>",
"email": "<string>",
"image": "<string>",
"description": "<string>",
"country": "<string>",
"paypalEmail": "<string>",
"stripeConnectId": "<string>",
"payoutsEnabledAt": "<string>",
"partnerId": "<string>",
"tenantId": "<string>",
"programId": "<string>",
"createdAt": "<string>",
"status": "pending",
"links": [
{
"id": "<string>",
"domain": "<string>",
"key": "<string>",
"shortLink": "<string>",
"url": "<string>",
"clicks": 0,
"leads": 0,
"sales": 0,
"saleAmount": 0
}
],
"totalCommissions": 0,
"clickRewardId": "<string>",
"leadRewardId": "<string>",
"saleRewardId": "<string>",
"discountId": "<string>",
"applicationId": "<string>",
"bannedAt": "<string>",
"bannedReason": "tos_violation",
"clicks": 0,
"leads": 0,
"sales": 0,
"saleAmount": 0,
"netRevenue": 0,
"website": "<string>",
"websiteTxtRecord": "<string>",
"websiteVerifiedAt": "<string>",
"youtube": "<string>",
"youtubeVerifiedAt": "<string>",
"youtubeSubscriberCount": 123,
"youtubeViewCount": 123,
"twitter": "<string>",
"twitterVerifiedAt": "<string>",
"linkedin": "<string>",
"linkedinVerifiedAt": "<string>",
"instagram": "<string>",
"instagramVerifiedAt": "<string>",
"tiktok": "<string>",
"tiktokVerifiedAt": "<string>"
}
Default authentication mechanism
The created partner
The response is of type object
.
declare(strict_types=1);
require 'vendor/autoload.php';
use Dub;
use Dub\Models\Operations;
$sdk = Dub\Dub::builder()
->setSecurity(
'DUB_API_KEY'
)
->build();
$request = new Operations\CreatePartnerRequestBody(
email: 'Summer50@yahoo.com',
linkProps: new Operations\LinkProps(
externalId: '123456',
tagIds: [
'clux0rgak00011...',
],
testVariants: [
new Operations\CreatePartnerTestVariants(
url: 'https://example.com/variant-1',
percentage: 50,
),
new Operations\CreatePartnerTestVariants(
url: 'https://example.com/variant-2',
percentage: 50,
),
],
),
);
$response = $sdk->partners->create(
request: $request
);
if ($response->object !== null) {
// handle response
}
{
"id": "<string>",
"name": "<string>",
"email": "<string>",
"image": "<string>",
"description": "<string>",
"country": "<string>",
"paypalEmail": "<string>",
"stripeConnectId": "<string>",
"payoutsEnabledAt": "<string>",
"partnerId": "<string>",
"tenantId": "<string>",
"programId": "<string>",
"createdAt": "<string>",
"status": "pending",
"links": [
{
"id": "<string>",
"domain": "<string>",
"key": "<string>",
"shortLink": "<string>",
"url": "<string>",
"clicks": 0,
"leads": 0,
"sales": 0,
"saleAmount": 0
}
],
"totalCommissions": 0,
"clickRewardId": "<string>",
"leadRewardId": "<string>",
"saleRewardId": "<string>",
"discountId": "<string>",
"applicationId": "<string>",
"bannedAt": "<string>",
"bannedReason": "tos_violation",
"clicks": 0,
"leads": 0,
"sales": 0,
"saleAmount": 0,
"netRevenue": 0,
"website": "<string>",
"websiteTxtRecord": "<string>",
"websiteVerifiedAt": "<string>",
"youtube": "<string>",
"youtubeVerifiedAt": "<string>",
"youtubeSubscriberCount": 123,
"youtubeViewCount": 123,
"twitter": "<string>",
"twitterVerifiedAt": "<string>",
"linkedin": "<string>",
"linkedinVerifiedAt": "<string>",
"instagram": "<string>",
"instagramVerifiedAt": "<string>",
"tiktok": "<string>",
"tiktokVerifiedAt": "<string>"
}