Open Neurophysiology Environment
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.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| one_api-3.6.1.tar.gz | 1.0 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| one_api-3.6.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.1 MB
Release files / one_api-3.6.1.tar.gz
| Download URL | one_api-3.6.1.tar.gz |
|---|---|
| Size | 1.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
38a647fe9cbf783c17b90ce5a1457592c08e54b48ae3015b11c542b7700cf276
|
|
BLAKE2b-256 checksum How to use checksums |
a66c4c686f9eede303716f36cc33f1fdb4d3607adb572a498c446a124d96987f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / one_api-3.6.1-py3-none-any.whl
| Download URL | one_api-3.6.1-py3-none-any.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d554e9ea1457b35f6c98a43b46ef86bbe813c0fc48ee600eaa1673aad992a38f
|
|
BLAKE2b-256 checksum How to use checksums |
a502d965f6ea63e6cec716c9e786781ead642bd685edd9c5548a3127a3f41609
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for ONE-api 3.6.1
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.