Proyectos
Los proyectos son la unidad de organización de nivel superior en QA Hub. Todos los casos de prueba, ejecuciones y resultados pertenecen a un proyecto.
Endpoints
| Método | Ruta | Scope | Descripción |
|---|---|---|---|
GET | /api/v1/projects | read | Listar todos los proyectos |
POST | /api/v1/projects | write | Crear un proyecto |
Listar proyectos
GET /api/v1/projects
Authorization: Bearer qh_...
Respuesta
{
"data": [
{
"id": "clxyz123",
"name": "Mobile Banking App",
"description": "iOS and Android banking application",
"active": true,
"environments": ["staging", "production"],
"test_cases_count": 148,
"created_at": "2026-01-15T10:00:00.000Z",
"updated_at": "2026-05-01T08:30:00.000Z"
}
]
}
Crear un proyecto
POST /api/v1/projects
Authorization: Bearer qh_...
Content-Type: application/json
{
"name": "Payment Service",
"description": "Core payment processing API",
"environments": ["dev", "staging", "production"]
}
Campos requeridos
| Campo | Tipo | Descripción |
|---|---|---|
name | string | Nombre del proyecto |
Campos opcionales
| Campo | Tipo | Descripción |
|---|---|---|
description | string | Descripción breve |
environments | string[] | Etiquetas de entorno usadas en las ejecuciones de prueba |
Respuesta — 201 Created
{
"data": {
"id": "clnew456",
"name": "Payment Service",
"description": "Core payment processing API",
"active": false,
"environments": ["dev", "staging", "production"],
"test_cases_count": 0,
"created_at": "2026-05-13T12:00:00.000Z",
"updated_at": "2026-05-13T12:00:00.000Z"
}
}
Esquema del objeto proyecto
{
"id": "string (cuid)",
"name": "string",
"description": "string | null",
"active": "boolean",
"environments": "string[]",
"test_cases_count": "integer",
"created_at": "ISO 8601 datetime",
"updated_at": "ISO 8601 datetime"
}
Proyecto activo
Solo un proyecto tiene active: true al mismo tiempo. El proyecto activo es el contexto por defecto para el Dashboard y la generación con IA en la interfaz de QA Hub. Activar un proyecto via la API no está soportado todavía — usa el selector de proyecto en la interfaz.