Skip to main content

Vexa Client Python

PyPI version License: MIT Python 3.7+

🚀 Build Meeting Assistants in Hours, Not Months

A Python client library for Vexa - the privacy-first, open-source API for real-time meeting transcription. Build powerful meeting assistants with just a few lines of code.

repo https://github.com/Vexa-ai/vexa

discord community https://discord.com/invite/Ga9duGkVz9

✨ Features

  • 🤖 Meeting Bots: Send bots to automatically join Google Meet, (Zoom, Teams coming soon)
  • ⚡ Real-time: Get transcripts as meetings happen, not after
  • 🌍 109 Languages: Real-time transcription and translation across all of them
  • 🧠 Auto Language Detection: No language setup needed - Vexa automatically detects what's being spoken
  • 🔄 Real-time Translation: Choose any target language for instant translation instead of transcription
  • 🔔 Webhook Automation: Get notified instantly when meetings end for seamless post-meeting workflows
  • 🔒 Privacy-First: Open-source alternative to recall.ai - your data stays under your control
  • 🚀 Rapid Development: Build complex meeting apps in hours
  • 🎯 Simple API: Clean abstractions that make building on top a joy

🛠️ What You Can Build

Transform your ideas into reality with Vexa's powerful API:

  • Meeting Assistant Apps: Like Otter.ai, Fireflies.ai, Fathom
  • CRM Integrations: Auto-populate meeting notes in Salesforce, HubSpot
  • Compliance Tools: Automatically record and transcribe important business calls
  • Language Learning: Real-time translation for international meetings
  • Accessibility Tools: Live captions for hearing-impaired participants
  • Analytics Dashboards: Extract insights from meeting conversations

📋 API Operations Overview

🎯 User Operations

These are the primary operations for API users who want to integrate Vexa's transcription capabilities into their applications. This includes bot management, accessing transcripts, and configuring webhooks.

🔧 Admin Operations (Self-hosting only)

These operations are exclusively for users who self-host Vexa and need to manage user accounts, create API tokens, and perform administrative tasks. Most API users will not need these operations.

🚀 Get Started in 5 Minutes

1. Get Your API Key

Get your API key in 3 clicks at www.vexa.ai - no waiting, no approval process!

2. Install the Client

pip install vexa-client

🎯 Quick Start Example

from vexa_client import VexaClient

# Initialize the client
client = VexaClient(
    api_key="your-api-key-here",            # For user operations
)

meeting_id = "abc-def-ghi"

# Request a bot to join a meeting
meeting = client.request_bot(
    platform="google_meet",
    native_meeting_id=meeting_id,
    bot_name="Vexa Bot",
    language="en"  # Optional - auto-detected if not provided
)

# get meeting transcript during or after the meeting

# Option 1: Get latest meeting by platform + native_meeting_id (backward compatible)
transcript = client.get_transcript("google_meet", "abc-defg-hij")

# Option 2: Get specific meeting by database ID (new feature)
transcript = client.get_transcript("google_meet", "abc-defg-hij", meeting_id=123)


# switch to translation to a different language instead of transcription during meeting
client.update_bot_config(
    platform="google_meet",
    native_meeting_id=meeting_id,
    language='es'
)


#stop the bot
client.stop_bot(platform="google_meet",native_meeting_id=meeting_id)

# delete meeting transcription for vexa
client.delete_meeting(
    platform="google_meet",
    native_meeting_id=meeting_id,
)

🌍 Language Detection & Translation Workflows

Auto Language Detection

# No language specified - Vexa automatically detects what's being spoken
meeting = client.request_bot(
    platform="google_meet",
    native_meeting_id="abc-def-ghi",
    bot_name="Smart Bot"
    # language not specified - auto-detection enabled!
)

📝 Transcription in Specific Language

# Transcribe in specific language (if you know what will be spoken)
meeting = client.request_bot(
    platform="google_meet",
    native_meeting_id="abc-def-ghi",
    language="es",  # Spanish transcription
    task="transcribe"
)

🔄 Real-time Translation

# Translate everything to English in real-time
meeting = client.request_bot(
    platform="google_meet",
    native_meeting_id="abc-def-ghi",
    language="pt",  # Target language (Portuguese)
    task="translate"  # Translation mode
)

🔔 Webhook Automation for Post-Meeting Workflows

Set up webhooks to get notified instantly when meetings end - perfect for automated post-meeting processing:

# Set up webhook to receive meeting completion notifications
client.set_webhook_url("https://your-server.com/webhook/vexa")

📚 Full API Reference https://github.com/Vexa-ai/vexa/blob/main/docs/user_api_guide.md

User Profile

set_webhook_url(webhook_url)

Set the webhook URL for the authenticated user.

Admin Operations (Self-hosting Only)

⚠️ Note: Admin operations are only available for self-hosted Vexa deployments. Most API users will only need the User Operations above.

create_user(email, name=None, image_url=None, max_concurrent_bots=None)

Create a new user (Self-hosting admin only).

list_users(skip=0, limit=100)

List users in the system (Self-hosting admin only).

update_user(user_id, name=None, image_url=None, max_concurrent_bots=None)

Update user information (Self-hosting admin only).

get_user_by_email(email)

Retrieve a user by email address (Self-hosting admin only).

create_token(user_id)

Generate a new API token for a user (Self-hosting admin only).

📋 Requirements

  • Python 3.7+
  • requests >= 2.25.0

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🌟 Join the Vexa Community

🚀 Help us reach 1000 stars! Current: GitHub stars → Goal: 1000 ⭐️

Join hundreds of developers building the future of meeting intelligence:

💬 What Developers Are Saying

"Built our meeting assistant MVP in 3 hours with Vexa. The API is incredibly clean and the real-time transcription is spot-on." - Open Source Developer

"Finally, a privacy-first alternative to proprietary solutions. Perfect for our enterprise needs." - Enterprise Developer

"The 109-language support is a game changer for our international team meetings." - Startup Founder

🆘 Support

For support and questions:


Ready to build the future of meeting intelligence? Get started with Vexa today!

Metadata

Release files for vexa-client 0.5.4

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

Source distribution (sdist)

Source distribution for vexa-client 0.5.4
File Size Uploaded Provenance Actions
vexa_client-0.5.4.tar.gz 14.0 kB Without provenance Details for vexa_client-0.5.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for vexa-client 0.5.4
File Interpreter ABI Platform Actions
vexa_client-0.5.4-py3-none-any.whl Python 3 none any Details for vexa_client-0.5.4-py3-none-any.whl

Total release size: 25.2 kB

Release files / vexa_client-0.5.4.tar.gz

Download URL vexa_client-0.5.4.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a770c60892e1d1e545dfdb9382327b37bd7147bcc380056e2a678c925805ea74
BLAKE2b-256 checksum
How to use checksums
83ce072a73023043ff3fd2323752b5a6a13c8c4db25f806ca53c72df421b946f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.9

Release files / vexa_client-0.5.4-py3-none-any.whl

Download URL vexa_client-0.5.4-py3-none-any.whl
Size 11.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e97192bbcc4a64ffa1666f4631f76bea9acdbc71dc60eb3206a7378fa4abd3a1
BLAKE2b-256 checksum
How to use checksums
8413a70b54d9180d82f5f0947cd77a38a494e6c53e8e672a1418801322628cbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.9

Security for vexa-client 0.5.4

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.

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