Companies
Companies
Section titled “Companies”Gestión de empresas multi-tenant. Creación, consulta y actualización de empresas.
POST /api/companies/v1
Section titled “POST /api/companies/v1”Crear empresa
Crea una nueva empresa, seedea los 4 roles predefinidos (owner, admin, manager, employee) y asigna al usuario como owner.
Request Body (requerido ✅)
Section titled “Request Body (requerido ✅)”{ "name": "Mi Empresa", "slug": "mi-empresa", "plan": "FREE", "createdByUserId": "00000000-0000-0000-0000-000000000000" }Respuestas
Section titled “Respuestas”Empresa creada
{ "id": "00000000-0000-0000-0000-000000000000", "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE", "createdAt": "2024-01-15T10:00:00Z", "updatedAt": "2024-01-15T10:00:00Z" }Slug ya en uso
{ "error": "Mensaje descriptivo del error", "timestamp": "2024-01-15T10:00:00Z" }GET /api/companies/v1
Section titled “GET /api/companies/v1”Listar todas las empresas
Lista de empresas
Respuestas
Section titled “Respuestas”Lista de empresas
{ "id": "00000000-0000-0000-0000-000000000000", "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE", "createdAt": "2024-01-15T10:00:00Z", "updatedAt": "2024-01-15T10:00:00Z" }GET /api/companies/v1/{id}
Section titled “GET /api/companies/v1/{id}”Obtener empresa por UUID
Parámetros
Section titled “Parámetros”| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string | ✅ |
Respuestas
Section titled “Respuestas”Datos de la empresa
{ "id": "00000000-0000-0000-0000-000000000000", "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE", "createdAt": "2024-01-15T10:00:00Z", "updatedAt": "2024-01-15T10:00:00Z" }Empresa no encontrada
{ "error": "Mensaje descriptivo del error", "timestamp": "2024-01-15T10:00:00Z" }PATCH /api/companies/v1/{id}
Section titled “PATCH /api/companies/v1/{id}”Actualizar empresa
Parámetros
Section titled “Parámetros”| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string | ✅ |
Request Body (requerido ✅)
Section titled “Request Body (requerido ✅)”{ "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE" }Respuestas
Section titled “Respuestas”Empresa actualizada
{ "id": "00000000-0000-0000-0000-000000000000", "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE", "createdAt": "2024-01-15T10:00:00Z", "updatedAt": "2024-01-15T10:00:00Z" }DELETE /api/companies/v1/{id}
Section titled “DELETE /api/companies/v1/{id}”Eliminar empresa (soft delete)
Parámetros
Section titled “Parámetros”| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string | ✅ |
Respuestas
Section titled “Respuestas”Empresa eliminada exitosamente
GET /api/companies/v1/slug/{slug}
Section titled “GET /api/companies/v1/slug/{slug}”Obtener empresa por slug
Datos de la empresa
Parámetros
Section titled “Parámetros”| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
slug | string | ✅ |
Respuestas
Section titled “Respuestas”Datos de la empresa
{ "id": "00000000-0000-0000-0000-000000000000", "name": "name", "slug": "slug", "plan": "FREE", "status": "ACTIVE", "createdAt": "2024-01-15T10:00:00Z", "updatedAt": "2024-01-15T10:00:00Z" }Schemas
Section titled “Schemas”CreateCompanyRequest
Section titled “CreateCompanyRequest”| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string ej: “Mi Empresa” | ✅ | |
slug | string ej: “mi-empresa” | ✅ | |
plan | CompanyPlan | ❌ | |
createdByUserId | string (uuid) | ✅ | Usuario que crea la empresa (será owner) |
CompanyResponse
Section titled “CompanyResponse”| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
id | string (uuid) | ❌ | |
name | string | ❌ | |
slug | string | ❌ | |
plan | CompanyPlan | ❌ | |
status | CompanyStatus | ❌ | |
createdAt | string (date-time) | ❌ | |
updatedAt | string (date-time) | ❌ |
ErrorResponse
Section titled “ErrorResponse”| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
error | string ej: “Mensaje descriptivo del error” | ❌ | |
timestamp | string (date-time) | ❌ |
UpdateCompanyRequest
Section titled “UpdateCompanyRequest”| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | ❌ | |
slug | string | ❌ | |
plan | CompanyPlan | ❌ | |
status | CompanyStatus | ❌ |