This feature is in closed beta.Interested in this feature? Get in touch with your Customer Success Manager.
Pricing APIs
Pricing data are included only on request. You can opt-in viainclude_pricing=true in the request URL query.
You can also generate cost estimation for order sets given a wider set of ordering parameters, including but not limited to billing type, priority (STAT) and US State.
By default, all Pricing APIs assume the use of Junction platform lab accounts and so the Junction lab compendium pricing would apply. To estimate order sets when
using alternative lab accounts, you must explicitly pass the respective
lab_account_id to the API endpoints.
All pricing objects are estimates provided as is, and do not constitute a quote. The final charge can vary based on service conditions and order details.
Interpreting the pricing objects
A specified pricing object consists of a base price, and 0 or more additive modifiers. The simplest pricing consists of only the base price:Calculating a price
1
Start with base_amount_minor.
2
Select every modifier for which all conditions match.
Conditions are additive and conjunctive.For example, a modifier containing both
us_state and reflex applies only when the state matches and reflex testing occurs.When multiple independent modifiers match, add all of them.Junction guarantees that there is never an overlap in US State groups across all modifiers (
conditions.us_state.any_of).It is safe for you to simply match eligible modifiers by doing an inclusion check on
conditions.us_state.any_of and the rest of the relevant conditions.3
Add each matching delta_amount_minor to the base amount.
Prices in integer and closed ranges
A modifier delta can be an integer (a flat price) or a closed range (the minimum and maximum possible prices). In the example above:- The price in California or New York without reflex testing is $12.50.
- The price in California or New York with reflex testing is between $17.50 and $21.50.
- The price in another state with reflex testing is between $15.00 and $19.00.
Unspecified pricing
When Junction cannot provide a numeric price, the pricing object contains anunspecified field, instead of base_amount_minor and modifiers: