Class: Api::V2::LabwareResource

Inherits:
BaseResource
  • Object
show all
Includes:
SharedBehaviour::Labware
Defined in:
app/resources/api/v2/labware_resource.rb

Overview

Note:

Access this resource via the /api/v2/labware/ endpoint.

Provides a JSON:API representation of Labware to access all labware objects, which includes plates and tubes. When creating Labware, do so via the PlateResource or TubeResource instead.

For more information about JSON:API, see the JSON:API Specifications or check out JSONAPI::Resources for Sequencescape's implementation.

Examples:

GET request for all Labware resources

GET /api/v2/labware/

GET request for a single Labware resource with ID 123

GET /api/v2/labware/123/

POST request to create a new Labware resource

POST /api/v2/labware/
{
  "data": {
    "type": "labware",
    "attributes": {
    },
    "relationships": {
    }
  }
}

Instance Method Summary collapse

Methods inherited from BaseResource

apply_includes, creatable_fields, default_includes, #fetchable_fields, inclusions, resolve_relationship_names_to_relations, updatable_fields

Instance Method Details

#labware_barcodeObject

Returns a hash containing different barcode types associated with the labware. @return [Hash] A hash with keys for each barcode type and their corresponding values.



46
47
48
49
50
51
52
# File 'app/resources/api/v2/labware_resource.rb', line 46

def labware_barcode
  {
    'ean13_barcode' => _model.try(:ean13_barcode),
    'machine_barcode' => _model.try(:machine_barcode),
    'human_barcode' => _model.try(:human_barcode)
  }
end