OpenQAOpenQA
Configuration

SaaS Configuration

Configure your application for OpenQA to test. Just 3 fields to get started!

Quick Setup (3 Lines)

The minimum configuration requires just name, description, and URL:

bash
curl -X POST http://localhost:3000/api/saas-config/quick \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My SaaS App",
    "description": "E-commerce platform with user auth, product catalog, and checkout",
    "url": "https://my-app.com"
  }'

💡 Pro tip: The more detailed your description, the better tests OpenQA will generate. Include features, tech stack, and known problem areas.

Full Configuration

For more control, use the full configuration endpoint:

bash
curl -X POST http://localhost:3000/api/saas-config \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My E-commerce App",
    "description": "Online store with user accounts, product catalog, shopping cart, and Stripe checkout. Built with Next.js and PostgreSQL.",
    "url": "https://my-store.com",
    "repoUrl": "https://github.com/myorg/my-store",
    "directives": [
      "Focus on the checkout flow - it has had bugs before",
      "Test with both logged-in and guest users",
      "Check that discount codes work correctly",
      "Verify email notifications are sent"
    ],
    "auth": {
      "type": "session",
      "credentials": {
        "username": "test@example.com",
        "password": "testpass"
      }
    }
  }'

Configuration Fields

FieldRequiredDescription
name✅ YesYour application name
description✅ YesDetailed description of what your app does
url✅ YesURL where your app is running
repoUrlOptionalGitHub/GitLab repository URL for code analysis
directivesOptionalArray of custom instructions for the agent
authOptionalAuthentication configuration

Writing Good Descriptions

A good description helps OpenQA understand your app better:

❌ Bad Description

text
"An e-commerce website"

✅ Good Description

text
"E-commerce platform built with Next.js and Stripe. Features include:
- User registration and login with email/password
- Product catalog with search and filters
- Shopping cart with persistent storage
- Checkout with Stripe payment processing
- Order history and tracking
- Admin dashboard for inventory management

Known issues: The cart sometimes loses items on page refresh.
Tech stack: Next.js 14, PostgreSQL, Prisma, Stripe, NextAuth.js"

Get Current Configuration

bash
curl http://localhost:3000/api/saas-config

# Response:
{
  "name": "My E-commerce App",
  "description": "...",
  "url": "https://my-store.com",
  "repoUrl": "https://github.com/myorg/my-store",
  "directives": ["..."],
  "auth": { "type": "session" }
}

Update Configuration

You can update individual fields:

bash
# Update URL
curl -X PATCH http://localhost:3000/api/saas-config \
  -H "Content-Type: application/json" \
  -d '{"url": "https://staging.my-store.com"}'

# Add a directive
curl -X POST http://localhost:3000/api/saas-config/directive \
  -H "Content-Type: application/json" \
  -d '{"directive": "Pay special attention to the new refund feature"}'

Next Steps