Skip to main content

Official python wrapper for the FURTHRmind rest api.

Project description

furthrmind

This package allows to easily interact with your FURTHRmind application in order to retrieve data or to write new data.

Install

pip install furthrmind

Basic usage

Create an instance of the furthrmind class and pass the url to your server, your api key. Optionally you can pass the project name or id of the project you would like to work with.

from furthrmind import Furthrmind
fm = FURTHRmind(host, api_key, project_name="my project")

In order to retrieve data, you have to import the corresponding collection class. You can get this class either from your furthrmind instance or by importing it.

Experiment = fm.Experiment
from furthrmind.collection import Experiment

In order to get one experiment you can call the get method of the Experiment class and pass the id of the experiment you would like to retrieve.

exp = fm.Experiment.get(exp_id)

or

exp = Experiment.get(exp_id)

is exactly the same, if the Experiment class was imported before.

In oreder to get all experiments of one project, call the get_all method. The method will return a list with instances of the Experiment class.

exp_list = Experiment.get_all()

The instance of the experiment class will contain all data that belong to your experiment. Additionally, the experiment object has some convenient method for: add_field, add_many_fields, remove_field, update_field_value, update_field_unit, add_file, remove_file, add_datatable.

To create a new experiment, you need to call the create() or create_many() method. Please consider the correct input arguments for each collection class. For experiments, the create method expects to pass the new exp name and the name or id of the group that it should belong to. If you want to add an experiment to a subgroup, you need to pass the id of this group. The create method will return an instance of the Experiment class, the create_many method will return a list with instances of the Experiment class

new_exp = Experiment.create("myexperiment2", group_name="My group"

After you created the new you might want to add some fields, files, and datatables to your experiment. This can be achieved with:

new_exp.add_field(field_name="My field namy", field_type="Numeric",
                  value=5, unit="cm")
new_exp.add_many_fields([
        {
            "name": "May field name,
            "field_type" ="Numeric",
            "value: 5, 
            "unit": "cm"
        },
        {
            "name": "May second field name,
            "field_type" ="Numeric",
            "value: 10, 
            "unit": "m"
        }
])
new_exp.add_file(my_file_path)
new_exp.add_datatable(name=my data table, columns=[
        {
            "name": "my 1st column"
            "type": "Numeric,
            "unit": "cm",
            "data": [1,2,3]
        },
        {
            "name": "my 2nd column"
            "type": "Numeric,
            "unit": "cm",
            "data": [4,5,6]
        },
])

A list of collections to work with can be found here:

  • Project
  • Group
  • Experiment
  • Sample
  • ResearchItem
  • Field
  • FieldData (the fields attached to an item: experiments, samples, or researchitems)
  • Unit
  • File
  • DataTable
  • Column
  • ComboBoxEntry (the entries within a list field)
  • Category

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

furthrmind-0.1b28.tar.gz (37.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

furthrmind-0.1b28-py3-none-any.whl (50.0 kB view details)

Uploaded Python 3

File details

Details for the file furthrmind-0.1b28.tar.gz.

File metadata

  • Download URL: furthrmind-0.1b28.tar.gz
  • Upload date:
  • Size: 37.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Linux/6.9.6-arch1-1

File hashes

Hashes for furthrmind-0.1b28.tar.gz
Algorithm Hash digest
SHA256 1490e5808996f00399a015d3855737d1078e82944c57eb0ab9372a54129e2bd7
MD5 e79ad77b4b872a9cc7daa0720a6d41d1
BLAKE2b-256 151b6d14c6a751d0e986feae5b6ed670540f24fc681fff22ece4875421a43149

See more details on using hashes here.

File details

Details for the file furthrmind-0.1b28-py3-none-any.whl.

File metadata

  • Download URL: furthrmind-0.1b28-py3-none-any.whl
  • Upload date:
  • Size: 50.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Linux/6.9.6-arch1-1

File hashes

Hashes for furthrmind-0.1b28-py3-none-any.whl
Algorithm Hash digest
SHA256 dacd222a0ffbb5a94d7deb12f74bf09c6325d95c81a56b99079f53632c92f23b
MD5 529a397d4ae0db52cde6b85d8553c04c
BLAKE2b-256 22f5e0fa0f1c4a889ccec4fb9e116ab602f896c7f5417d671d5fa0d54f3a2cbd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page