Endpoints / Marcas

POST

Crear marca

Crea una nueva marca dentro de la empresa indicada.

POST/brands

Caso de Uso

Se usa cuando la aplicación necesita registrar una marca para organizar el catálogo de productos. Al usarlo, el usuario obtiene la marca creada con su identificador, estado y fecha de registro.

Autenticación

Requiere token JWT en el header `Authorization: Bearer <token>`.

Parámetros de ruta

Este endpoint no recibe parámetros de ruta.

Body

mrcemidstringobligatorio

Identificador de la empresa a la que pertenecerá la marca.

mrcnombrestringobligatorio

Nombre de la marca.

Reglas de negocio

1

Solo permite crear marcas en la misma empresa del usuario autenticado.

2

La empresa del usuario autenticado debe estar activa.

3

El usuario autenticado debe estar activo.

4

El usuario autenticado debe tener rol jefe o empleado.

5

mrcemid y mrcnombre son obligatorios.

6

mrcnombre no puede repetirse dentro de la misma empresa.

7

La marca se crea con estado activo.

Errores esperados

401No autorizado

No se envió un token JWT válido o el token no contiene información válida del usuario.

500El id de empresa es requerido

No se envió mrcemid o se envió vacío.

500El nombre de marca es requerido

No se envió mrcnombre o se envió vacío.

500La empresa no existe

La empresa indicada en mrcemid o la empresa del usuario autenticado no fue encontrada.

500La empresa no está activa

La empresa asociada a la solicitud está inactiva.

500El usuario no existe

El usuario autenticado no fue encontrado dentro de su empresa.

500El usuario no pertenece a la empresa

El usuario autenticado no pertenece a la empresa indicada por su sesión.

500El usuario no puede acceder a otra empresa

mrcemid pertenece a una empresa distinta a la del usuario autenticado.

500El usuario no es jefe, empleado o administrador

El rol del usuario no está permitido para acceder al módulo de marcas.

500El usuario no es jefe o empleado

El usuario autenticado no tiene un rol permitido para crear marcas.

500El usuario no está activo

El usuario autenticado está inactivo y no puede usar el sistema.

500Ya existe una marca con ese nombre

Ya hay una marca registrada con el mismo mrcnombre dentro de la empresa.

500Error saving brand

Ocurrió un error interno al guardar la marca.

500Error finding brand by id

La marca fue creada, pero ocurrió un error al consultar sus datos para devolver la respuesta.

Notas de uso

1

Este endpoint no recibe parámetros de ruta.

2

Envía el body en formato JSON con el header Content-Type: application/json.

3

El nombre de marca debe ser único dentro de la empresa.

4

La comparación de nombres existentes se realiza ignorando mayúsculas, minúsculas y espacios extremos.

5

La respuesta devuelve los datos guardados de la marca creada.