BrAPI V2

BrAPI V2

Overview

BrAPI V2, released on March 11, 2020, represents a significant update to the API, introducing new features, improvements, and enhancements over previous versions. This version likely includes refinements based on feedback from the user community and advancements in technology and standards.

In EBS, we built custom V2 endpoints in accordance with BrAPI standards. It features a comprehensive web service layer that provides access to records stored in the Core Breeding (CB) database. These endpoints are designed to be utilized in other systems such as PhenoApps - Field Book application and the Query Breeding Management Systems (QBMS) package for Bioflow.

Endpoint

Lead Dev

Field Book

BioFlow

Endpoint

Lead Dev

Field Book

BioFlow

1

GET /programs

CB

2

GET /studies

CB

3

GET /studies/:id

CB

4

GET /trials

CB

5

GET /locations

BA

6

GET /traits V2.1

CB

7

GET /observations V2.1

CB

8

GET /observationunits

CB

9

GET /observationlevels

CB

10

GET /variables V2.1

CB

11

POST /observations

CB

12

PUT /observations

CB

13

GET /observations/table

BA

14

POST /images V2.1*

CB-BA

15

PUT /images/{imageDbId}/imagecontent V2.1*

CB-BA

16

POST /search/observationunits V2.1 under development

CB

 

17

GET /germplasm

BA

18

POST /search/germplasm V2.1

CB

19

GET /pedigree V2.1

CB

Tech Stack

  • Node.js 16.19.1

  • Restify 8.6.1

    image-20240415-050023.png
  • DB: PostgreSQL 14.3

*under development

Data Mapping

It's essential to review and align the terminologies used in EBS and BrAPI to ensure compatibility. Here's a more detailed breakdown of the process:

  1. Identifying Terminology Differences

  2. Reviewing BrAPI Endpoints

    • Each BrAPI endpoint returns a response containing various fields representing different aspects of plant breeding data. Our team needs to review the documentation for each BrAPI endpoint to understand the structure and meaning of the response fields.

  3. Meeting with the Design Team

    • To align the BrAPI responses with the EBS data model, the dev team meets with the design team responsible for defining the database schema and data model. This collaborative effort ensures that the terminology used in the BrAPI responses is consistent with the terminology used in our data model.

  4. Defining Database Counterparts

    • During these meetings, we define the database counterparts for each response field in the BrAPI endpoints. This involves mapping each response field to the corresponding database table, column, or entity in EBS.

  5. Addressing Data Mapping Challenges

    • In some cases, there may be challenges in mapping BrAPI response fields to our data model. These challenges could arise due to differences in data granularity, normalization, or representation. This is where we define the MVI and default temporary values as agreed with the design team

  6. Documenting Mapping Decisions

    • It's crucial to document the mapping decisions made during these meetings. This documentation should include details such as the mapping of BrAPI response fields to database counterparts, any transformations or conversions required, and any issues or challenges encountered during the process.

  7. Iterative Review Process

    • The process of aligning BrAPI responses with the EBS data model may involve multiple iterations and reviews. Our team continually refines and adjusts the mappings based on feedback from the design team and any changes or updates to the BrAPI specification in every sprint.

OAS Documentation