QA Verification API
Comprehensive test automation system with AI-driven scenario generation, Playwright E2E execution in Docker sandboxes, and multi-environment validation.
Test Suites
List Suites
http
GET /api/v1/projects/{project_id}/qa-suites
Authorization: Bearer <token>Create Suite
http
POST /api/v1/projects/{project_id}/qa-suites
Authorization: Bearer <token>
Content-Type: application/json
{
"name": "User Registration Tests",
"description": "E2E tests for user registration flow"
}Get Suite (with scenarios)
http
GET /api/v1/qa-suites/{suite_id}
Authorization: Bearer <token>Update / Delete
http
PATCH /api/v1/qa-suites/{suite_id}
DELETE /api/v1/qa-suites/{suite_id}
Authorization: Bearer <token>Lifecycle Transitions
Move suite through draft → ready → deprecated.
http
PATCH /api/v1/qa-suites/{suite_id}/lifecycle
Authorization: Bearer <token>
Content-Type: application/json
{ "target_state": "ready" }Sync from Dev Assets
Import test scenarios from development testing artifacts.
http
POST /api/v1/qa-suites/{suite_id}/sync-assets
Authorization: Bearer <token>Scenarios
AI-Generate Scenarios
Generate test scenario previews using AI.
http
POST /api/v1/qa-suites/{suite_id}/scenarios/generate
Authorization: Bearer <token>Create Scenario
http
POST /api/v1/qa-suites/{suite_id}/scenarios
Authorization: Bearer <token>
Content-Type: application/json
{
"title": "Successful registration with valid email",
"description": "User fills form and submits",
"test_type": "e2e",
"priority": "high",
"steps": [
{ "action": "navigate", "target": "/register" },
{ "action": "fill", "target": "#email", "value": "test@example.com" },
{ "action": "click", "target": "button[type=submit]" }
]
}Scenario Lifecycle
http
PATCH /api/v1/qa-scenarios/{scenario_id}/lifecycleRecord Result
http
POST /api/v1/qa-scenarios/{scenario_id}/resultScenario Versions
http
GET /api/v1/qa-scenarios/{scenario_id}/versions
POST /api/v1/qa-scenarios/{scenario_id}/versions/{version_id}/promoteTest Runs
Create & Start Test Run
http
POST /api/v1/projects/{project_id}/qa-runs
Authorization: Bearer <token>
Content-Type: application/json
{
"suite_id": "uuid",
"env_profile_id": "uuid",
"scenarios": ["uuid", "uuid"]
}Get Run / Progress
http
GET /api/v1/qa-runs/{run_id}
GET /api/v1/qa-runs/{run_id}/progress
Authorization: Bearer <token>Cancel Run
http
POST /api/v1/qa-runs/{run_id}/cancel
Authorization: Bearer <token>QA Executions (Unified)
Unified execution that can run multiple test runs across suites.
http
POST /api/v1/projects/{project_id}/qa-executions
GET /api/v1/projects/{project_id}/qa-executions
GET /api/v1/qa-executions/{execution_id}
GET /api/v1/qa-executions/{execution_id}/progress
GET /api/v1/qa-executions/{execution_id}/scenarios
GET /api/v1/qa-executions/{execution_id}/runs
POST /api/v1/qa-executions/{execution_id}/start
POST /api/v1/qa-executions/{execution_id}/cancel
POST /api/v1/qa-executions/{execution_id}/resume
Authorization: Bearer <token>Dashboard
http
GET /api/v1/projects/{project_id}/qa-dashboard
Authorization: Bearer <token>Returns test run statistics, pass rates, and trend data.
Environment Profiles
Define target environments for test execution (dev, staging, production).
http
GET /api/v1/projects/{project_id}/qa-env-profiles
POST /api/v1/projects/{project_id}/qa-env-profiles
GET /api/v1/qa-env-profiles/{profile_id}
PUT /api/v1/qa-env-profiles/{profile_id}
DELETE /api/v1/qa-env-profiles/{profile_id}
POST /api/v1/qa-env-profiles/{profile_id}/test-connection
Authorization: Bearer <token>Test Personas
Define user personas for testing (e.g., admin user, guest user).
http
GET /api/v1/projects/{project_id}/qa-personas
POST /api/v1/projects/{project_id}/qa-personas
GET /api/v1/qa-personas/{persona_id}
PUT /api/v1/qa-personas/{persona_id}
DELETE /api/v1/qa-personas/{persona_id}
Authorization: Bearer <token>Persona Bindings
Bind personas to environment profiles.
http
GET /api/v1/qa-env-profiles/{profile_id}/personas
PUT /api/v1/qa-env-profiles/{profile_id}/personas
Authorization: Bearer <token>Baselines
Snapshot a set of test scenarios as a baseline for regression testing.
http
POST /api/v1/projects/{project_id}/qa-baselines
GET /api/v1/projects/{project_id}/qa-baselines
GET /api/v1/qa-baselines/{baseline_id}
PATCH /api/v1/qa-baselines/{baseline_id}
POST /api/v1/qa-baselines/{baseline_id}/execute
Authorization: Bearer <token>Run Artifacts
Screenshots
http
GET /api/v1/qa-scenario-runs/{run_id}/screenshots
Authorization: Bearer <token>Full Run Detail
http
GET /api/v1/qa-scenario-runs/{run_id}/detail
Authorization: Bearer <token>Returns the generated Playwright script, execution log, and evidence data.