Skip to content

PickPCRPrimers

apiblocks.PickPCRPrimers

Designs primers for a PCR reaction using Primer3.

Parameters:
Name Type Description Example Default
dna DNA

Target DNA sequence to design primers for.

{
  "seq": "AGACGACCGA"
}
concentrations Optional[PCRConcentrations]

Concentrations of salts and dNTPs for accurate Tm estimations

{
  "monovalent_salts": 50.0,
  "divalent_salts": 1.5,
  "dntps": 0.6
}
{
  "monovalent_salts": 50.0,
  "divalent_salts": 1.5,
  "dntps": 0.6
}
targets List[Interval]

Target intervals for PCR. If more than one interval is given will search for targets that overlap at least one interval

[
  {
    "start": 30,
    "length": 5
  }
]
included_region Optional[Interval]

Sub-region of the sequence from which to pick primers. Considering the full seuqnce if not given

{
  "start": 10,
  "length": 100
}
null
primer_size Optional[Parameter3Range[int]]

Size of primers

{
  "min": 15,
  "optimal": 20,
  "max": 25
}
{
  "min": 18,
  "optimal": 20,
  "max": 27
}
product_size Optional[List[Parameter2Range]]

Acceptable range of PCR product size

[
  {
    "min": 100,
    "max": 150
  }
]
[
  {
    "min": 100,
    "max": 300
  }
]
primer_tm Optional[Parameter3Range[float]]

Primer melting temperature in degrees Celsius

{
  "min": 55.0,
  "optimal": 60.5,
  "max": 65.4
}
{
  "min": 57,
  "optimal": 60,
  "max": 63
}
primer_gc Optional[Parameter3Range[int]]

GC% content of the primer sequece

{
  "min": 40,
  "optimal": 50,
  "max": 60
}
{
  "min": 20,
  "optimal": 50,
  "max": 80
}

Returns:

Type Description
List[PrimerPair]

A list of primer pairs that fit the specified constraints.

Raises:

Type Description
Failed to run Primer3

If Primer3 raised an error during execution.

Examples:
$ curl 'https://api.apiblocks.dev/rpc' \
-H 'X-API-KEY: $APIBLOCKS_TOKEN' \
-H 'Content-Type: application/json' \
--data '{
    "id": "32dd3347-2e06-4adc-93a0-ee3ed2dbc2fb",
    "method": "apiblocks.PickPCRPrimers",
    "params": {
      "dna": {
        "seq": "AGACGACCGA"
      },
      "concentrations": {
        "monovalent_salts": 50.0,
        "divalent_salts": 1.5,
        "dntps": 0.6
      },
      "targets": [
        {
          "start": 30,
          "length": 5
        }
      ],
      "included_region": {
        "start": 10,
        "length": 100
      },
      "primer_size": {
        "min": 15,
        "optimal": 20,
        "max": 25
      },
      "product_size": [
        {
          "min": 100,
          "max": 150
        }
      ],
      "primer_tm": {
        "min": 55.0,
        "optimal": 60.5,
        "max": 65.4
      },
      "primer_gc": {
        "min": 40,
        "optimal": 50,
        "max": 60
      }
    }
  }'