Skip to content

sayari-analytics/sayari-python

Repository files navigation

Sayari-analytics Python Library

fern shield

The Sayari Python SDK provides convenient access to the Sayari API from applications written in Python.

Documentation

Please see our docs site for more info and or to get in touch with us.

Installation

Project Setup Guide

Before you begin using the Sayari API, it is essential to set up a Python virtual environment, install the required dependencies from requirements.txt, and configure the necessary environment variables using a .env file.

These steps ensure your environment is correctly isolated and properly configured for using the Sayari API.

1. Setup Python Virtual Environment

To keep your dependencies isolated, create and activate a Python virtual environment.

For macOS/Linux:

python3 -m venv venv
source venv/bin/activate

For Windows:

python -m venv venv
venv\Scripts\activate

This will create and activate a virtual environment in a folder named venv.

2. Install Dependencies from requirements.txt

Once your virtual environment is active, install the necessary dependencies from requirements.txt:

pip install -r requirements.txt

This will install all the required packages listed in the requirements.txt file.

3. Configure Environment Variables with .env

To securely store sensitive information like CLIENT_ID and CLIENT_SECRET, use a .env file.

Create a .env File

Create a file named .env in the root directory of your project and add the following content:

CLIENT_ID=your-client-id
CLIENT_SECRET=your-client-secret

Replace your-client-id and your-client-secret with the actual values provided by Sayari.

4. Deactivate the Virtual Environment

Once you're done with your development, you can deactivate the virtual environment:

deactivate

Usage

from sayari.client import Sayari

client = Sayari(
    client_id="YOUR_CLIENT_ID",
    client_secret="YOUR_CLIENT_SECRET",
)

Async Client

from sayari.client import AsyncSayari

client = AsyncSayari(
    client_id="YOUR_CLIENT_ID",
    client_secret="YOUR_CLIENT_SECRET",
)

Environment Variables

In your Python code, ensure you load the environment variables using python-dotenv:

from dotenv import load_dotenv
import os

# Load environment variables from .env file
load_dotenv()

# Access the variables
client_id = os.getenv('CLIENT_ID')
client_secret = os.getenv('CLIENT_SECRET')

if client_id is None or client_secret is None:
    raise ValueError("CLIENT_ID and CLIENT_SECRET must be set in the .env file or as environment variables.")

Using env_loader.py

Once authenticated, you can use the client object to interact with the Sayari API. The client is returned by the load_env_vars_and_authenticate function, which handles all environment setup and authentication.

client = load_env_vars_and_authenticate()
# Now, you can use 'client' to make API calls.

Troubleshooting

  • Missing CLIENT_ID or CLIENT_SECRET: Ensure that your .env file contains both CLIENT_ID and CLIENT_SECRET. If not present, the script will exit with an error message.

  • Python Version Error: If the script exits with the message "Python 3.9.x or higher is required", make sure you are running the correct version of Python.

OAuth

The Sayari client includes automatic OAuth access token retrieval, refreshing it as needed. Simply specify the client_id and client_secret (shown above) and your access token will be used for every authenticated request.

Beta Status

This SDK is in beta, and there may be breaking changes between versions without a major version update. Therefore, we recommend pinning the package version to a specific version. This way, you can install the same version each time without breaking changes.

About

Python SDK for interacting with the Sayari API.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 9

Languages