Public APIs for Price Lists

How to get the access key

After you install B2Bridge - B2B All in one, go to API and integration, fill out the form and submit your access request. We’ll review it and send the access key to your email.

Rule endpoints

There are fields of Customer Group rule, you need to understand:

  • id: If provided and matches an existing price list, the rule will be updated. If omitted or does not match any existing price list, a new price list will be created.

  • name*: Price list name.

  • priority: Must be a number between 0 and 99 if provided.

  • status

    • 0: disable

    • 1: enable

  • discount_type

    • PERCENT: Apply a percentage as a discount.

    • FIXED: Decrease a fixed amount off original prices.

    • NEW: Apply a new price.

    • CUSTOMIZE: Customize for each product.

  • discount_value

  • volume_type

    • NO_LIMIT: No discount.

    • QUANTITY: Discount on purchasing quantity.

    • AMOUNT: Discount on purchasing amount.

    • CUSTOMIZE: Customize for each product.

  • volume_apply

    • EVERY_PRODUCT: Applies to all products in the price list.

    • TOTAL_PRODUCT: Applies to the total quantity/amount of all products in the price list.

  • volume_table: If provided, must be an array of volume pricing tiers.

    • volume_pricing_from: value must be greater than the previous one.

    • volume_pricing_type: "PERCENT", "FIXED", or "NEW".

    • volume_pricing_value: discount value.

  • limit_type

    • NO_LIMIT: No limit.

    • QUANTITY: Limit on purchasing quantity.

    • AMOUNT: Limit on purchasing amount.

    • CUSTOMIZE: Customize for each product.

  • limit_apply

    • EVERY_PRODUCT: Applies to all products in the price list.

    • TOTAL_PRODUCT: Applies to the total quantity/amount of all products in the price list.

  • minimum: Minimum quantity/amount of each product or all products in the price list in the order.

  • maximum: Maximum quantity/amount of each product or all products in the price list in the order.

  • increment_quantity

  • pricingVariants: If provided, must be an array.

    • variant_id, product_id, origin_price, variant_title, product_title, handle, sku, barcode, image_url, inventory_quantity: require.

    • price: Applicable only when discount_type is "CUSTOMIZE". Defaults to the value of origin_price if not provided.

    • minimum: Only applicable when limit_type is "CUSTOMIZE".

    • maximum: Only applicable when limit_type is "CUSTOMIZE". Must be greater than minimum if provided.

    • order_limit_by: Applicable only when limit_type is "CUSTOMIZE". Defaults to "QUANTITY" if not provided.

    • increment_quantity: Applicable only when limit_type is "CUSTOMIZE" and order_limit_by is "QUANTITY". Defaults to 1 if not provided.

    • volume_limit_by: Applicable only when volume_type is "CUSTOMIZE". Defaults to "QUANTITY" if not provided.

    • volume_pricing: Same structure and validation rules as volume_table.

Get all pricing list rules by domain

GET https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/get-by-domain

Headers

KEY
VALUE

x-b2bridge-api-key

xxx

Params

KEY
VALUE

domain

abc.myshopify.com

Response 200

{
    "success": true,
    "message": "Get pricing rule successfully",
    "rules": [
        {
            "id": 1,
            "shop_id": 1,
            "name": "pl1",
            "status": 1,
            "priority": 0,
            "market_condition_type": "ALL",
            "market_ids": "[]",
            "discount_type": "PERCENT",
            "discount_value": "10",
            "volume_type": "QUANTITY",
            "volume_apply": "EVERY_PRODUCT",
            "volume_table": "[{\"volume_pricing_from\":5,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":10},{\"volume_pricing_from\":10,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":20}]",
            "limit_type": "QUANTITY",
            "limit_apply": "EVERY_PRODUCT",
            "minimum": "0",
            "maximum": "5",
            "increment_quantity": 0,
            "start_date": "2025-05-20 06:46:22.03",
            "end_date": null,
            "enable_end_date": 0,
            "created_at": "2025-05-23T04:46:29.110Z",
            "updated_at": "2025-06-02T07:31:26.228Z"
        }
    ]
}

Get pricing list rule by id

GET https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/get-by-id

Headers

KEY
VALUE

x-b2bridge-api-key

xxx

Params

KEY
VALUE

domain

abc.myshopify.com

id

1

Response 200

{
    "success": true,
    "message": "Get pricing rule by id successfully",
    "rule": {
        "id": 1,
        "shop_id": 1,
        "name": "pl1",
        "status": 1,
        "priority": 0,
        "market_condition_type": "ALL",
        "market_ids": "[]",
        "discount_type": "PERCENT",
        "discount_value": "10",
        "volume_type": "QUANTITY",
        "volume_apply": "EVERY_PRODUCT",
        "volume_table": "[{\"volume_pricing_from\":5,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":10},{\"volume_pricing_from\":10,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":20}]",
        "limit_type": "QUANTITY",
        "limit_apply": "EVERY_PRODUCT",
        "minimum": "0",
        "maximum": "5",
        "increment_quantity": 0,
        "start_date": "2025-05-20 06:46:22.03",
        "end_date": null,
        "enable_end_date": 0,
        "created_at": "2025-05-23T04:46:29.110Z",
        "updated_at": "2025-06-02T07:31:26.228Z",
        "pricingListVariants": [
            {
                "id": 70,
                "shop_id": 1,
                "rule_id": 1,
                "product_id": "9040691429593",
                "variant_id": "46076618014937",
                "sku": "",
                "barcode": "",
                "price": 557.1,
                "origin_price": 619,
                "variant_title": "Default Title",
                "product_title": "14k Dangling Pendant Earrings Bac",
                "handle": "14k-dangling-pendant-earrings-1",
                "image_url": "https://cdn.shopify.com/s/files/1/0719/7638/6777/files/18k-white-gold-dangling-pendant-earrings_17e71027-81d8-4a49-a455-2e5c205963ee.jpg?v=1730281621",
                "inventory_quantity": -11,
                "variant_different": "{}",
                "minimum": 1,
                "maximum": null,
                "increment_quantity": 1,
                "order_limit_by": "QUANTITY",
                "volume_pricing": "[]",
                "volume_limit_by": "QUANTITY",
                "created_at": "2025-06-02T07:31:26.237Z",
                "updated_at": null
            }
        ]
    }
}

Get variants in price list rule by rule id

GET https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/get-variants-by-rule-id

Headers

KEY
VALUE

x-b2bridge-api-key

xxx

Params

KEY
VALUE

domain

abc.myshopify.com

id

1

Response 200

{
    "success": true,
    "message": "Get variants successfully",
    "rule": [
        {
            "product_id": "9040691429593",
            "pricing_list_variants": [
                {
                    "id": 70,
                    "shop_id": 1,
                    "rule_id": 1,
                    "product_id": "9040691429593",
                    "variant_id": "46076618014937",
                    "sku": "",
                    "barcode": "",
                    "price": 557.1,
                    "origin_price": 619,
                    "variant_title": "Default Title",
                    "product_title": "14k Dangling Pendant Earrings Bac",
                    "handle": "14k-dangling-pendant-earrings-1",
                    "image_url": "https://cdn.shopify.com/s/files/1/0719/7638/6777/files/18k-white-gold-dangling-pendant-earrings_17e71027-81d8-4a49-a455-2e5c205963ee.jpg?v=1730281621",
                    "inventory_quantity": -11,
                    "variant_different": "{}",
                    "minimum": 1,
                    "maximum": null,
                    "increment_quantity": 1,
                    "order_limit_by": "QUANTITY",
                    "volume_pricing": "[]",
                    "volume_limit_by": "QUANTITY",
                    "created_at": "2025-06-02T07:31:26.23775",
                    "updated_at": null
                }
            ]
        }
    ]
}

Save price list rule

POST https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/save

Headers

KEY
VALUE

Content-Type

application/json

x-b2bridge-api-key

xxx

Body

{
    "domain": "abc.myshopify.com",
    "rule": {
        "discount_type": "CUSTOMIZE",
        "discount_value": 0,
        "enable_end_date": 0,
        "end_date": null,
        "increment_quantity": 0,
        "limit_apply": "EVERY_PRODUCT",
        "limit_type": "CUSTOMIZE",
        "name": "pl hehe",
        "priority": 0,
        "status": 1,
        "volume_apply": "EVERY_PRODUCT",
        "volume_type": "CUSTOMIZE",
        "volume_table": "",
        "pricingVariants": [
            {
                "product_id": "9040691134681",
                "variant_id": "46076617752793",
                "price": 579,
                "origin_price": 579,
                "variant_title": "Default Title",
                "product_title": "14k Dangling Pendant Earrings Vang",
                "handle": "14k-dangling-pendant-earrings",
                "sku": "SKU8386",
                "barcode": "",
                "image_url": "https://cdn.shopify.com/s/files/1/0719/6777/files/18k-rose-gold-infinite",
                "inventory_quantity": 0,
                "minimum": 1,
                "increment_quantity": 1,
                "order_limit_by": "AMOUNT",
                "volume_pricing": [
                    {
                        "volume_pricing_from": 1,
                        "volume_pricing_type": "PERCENT",
                        "volume_pricing_value": 4
                    },
                    {
                        "volume_pricing_from": 2,
                        "volume_pricing_type": "FIXED",
                        "volume_pricing_value": 4
                    },
                    {
                        "volume_pricing_from": 3,
                        "volume_pricing_type": "NEW",
                        "volume_pricing_value": 4
                    }
                ],
                "volume_limit_by": "QUANTITY",
                "variant_different": "{\"limit_different\":false}"
            }
        ]
    }
}

Response 200

{
    "success": true,
    "message": "Created pricing list rule successfully",
    "rule": {
        "id": 4,
        "shop_id": 1,
        "name": "pl hehe",
        "status": 1,
        "priority": 0,
        "market_condition_type": "ALL",
        "market_ids": "[]",
        "discount_type": "CUSTOMIZE",
        "discount_value": "0",
        "volume_type": "CUSTOMIZE",
        "volume_apply": "EVERY_PRODUCT",
        "volume_table": "[{\"volume_pricing_from\":0,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":0}]",
        "limit_type": "CUSTOMIZE",
        "limit_apply": "EVERY_PRODUCT",
        "minimum": "0",
        "maximum": "0",
        "increment_quantity": 0,
        "start_date": "2025-06-02 10:38:11.568",
        "end_date": null,
        "enable_end_date": 0,
        "created_at": "2025-06-02T10:38:11.670Z",
        "updated_at": null
    }
}

Save multiple price list rules

POST https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/bulk-save

Headers

KEY
VALUE

Content-Type

application/json

x-b2bridge-api-key

xxx

Body

{
    "domain": "abc.myshopify.com",
    "rules": [
        {
            "discount_type": "PERCENT",
            "discount_value": 0,
            "enable_end_date": 0,
            "end_date": null,
            "increment_quantity": 0,
            "limit_apply": "EVERY_PRODUCT",
            "limit_type": "NO_LIMIT",
            "name": "pl test",
            "priority": 0,
            "status": 1,
            "volume_apply": "EVERY_PRODUCT",
            "volume_type": "NO_LIMIT",
            "volume_table": "",
            "pricingVariants": [
                {
                    "product_id": "9040691134681",
                    "variant_id": "46076617752793",
                    "price": 579,
                    "origin_price": 579,
                    "variant_title": "Default Title",
                    "product_title": "14k Dangling Pendant Earrings Vang",
                    "handle": "14k-dangling-pendant-earrings",
                    "sku": "SKU8386",
                    "barcode": "",
                    "image_url": "https://cdn.shopify.com/s/files/1/0719/6777/files/18k-rose-gold-infinite",
                    "inventory_quantity": 0,
                    "minimum": 1,
                    "maximum": null,
                    "increment_quantity": 1,
                    "order_limit_by": "AMOUNT",
                    "volume_pricing": [],
                    "volume_limit_by": "QUANTITY",
                    "variant_different": "{\"limit_different\":false}"
                }
            ]
        }
    ]
}

Response 200

{
    "success": true,
    "message": [
        "Create new rule 'pl test' with ID 5 successfully"
    ]
}

Duplicate price list rule

POST https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/duplicate-by-id

Headers

KEY
VALUE

Content-Type

application/json

x-b2bridge-api-key

xxx

Body

{
    "domain": "abc.myshopify.com",
    "id": 1
}

Response 200

{
    "success": true,
    "message": "Duplicate rule successfully",
    "rule": {
        "id": 3,
        "shop_id": 1,
        "name": "pl1",
        "status": 1,
        "priority": 0,
        "market_condition_type": "ALL",
        "market_ids": "[]",
        "discount_type": "PERCENT",
        "discount_value": "10",
        "volume_type": "QUANTITY",
        "volume_apply": "EVERY_PRODUCT",
        "volume_table": "[{\"volume_pricing_from\":5,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":10},{\"volume_pricing_from\":10,\"volume_pricing_type\":\"PERCENT\",\"volume_pricing_value\":20}]",
        "limit_type": "QUANTITY",
        "limit_apply": "EVERY_PRODUCT",
        "minimum": "0",
        "maximum": "5",
        "increment_quantity": 0,
        "start_date": "2025-05-20 06:46:22.03",
        "end_date": null,
        "enable_end_date": 0,
        "created_at": "2025-06-02T10:37:12.705Z",
        "updated_at": null
    }
}

Delete price list rule

DELETE https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/delete-by-id

Headers

KEY
VALUE

x-b2bridge-api-key

xxx

Params

KEY
VALUE

domain

abc.myshopify.com

id

1

Response 200

{
    "success": true,
    "message": "Delete rule successfully"
}

Mass delete price list rules

POST https://b2bridge-public-api.b2bridge.io/api/v1/pricing-lists/delete-by-id

Headers

KEY
VALUE

Content-Type

application/json

x-b2bridge-api-key

xxx

Body

{
    "domain": "abc.myshopify.com",
    "ids": [
        6,
        19
    ]
}

Response 200

{
    "success": true,
    "message": "Deleted pricing rules successfully",
    "deleted": [
        6,
        19
    ],
    "failed": []
}

Last updated