Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: EPFL GETprime Primers API
description: GETprime is an EPFL-operated public web service from the Gene Expression Core Facility (GECF) that returns validated, genome-wide qPCR primer pairs. It is one of the few institution-operated, publicly documented and unauthenticated APIs EPFL runs outside its news and events estate. EPFL publishes no OpenAPI for it; this document is derived from the published API documentation at https://getprime.epfl.ch/api_documentation and from a live, successful POST executed on 2026-08-19. Note that the documentation shows a JSON request body, but only application/x-www-form-urlencoded was observed to succeed against the live service; a JSON body returned HTTP 500.
version: 1.0.0
contact:
name: EPFL Gene Expression Core Facility (GECF)
url: https://www.epfl.ch/research/facilities/gene-expression-core-facility/
servers:
- url: https://getprime.epfl.ch
description: EPFL GETprime, canonical host
security: []
tags:
- name: Primers
paths:
/primers/search:
post:
tags:
- Primers
operationId: searchPrimers
summary: Search validated qPCR primer pairs by gene identifier
description: Returns the ranked primer pairs GETprime holds for the supplied gene identifier(s), for one organism and one Ensembl release. Verified live on 2026-08-19 with ensembl_version=81, identifiers=mdm1, organism_id=5, limit=2, format=json -> HTTP 200, JSON array.
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
required:
- identifiers
- organism_id
- ensembl_version
properties:
identifiers:
type: string
description: Gene identifier or name, e.g. mdm1.
organism_id:
type: integer
description: GETprime organism id, e.g. 5 for Homo sapiens.
ensembl_version:
type: integer
description: Ensembl release the primers were designed against, e.g. 81.
limit:
type: integer
description: Maximum number of primer pairs to return. The documentation states a ceiling of 1000.
maximum: 1000
format:
type: string
description: Response format.
enum:
- json
responses:
'200':
description: Ranked primer pairs.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Primer'
'500':
description: Internal server error. Observed when the request body is sent as application/json rather than form-encoded.
components:
schemas:
Primer:
type: object
description: One primer pair record, field set observed in the live 2026-08-19 response.
properties:
id:
type: integer
gene_id:
type: string
gene_name:
type: string
transcript_id:
type: string
transcript_ids:
type: string
nber_transcripts:
type: integer
nber_known_transcripts:
type: integer
amplicon_length:
type: integer
warning_ids:
type: string
chr:
type: string
fwd_start:
type: integer
fwd_stop:
type: integer
fwd_strand:
type: boolean
fwd_type_def_ids:
type: string
fwd_seq:
type: string
fwd_tm:
type: integer
rev_start:
type: integer
rev_stop:
type: integer
rev_strand:
type: boolean
rev_type_def_ids:
type: string
rev_seq:
type: string
rev_tm:
type: integer
organism_id:
type: integer
transcript_specific:
type: integer
rank:
type: integer
fwd_nber_snps:
type: integer
rev_nber_snps:
type: integer
downstream_nber_snps:
type: integer
upstream_nber_snps:
type: integer
fwd_nber_snps_nr:
type: integer
rev_nber_snps_nr:
type: integer
upstream_nber_snps_nr:
type: integer
downstream_nber_snps_nr:
type: integer
mapping:
type:
- string
- 'null'
fwd_exon_regions:
type: string
rev_exon_regions:
type: string
protein_coding:
type: boolean
nber_snps:
type:
- string
- 'null'
organism_name:
type: string
ensembl_version:
type: integer
novel:
type: boolean
x-operator: institution
x-provenance:
generated: '2026-08-19'
method: derived
source: https://getprime.epfl.ch/api_documentation (published EPFL documentation) + live POST to https://getprime.epfl.ch/primers/search on 2026-08-19 returning HTTP 200
operator_basis: getprime.epfl.ch is under EPFL's own registrable domain epfl.ch and is run by an EPFL core facility