A voice-enabled ShipBob integration for Omi that allows users to manage inventory, create Warehouse Receiving Orders (WROs), and track orders using natural language.
- Inventory Management: Check stock levels and fulfillable quantities
- Product Search: Find products by name
- WRO Creation: Create Warehouse Receiving Orders to send inventory to ShipBob
- WRO Management: View and cancel WROs
- Order Tracking: View recent orders and their status
- Fulfillment Centers: List available warehouse locations
- A ShipBob account with API access
- ShipBob OAuth2 credentials (Client ID and Client Secret)
- Redis instance (for production token storage)
Create a .env file with the following variables:
# ShipBob OAuth2 Credentials
SHIPBOB_CLIENT_ID=your_client_id
SHIPBOB_CLIENT_SECRET=your_client_secret
SHIPBOB_REDIRECT_URI=https://your-domain.com/auth/shipbob/callback
# ShipBob API URLs (Production)
SHIPBOB_AUTH_URL=https://auth.shipbob.com/connect/authorize
SHIPBOB_TOKEN_URL=https://auth.shipbob.com/connect/token
SHIPBOB_API_URL=https://api.shipbob.com
# For Sandbox/Testing, use:
# SHIPBOB_AUTH_URL=https://authstage.shipbob.com/connect/authorize
# SHIPBOB_TOKEN_URL=https://authstage.shipbob.com/connect/token
# SHIPBOB_API_URL=https://sandbox-api.shipbob.com
# Redis (for production)
REDIS_URL=redis://localhost:6379# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the server
python main.py- Create a new project on Railway
- Add a Redis service
- Set the environment variables
- Deploy from this directory
When creating the Omi app, use these URLs (replace YOUR_DOMAIN with your deployed URL):
| Setting | URL |
|---|---|
| App Home URL | https://YOUR_DOMAIN/?uid={{uid}} |
| Setup Completed URL | https://YOUR_DOMAIN/setup/shipbob?uid={{uid}} |
| Auth URL | https://YOUR_DOMAIN/auth/shipbob?uid={{uid}} |
| Chat Tools URL | https://YOUR_DOMAIN/.well-known/omi-tools.json |
- get_inventory - Check inventory levels
- get_products - List and search products
- create_wro - Create Warehouse Receiving Orders
- get_wros - View WROs and their status
- cancel_wro - Cancel a pending WRO
- get_orders - View recent orders
- get_fulfillment_centers - List fulfillment centers
- "Check inventory for Blue T-Shirt"
- "How much stock do we have?"
- "Create a WRO for 100 units of Widget Pro"
- "Show me my WROs"
- "Cancel WRO 12345"
- "Show me my recent orders"
- "List all fulfillment centers"
MIT