Skip to main content

A client library for the FlyFlow API

Project description

Flyflow

Flyflow is a Python client library for interacting with the Flyflow API. It provides a simple and intuitive interface to manage agents, calls, and perform various operations related to the Flyflow platform.

Installation

You can install the Flyflow package using pip:

pip install flyflowclient

Usage

To use the Flyflow client library, you need to import the Flyflow class from the flyflow.client module:

from flyflowclient import Flyflow

client = Flyflow()

By default, the client will load the API key from the FLYFLOW_API_KEY environment variable. If you want to provide the API key explicitly, you can pass it as a parameter when creating the client instance:

client = Flyflow(api_key='your_api_key')

The default base URL for the Flyflow API is https://api.flyflow.dev/v1. If you need to use a different base URL, you can pass it as a parameter:

client = Flyflow(base_url='https://custom-api-url.com')

Agent Management

Upsert an Agent

agent = client.upsert_agent(
   name='Agent Name',
   system_prompt='System prompt',
   initial_message='Initial message',
   llm_model='gpt-3.5-turbo',
   voice_id='voice_id',
   webhook='https://webhook-url.com',
   tools=[],
   filler_words=True,
   actions=[],
   voicemail_number='+1234567890',
   chunking=True,
   endpointing=200,
   voice_optimization=2
)

The upsert_agent method will create a new agent if one with the specified name doesn't exist, or update an existing agent if one with the same name already exists.

Get an Agent

agent = client.get_agent(agent_id=agent['id'])

Delete an Agent

client.delete_agent(agent_id=agent['id'])

List Agents

agents = client.list_agents(limit=10)

Call Management

Create a Call

call = client.create_call(
    from_number='+1234567890',
    to_number='+9876543210',
    context='Call context'
)

Get a Call

call = client.get_call(call_id=call['id'])

Set Call Context

updated_call = client.set_call_context(
   call_id=call['id'],
   context='Updated call context'
)

List Calls

calls = client.list_calls(limit=10, agent_id=agent['id'])

Filler Words

Get Filler Words

filler_words = client.get_filler_words(text='Your text here')

For more detailed information about the available methods and their parameters, please refer to the Flyflow API documentation.

Publishing the Package

To publish the Flyflow package to PyPI, follow these steps:

  1. Make sure you have the latest version of setuptools and wheel installed:

    pip install --upgrade setuptools wheel
    
  2. Run the following command to build the package:

    python setup.py sdist bdist_wheel
    
  3. Install twine if you haven't already:

    pip install twine
    
  4. Upload the package to PyPI using twine:

    twine upload dist/*
    

    You will be prompted to enter your PyPI username and password.

  5. Once the upload is successful, your package will be available on PyPI, and users can install it using pip install flyflow.

License

This project is licensed under the MIT License. See the LICENSE file for more information.

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvement, please open an issue or submit a pull request on the GitHub repository.

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

flyflowclient-1.14.17.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

flyflowclient-1.14.17-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file flyflowclient-1.14.17.tar.gz.

File metadata

  • Download URL: flyflowclient-1.14.17.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.6

File hashes

Hashes for flyflowclient-1.14.17.tar.gz
Algorithm Hash digest
SHA256 2e6d42bb90a0782dbd566e5407e228ea217397d946966fb76f6cc40539339aac
MD5 8cb6e909eb911e64b8fb3af2f074682d
BLAKE2b-256 06680653116089af38ecfc87cb36625fe7bca8deee651c585fa5b83799bbcbef

See more details on using hashes here.

File details

Details for the file flyflowclient-1.14.17-py3-none-any.whl.

File metadata

File hashes

Hashes for flyflowclient-1.14.17-py3-none-any.whl
Algorithm Hash digest
SHA256 ed594d5c548e3367bab1355dc7728d445a35e002fba3daaedfb628bbf5e9d348
MD5 2e762e649f3bd109a3b8c33fea9fb5e7
BLAKE2b-256 3f6aff398afa6d8b0301d2dde971ad21b0ef43cc490288f2fa25879be5bf25b7

See more details on using hashes here.

Supported by

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