Quick Start Guide 
Get started with Open Ticket AI in 5 minutes.
Prerequisites 
- Python 3.13+
- Access to an OTOBO, Znuny, or OTRS instance
- API token or credentials for your ticket system
Installation 
Install Core Package 
bash
# Using uv (recommended)
uv pip install open-ticket-ai
# Or using pip
pip install open-ticket-aiInstall Plugins 
bash
# Install OTOBO/Znuny plugin
uv pip install otai-otobo-znuny
# Install HuggingFace plugin (for ML)
uv pip install otai-hf-local
# Or install the complete bundle
uv pip install open-ticket-ai[all]First Configuration 
1. Set Environment Variables 
bash
export OTOBO_BASE_URL="https://your-ticket-system.com"
export OTOBO_API_TOKEN="your-api-token"2. Create Configuration File 
Create config.yml:
yaml
# Load plugins
plugins:
  - name: otobo_znuny
    config:
      base_url: "${OTOBO_BASE_URL}"
      api_token: "${OTOBO_API_TOKEN}"
# Configure pipeline
orchestrator:
  pipelines:
    - name: classify_tickets
      run_every_milli_seconds: 60000  # Run every 60 seconds
      pipes:
        # Fetch open tickets
        - pipe_name: fetch_tickets
          search:
            StateType: "Open"
            limit: 10
        
        # Log tickets (for testing)
        - pipe_name: log_ticketsRunning Your First Pipeline 
bash
# Run the pipeline
open-ticket-ai run --config config.yml
# Or with verbose logging
open-ticket-ai run --config config.yml --log-level DEBUGYou should see output like:
[INFO] Loading configuration from config.yml
[INFO] Initializing plugins...
[INFO] Starting orchestrator...
[INFO] Running pipeline: classify_tickets
[INFO] Fetched 10 tickets
[INFO] Pipeline completed successfullyNext Steps 
Add Classification 
Update your config to classify tickets:
yaml
orchestrator:
  pipelines:
    - name: classify_tickets
      run_every_milli_seconds: 60000
      pipes:
        - pipe_name: fetch_tickets
          search:
            StateType: "Open"
            limit: 10
        
        # Add ML classification
        - pipe_name: classify_queue
          model_name: "bert-base-uncased"
        
        # Update tickets
        - pipe_name: update_ticket
          fields:
            QueueID: "{{ context.predicted_queue_id }}"Explore Examples 
Check out complete examples:
bash
# List available examples
ls docs/raw_en_docs/config_examples/
# Try the queue classification example
cp docs/raw_en_docs/config_examples/queue_classification.yml config.yml
open-ticket-ai run --config config.ymlLearn More 
- Installation Guide - Detailed installation instructions
- First Pipeline Tutorial - Step-by-step pipeline creation
- Configuration Reference - Complete config docs
- Available Plugins - Plugin documentation
Common Issues 
Connection Error 
Error: Failed to connect to ticket systemSolution: Verify OTOBO_BASE_URL is correct and accessible.
Authentication Error 
Error: 401 UnauthorizedSolution: Check that OTOBO_API_TOKEN is valid and has required permissions.
Plugin Not Found 
Error: Plugin 'otobo_znuny' not foundSolution: Install the plugin:
bash
uv pip install otai-otobo-znunyGetting Help 
What's Next? 
Now that you have Open Ticket AI running:
- Customize Configuration: Adapt to your workflow
- Add More Pipes: Enhance functionality
- Monitor Performance: Track classification accuracy
- Scale Up: Process more tickets
- Contribute: Share your experience and improvements