Alignment & variants

Sanger plate clone verdicts

Judge a whole plate of Sanger reads against one construct and return one row per clone: PASS, POINT_MUTATION, INDEL, VECTOR_ONLY (the insert is absent), WRONG_INSERT (the backbone matches and the insert does not), LOW_COVERAGE, or AMBIGUOUS. Reads are grouped into clones from their FASTA/FASTQ record names (facility conventions like PlateA_A01_pXY-1_M13F, pXY-1_T7-F, 2026-08-01_pXY_clone3_R), and every read's assignment is reported with a confidence so a grouping can be corrected rather than trusted. Each clone's reads are piled up in reference coordinates, so a difference one read reports where other covering reads read the reference is reported as the sequencing error it is, not as a mutation — and a position no read covered is never PASS. Every verdict cites the positions it rests on. Give insertStart/insertEnd to have clones judged over the insert alone, which is also what VECTOR_ONLY and WRONG_INSERT need. Give the reference as an annotated GenBank record and every difference also says what it does to the feature it lands in (synonymous, missense with its p. change, nonsense, frameshift), with each clone's worst one. Whatever was not read comes back as rereads: per unread stretch, the primer to sequence it with — one the map carries, a universal one whose site is on the construct, or a new one designed for it.

post/sanger_plate_verify

Request

  • Base URL: https://seqbench.com/api/v1
  • URL: https://seqbench.com/api/v1/sanger_plate_verify
  • Auth: none required

Request body

referencestring required

The intended construct: raw, FASTA, or a GenBank record — whose CDS features let each difference be placed in its gene, and whose primer_bind features are offered first for re-reading what was missed. Up to 20,000 bp.

readsstring required

All the plate's reads as FASTA or FASTQ (auto-detected). The record name is what the clone grouping is read from. Up to 384 reads / 400,000 total bases, and (reference length x total read bases) must stay under 200,000,000 — split a 96-clone plate across calls.

circularboolean

Treat the construct as a plasmid, so a read crossing its arbitrary linear start is aligned through the join instead of having its tail discarded.

insertStartinteger

1-based first base of the stretch that has to be right (the insert). With insertEnd, every clone is judged over this span alone — the only honest framing when one 900 bp read cannot cover a 6 kb plasmid — and VECTOR_ONLY/WRONG_INSERT become reachable. May be greater than insertEnd on a circular construct, meaning the span crosses the origin.

insertEndinteger

1-based last base of that stretch.

insertLabelstring

What to call it in the verdicts. Default "the insert".

grouping'auto' | 'one-clone' | 'per-read'

How reads become clones. "auto" parses the record names; "one-clone" treats every read as being of one clone (use when the names carry nothing); "per-read" judges each read on its own.

trimThresholdinteger

Phred threshold for trimming both ends of a read (BWA's rule). Only applies to FASTQ input, which is the only input that carries quality.

qualityOffset33 | 64

ASCII offset of the FASTQ quality string. 33 for anything modern, 64 for pre-1.8 Illumina.

Response

Tool ran successfully.

okunknown required
toolstring required

The tool slug that ran.

resultobject required

Tool-specific output object. Its shape depends on the tool — call GET /{tool} or see the docs for each tool's fields.

Example response

{
  "provenance": {
    "apiVersion": "1.1.0"
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.