Docs

Docs / Data Feed / Pricing rules

For Data Feed stores
Endpoint · List pricing rules

GET/pricing-rules

Your pricing rules, in the order they are checked: for each product, the first enabled rule that matches it sets its price.

Needs Pricing rules: ReadBase URL https://backend.fflmonkey.com/api/v1Counts 1 toward 120 a minute

Fields

None. Needs Pricing rules: Read, a permission of Data Feed stores.

Your pricing rules, the ones on your Pricing screen, first checked first. For each product, the first enabled rule that matches it sets its price, and no other rule is applied; a product no rule matches is priced at cost plus your default margin, if one is set. How rules and restrictions work together: Rules and restrictions.

Each rule

FieldMeaning
idThe rule's id, which GET, PATCH and DELETE /pricing-rules/{id} take.
nameThe rule's name, as your Pricing screen shows it.
markup_percentagePercent added to the base, a string with two decimals such as "22.00", or null for none.
markup_value_fixedDollars added after the percentage, a string with two decimals, or null for none.
apply_markup_price_toThe base: cost, the distributor's cost; msrp; map_then_cost, MAP when it is above cost, otherwise cost; or map_then_msrp, MAP when it is above MSRP or there is no MSRP, otherwise MSRP. An offer missing the base it names is marked up from its cost.
apply_only_when_has_maptrue: the rule skips a product whose offer has no MAP above its cost.
apply_only_when_has_msrptrue: the rule skips a product whose offer has no MSRP.
enforce_map_floortrue never prices below MAP, false may, null follows your store's setting.
categoriesCategory slugs from GET /categories. A category takes in the ones below it. Empty: any.
manufacturersBrand slugs from GET /manufacturers. Empty: any.
product_classesProduct class slugs from GET /product-classes. Empty: any.
distributorsDistributor slugs, as a product's sourced_from names them. Empty: any.
upcsUPCs. Empty: any.
from_priceThe lowest distributor cost the rule applies to, two decimals, or null for no lower bound.
to_priceThe highest distributor cost it applies to, or null for no upper bound.
sort_orderIts place: lower is checked first, and on a tie the older rule. Change it with POST /pricing-rules/reorder.
disabledtrue: the rule is kept, and never applied.

A rule matches a product when every condition it has matches, and a condition matches when any one of its values does. Money is a string with two decimals.

A condition that reads "(deleted)"

A category, brand or product class deleted since the rule was saved is shown as "(deleted)", which is never a slug. The rule still holds it, and matches nothing through it. Sending "(deleted)" back is refused, so to change such a rule, leave that condition out of the PATCH (the rule keeps what it holds) or send the slugs you mean.

Returns

  • 200Every rule, in data, in the order they are checked.

This endpoint can also answer 401 invalid_api_key, 403 license_not_active, 403 product_not_included, 403 insufficient_scope and 429 rate_limited.

Example

FFL Monkey Data Feed API, version 1. Questions: Support in your FFL Monkey account, or [email protected].