experiments
Estimate experiment cost
Calculates the estimated cost for an experiment without creating it. Useful for previewing costs before submission.
Request Body
Accepts an experiment_spec matching the creation endpoint format:
{
"experiment_spec": {
"experiment_type": "screening",
"method": "bli",
"target_id": "019a03da-b87f-7e15-8b02-cef171c9871d",
"sequences": {
"seq1": "MKTL...",
"seq2": "EVQL..."
},
"n_replicates": 3
}
}
Response
Returns a detailed cost breakdown including:
- pricing_version: The pricing rules applied (e.g., "v1_2026-01-20")
- assay: Per-experiment-type costs with base and replicate pricing
- materials: Target material costs (for binding experiments)
- total_cents: Sum of all costs in USD cents
Complete Estimate Response
When the target has self-service pricing:
{
"breakdown": {
"pricing_version": "v1_2026-01-20",
"assay": { "name": "screening", "base_cents": 14900, "replicate_addon_cents": 5800, "subtotal_cents": 103500 },
"materials": { "target": { "name": "Human PD-L1", "target_catalog_id": "019a03da-b87f-7e15-8b02-cef171c9871d" }, "price_per_sequence_cents": 500, "subtotal_cents": 2500 },
"total_cents": 106000
},
"incomplete": null,
"warnings": []
}
Incomplete Estimate Response
When the target lacks self-service pricing (e.g., custom proteins), you'll receive an incomplete estimate with assay costs but materials_unavailable:
{
"breakdown": null,
"incomplete": {
"pricing_version": "v1_2026-01-20",
"assay": { "name": "screening", "base_cents": 14900, "replicate_addon_cents": 5800, "subtotal_cents": 103500 },
"materials_unavailable": {
"target": { "name": "This target", "target_catalog_id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" },
"reason": "This target is not yet onboarded to self-service pricing. You'll receive a quote with full price information."
}
},
"warnings": []
}
Use GET /targets?selfservice_only=true to list targets with complete pricing.
Notes
- All prices exclude VAT; taxes calculated at invoicing based on jurisdiction
- Requires authentication with experiment read permission
- Does not create an experiment
- Pricing is based on the current date (not a future experiment date)
- Targets without self-service pricing return incomplete estimates (not errors)
- Experiments created before pricing v1 (2026-01-20) cannot be estimated
post/api/v1/experiments/cost-estimate
Request
- Base URLhttps://devs.adaptyvbio.com
- URLhttps://devs.adaptyvbio.com/api/v1/experiments/cost-estimate
- AuthHTTP bearer
Request body
Example request
{
"experiment_spec": {
"antigen_concentrations": [
1000,
316.2,
100,
31.6,
0
],
"n_replicates": 3,
"target_id": "019a03da-b87f-7e15-8b02-cef171c9871d"
}
}Response
Cost estimate calculated
Example response
{
"breakdown": {
"assay": {
"experiment_type": "screening",
"n_replicates": 3,
"replicate_price_cents": 2900,
"sequence_count": 5,
"subtotal_cents": 103500,
"unit_price_cents": 14900
},
"materials": {
"price_per_sequence_cents": 500,
"sequence_count": 5,
"subtotal_cents": 2500,
"target": {
"name": "Human PD-L1",
"target_catalog_id": "019a03da-b87f-7e15-8b02-cef171c9871d"
}
},
"total_cents": 106000
},
"incomplete": {
"assay": {
"experiment_type": "screening",
"n_replicates": 3,
"replicate_price_cents": 2900,
"sequence_count": 5,
"subtotal_cents": 103500,
"unit_price_cents": 14900
},
"materials_unavailable": {
"reason": "Human PD-L1 is not yet onboarded to self-service pricing. You'll receive a quote with full price information.",
"target": {
"name": "Human PD-L1",
"target_catalog_id": "019a03da-b87f-7e15-8b02-cef171c9871d"
}
}
}
}Changes
No recorded changes to this operation across all 1 revision of this API.