Skip to main content

Open Neurophysiology Environment

Coverage Status CI workflow DOI

The Open Neurophysiology Environment is a scheme for sharing neurophysiology data in a standardized manner. It is a Python API for searching and loading ONE-standardized data, stored either on a user's local machine or on a remote server.

Please Click here for the main documentation page. For a quick primer on the file naming convention we use, click here.

NB: The API and backend database are still under active development, for the best experience please regularly update the package by running pip install -U ONE-api.

Requirements

ONE runs on Python 3.10 or later, and is tested on the latest Ubuntu and Windows (3.10 and 3.14 only).

Installing

Installing the package via pip typically takes a few seconds. To install, run

pip install ONE-api

Set up

For using ONE with a local cache directory:

from one.api import One
one = One(cache_dir='/home/user/downloads/ONE/behavior_paper')

To use the default setup settings that connect you to the IBL public database:

from one.api import ONE
ONE.setup(silent=True)  # Will use default information
one = ONE()  # Prompts for your username, then your password

The public database is free to use but needs an account, which you can create at openalyx.internationalbrainlab.org/signup, either with an email address or through ORCiD. An ORCiD account has no password: leave the password prompt blank and paste the API token shown on the database's /me page instead. See installation and setup for details.

For setting up ONE for a given database e.g. internal IBL Alyx:

from one.api import ONE
one = ONE(base_url='https://alyx.internationalbrainlab.org')

Once you've setup the API for the first time, subsequent calls will use the same parameters:

from one.api import ONE
one = ONE()

To set up ONE for another database and make it the default:

from one.api import ONE
ONE.setup(base_url='https://test.alyx.internationalbrainlab.org', make_default=True)
one = ONE()  # Connected to https://test.alyx.internationalbrainlab.org

Using ONE

To search for sessions:

from one.api import ONE
one = ONE()
print(one.search_terms())  # A list of search keyword arguments

# Search session with wheel timestamps from January 2021 onward
eids = one.search(date_range=['2021-01-01',], dataset='wheel.timestamps')
['d3372b15-f696-4279-9be5-98f15783b5bb']

# Search for project sessions with two probes
eids = one.search(data=['probe00', 'probe01'], project='brainwide')

To load data:

from one.api import ONE
one = ONE()

# Load an ALF object
eid = 'a7540211-2c60-40b7-88c6-b081b2213b21'
wheel = one.load_object(eid, 'wheel')

# Load a specific dataset
eid = 'a7540211-2c60-40b7-88c6-b081b2213b21'
ts = one.load_dataset(eid, 'wheel.timestamps', collection='alf')

# Download, but not load, a dataset
filename = one.load_dataset(eid, 'wheel.timestamps', download_only=True)

To share data:

from one.api import One
one = One.setup()  # Enter the location of the ALF datasets when prompted

Further examples and tutorials can be found in the documentation.

Metadata

Release files for ONE-api 3.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ONE-api 3.6.2
File Size Uploaded Provenance Actions
one_api-3.6.2.tar.gz 1.0 MB Without provenance Details for one_api-3.6.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ONE-api 3.6.2
File Interpreter ABI Platform Actions
one_api-3.6.2-py3-none-any.whl Python 3 none any Details for one_api-3.6.2-py3-none-any.whl

Total release size: 2.1 MB

Release files / one_api-3.6.2.tar.gz

Download URL one_api-3.6.2.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
e11e37729d84a81f677d1766188d7672887386cc5171acfbcb967aef1ffb9dd9
BLAKE2b-256 checksum
How to use checksums
f1a3d78fd7cc570be2a0e3ca9a3887f93d8b2b4d4986673bff4c5568e75c0713
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / one_api-3.6.2-py3-none-any.whl

Download URL one_api-3.6.2-py3-none-any.whl
Size 1.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
53425b0098f83a9d6eb836e411a430c08b5aefb0ef5d982c7afabd8209368df8
BLAKE2b-256 checksum
How to use checksums
ce2ce0586d6861d4096613a327c6e0e7be9dc195ecc3898160fd5c5b3d77eb15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Security for ONE-api 3.6.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

3.6.2 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page