Estimate cost for a protein library screen
client.Protein.LibraryScreen.EstimateCost(ctx, body) (*ProteinLibraryScreenEstimateCostResponse, error)
POST/compute/v1/protein/library-screen/estimate-cost
Estimate the cost of a protein library screen without creating any resource or consuming GPU.
Parameters
Returns
Estimate cost for a protein library screen
package main
import (
"context"
"fmt"
"github.com/boltz-bio/boltz-api-go"
"github.com/boltz-bio/boltz-api-go/option"
)
func main() {
client := boltzapi.NewClient(
option.WithAPIKey("My API Key"),
)
response, err := client.Protein.LibraryScreen.EstimateCost(context.TODO(), boltzapi.ProteinLibraryScreenEstimateCostParams{
Proteins: []boltzapi.ProteinLibraryScreenEstimateCostParamsProtein{boltzapi.ProteinLibraryScreenEstimateCostParamsProtein{
Entities: []boltzapi.ProteinLibraryScreenEstimateCostParamsProteinEntityUnion{boltzapi.ProteinLibraryScreenEstimateCostParamsProteinEntityUnion{
OfProteinLibraryScreenEstimateCostsProteinEntityProteinEntity: &boltzapi.ProteinLibraryScreenEstimateCostParamsProteinEntityProteinEntity{
ChainIDs: []string{"string"},
Value: "value",
},
}},
}},
Target: boltzapi.ProteinLibraryScreenEstimateCostParamsTargetUnion{
OfProteinLibraryScreenEstimateCostsTargetStructureTemplateTarget: &boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTarget{
ChainSelection: map[string]boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetChainSelectionUnion{
"A": boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetChainSelectionUnion{
OfProteinLibraryScreenEstimateCostsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpec: &boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpec{
CropResidues: boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesUnion{
OfIntArray: []int64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12},
},
},
},
},
Structure: boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetStructureUnion{
OfProteinLibraryScreenEstimateCostsTargetStructureTemplateTargetStructureURLSource: &boltzapi.ProteinLibraryScreenEstimateCostParamsTargetStructureTemplateTargetStructureURLSource{
URL: "https://example.com",
},
},
},
},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Breakdown)
}
{
"breakdown": {
"application": "structure_and_binding",
"cost_per_unit_usd": "0.0500",
"num_units": 1
},
"disclaimer": "This is an estimate only and may differ from your actual charges. Final billing is based on exact token counts computed at run time. For large library screens, the estimate is extrapolated from a sample and may be less accurate for highly variable inputs.",
"estimated_cost_usd": "0.0500"
}Returns Examples
{
"breakdown": {
"application": "structure_and_binding",
"cost_per_unit_usd": "0.0500",
"num_units": 1
},
"disclaimer": "This is an estimate only and may differ from your actual charges. Final billing is based on exact token counts computed at run time. For large library screens, the estimate is extrapolated from a sample and may be less accurate for highly variable inputs.",
"estimated_cost_usd": "0.0500"
}