Class: Api::V2::CustomMetadatumCollectionResource

Inherits:
BaseResource
  • Object
show all
Defined in:
app/resources/api/v2/custom_metadatum_collection_resource.rb

Overview

Note:

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

Provides a JSON:API representation of CustomMetadatumCollection, which represents a collection of metadata associated with a specific asset (such as Labware).

This resource allows clients to store, retrieve, and manage metadata associated with a specific asset.

For more information about JSON:API see the JSON:API Specifications or look at the JSONAPI::Resources package for Sequencescape's implementation of the JSON:API standard.

Examples:

Creating a CustomMetadatumCollection via a POST request

POST /api/v2/custom_metadatum_collections/
{
  "data": {
      "type": "custom_metadatum_collections",
      "attributes": {
          "user_id": 1,
          "asset_id": 1,
          "metadata": {
              "key": "a value againnnn"
          }
      },
      "relationships": {}
  }
}

Updating a specific CustomMetadatumCollection via a PATCH request

PATCH /api/v2/custom_metadatum_collections/123
{
  "data": {
      "id": 6,
      "type": "custom_metadatum_collections",
      "attributes": {
          "metadata": {
              "key1": "value3"
          }
      }
  }
}

Retrieving a specific CustomMetadatumCollection by ID

GET /api/v2/custom_metadatum_collections/123

Retrieving all CustomMetadatumCollections

GET /api/v2/custom_metadatum_collections/

Instance Attribute Summary collapse

Method Summary

Methods inherited from BaseResource

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

Instance Attribute Details

#asset_idInteger

TODO:

deprecate; use the user relationship instead

Note:

This field is required.

Note:

This attribute is write_once; this attribute cannot be updated.

Returns The ID of the labware asset that this metadata collection corresponds to.

Returns:

  • (Integer)

    The ID of the labware asset that this metadata collection corresponds to.



75
# File 'app/resources/api/v2/custom_metadatum_collection_resource.rb', line 75

attribute :asset_id, write_once: true

#metadataHash

Returns A key-value store of metadata entries associated with this collection.

Returns:

  • (Hash)

    A key-value store of metadata entries associated with this collection.



79
# File 'app/resources/api/v2/custom_metadatum_collection_resource.rb', line 79

attribute :metadata

#user_idInteger

TODO:

deprecate; use the user relationship instead

Note:

This field is required.

Note:

This attribute is write_once; this attribute cannot be updated.

Returns The ID of the user who created this collection.

Returns:

  • (Integer)

    The ID of the user who created this collection.



68
# File 'app/resources/api/v2/custom_metadatum_collection_resource.rb', line 68

attribute :user_id, write_once: true

#uuidString (readonly)

Note:

This identifier is automatically assigned upon creation and cannot be modified.

Returns The UUID of the collection. This uniquely identifies the metadata collection.

Returns:

  • (String)

    The UUID of the collection. This uniquely identifies the metadata collection.



61
# File 'app/resources/api/v2/custom_metadatum_collection_resource.rb', line 61

attribute :uuid, readonly: true