MENU navbar-image

Introduction

REST API for affiliates: manage tracking links and sources, browse products, brands, and stores, run performance reports, and handle partnership requests. Every call is authenticated with your affiliate API key.

Authentication

Each request must include your affiliate API key. Send it using:

Keys are tied to your affiliate account and permissions. Keep them secret and rotate them if they are exposed.

The examples in this documentation use Bearer-style auth unless noted otherwise.

Response format

Responses are JSON with a status of success or error.

Success

{
    "status": "success",
    "message": "message",
    "data": []
}

Errors

Errors depend on the HTTP status:

404 — Not found

{
    "status": "error",
    "message": "message"
}

403 — Forbiddendata may include a cause (for example mobile_not_verified) when extra context is available:

{
    "status": "error",
    "message": "message",
    "data": {
        "cause": "mobile_not_verified"
    }
}

422 — Validation failed

{
    "status": "error",
    "message": "The given data was invalid.",
    "errors": {
        "field": [
            "The field is required."
        ]
    }
}

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

Use the affiliate API key issued to your account. Send it as X-API-Key or as a Bearer token in Authorization. Create or manage keys from your affiliate dashboard.

Brand

Brand Show

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands/2';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands/2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands/2"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "encoded_brand_id",
        "name": "Apple",
        "terms_file": "",
        "image": "https://via.placeholder.com/640x480.png/0033bb?text=quia",
        "rating": "4.5",
        "review_count": 125,
        "category": {
            "id": "encoded_category_id",
            "name": "Electronics"
        },
        "average_price": "299.99",
        "description": "Premium electronics brand",
        "amazon_link": "https://www.amazon.com/s?k=apple&ref=nb_sb_noss_2",
        "seller_storefront_link": "https://www.amazon.com/s?me=123456789&marketplace=987654321",
        "average_commission": "15.50",
        "commission_type": "percent",
        "seller": {
            "id": "encoded_seller_id",
            "name": "John Doe",
            "avatar": "https://api.dicebear.com/9.x/initials/png?seed=John+Doe"
        },
        "active_contracts_count": 5,
        "product_count": 12,
        "partnered_statistics": {
            "clicks": 203,
            "add_to_cart": 67,
            "sales": "1285.90",
            "units": 18,
            "purchases": 15,
            "conversions": 15,
            "conversion_rate": "0.0739",
            "commission": "257.18"
        },
        "active_partnership_request": {
            "id": "encoded_request_id",
            "status": "pending",
            "commission": "20.00",
            "commission_type": "percent",
            "is_custom_commission": "1",
            "message": "Partnership request message",
            "type": "affiliate_to_seller",
            "created_at": 1640995200
        },
        "status": "active",
        "partnership_status": "partnered",
        "affiliate_count": 3,
        "partnership_applied_date": 1640995200,
        "slug": "apple-electronics",
        "landing_page_config": "{\"hide_featured_products\":false,\"hide_brand_analytics\":false,\"featured_product_ids\":[1,2,3]}"
    },
    "status": "success",
    "message": "brand fetched successfully"
}
 

Request   

GET affiliate/v1/products/brands/{id}

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

id   string     

The ID of the Seller Brand . Example: 2

Brand List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'order_by[id]' => 'desc',
            'order_by[name]' => 'desc',
            'order_by[main_category]' => 'desc',
            'order_by[user]' => 'desc',
            'order_by[review_count]' => '0',
            'order_by[rating]' => 'desc',
            'order_by[product_count]' => '0',
            'order_by[average_commission]' => 'desc',
            'order_by[partnership_status]' => 'desc',
            'order_by[average_price]' => 'desc',
            'query' => 'brand name',
            'category_ids[]' => '1',
            'seller_ids[]' => '1',
            'price_from' => '1000',
            'price_to' => '2000',
            'commission_from' => '10',
            'commission_to' => '15',
            'rating_from' => '1',
            'rating_to' => '5',
            'review_count_from' => '10',
            'review_count_to' => '20',
            'partnership_status' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands?order_by%5Bid%5D=desc&order_by%5Bname%5D=desc&order_by%5Bmain_category%5D=desc&order_by%5Buser%5D=desc&order_by%5Breview_count%5D=0&order_by%5Brating%5D=desc&order_by%5Bproduct_count%5D=0&order_by%5Baverage_commission%5D=desc&order_by%5Bpartnership_status%5D=desc&order_by%5Baverage_price%5D=desc&query=brand+name&category_ids%5B%5D=1&seller_ids%5B%5D=1&price_from=1000&price_to=2000&commission_from=10&commission_to=15&rating_from=1&rating_to=5&review_count_from=10&review_count_to=20&partnership_status=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/brands"
);

const params = {
    "order_by[id]": "desc",
    "order_by[name]": "desc",
    "order_by[main_category]": "desc",
    "order_by[user]": "desc",
    "order_by[review_count]": "0",
    "order_by[rating]": "desc",
    "order_by[product_count]": "0",
    "order_by[average_commission]": "desc",
    "order_by[partnership_status]": "desc",
    "order_by[average_price]": "desc",
    "query": "brand name",
    "category_ids[]": "1",
    "seller_ids[]": "1",
    "price_from": "1000",
    "price_to": "2000",
    "commission_from": "10",
    "commission_to": "15",
    "rating_from": "1",
    "rating_to": "5",
    "review_count_from": "10",
    "review_count_to": "20",
    "partnership_status": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg_PWZ7nGw8vJ1m4R1aX9My",
            "name": "Flexon",
            "image": "",
            "main_category": {
                "id": "alg_gkVdwbOKZ9Qrvl6NoneZ",
                "name": "Parts & Connectors"
            },
            "user": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "S.Ahmad",
                "avatar": ""
            },
            "status": "active",
            "average_price": "44.00",
            "average_commission": "20.00",
            "rating": "4.0",
            "review_count": 497,
            "product_count": 1,
            "partnership_status": "not_partnered"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 1
    },
    "status": "success",
    "message": "brand fetched successfully"
}
 

Request   

GET affiliate/v1/products/brands

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

order_by[id]   string  optional    

optional string for sort by id can include: asc or desc. Example: desc

order_by[name]   string  optional    

optional string for sort by name can include: asc or desc. Example: desc

order_by[main_category]   string  optional    

optional string for sort by category can include: asc or desc. Example: desc

order_by[user]   string  optional    

optional string for sort by seller can include: asc or desc. Example: desc

order_by[review_count]   integer  optional    

optional string for sort by review count can include: asc or desc. Example: 0

order_by[rating]   string  optional    

optional string for sort by average rating can include: asc or desc. Example: desc

order_by[product_count]   integer  optional    

optional string for sort by products count can include: asc or desc. Example: 0

order_by[average_commission]   string  optional    

optional string for sort by average commission can include: asc or desc. Example: desc

order_by[partnership_status]   string  optional    

optional string for sort by partnership status can include: asc or desc. Example: desc

order_by[average_price]   string  optional    

optional string for sort by average price can include: asc or desc. Example: desc

query   string  optional    

optional string for search in brand name. Example: brand name

category_ids[]   integer  optional    

optional array number for filter brand category. Example: 1

seller_ids[]   integer  optional    

optional array number for filter seller. Example: 1

price_from   integer  optional    

optional number for filter brand minimum price. Example: 1000

price_to   integer  optional    

optional number for filter brand maximum price. Example: 2000

commission_from   integer  optional    

optional number for filter brand minimum commission. Example: 10

commission_to   integer  optional    

optional number for filter brand maximum commission. Example: 15

rating_from   integer  optional    

optional number for filter brand minimum rating. Example: 1

rating_to   integer  optional    

optional number for filter brand maximum rating. Example: 5

review_count_from   integer  optional    

optional number for filter brand maximum review count. Example: 10

review_count_to   integer  optional    

optional number for filter brand maximum review count. Example: 20

partnership_status   integer  optional    

optional number for filter partnership status include: partnered, not_partnered. Example: 0

Landing Page

Index Landing Page

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/landing-pages';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'order_by[created_at]' => 'desc',
            'category_ids[]' => '1',
            'brand_ids[]' => '1',
            'product_ids[]' => '1',
            'created_at_from' => '14654834564',
            'created_at_to' => '14654834564',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/landing-pages?order_by%5Bcreated_at%5D=desc&category_ids%5B%5D=1&brand_ids%5B%5D=1&product_ids%5B%5D=1&created_at_from=14654834564&created_at_to=14654834564" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/landing-pages"
);

const params = {
    "order_by[created_at]": "desc",
    "category_ids[]": "1",
    "brand_ids[]": "1",
    "product_ids[]": "1",
    "created_at_from": "14654834564",
    "created_at_to": "14654834564",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
"data": [
{
"id": "alg_8gae74jd0M10LG3XZoND",
"name": "My landing page 3",
"template": {
"id": "alg_NOb3Z51n0VaK8odBjrJe",
"title": "Left Side - Blue",
"content": "Praesentium saepe voluptas praesentium quis doloremque. Est facere molestias tenetur doloremque voluptate non. Nisi eveniet perferendis quod enim officia vitae. Corrupti eos sit odio voluptas.\n\nQuam minus nesciunt iste recusandae expedita eius qui. Maxime eius dolor labore doloribus sapiente. Molestiae nulla qui sapiente eaque aliquam delectus dolores.\n\nUt quam harum et deserunt possimus temporibus. Deleniti suscipit aut sapiente eum quam tenetur laboriosam. Eius rerum velit repellat autem. Corporis corrupti quam quis.",
"thumbnail": "left-blue.png",
"grid_id": alg_NOb3Z51n0VaK8odBjrJe",
"color_id": alg_NOb3Z51n0VaK8odBjrJe"
},
"is_default": false,
"is_system": false,
"links_count": 0,
"created_at": 1719476064
},
],
"pagination": {
"current_page": 1,
"per_page": 15,
"total": 3
},
"status": "success",
"message": "Landing page fetched successfully"
}
 

Request   

GET affiliate/v1/landing-pages

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

order_by[created_at]   string  optional    

optional string for sort by created at can include: asc or desc. Example: desc

category_ids[]   integer  optional    

optional array number for filter landing has category assignee. Example: 1

brand_ids[]   integer  optional    

optional array number for filter landing has brand assignee. Example: 1

product_ids[]   integer  optional    

optional array number for filter landing has product assignee. Example: 1

created_at_from   integer  optional    

optional array number for filter landing has creation date greater than . Example: 14654834564

created_at_to   integer  optional    

optional array number for filter landing has creation date less than . Example: 14654834564

Management

Product List

requires authentication

This endpoint returns a list of products that the affiliate has access to.

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/managements/products';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'query' => 'product name',
            'brand_ids[]' => '1',
            'seller_ids[]' => '1',
            'price_from' => '1000',
            'price_to' => '2000',
            'commission_from' => '10',
            'commission_to' => '15',
            'availability' => 'in_stock or out_of_stock',
            'has_promotion' => 'true',
            'status' => 'active',
            'inactive_date_from' => '1726177546',
            'inactive_date_to' => '1726177546',
            'order_by[id]' => 'desc',
            'order_by[name]' => 'desc',
            'order_by[brand]' => 'desc',
            'order_by[user]' => 'desc',
            'order_by[amazon_price]' => 'desc',
            'order_by[commission]' => 'desc',
            'order_by[has_promotion]' => 'desc',
            'order_by[availability]' => 'desc',
            'order_by[partnered_on]' => 'desc',
            'order_by[inactive_at]' => 'desc',
            'order_by[product_links_count]' => '0',
            'order_by[total_clicks]' => 'desc',
            'order_by[total_sales]' => 'desc',
            'platform' => 'amazon or shopify',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/managements/products?query=product+name&brand_ids%5B%5D=1&seller_ids%5B%5D=1&price_from=1000&price_to=2000&commission_from=10&commission_to=15&availability=in_stock+or+out_of_stock&has_promotion=true&status=active&inactive_date_from=1726177546&inactive_date_to=1726177546&order_by%5Bid%5D=desc&order_by%5Bname%5D=desc&order_by%5Bbrand%5D=desc&order_by%5Buser%5D=desc&order_by%5Bamazon_price%5D=desc&order_by%5Bcommission%5D=desc&order_by%5Bhas_promotion%5D=desc&order_by%5Bavailability%5D=desc&order_by%5Bpartnered_on%5D=desc&order_by%5Binactive_at%5D=desc&order_by%5Bproduct_links_count%5D=0&order_by%5Btotal_clicks%5D=desc&order_by%5Btotal_sales%5D=desc&platform=amazon+or+shopify" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/managements/products"
);

const params = {
    "query": "product name",
    "brand_ids[]": "1",
    "seller_ids[]": "1",
    "price_from": "1000",
    "price_to": "2000",
    "commission_from": "10",
    "commission_to": "15",
    "availability": "in_stock or out_of_stock",
    "has_promotion": "true",
    "status": "active",
    "inactive_date_from": "1726177546",
    "inactive_date_to": "1726177546",
    "order_by[id]": "desc",
    "order_by[name]": "desc",
    "order_by[brand]": "desc",
    "order_by[user]": "desc",
    "order_by[amazon_price]": "desc",
    "order_by[commission]": "desc",
    "order_by[has_promotion]": "desc",
    "order_by[availability]": "desc",
    "order_by[partnered_on]": "desc",
    "order_by[inactive_at]": "desc",
    "order_by[product_links_count]": "0",
    "order_by[total_clicks]": "desc",
    "order_by[total_sales]": "desc",
    "platform": "amazon or shopify",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 27,
            "asin": "B081TPHGGK",
            "name": "Emprian Big Bag of 600 gr (1.32 lb) Blue Wax Beans - Waxing Kit for Deep Hair Removal Works for Skin on Face, Armpit, Bikini Line, Leg, Arm - Wooden Applicators, Transparent Hard Wax Beads",
            "image": "https://m.media-amazon.com/images/I/814tANbwLhL.jpg",
            "link": "https://www.amazon.com/dp/B081TPHGGK?m=AQO9TRV0YRH57",
            "brand": {
                "id": "alg_g4rlB87nvyZKzZG5YEw1",
                "name": "Emprian",
                "image": "http://localhost:8082/storage/alg_g4rlB87nvyZKzZG5YEw1/conversions/Qk5sUngzZFc0YjA2ekNCbUEvbXE2YnpZeENqUkcvNDBzZFpqNG9URXJvWnlnS1lUYjJsMXd4TmFkK3lETlpZTzltTzZnYlVSMlh4Q29QaU9Sb0dHTGw0RFd3TWdBR280K0NqWm5Lank3NmM9-medium_thumbnail.jpg"
            },
            "user": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "s",
                "avatar": ""
            },
            "status": "active",
            "amazon_price": "18.83",
            "commission": "20.00",
            "commission_type": "percent",
            "availability": "out_of_stock",
            "promotions_count": 0,
            "total_clicks": 0,
            "total_sales": 0,
            "product_links": [
                {
                    "id": "alg_k98ZOV1r0lJvPXE3aL2w",
                    "display_name": "Default",
                    "is_default": true,
                    "is_system": true,
                    "source": null,
                    "link": "https://buy.ainfluencer.com/product-link/alg_k98ZOV1r0lJvPXE3aL2w",
                    "affiliate_amazon_tag": null
                }
            ],
            "product_links_count": 1,
            "partnered_on": 1726177546,
            "inactive_at": null
        },
        {
            "id": 28,
            "asin": "B081TPJ12Z",
            "name": "Pink Hard Wax Beans 600 gr All in one Body Hair Removal Formula Wax Beads Works for Skin on Face Armpit Bikini Line Leg Arm Wooden Applicators 2 Prep Post Treatment Sprays Prefect Refill",
            "image": "https://m.media-amazon.com/images/I/81tU8SVGjGL.jpg",
            "link": "https://www.amazon.com/dp/B081TPJ12Z?m=AQO9TRV0YRH57",
            "brand": {
                "id": "alg_g4rlB87nvyZKzZG5YEw1",
                "name": "Emprian",
                "image": "http://localhost:8082/storage/alg_g4rlB87nvyZKzZG5YEw1/conversions/Qk5sUngzZFc0YjA2ekNCbUEvbXE2YnpZeENqUkcvNDBzZFpqNG9URXJvWnlnS1lUYjJsMXd4TmFkK3lETlpZTzltTzZnYlVSMlh4Q29QaU9Sb0dHTGw0RFd3TWdBR280K0NqWm5Lank3NmM9-medium_thumbnail.jpg"
            },
            "user": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "s",
                "avatar": ""
            },
            "status": "active",
            "amazon_price": "21.85",
            "commission": "20.00",
            "commission_type": "percent",
            "availability": "out_of_stock",
            "promotions_count": 0,
            "total_clicks": 0,
            "total_sales": 0,
            "product_links": [
                {
                    "id": "alg_lZ2YpjWqvzJavaoO79dD",
                    "display_name": "test3",
                    "is_default": false,
                    "is_system": false,
                    "source": {
                        "id": "alg_X2Zq8RbnvPz0wM56WEoz",
                        "primary_id": "test3",
                        "display_name": "test3",
                        "sub_id": "test3"
                    },
                    "link": "https://buy.ainfluencer.com/product-link/alg_rVkgED43KDgvRnx61lNz",
                    "affiliate_amazon_tag": null
                },
                {
                    "id": "alg_8gae74jd0M10LG3XZoND",
                    "display_name": "Default",
                    "is_default": true,
                    "is_system": true,
                    "source": null,
                    "link": "https://buy.ainfluencer.com/product-link/alg_8gae74jd0M10LG3XZoND",
                    "affiliate_amazon_tag": null
                }
            ],
            "product_links_count": 2,
            "partnered_on": 1726177546,
            "inactive_at": null
        },
        {
            "id": 24,
            "asin": "B07CXZSMM1",
            "name": "Flexon WS100KITCN 20-Piece Soaker Hose Kit, 100 ft, Black",
            "image": "https://m.media-amazon.com/images/I/61C+FHXWQVL.jpg",
            "link": "https://www.amazon.com/dp/B07CXZSMM1?m=AQO9TRV0YRH57",
            "brand": {
                "id": "alg_PWZ7nGw8vJ1m4R1aX9My",
                "name": "Flexon",
                "image": ""
            },
            "user": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "s",
                "avatar": ""
            },
            "status": "inactive",
            "amazon_price": "44.00",
            "commission": "22.00",
            "commission_type": "percent",
            "availability": "in_stock",
            "promotions_count": 0,
            "total_clicks": 200,
            "total_sales": 50,
            "product_links": [
                {
                    "id": "alg_DE4wXVog0ow0kJNGq5dM",
                    "display_name": "Default",
                    "is_default": true,
                    "is_system": true,
                    "source": null,
                    "link": "https://buy.ainfluencer.com/product-link/alg_DE4wXVog0ow0kJNGq5dM",
                    "affiliate_amazon_tag": null
                }
            ],
            "product_links_count": 1,
            "partnered_on": 1726177546,
            "inactive_at": 1726189537
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 3
    },
    "status": "success",
    "message": "product fetched successfully"
}
 

Request   

GET affiliate/v1/managements/products

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

query   string  optional    

optional string for search in product name. Example: product name

brand_ids[]   integer  optional    

optional array number for filter product brand. Example: 1

seller_ids[]   integer  optional    

optional array number for filter product seller. Example: 1

price_from   integer  optional    

optional number for filter product minimum price. Example: 1000

price_to   integer  optional    

optional number for filter product maximum price. Example: 2000

commission_from   integer  optional    

optional number for filter product minimum commission. Example: 10

commission_to   integer  optional    

optional number for filter product maximum commission. Example: 15

availability   string  optional    

optional string for filter availability. Example: in_stock or out_of_stock

has_promotion   string  optional    

optional boolean for filter products with promotions. Example: true

status   string  optional    

optional string for filter product status include: active or inactive. Example: active

inactive_date_from   integer  optional    

optional number for filter product minimum inactive date. Example: 1726177546

inactive_date_to   integer  optional    

optional number for filter product maximum inactive date. Example: 1726177546

order_by[id]   string  optional    

optional string for sort by id can include: asc or desc. Example: desc

order_by[name]   string  optional    

optional string for sort by name can include: asc or desc. Example: desc

order_by[brand]   string  optional    

optional string for sort by brand can include: asc or desc. Example: desc

order_by[user]   string  optional    

optional string for sort by seller can include: asc or desc. Example: desc

order_by[amazon_price]   string  optional    

optional string for sort by price can include: asc or desc. Example: desc

order_by[commission]   string  optional    

optional string for sort by commission can include: asc or desc. Example: desc

order_by[has_promotion]   string  optional    

optional string for sort by has_promotion can include: asc or desc. Example: desc

order_by[availability]   string  optional    

optional string for sort by availability can include: asc or desc. Example: desc

order_by[partnered_on]   string  optional    

optional string for sort by partnered_on can include: asc or desc. Example: desc

order_by[inactive_at]   string  optional    

optional string for sort by inactive_at can include: asc or desc. Example: desc

order_by[product_links_count]   integer  optional    

optional string for sort by product_links_count can include: asc or desc. Example: 0

order_by[total_clicks]   string  optional    

optional string for sort by total_clicks can include: asc or desc. Example: desc

order_by[total_sales]   string  optional    

optional string for sort by total_sales can include: asc or desc. Example: desc

platform   string  optional    

optional string for filter by platform. Example: amazon or shopify

Brand List

requires authentication

This endpoint returns a list of brands that the affiliate has access to.

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/managements/brands';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'query' => 'brand name',
            'category_ids[]' => '1',
            'seller_ids[]' => '1',
            'price_from' => '1000',
            'price_to' => '2000',
            'rating_from' => '1',
            'rating_to' => '5',
            'inactive_date_from' => '1625097600',
            'inactive_date_to' => '1627689600',
            'total_sales_from' => '100',
            'total_sales_to' => '500',
            'revenue_from' => '1000',
            'revenue_to' => '5000',
            'status' => 'active',
            'order_by[id]' => 'desc',
            'order_by[name]' => 'desc',
            'order_by[main_category]' => 'desc',
            'order_by[user]' => 'desc',
            'order_by[rating]' => 'desc',
            'order_by[product_count]' => '0',
            'order_by[average_commission]' => 'desc',
            'order_by[average_price]' => 'desc',
            'order_by[total_sales]' => 'desc',
            'order_by[revenue]' => 'desc',
            'order_by[inactive_at]' => 'desc',
            'platform' => 'amazon or shopify
Returns brands for Amazon platform and stores for Shopify platform',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/managements/brands?query=brand+name&category_ids%5B%5D=1&seller_ids%5B%5D=1&price_from=1000&price_to=2000&rating_from=1&rating_to=5&inactive_date_from=1625097600&inactive_date_to=1627689600&total_sales_from=100&total_sales_to=500&revenue_from=1000&revenue_to=5000&status=active&order_by%5Bid%5D=desc&order_by%5Bname%5D=desc&order_by%5Bmain_category%5D=desc&order_by%5Buser%5D=desc&order_by%5Brating%5D=desc&order_by%5Bproduct_count%5D=0&order_by%5Baverage_commission%5D=desc&order_by%5Baverage_price%5D=desc&order_by%5Btotal_sales%5D=desc&order_by%5Brevenue%5D=desc&order_by%5Binactive_at%5D=desc&platform=amazon+or+shopify%0AReturns+brands+for+Amazon+platform+and+stores+for+Shopify+platform" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/managements/brands"
);

const params = {
    "query": "brand name",
    "category_ids[]": "1",
    "seller_ids[]": "1",
    "price_from": "1000",
    "price_to": "2000",
    "rating_from": "1",
    "rating_to": "5",
    "inactive_date_from": "1625097600",
    "inactive_date_to": "1627689600",
    "total_sales_from": "100",
    "total_sales_to": "500",
    "revenue_from": "1000",
    "revenue_to": "5000",
    "status": "active",
    "order_by[id]": "desc",
    "order_by[name]": "desc",
    "order_by[main_category]": "desc",
    "order_by[user]": "desc",
    "order_by[rating]": "desc",
    "order_by[product_count]": "0",
    "order_by[average_commission]": "desc",
    "order_by[average_price]": "desc",
    "order_by[total_sales]": "desc",
    "order_by[revenue]": "desc",
    "order_by[inactive_at]": "desc",
    "platform": "amazon or shopify
Returns brands for Amazon platform and stores for Shopify platform",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg_PWZ7nGw8vJ1m4R1aX9My",
            "name": "Flexon",
            "image": "",
            "main_category": {
                "id": "alg_gkVdwbOKZ9Qrvl6NoneZ",
                "name": "Parts & Connectors"
            },
            "user": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "s",
                "avatar": ""
            },
            "status": "active",
            "average_price": "44.00",
            "average_commission": "20.00",
            "rating": "4.0",
            "product_count": 1,
            "partnered_on": 1718653264,
            "inactive_at": null,
            "total_sales": 260,
            "revenue": 1350
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 1
    },
    "status": "success",
    "message": "brand fetched successfully"
}
 

Request   

GET affiliate/v1/managements/brands

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

query   string  optional    

optional string for search in brand name. Example: brand name

category_ids[]   integer  optional    

optional array number for filter brand category. Example: 1

seller_ids[]   integer  optional    

optional array number for filter seller. Example: 1

price_from   integer  optional    

optional number for filter brand minimum price. Example: 1000

price_to   integer  optional    

optional number for filter brand maximum price. Example: 2000

rating_from   integer  optional    

optional number for filter brand minimum rating. Example: 1

rating_to   integer  optional    

optional number for filter brand maximum rating. Example: 5

inactive_date_from   integer  optional    

optional number for filter brand inactive date from (timestamp). Example: 1625097600

inactive_date_to   integer  optional    

optional number for filter brand inactive date to (timestamp). Example: 1627689600

total_sales_from   integer  optional    

optional number for filter brand minimum total sales. Example: 100

total_sales_to   integer  optional    

optional number for filter brand maximum total sales. Example: 500

revenue_from   integer  optional    

optional number for filter brand minimum revenue. Example: 1000

revenue_to   integer  optional    

optional number for filter brand maximum revenue. Example: 5000

status   string  optional    

optional string for filter brand status include: active or inactive. Example: active

order_by[id]   string  optional    

optional string for sort by id can include: asc or desc. Example: desc

order_by[name]   string  optional    

optional string for sort by name can include: asc or desc. Example: desc

order_by[main_category]   string  optional    

optional string for sort by main category can include: asc or desc. Example: desc

order_by[user]   string  optional    

optional string for sort by seller can include: asc or desc. Example: desc

order_by[rating]   string  optional    

optional string for sort by rating can include: asc or desc. Example: desc

order_by[product_count]   integer  optional    

optional string for sort by product count can include: asc or desc. Example: 0

order_by[average_commission]   string  optional    

optional string for sort by average commission can include: asc or desc. Example: desc

order_by[average_price]   string  optional    

optional string for sort by average price can include: asc or desc. Example: desc

order_by[total_sales]   string  optional    

optional string for sort by total sales can include: asc or desc. Example: desc

order_by[revenue]   string  optional    

optional string for sort by revenue can include: asc or desc. Example: desc

order_by[inactive_at]   string  optional    

optional string for sort by inactive date can include: asc or desc. Example: desc

platform   string  optional    

optional string for filter by platform. Example: amazon or shopify Returns brands for Amazon platform and stores for Shopify platform

Partnership

Brand

Store Brand Request

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/brand/request';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'seller_brand_ids' => [
                16,
            ],
            'message' => 'I want to be your partner',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/brand/request" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"seller_brand_ids\": [
        16
    ],
    \"message\": \"I want to be your partner\"
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/brand/request"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "seller_brand_ids": [
        16
    ],
    "message": "I want to be your partner"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'Partnership request stored successfully.',
  'data'=>[]
}
 

Request   

POST affiliate/v1/partnerships/brand/request

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Body Parameters

seller_brand_ids   integer[]     

The id of an existing record in the seller_brands table.

message   string  optional    

Message text. Must not be greater than 1000 characters. Example: I want to be your partner

Product

Store Product Request

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/product/request';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'seller_product_ids' => [
                16,
            ],
            'commission_type' => 'percent',
            'commission' => 10.0,
            'message' => 'I want to be your partner',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/product/request" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"seller_product_ids\": [
        16
    ],
    \"commission_type\": \"percent\",
    \"commission\": 10,
    \"message\": \"I want to be your partner\"
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/product/request"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "seller_product_ids": [
        16
    ],
    "commission_type": "percent",
    "commission": 10,
    "message": "I want to be your partner"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'Partnership request stored successfully.',
  'data'=>[]
}
 

Request   

POST affiliate/v1/partnerships/product/request

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Body Parameters

seller_product_ids   integer[]     

The id of an existing record in the seller_products table.

commission_type   string  optional    

Commission type (percent or amount). This field is required when commission is present. Example: percent

Must be one of:
  • percent
  • amount
commission   number  optional    

Commission value. Example: 10

message   string  optional    

Message text. Must not be greater than 1000 characters. Example: I want to be your partner

Partnership Contract List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'order_by[commission]' => 'desc',
            'order_by[price]' => 'desc',
            'order_by[profit]' => 'desc',
            'order_by[created_at]' => 'desc',
            'status[]' => 'active',
            'type[]' => 'products',
            'platform' => 'amazon',
            'marketplace' => 'ATVPDKIKX0DER',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts?order_by%5Bcommission%5D=desc&order_by%5Bprice%5D=desc&order_by%5Bprofit%5D=desc&order_by%5Bcreated_at%5D=desc&status%5B%5D=active&type%5B%5D=products&platform=amazon&marketplace=ATVPDKIKX0DER" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts"
);

const params = {
    "order_by[commission]": "desc",
    "order_by[price]": "desc",
    "order_by[profit]": "desc",
    "order_by[created_at]": "desc",
    "status[]": "active",
    "type[]": "products",
    "platform": "amazon",
    "marketplace": "ATVPDKIKX0DER",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg@7b9ZAVdemE2voXyxNPR8",
            "affiliate": {
                "id": "alg@7b9ZAVdemE2voXyxNPR8",
                "name": "Philip J. Fry",
                "avatar": ""
            },
            "products": [
                {
                    "id": "alg@DE4wXVog0ow0kJNGq5dM",
                    "name": "Consequatur et possimus nam dolorem ratione quia quibusdam.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@36J12ON0NdrqvYVPDeLw",
                        "name": "Action & Adventure"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@lZ2YpjWqvzamaoO79dDN",
                        "name": "Miss Winnifred Hoppe III",
                        "image": ""
                    },
                    "amazon_link": "https://trantow.org/id-cum-autem-eveniet-est-et-voluptas.html?m=6102970121",
                    "best_seller_rank": null,
                    "rating": "1.7",
                    "price": "10.00",
                    "commission": "24.00",
                    "commission_type": "percent",
                    "is_custom_commission": false,
                    "profit": 2.4,
                    "status": "active",
                    "created_at": 1703209446,
                    "revoked_at": null
                }
            ],
            "brands": [],
            "total_commission": "0.00",
            "total_sales_count": 0,
            "total_sales_amount": "0.00",
            "status": "active",
            "created_at": 1703209446
        },
        {
            "id": "alg@YVnAZalrvYLmXD2o5bJk",
            "affiliate": {
                "id": "alg@7b9ZAVdemE2voXyxNPR8",
                "name": "Philip J. Fry",
                "avatar": ""
            },
            "products": [],
            "brands": [
                {
                    "id": "alg@YVnAZalrvYLmXD2o5bJk",
                    "name": "Miss Kariane Stiedemann V",
                    "image": "",
                    "category_name": "Double French Horns",
                    "rating": "2.8",
                    "average_price": "2",
                    "commission": 23,
                    "active_contracts_count": 0,
                    "product_count": null,
                    "profit": 0,
                    "status": "active",
                    "revoked_at": null,
                    "created_at": 1703209446
                }
            ],
            "total_commission": "0.00",
            "total_sales_count": 0,
            "total_sales_amount": "0.00",
            "status": "revoked",
            "created_at": 1703209446
        },
        {
            "id": "alg@NOb3Z51n0VaK8odBjrJe",
            "affiliate": {
                "id": "alg@7b9ZAVdemE2voXyxNPR8",
                "name": "Philip J. Fry",
                "avatar": ""
            },
            "products": [
                {
                    "id": "alg@jP9WoOz4mbVm2Ee3ALDk",
                    "name": "Quia placeat cum sit voluptas et officiis eaque minima.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@36J12ON0NdrqvYVPDeLw",
                        "name": "Action & Adventure"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@l9xnzAZ50B20eaW8XEBw",
                        "name": "Prof. Edwina Lynch",
                        "image": ""
                    },
                    "amazon_link": "http://www.bechtelar.com/repudiandae-vitae-commodi-dignissimos-deserunt-nisi-veritatis-ut?m=6102970121",
                    "best_seller_rank": null,
                    "rating": "4.9",
                    "price": "10.00",
                    "commission": "59.00",
                    "commission_type": "percent",
                    "is_custom_commission": false,
                    "profit": 5.9,
                    "status": "active",
                    "created_at": 1702946489,
                    "revoked_at": null
                }
            ],
            "brands": [],
            "total_commission": "0.00",
            "total_sales_count": 0,
            "total_sales_amount": "0.00",
            "status": "active",
            "created_at": 1702946489
        },
        {
            "id": "alg@jP9WoOz4mbVm2Ee3ALDk",
            "affiliate": {
                "id": "alg@7b9ZAVdemE2voXyxNPR8",
                "name": "Philip J. Fry",
                "avatar": ""
            },
            "products": [],
            "brands": [
                {
                    "id": "alg@NOb3Z51n0VaK8odBjrJe",
                    "name": "Alysson Kutch",
                    "image": "",
                    "category_name": "Cross-Country Skiing",
                    "rating": "4.2",
                    "average_price": null,
                    "commission": 57,
                    "active_contracts_count": 0,
                    "product_count": null,
                    "profit": 0,
                    "status": "active",
                    "revoked_at": null,
                    "created_at": 1702946489
                }
            ],
            "total_commission": "0.00",
            "total_sales_count": 0,
            "total_sales_amount": "0.00",
            "status": "revoked",
            "created_at": 1702946489
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 4
    },
    "status": "success",
    "message": "partnership fetched successfully"
}
 

Request   

GET affiliate/v1/partnerships/contracts

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

order_by[commission]   string  optional    

optional string for sort by commission can include: asc or desc. Example: desc

order_by[price]   string  optional    

optional string for sort by price can include: asc or desc. Example: desc

order_by[profit]   string  optional    

optional string for sort by profit can include: asc or desc. Example: desc

order_by[created_at]   string  optional    

optional string for sort by created at can include: asc or desc. Example: desc

status[]   string  optional    

optional array of strings for search in contracts. It accpets active and inactive and revoked. Example: active

type[]   string  optional    

optional array of strings for search in contracts. It accpets brands and products. Example: products

platform   string  optional    

optional string for filter by platform. It accepts amazon or shopify. Example: amazon

marketplace   string  optional    

optional string for filter by marketplace (only for Amazon platform). Example: ATVPDKIKX0DER

Revoke Partnership Contract

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/architecto/revoke';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request PUT \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/architecto/revoke" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/architecto/revoke"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "PUT",
    headers,
}).then(response => response.json());

Example response (200):


{
  "status" => "success",
  "message" => "Partnership contract revoked successfully.",
  "data" => []
}
 

Request   

PUT affiliate/v1/partnerships/contracts/{contractId}/revoke

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

contractId   string     

Example: architecto

Partnership Request List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/requests';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'order_by[commission]' => 'desc',
            'order_by[price]' => 'desc',
            'order_by[profit]' => 'desc',
            'order_by[created_at]' => 'desc',
            'status[]' => 'active',
            'type[]' => 'products',
            'direction' => 'affiliate_to_seller',
            'platform' => 'amazon',
            'marketplace' => 'ATVPDKIKX0DER',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/requests?order_by%5Bcommission%5D=desc&order_by%5Bprice%5D=desc&order_by%5Bprofit%5D=desc&order_by%5Bcreated_at%5D=desc&status%5B%5D=active&type%5B%5D=products&direction=affiliate_to_seller&platform=amazon&marketplace=ATVPDKIKX0DER" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/requests"
);

const params = {
    "order_by[commission]": "desc",
    "order_by[price]": "desc",
    "order_by[profit]": "desc",
    "order_by[created_at]": "desc",
    "status[]": "active",
    "type[]": "products",
    "direction": "affiliate_to_seller",
    "platform": "amazon",
    "marketplace": "ATVPDKIKX0DER",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg@DE4wXVog0ow0kJNGq5dM",
            "seller": {
                "id": "alg@bANMR19W0j1qKqBQDrOY",
                "name": "Austyn Hackett",
                "avatar": ""
            },
            "products": [
                {
                    "id": "alg@jP9WoOz4mbVm2Ee3ALDk",
                    "name": "Quia placeat cum sit voluptas et officiis eaque minima.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@36J12ON0NdrqvYVPDeLw",
                        "name": "Action & Adventure"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@l9xnzAZ50B20eaW8XEBw",
                        "name": "Prof. Edwina Lynch",
                        "image": ""
                    },
                    "best_seller_rank": null,
                    "rating": "4.9",
                    "amazon_link": "http://www.bechtelar.com/repudiandae-vitae-commodi-dignissimos-deserunt-nisi-veritatis-ut?m=6102970121",
                    "price": "10.00",
                    "profit": 0,
                    "commission": null,
                    "commission_type": null,
                    "is_custom_commission": false,
                    "status": "active"
                }
            ],
            "brands": [],
            "status": "pending",
            "type": "seller_to_affiliate",
            "created_at": 1717208058
        },
        {
            "id": "alg@lZ2YpjWqvzamaoO79dDN",
            "seller": null,
            "products": [
                {
                    "id": "alg@NOb3Z51n0VaK8odBjrJe",
                    "name": "Ratione vel esse explicabo et error sed amet.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@8MEDr2kvAknB0W43jVZx",
                        "name": "Highlighters"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@rVkgED43KDgvRnx61lNz",
                        "name": "Ada Fisher",
                        "image": ""
                    },
                    "best_seller_rank": null,
                    "rating": "1.0",
                    "amazon_link": "http://larkin.com/voluptatem-esse-eum-sapiente-beatae-deleniti?m=6102970121",
                    "price": "10.00",
                    "profit": 0,
                    "commission": null,
                    "commission_type": null,
                    "status": "active"
                }
            ],
            "brands": [],
            "status": "pending",
            "type": "seller_to_affiliate",
            "created_at": 1717207524
        },
        {
            "id": "alg@rVkgED43KDgvRnx61lNz",
            "seller": null,
            "products": [
                {
                    "id": "alg@NOb3Z51n0VaK8odBjrJe",
                    "name": "Ratione vel esse explicabo et error sed amet.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@8MEDr2kvAknB0W43jVZx",
                        "name": "Highlighters"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@rVkgED43KDgvRnx61lNz",
                        "name": "Ada Fisher",
                        "image": ""
                    },
                    "best_seller_rank": null,
                    "rating": "1.0",
                    "amazon_link": "http://larkin.com/voluptatem-esse-eum-sapiente-beatae-deleniti?m=6102970121",
                    "price": "10.00",
                    "profit": 0,
                    "commission": null,
                    "commission_type": null,
                    "status": "active"
                }
            ],
            "brands": [],
            "status": "pending",
            "type": "seller_to_affiliate",
            "created_at": 1717206650
        },
        {
            "id": "alg@X2Zq8RbnvPz0wM56WEoz",
            "affiliate": {
                "id": "alg@7b9ZAVdemE2voXyxNPR8",
                "name": "Philip J. Fry",
                "avatar": ""
            },
            "products": [
                {
                    "id": "alg@NOb3Z51n0VaK8odBjrJe",
                    "name": "Ratione vel esse explicabo et error sed amet.",
                    "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
                    "asin": null,
                    "sub_category": {
                        "id": "alg@8MEDr2kvAknB0W43jVZx",
                        "name": "Highlighters"
                    },
                    "main_category": null,
                    "brand": {
                        "id": "alg@rVkgED43KDgvRnx61lNz",
                        "name": "Ada Fisher",
                        "image": ""
                    },
                    "best_seller_rank": null,
                    "rating": "1.0",
                    "amazon_link": "http://larkin.com/voluptatem-esse-eum-sapiente-beatae-deleniti?m=6102970121",
                    "price": "10.00",
                    "profit": 0,
                    "commission": null,
                    "commission_type": null,
                    "status": "active"
                }
            ],
            "brands": [],
            "status": "pending",
            "type": "seller_to_affiliate",
            "created_at": 1717206059
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 4
    },
    "status": "success",
    "message": "partnership fetched successfully"
}
 

Request   

GET affiliate/v1/partnerships/requests

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

order_by[commission]   string  optional    

optional string for sort by commission can include: asc or desc. Example: desc

order_by[price]   string  optional    

optional string for sort by price can include: asc or desc. Example: desc

order_by[profit]   string  optional    

optional string for sort by profit can include: asc or desc. Example: desc

order_by[created_at]   string  optional    

optional string for sort by created at can include: asc or desc. Example: desc

status[]   string  optional    

optional array of strings for search in contracts. It accepts accepted, canceled, pending and rejected. Example: active

type[]   string  optional    

optional array of strings for search in contracts. It accepts brands and products. Example: products

direction   string  optional    

optional string for search in contracts. It accepts seller_to_affiliate and affiliate_to_seller. Example: affiliate_to_seller

platform   string  optional    

optional string for filter by platform. It accepts amazon or shopify. Example: amazon

marketplace   string  optional    

optional string for filter by marketplace (only for Amazon platform). Example: ATVPDKIKX0DER

Contract

Show Partnership Contract Details

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/1';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/partnerships/contracts/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
{
"status": "success",
"message": "words.partnership_contract Successfully Fetched",
"data": {
"id": 20,
"seller": {
"id": "alg@jP9WoOz4mbBVm2Ee3ALD",
"name": "test"
},
"status": "active",
"partnered_at": 1734376523,
"brandDetails": [],
"productDetails": {
"brand": "Emprian",
"product": "B081TPHGGK",
"category": "Beauty & Personal Care",
"price": "18.83",
"profit": 3.77,
"commission_type": "percent",
"commission": "20.00",
"affiliates_count": 1,
"terms_of_sale": ""
}
}
 

Request   

GET affiliate/v1/partnerships/contracts/{contractId}

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

contractId   integer     

The ID of the partnership contract. Example: 1

Product

Product List

requires authentication

Get a paginated list of products from Amazon or Shopify platform.

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'platform' => 'amazon',
            'query' => 'product name',
            'category_ids[]' => '1',
            'brand_ids[]' => '1',
            'shopify_profile_ids[]' => '1',
            'seller_ids[]' => '1',
            'price_from' => '1000',
            'price_to' => '2000',
            'commission_from' => '10',
            'commission_to' => '15',
            'rating_from' => '1',
            'rating_to' => '5',
            'review_count_from' => '10',
            'review_count_to' => '20',
            'partnership_status' => 'partnered or not_partnered',
            'availability' => 'in_stock, out_of_stock, in_stock_scarce, leadtime, available_date, removed, preorder',
            'one_promote' => 'true or false',
            'order_by[id]' => 'desc',
            'order_by[name]' => 'desc',
            'order_by[main_category]' => 'desc',
            'order_by[brand]' => 'desc',
            'order_by[best_seller_rank]' => 'desc',
            'order_by[user]' => 'desc',
            'order_by[amazon_price]' => 'desc',
            'order_by[rating]' => 'desc',
            'order_by[review_count]' => '0',
            'order_by[commission]' => 'desc',
            'order_by[has_promotion]' => 'desc',
            'order_by[partnership_status]' => 'desc',
            'order_by[availability]' => 'desc',
            'order_by[status]' => 'desc',
            'order_by[featured]' => 'desc',
            'order_by[highest_profit]' => 'desc',
            'order_by[recommended]' => 'desc',
            'order_by[popular]' => 'desc',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products?platform=amazon&query=product+name&category_ids%5B%5D=1&brand_ids%5B%5D=1&shopify_profile_ids%5B%5D=1&seller_ids%5B%5D=1&price_from=1000&price_to=2000&commission_from=10&commission_to=15&rating_from=1&rating_to=5&review_count_from=10&review_count_to=20&partnership_status=partnered+or+not_partnered&availability=in_stock%2C+out_of_stock%2C+in_stock_scarce%2C+leadtime%2C+available_date%2C+removed%2C+preorder&one_promote=true+or+false&order_by%5Bid%5D=desc&order_by%5Bname%5D=desc&order_by%5Bmain_category%5D=desc&order_by%5Bbrand%5D=desc&order_by%5Bbest_seller_rank%5D=desc&order_by%5Buser%5D=desc&order_by%5Bamazon_price%5D=desc&order_by%5Brating%5D=desc&order_by%5Breview_count%5D=0&order_by%5Bcommission%5D=desc&order_by%5Bhas_promotion%5D=desc&order_by%5Bpartnership_status%5D=desc&order_by%5Bavailability%5D=desc&order_by%5Bstatus%5D=desc&order_by%5Bfeatured%5D=desc&order_by%5Bhighest_profit%5D=desc&order_by%5Brecommended%5D=desc&order_by%5Bpopular%5D=desc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products"
);

const params = {
    "platform": "amazon",
    "query": "product name",
    "category_ids[]": "1",
    "brand_ids[]": "1",
    "shopify_profile_ids[]": "1",
    "seller_ids[]": "1",
    "price_from": "1000",
    "price_to": "2000",
    "commission_from": "10",
    "commission_to": "15",
    "rating_from": "1",
    "rating_to": "5",
    "review_count_from": "10",
    "review_count_to": "20",
    "partnership_status": "partnered or not_partnered",
    "availability": "in_stock, out_of_stock, in_stock_scarce, leadtime, available_date, removed, preorder",
    "one_promote": "true or false",
    "order_by[id]": "desc",
    "order_by[name]": "desc",
    "order_by[main_category]": "desc",
    "order_by[brand]": "desc",
    "order_by[best_seller_rank]": "desc",
    "order_by[user]": "desc",
    "order_by[amazon_price]": "desc",
    "order_by[rating]": "desc",
    "order_by[review_count]": "0",
    "order_by[commission]": "desc",
    "order_by[has_promotion]": "desc",
    "order_by[partnership_status]": "desc",
    "order_by[availability]": "desc",
    "order_by[status]": "desc",
    "order_by[featured]": "desc",
    "order_by[highest_profit]": "desc",
    "order_by[recommended]": "desc",
    "order_by[popular]": "desc",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "status": "error",
    "message": "Unauthenticated.",
    "data": []
}
 

Request   

GET affiliate/v1/products

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

platform   string  optional    

optional string The platform to fetch products from. Must be either 'amazon' or 'shopify' if provided. Example: amazon

query   string  optional    

optional string for search in product name. Example: product name

category_ids[]   integer  optional    

optional array number for filter product category. Example: 1

brand_ids[]   integer  optional    

optional array number for filter product brand. Example: 1

shopify_profile_ids[]   integer  optional    

optional array int for Shopify: filter by ShopifyAccountStore ids. Example: 1

seller_ids[]   integer  optional    

optional array number for filter product seller. Example: 1

price_from   integer  optional    

optional number for filter product minimum price. Example: 1000

price_to   integer  optional    

optional number for filter product maximum price. Example: 2000

commission_from   integer  optional    

optional number for filter product minimum commission. Example: 10

commission_to   integer  optional    

optional number for filter product maximum commission. Example: 15

rating_from   integer  optional    

optional number for filter product minimum rating. Example: 1

rating_to   integer  optional    

optional number for filter product maximum rating. Example: 5

review_count_from   integer  optional    

optional number for filter product minimum review count. Example: 10

review_count_to   integer  optional    

optional number for filter product maximum review count. Example: 20

partnership_status   string  optional    

optional string for filter partnership status. Example: partnered or not_partnered

availability   string  optional    

optional string for filter availability. Example: in_stock, out_of_stock, in_stock_scarce, leadtime, available_date, removed, preorder

one_promote   string  optional    

optional bool for filter auto_approval_brand. Example: true or false

order_by[id]   string  optional    

optional string for sort by id can include: asc or desc. Example: desc

order_by[name]   string  optional    

optional string for sort by name can include: asc or desc. Example: desc

order_by[main_category]   string  optional    

optional string for sort by category can include: asc or desc. Example: desc

order_by[brand]   string  optional    

optional string for sort by brand can include: asc or desc. Example: desc

order_by[best_seller_rank]   string  optional    

optional string for sort by bsr can include: asc or desc. Example: desc

order_by[user]   string  optional    

optional string for sort by seller can include: asc or desc. Example: desc

order_by[amazon_price]   string  optional    

optional string for sort by price can include: asc or desc. Example: desc

order_by[rating]   string  optional    

optional string for sort by rating can include: asc or desc. Example: desc

order_by[review_count]   integer  optional    

optional string for sort by review_count can include: asc or desc. Example: 0

order_by[commission]   string  optional    

optional string for sort by commission can include: asc or desc. Example: desc

order_by[has_promotion]   string  optional    

optional string for sort by has_promotion can include: asc or desc. Example: desc

order_by[partnership_status]   string  optional    

optional string for sort by partnership_status can include: asc or desc. Example: desc

order_by[availability]   string  optional    

optional string for sort by availability can include: asc or desc. Example: desc

order_by[status]   string  optional    

optional string for sort by status can include: asc or desc. Example: desc

order_by[featured]   string  optional    

optional string for sort by featured can include: asc or desc. Example: desc

order_by[highest_profit]   string  optional    

optional string for sort by highest_profit can include: asc or desc. Example: desc

order_by[recommended]   string  optional    

optional string for sort by recommended can include: asc or desc. Example: desc

order_by[popular]   string  optional    

optional string for sort by popular can include: asc or desc. Example: desc

Product Show

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/2';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/2" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/2"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "alg_lMWxe1baKXVm9gLnX8Qz",
        "name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
        "main_category": {
            "id": "alg_QlAxz9rvWoRdv85OwqoD",
            "name": "Beauty & Personal Care"
        },
        "sub_category": {
            "id": "alg_98ZOV1r0l5aMmPXE3aL2",
            "name": "Waxing Kits"
        },
        "images": [
            "https://m.media-amazon.com/images/I/81UaTcwVIFL.jpg",
            "https://m.media-amazon.com/images/I/81s87rI-tKL.jpg",
            "https://m.media-amazon.com/images/I/81R7izbTqUL.jpg",
            "https://m.media-amazon.com/images/I/81TIrg-LUCL.jpg",
            "https://m.media-amazon.com/images/I/71HlLZ-GI7L.jpg",
            "https://m.media-amazon.com/images/I/81ytHRmbk+L.jpg"
        ],
        "details": [],
        "description": [
            "✅ EVERYTHING YOU NEED - Our self waxing kit set has all the tools you need to remove unwanted hair from head to toe. You'll get a wax warmer device, 200 Grams of Blue Wax Beads, Two Different Type of Wooden Spatulas for Face and Body, Nose Applicators and a Electric Nose Hair Trimmer, Cooling gel pad, and Hair Removal Scissors.",
            "✅ EFFECTIVE HAIR REMOVAL - This home wax kit effectively facilitates the removal of even the shortest and finest hair. Keep your legs, armpits, and skin flawless, smooth and fuzz-free for longer.",
            "✅ WORKS WITH YOUR PREFERRED WAX - Designed to work with different types of waxes, our warmer lets you use what works best for you. You can go for beans, beads, block, Brazilian, hard, or canned wax.",
            "✅ EASY TO USE WAX KIT - We provide step-by-step instructions that are easy to follow. You can easily adjust the heating temperature of our wax warmer device using its manual setting knob.",
            "✅ SAVE TIME & MONEY! - Salon visits are not only expensive, but they also take time. Our professional-grade wax hair removal kit lets you complete your waxing session from the comfort of your home."
        ],
        "amazon_link": "https://www.amazon.com/dp/B07YLG56B2",
        "asin": "B07YLG56B2",
        "best_seller_rank": 146,
        "rating": "4.3",
        "amazon_price": "36.75",
        "review_count": 313,
        "commission": "40.00",
        "commission_type": "percent",
        "yppu": 14.7,
        "brand": {
            "id": "alg_g4rlB87nvyZKzZG5YEw1",
            "name": "Emprian",
            "image": "",
            "amazon_link": null,
            "commission": "23.33",
            "commission_type": "percent",
            "terms_file": ""
        },
        "seller": {
            "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
            "name": "S.Ahmad",
            "avatar": "",
            "user_type": "Pro Seller",
            "is_plan_free": false
        },
        "promotions": [
            {
                "id": "alg_7b9ZAVdemE2voXyxNPR8",
                "name": "saaa",
                "value_type": "percent",
                "value": "32.00",
                "start_date": 1717286400,
                "end_date": 1876521600,
                "is_public": true
            }
        ],
        "affiliateProductLinks": [
            {
                "id": "alg_JWq3xEoGKgWKLXyMrRA2",
                "display_name": "test",
                "is_default": false,
                "is_system": false,
                "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
                "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
                "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
                "product_category_name": "Waxing Kits",
                "brand_name": "Emprian",
                "source": {
                    "id": "alg_7b9ZAVdemE2voXyxNPR8",
                    "primary_id": "test2",
                    "display_name": "test1",
                    "sub_id": "test2"
                },
                "link": "https://buy.ainfluencer.com/product-link/alg_JWq3xEoGKgWKLXyMrRA2",
                "affiliate_amazon_tag": null,
                "promotion": null,
                "landing_page": null,
                "created_at": 1715979891
            },
            {
                "id": "alg_lZ2YpjWqvzamaoO79dDN",
                "display_name": "stesatasdf",
                "is_default": false,
                "is_system": false,
                "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
                "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
                "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
                "product_category_name": "Waxing Kits",
                "brand_name": "Emprian",
                "source": {
                    "id": "alg_7b9ZAVdemE2voXyxNPR8",
                    "primary_id": "test2",
                    "display_name": "test1",
                    "sub_id": "test2"
                },
                "link": "https://buy.ainfluencer.com/product-link/alg_lZ2YpjWqvzamaoO79dDN",
                "affiliate_amazon_tag": null,
                "promotion": {
                    "id": "alg_7b9ZAVdemE2voXyxNPR8",
                    "value": "32.00",
                    "value_type": "percent"
                },
                "landing_page": null,
                "created_at": 1718748552
            },
            {
                "id": "alg_rZnBN5Wb01E0kX132Olq",
                "display_name": "Default",
                "is_default": true,
                "is_system": true,
                "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
                "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
                "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
                "product_category_name": "Waxing Kits",
                "brand_name": "Emprian",
                "source": null,
                "link": "https://buy.ainfluencer.com/product-link/alg_rZnBN5Wb01E0kX132Olq",
                "affiliate_amazon_tag": null,
                "promotion": null,
                "landing_page": null,
                "created_at": 1718912840
            }
        ],
        "partnership_status": "partnered",
        "availability": "out_of_stock",
        "status": "active",
        "total_commission_paid": 1550,
        "active_partnership_request": null,
        "page_views": 1583,
        "total_sales": 260,
        "commission_paid": "1350",
        "has_product_partnership": false
    },
    "status": "success",
    "message": "product fetched successfully"
}
 

Request   

GET affiliate/v1/products/{id}

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

id   string     

The ID of the Product . Example: 2

Product Variation List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/architecto/variations';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'order_by[price]' => 'desc',
            'order_by[commission]' => 'desc',
            'order_by[name]' => 'desc',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/architecto/variations?order_by%5Bprice%5D=desc&order_by%5Bcommission%5D=desc&order_by%5Bname%5D=desc" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/architecto/variations"
);

const params = {
    "order_by[price]": "desc",
    "order_by[commission]": "desc",
    "order_by[name]": "desc",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg@jP9WoOz4mbVm2Ee3ALDk",
            "name": "Quia placeat cum sit voluptas et officiis eaque minima.",
            "image": "https://m.media-amazon.com/images/I/41DusbJFRoL._AA64_.jpg",
            "asin": "q123eefw5",
            "brand": "brand",
            "rating": "4.9",
            "price": "10.00",
            "commission": "20.00",
            "commission_type": "percent",
            "link": "http://www.bechtelar.com/repudiandae-vitae-commodi-dignissimos-deserunt-nisi-veritatis-ut?m=6102970121"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 1
    },
    "status": "success",
    "message": "products fetched successfully"
}
 

Request   

GET affiliate/v1/products/{id}/variations

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

id   string     

The ID of the product. Example: architecto

Query Parameters

order_by[price]   string  optional    

optional string for sort by price can include: asc or desc. Example: desc

order_by[commission]   string  optional    

optional string for sort by commission can include: asc or desc. Example: desc

order_by[name]   string  optional    

optional string for sort by name can include: asc or desc. Example: desc

Product Link

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "message": "Product link source fetched successfully",
    "data": [
        {
            "primary_id": 121212,
            "display_name": "Tests",
            "sub_id": 1212
        }
    ]
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'primary_id' => '25441',
            'display_name' => 'Facebook',
            'sub_id' => '25443',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"primary_id\": \"25441\",
    \"display_name\": \"Facebook\",
    \"sub_id\": \"25443\"
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "primary_id": "25441",
    "display_name": "Facebook",
    "sub_id": "25443"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'affiliate product Link Source created successfully',
  'data'=>{
      "id":87922,
      "name":"Roberta Fay",
      "username":"simonis.chelsie",
      "email":"[email protected]",
    }
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
   "status":"success",
   "message":"Data fetched successfully",
   "data":{
      "id":87922,
      "name":"Roberta Fay",
      "username":"simonis.chelsie",
      "email":"[email protected]",
    }
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'primary_id' => '25441',
            'display_name' => 'Facebook',
            'sub_id' => '25443',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request PUT \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"primary_id\": \"25441\",
    \"display_name\": \"Facebook\",
    \"sub_id\": \"25443\"
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "primary_id": "25441",
    "display_name": "Facebook",
    "sub_id": "25443"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'product Link updated successfully',
  'data'=>[]
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request DELETE \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/sources/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'product Link deleted successfully',
  'data'=>[]
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'query' => '0',
            'category_ids[]' => '1',
            'brand_ids[]' => '1',
            'product_ids[]' => '1',
            'source_ids[]' => '1',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links?query=0&category_ids%5B%5D=1&brand_ids%5B%5D=1&product_ids%5B%5D=1&source_ids%5B%5D=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links"
);

const params = {
    "query": "0",
    "category_ids[]": "1",
    "brand_ids[]": "1",
    "product_ids[]": "1",
    "source_ids[]": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg_JWq3xEoGKgWKLXyMrRA2",
            "display_name": "test",
            "is_default": false,
            "is_system": false,
            "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
            "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
            "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
            "product_category_name": "Waxing Kits",
            "brand_name": "Emprian",
            "source": {
                "id": "alg_7b9ZAVdemE2voXyxNPR8",
                "primary_id": "test2",
                "display_name": "test1",
                "sub_id": "test2"
            },
            "link": "https://buy.ainfluencer.com/product-link/alg_JWq3xEoGKgWKLXyMrRA2",
            "affiliate_amazon_tag": null,
            "promotion": null,
            "landing_page": null,
            "created_at": 1715979891
        },
        {
            "id": "alg_lZ2YpjWqvzamaoO79dDN",
            "display_name": "stesatasdf",
            "is_default": false,
            "is_system": false,
            "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
            "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
            "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
            "product_category_name": "Waxing Kits",
            "brand_name": "Emprian",
            "source": {
                "id": "alg_7b9ZAVdemE2voXyxNPR8",
                "primary_id": "test2",
                "display_name": "test1",
                "sub_id": "test2"
            },
            "link": "https://buy.ainfluencer.com/product-link/alg_lZ2YpjWqvzamaoO79dDN",
            "affiliate_amazon_tag": null,
            "promotion": {
                "id": "alg_7b9ZAVdemE2voXyxNPR8",
                "value": "32.00",
                "value_type": "percent"
            },
            "landing_page": null,
            "created_at": 1718748552
        },
        {
            "id": "alg_rZnBN5Wb01E0kX132Olq",
            "display_name": "Default",
            "is_default": true,
            "is_system": true,
            "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
            "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
            "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
            "product_category_name": "Waxing Kits",
            "brand_name": "Emprian",
            "source": null,
            "link": "https://buy.ainfluencer.com/product-link/alg_rZnBN5Wb01E0kX132Olq",
            "affiliate_amazon_tag": null,
            "promotion": null,
            "landing_page": null,
            "created_at": 1718912840
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 3
    },
    "status": "success",
    "message": "affiliate product link fetched successfully"
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'seller_product_id' => 1,
            'landing_page_id' => 1,
            'seller_promotion_id' => 1,
            'display_name' => 'Maud Ward',
            'source_id' => 1,
            'source' => [
                'name' => 'architecto',
                'primary_id' => 'architecto',
                'sub_id' => 'architecto',
            ],
            'is_default' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"seller_product_id\": 1,
    \"landing_page_id\": 1,
    \"seller_promotion_id\": 1,
    \"display_name\": \"Maud Ward\",
    \"source_id\": 1,
    \"source\": {
        \"name\": \"architecto\",
        \"primary_id\": \"architecto\",
        \"sub_id\": \"architecto\"
    },
    \"is_default\": false
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "seller_product_id": 1,
    "landing_page_id": 1,
    "seller_promotion_id": 1,
    "display_name": "Maud Ward",
    "source_id": 1,
    "source": {
        "name": "architecto",
        "primary_id": "architecto",
        "sub_id": "architecto"
    },
    "is_default": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "message": "affiliate product link fetched successfully",
    "data": {
        "id": "alg_lZ2YpjWqvzamaoO79dDN",
        "display_name": "stesatasdf",
        "is_default": false,
        "is_system": false,
        "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
        "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
        "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
        "product_category_name": "Waxing Kits",
        "brand_name": "Emprian",
        "source": {
            "id": "alg_7b9ZAVdemE2voXyxNPR8",
            "primary_id": "test2",
            "display_name": "test1",
            "sub_id": "test2"
        },
        "link": "https://buy.ainfluencer.com/product-link/alg_lZ2YpjWqvzamaoO79dDN",
        "affiliate_amazon_tag": null,
        "promotion": {
            "id": "alg_7b9ZAVdemE2voXyxNPR8",
            "value": "32.00",
            "value_type": "percent"
        },
        "landing_page": {
            "id": "alg_l9xnzAZ50B20eaW8XEBw",
            "name": "My landing page2",
            "template": {
                "id": "alg_rVkgED43KDgvRnx61lNz",
                "title": "Right Side - Purple",
                "content": "Et magni quia qui dicta nobis. Nostrum nihil rerum ipsa sit architecto et voluptatem.\n\nCommodi qui fuga illum saepe culpa sit. Quam odit sed laborum corrupti sapiente.\n\nAut nemo sequi qui aut illum facilis voluptas. Est molestiae non molestiae magni iusto. Necessitatibus asperiores sint eligendi sit. Et enim cupiditate dicta dignissimos voluptatem. Repudiandae iusto commodi rerum deserunt qui quo.",
                "thumbnail": "right-purple.png",
                "grid_id": 3,
                "color_id": 2
            }
        },
        "created_at": 1718748552
    }
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/set-default/architecto';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/set-default/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/set-default/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'Default product link set successfully',
  'data'=>[]
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "status": "success",
    "message": "affiliate product link fetched successfully",
    "data": {
        "id": "alg_lZ2YpjWqvzamaoO79dDN",
        "display_name": "stesatasdf",
        "is_default": false,
        "is_system": false,
        "seller_product_id": "alg_lMWxe1baKXVm9gLnX8Qz",
        "product_name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
        "product_image": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
        "product_category_name": "Waxing Kits",
        "brand_name": "Emprian",
        "source": {
            "id": "alg_7b9ZAVdemE2voXyxNPR8",
            "primary_id": "test2",
            "display_name": "test1",
            "sub_id": "test2"
        },
        "link": "https://buy.ainfluencer.com/product-link/alg_lZ2YpjWqvzamaoO79dDN",
        "affiliate_amazon_tag": null,
        "promotion": {
            "id": "alg_7b9ZAVdemE2voXyxNPR8",
            "value": "32.00",
            "value_type": "percent"
        },
        "landing_page": {
            "id": "alg_l9xnzAZ50B20eaW8XEBw",
            "name": "My landing page2",
            "template": {
                "id": "alg_rVkgED43KDgvRnx61lNz",
                "title": "Right Side - Purple",
                "content": "Et magni quia qui dicta nobis. Nostrum nihil rerum ipsa sit architecto et voluptatem.\n\nCommodi qui fuga illum saepe culpa sit. Quam odit sed laborum corrupti sapiente.\n\nAut nemo sequi qui aut illum facilis voluptas. Est molestiae non molestiae magni iusto. Necessitatibus asperiores sint eligendi sit. Et enim cupiditate dicta dignissimos voluptatem. Repudiandae iusto commodi rerum deserunt qui quo.",
                "thumbnail": "right-purple.png",
                "grid_id": 3,
                "color_id": 2
            }
        },
        "created_at": 1718748552
    }
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'json' => [
            'landing_page_id' => 1,
            'display_name' => 'Maud Ward',
            'seller_promotion_id' => 1,
            'is_default' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request PUT \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"landing_page_id\": 1,
    \"display_name\": \"Maud Ward\",
    \"seller_promotion_id\": 1,
    \"is_default\": false
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "landing_page_id": 1,
    "display_name": "Maud Ward",
    "seller_promotion_id": 1,
    "is_default": false
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'product Link updated successfully',
  'data'=>[]
}
 

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request DELETE \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/products/links/architecto"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());

Example response (200):


{
  'status'=>'success',
  'message'=>'affiliate product Link deleted successfully',
  'data'=>[]
}
 

Report

Performance Report List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/reports/performance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'from_date' => '2023/08/11',
            'to_date' => '2023/08/11',
            'seller_product_id[]' => '4',
            'seller_brand_id[]' => '7',
            'seller_id[]' => '7',
            'source_id[]' => '7',
            'order_by[date]' => 'asc',
            'order_by[commission]' => 'desc',
            'order_by[clicks]' => 'asc',
            'order_by[sales]' => 'desc',
            'order_by[conversions]' => 'asc',
            'order_by[conversion_rate]' => 'desc',
            'page' => '1',
            'platform' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/performance?from_date=2023%2F08%2F11&to_date=2023%2F08%2F11&seller_product_id%5B%5D=4&seller_brand_id%5B%5D=7&seller_id%5B%5D=7&source_id%5B%5D=7&order_by%5Bdate%5D=asc&order_by%5Bcommission%5D=desc&order_by%5Bclicks%5D=asc&order_by%5Bsales%5D=desc&order_by%5Bconversions%5D=asc&order_by%5Bconversion_rate%5D=desc&page=1&platform=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/performance"
);

const params = {
    "from_date": "2023/08/11",
    "to_date": "2023/08/11",
    "seller_product_id[]": "4",
    "seller_brand_id[]": "7",
    "seller_id[]": "7",
    "source_id[]": "7",
    "order_by[date]": "asc",
    "order_by[commission]": "desc",
    "order_by[clicks]": "asc",
    "order_by[sales]": "desc",
    "order_by[conversions]": "asc",
    "order_by[conversion_rate]": "desc",
    "page": "1",
    "platform": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "date": 1701388800,
            "clicks": 20,
            "add_to_cart": 3,
            "sales": "25.50",
            "conversions": 5,
            "conversion_rate": 0,
            "commission": "0.00"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 2
    },
    "status": "success",
    "message": "report fetched successfully"
}
 

Request   

GET affiliate/v1/reports/performance

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

from_date   string  optional    

Example: 2023/08/11

to_date   string  optional    

Example: 2023/08/11

seller_product_id[]   string  optional    

Example: 4

seller_brand_id[]   string  optional    

Example: 7

seller_id[]   string  optional    

Example: 7

source_id[]   string  optional    

Example: 7

order_by[date]   string  optional    

Example: asc

order_by[commission]   string  optional    

Example: desc

order_by[clicks]   string  optional    

Example: asc

order_by[sales]   string  optional    

Example: desc

order_by[conversions]   string  optional    

Example: asc

order_by[conversion_rate]   string  optional    

Example: desc

page   string  optional    

Example: 1

platform   string  optional    

Example: 0

Product Report List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/reports/product';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'query' => [
            'from_date' => '2023/08/11',
            'to_date' => '2023/08/11',
            'seller_brand_id' => '7',
            'page' => '1',
        ],
        'json' => [
            'seller_product_ids' => [
                0,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/product?from_date=2023%2F08%2F11&to_date=2023%2F08%2F11&seller_brand_id=7&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"seller_product_ids\": [
        0
    ]
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/product"
);

const params = {
    "from_date": "2023/08/11",
    "to_date": "2023/08/11",
    "seller_brand_id": "7",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "seller_product_ids": [
        0
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "product": {
                "id": "alg_EXdg5Yj903W0kwep28zo",
                "brand_id": "alg_PWZ7nGw8vJ1m4R1aX9My",
                "name": "Flexon WS100KITCN 20-Piece Soaker Hose Kit, 100 ft, Black",
                "thumbnail": "https://m.media-amazon.com/images/I/61C+FHXWQVL._AA64_.jpg",
                "asin": null,
                "amazon_link": "https://www.amazon.com/dp/B07CXZSMM1?m=AQO9TRV0YRH57"
            },
            "clicks": 200,
            "add_to_cart": 50,
            "sales": "1200.00",
            "conversions": 50,
            "conversion_rate": 25,
            "commission": "200.00"
        },
        {
            "product": {
                "id": "alg_lMWxe1baKXVm9gLnX8Qz",
                "brand_id": "alg_g4rlB87nvyZKzZG5YEw1",
                "name": "Emprian Waxing kit Wax Warmer - 200gr Blue Wax Beads, Wax Pot for Women and Men - Painless Waxing for Full Body, Legs, Face, Eyebrows, Bikini and Armpit - Easy to Use Hair Removal Wax Warmer for Salon",
                "thumbnail": "https://m.media-amazon.com/images/I/81UaTcwVIFL._AA64_.jpg",
                "asin": null,
                "amazon_link": "https://www.amazon.com/dp/B07YLG56B2?m=AQO9TRV0YRH57"
            },
            "clicks": 703,
            "add_to_cart": 244,
            "sales": "4000.00",
            "conversions": 220,
            "conversion_rate": 31,
            "commission": "850.00"
        }
    ],
    "status": "success",
    "message": "report fetched successfully"
}
 

Request   

POST affiliate/v1/reports/product

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Query Parameters

from_date   string  optional    

Example: 2023/08/11

to_date   string  optional    

Example: 2023/08/11

seller_brand_id   string  optional    

Example: 7

page   string  optional    

Example: 1

Body Parameters

seller_product_ids   integer[]  optional    

Seller product id required. The id of an existing record in the seller_products table.

Brand Report List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/reports/brand';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'query' => [
            'from_date' => '2023/08/11',
            'to_date' => '2023/08/11',
            'page' => '1',
        ],
        'json' => [
            'seller_brand_ids' => [
                1,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/brand?from_date=2023%2F08%2F11&to_date=2023%2F08%2F11&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"seller_brand_ids\": [
        1
    ]
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/brand"
);

const params = {
    "from_date": "2023/08/11",
    "to_date": "2023/08/11",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "seller_brand_ids": [
        1
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "brand": {
                "id": "alg_PWZ7nGw8vJ1m4R1aX9My",
                "name": "Flexon",
                "image": ""
            },
            "clicks": 200,
            "add_to_cart": 50,
            "sales": "1200.00",
            "conversions": 50,
            "conversion_rate": 25,
            "commission": "200.00"
        },
        {
            "brand": {
                "id": "alg_g4rlB87nvyZKzZG5YEw1",
                "name": "Emprian",
                "image": ""
            },
            "clicks": 703,
            "add_to_cart": 244,
            "sales": "4000.00",
            "conversions": 220,
            "conversion_rate": 31,
            "commission": "850.00"
        }
    ],
    "status": "success",
    "message": "report fetched successfully"
}
 

Request   

POST affiliate/v1/reports/brand

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Query Parameters

from_date   string  optional    

Example: 2023/08/11

to_date   string  optional    

Example: 2023/08/11

page   string  optional    

Example: 1

Body Parameters

seller_brand_ids   integer[]  optional    

Brand id (Amazon) or store id (Shopify), per X-Platform. The id of an existing record in the seller_brands table.

Source Report List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/reports/source';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'query' => [
            'from_date' => '2023/08/11',
            'to_date' => '2023/08/11',
            'page' => '1',
        ],
        'json' => [
            'source_ids' => [
                0,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/source?from_date=2023%2F08%2F11&to_date=2023%2F08%2F11&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"source_ids\": [
        0
    ]
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/source"
);

const params = {
    "from_date": "2023/08/11",
    "to_date": "2023/08/11",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "source_ids": [
        0
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "date": 1718713490,
            "source": {
                "id": "alg_YVnAZalrvYLmXD2o5bJk",
                "name": "test2"
            },
            "clicks": 0,
            "add_to_cart": 0,
            "sales": "0.00",
            "conversions": 0,
            "conversion_rate": 0,
            "commission": "0.00"
        },
        {
            "date": 1718713490,
            "source": {
                "id": "alg_7b9ZAVdemE2voXyxNPR8",
                "name": "test1"
            },
            "clicks": 903,
            "add_to_cart": 294,
            "sales": "5200.00",
            "conversions": 270,
            "conversion_rate": 29,
            "commission": "1050.00"
        }
    ],
    "status": "success",
    "message": "report fetched successfully"
}
 

Request   

POST affiliate/v1/reports/source

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Query Parameters

from_date   string  optional    

Example: 2023/08/11

to_date   string  optional    

Example: 2023/08/11

page   string  optional    

Example: 1

Body Parameters

source_ids   integer[]  optional    

Source is required. The id of an existing record in the affiliate_product_link_sources table.

Landing Page Report List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/reports/landing-page';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
            'Content-Type' => 'application/json',
        ],
        'query' => [
            'from_date' => '2023/08/11',
            'to_date' => '2023/08/11',
            'seller_product_id' => '4',
            'page' => '1',
        ],
        'json' => [
            'landing_page_ids' => [
                0,
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request POST \
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/landing-page?from_date=2023%2F08%2F11&to_date=2023%2F08%2F11&seller_product_id=4&page=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}" \
    --header "Content-Type: application/json" \
    --data "{
    \"landing_page_ids\": [
        0
    ]
}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/reports/landing-page"
);

const params = {
    "from_date": "2023/08/11",
    "to_date": "2023/08/11",
    "seller_product_id": "4",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
    "Content-Type": "application/json",
};

let body = {
    "landing_page_ids": [
        0
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg_YVnAZalrvYLmXD2o5bJk",
            "name": "test",
            "views": 3,
            "conversions": 2,
            "conversion_rate": "0.67"
        },
        {
            "id": "alg_X2Zq8RbnvPz0wM56WEoz",
            "name": "test2",
            "views": 4,
            "conversions": 3,
            "conversion_rate": "0.75"
        }
    ],
    "status": "success",
    "message": "report fetched successfully"
}
 

Request   

POST affiliate/v1/reports/landing-page

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Content-Type        

Example: application/json

Query Parameters

from_date   string  optional    

Example: 2023/08/11

to_date   string  optional    

Example: 2023/08/11

seller_product_id   string  optional    

Example: 4

page   string  optional    

Example: 1

Body Parameters

landing_page_ids   integer[]  optional    

Landing page is required. The id of an existing record in the landing_pages table.

Shopify Store

Store List

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/stores';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
        'query' => [
            'main_category_id' => '1 or [1,2,3]',
            'min_avg_price' => '10.50',
            'max_avg_price' => '100.00',
            'min_avg_commission' => '5.00',
            'max_avg_commission' => '20.00',
            'status' => 'active',
            'partnership_status' => 'partnered',
            'order_by[main_category_id]' => 'asc',
            'order_by[product_count]' => '0',
            'order_by[avg_price]' => 'desc',
            'order_by[avg_commission]' => 'desc',
            'order_by[status]' => 'asc',
            'order_by[partnership_status]' => 'desc',
            'per_page' => '20',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/stores?main_category_id=1+or+%5B1%2C2%2C3%5D&min_avg_price=10.50&max_avg_price=100.00&min_avg_commission=5.00&max_avg_commission=20.00&status=active&partnership_status=partnered&order_by%5Bmain_category_id%5D=asc&order_by%5Bproduct_count%5D=0&order_by%5Bavg_price%5D=desc&order_by%5Bavg_commission%5D=desc&order_by%5Bstatus%5D=asc&order_by%5Bpartnership_status%5D=desc&per_page=20" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/stores"
);

const params = {
    "main_category_id": "1 or [1,2,3]",
    "min_avg_price": "10.50",
    "max_avg_price": "100.00",
    "min_avg_commission": "5.00",
    "max_avg_commission": "20.00",
    "status": "active",
    "partnership_status": "partnered",
    "order_by[main_category_id]": "asc",
    "order_by[product_count]": "0",
    "order_by[avg_price]": "desc",
    "order_by[avg_commission]": "desc",
    "order_by[status]": "asc",
    "order_by[partnership_status]": "desc",
    "per_page": "20",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": "alg_PWZ7nGw8vJ1m4R1aX9My",
            "store_domain": "example.myshopify.com",
            "seller": {
                "id": "alg_PWZ7nGw8vJQ1m4R1aX9M",
                "name": "S.Ahmad",
                "avatar": ""
            },
            "main_category": null,
            "products_count": 10,
            "avg_price": null,
            "avg_commission": null,
            "partnership_status": "partnered"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 15,
        "total": 1
    },
    "status": "success",
    "message": "stores fetched successfully"
}
 

Request   

GET affiliate/v1/stores

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

Query Parameters

main_category_id   string  optional    

Filter by main category ID(s). Can be a single ID or array of IDs. Example: 1 or [1,2,3]

min_avg_price   string  optional    

Filter stores with average price greater than or equal to this value. Example: 10.50

max_avg_price   string  optional    

Filter stores with average price less than or equal to this value. Example: 100.00

min_avg_commission   string  optional    

Filter stores with average commission greater than or equal to this value. Example: 5.00

max_avg_commission   string  optional    

Filter stores with average commission less than or equal to this value. Example: 20.00

status   string  optional    

Filter by status. Can be numeric (1=Active, 2=Inactive, 3=Suspended) or string (active, inactive, suspended). Example: active

partnership_status   string  optional    

Filter by partnership status. Values: partnered, not_partnered. Example: partnered

order_by[main_category_id]   string  optional    

Sort by main category ID. Values: asc, desc. Example: asc

order_by[product_count]   integer  optional    

Sort by product count. Values: asc, desc. Example: 0

order_by[avg_price]   string  optional    

Sort by average price. Values: asc, desc. Example: desc

order_by[avg_commission]   string  optional    

Sort by average commission. Values: asc, desc. Example: desc

order_by[status]   string  optional    

Sort by status. Values: asc, desc. Example: asc

order_by[partnership_status]   string  optional    

Sort by partnership status. Values: asc, desc. Example: desc

per_page   integer  optional    

Number of items per page. Default: 15. Max: 100. Example: 20

Store Show

requires authentication

Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://affiliate-api.ainfluencer.com/affiliate/v1/stores/1';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Accept' => 'application/json',
            'X-Platform' => 'shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
curl --request GET \
    --get "https://affiliate-api.ainfluencer.com/affiliate/v1/stores/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Accept: application/json" \
    --header "X-Platform: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}"
const url = new URL(
    "https://affiliate-api.ainfluencer.com/affiliate/v1/stores/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Accept": "application/json",
    "X-Platform": "shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": "encoded_store_id",
        "store_domain": "example.myshopify.com",
        "shop_name": "Example Store",
        "main_category": {
            "id": "encoded_category_id",
            "name": "Electronics"
        },
        "avg_commission": "15.50",
        "avg_price": "299.99",
        "terms_of_sale": null,
        "seller": {
            "id": "encoded_seller_id",
            "name": "John Doe",
            "avatar": "https://api.dicebear.com/9.x/initials/png?seed=John+Doe"
        },
        "product_count": 12,
        "status": "active",
        "partnership_status": "partnered",
        "active_partnership_request": {
            "id": "encoded_request_id",
            "status": "pending",
            "commission": "20.00",
            "commission_type": "percent",
            "is_custom_commission": "1",
            "message": "Partnership request message",
            "type": "affiliate_to_seller",
            "created_at": 1640995200
        },
        "affiliate_count": 3,
        "partnership_applied_date": 1640995200
    },
    "status": "success",
    "message": "store fetched successfully"
}
 

Request   

GET affiliate/v1/stores/{id}

Headers

Authorization        

Example: Bearer {YOUR_AUTH_KEY}

Accept        

Example: application/json

X-Platform        

Example: shopify | amazon | amazon-{marketplace_id} | amazon-{tld} | amazon.{tld}

URL Parameters

id   integer     

The ID of the Shopify Account Store. Example: 1