Skip to main content

A Python package to interact with the Unifier API.

Project description

Unifier

Unifier is a Python package that provides a simple interface to interact with the Unifier API, allowing for Point-In-Time and streaming data access.

Features

  • Query the Unifier API for data.
  • Retrieve data in JSON format.
  • Convert API responses into pandas DataFrames for easy data manipulation and analysis.
  • Efficiently replicate large datasets to local storage using rclone integration.

Installation

You can install the package via pip:

pip install unifier

To use the Data Replication feature, it is recommended to install rclone for better performance. If rclone is not available, the package will automatically fall back to a native Python implementation for downloads.

Usage

Here's a basic example of how to use the unifier package:

from unifier import unifier

# Set your user and token
unifier.user = 'your_username'
unifier.token = 'your_api_token'

# Query the API
response = unifier.query(name='your_dataset_name')

# Convert the response to a DataFrame
df = unifier.get_dataframe(name='your_dataset_name')

print(df.head())

# Get list asof_date available for a dataset
dates_df = unifier.get_asof_dates(name='dataset_name')
print(dates_df.head())

# Replicate a large dataset to a local folder
# Note: uses rclone if installed, otherwise uses native python download
unifier.replicate(
    name="large_dataset_name",
    target_location="./data/downloads",
    back_to="2023-01-01",    # Optional: fetch history back to this date
    up_to="2024-12-16",    # Optional: fetch history up to this date
    bandwidth_limit=20       # Optional: limit download speed to 20MB/s
)

Configuration

Before using the package, ensure you set your user and token attributes in the unifier class to authenticate with the API.

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

Contributing

Contributions are welcome! Please read the contributing guidelines for more information.

Support

For support, please contact support@exponential-tech.ai.

Acknowledgments

  • Thanks to the team at Exponential Tech for their support and contributions.

Project details


Download files

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

Source Distribution

unifier-0.1.18.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

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

unifier-0.1.18-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file unifier-0.1.18.tar.gz.

File metadata

  • Download URL: unifier-0.1.18.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for unifier-0.1.18.tar.gz
Algorithm Hash digest
SHA256 60ccf79430227ab505cd6af40ce6c8cd0bb9a0dfc9b7b2272a33b9c2942c43f8
MD5 10e33468c087a7a54ff4d0427e5b6f4f
BLAKE2b-256 9c2b1e85f8da4354586572fdef5b884d72f79f51a1e897ba421a5507efb26b89

See more details on using hashes here.

File details

Details for the file unifier-0.1.18-py3-none-any.whl.

File metadata

  • Download URL: unifier-0.1.18-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for unifier-0.1.18-py3-none-any.whl
Algorithm Hash digest
SHA256 41ac2ae6059e024cfa5499c76bcabf1258b1d014b7de4596cc8f05d55d4c0834
MD5 e0d10c2ec9ff9a25a2409e3d5b4ed20d
BLAKE2b-256 aa6369717f27f3e5ece708707ca2c7f2cf781724b5cd646be5f127db4f195e63

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