Conjunto de notas administrativas (con adjuntos e historial de cambios) asociado de forma
polimórfica a otro modelo. Sirve para dejar constancia y justificación de acciones sensibles;
hoy el único owner soportado es BalanceMovement (alias de ruta balance-movements),
normalmente para respaldar ajustes de saldo.
AdminNote con id 1) sobre el modelo indicado en la
ruta {modelType}/{modelId}/evidence, opcionalmente con un adjunto.id) o se edita una existente (con
id); cambiar el texto de una nota guarda una copia del texto anterior en previous_versions.Evidence, que queda enlazada en su relación
related.list (array de AdminNote)| Clave | Descripción |
|---|---|
id |
Identificador de la nota dentro de la evidencia. |
text |
Texto de la nota. |
author_id |
Cuenta que creó la nota. |
created_at / updated_at |
Fechas de la nota. |
attachments |
Lista de adjuntos ({url}). |
previous_versions |
Versiones anteriores del texto ({text, updated_at}). |
author |
Datos del autor añadidos en la respuesta (id, name, email). |
| Atributo | Tipo | Descripción |
|---|---|---|
id |
int |
|
owner_type |
string |
Clase del modelo al que pertenece la evidencia (relación polimórfica owner). |
owner_id |
int |
ID del modelo al que pertenece la evidencia. |
list |
Collection |
Colección de notas administrativas (AdminNote); ver la tabla de arriba. |
created_at |
datetime\|null |
Fecha de creación. |
updated_at |
datetime\|null |
Fecha de última modificación. |
allLogs |
ApiLog> |
Registros de auditoría de la API, incluidos los internos. |
logs |
ApiLog> |
Registros de auditoría de la API visibles. |
owner |
Model\|Eloquent |
Modelo dueño de la evidencia (por ahora siempre {@link BalanceMovement}). |
{
"id": 5,
"owner_type": "App\BalanceMovement",
"owner_id": 75868,
"list": [
{
"id": 1,
"text": "IVA y otras pruebas con documento 123-4321-00",
"created_at": "2025-07-15 18:43:25",
"updated_at": "2025-07-15 18:43:25",
"author_id": 1,
"attachments": [],
"previous_versions": [],
"author": {
"id": 1,
"name": "Simgulary",
"email": "superadmin@ondemand.io"
}
}
],
"created_at": "2025-07-15 18:40:35",
"updated_at": "2025-07-15 18:43:40"
}
Crear una evidencia
Crea una Evidence sobre el modelo {modelType}/{modelId} con una primera nota
(text) y, si se envía, un attachment. Si el owner es un BalanceMovement, éste
queda enlazado a la evidencia por su relación related.
| Método | URI | Cabeceras |
|---|---|---|
| POST | /companies/{companyId}/{modelType}/{modelId}/evidence |
Authorization |
{
"text": "required|string|max:512",
"attachment": "nullable|image|mimes:jpeg,png,bmp|max:8192"
}
| Código | HTTP | Cuándo ocurre |
|---|---|---|
ER409 |
409 | El movimiento de saldo ya tiene una evidencia asociada o no admite evidencias. |
{info} Soporta: Paginación Filters Carga dinámica
Listar evidencias de un modelo
Devuelve las Evidence asociadas al modelo {modelType}/{modelId} (por ejemplo
balance-movements/{id}), paginadas.
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/{modelType}/{modelId}/evidence |
Authorization |
{info} Soporta: Carga dinámica
Ver una evidencia
Devuelve la Evidence indicada con todas sus notas.
| Método | URI | Cabeceras |
|---|---|---|
| GET | /companies/{companyId}/evidence/{evidenceId} |
Authorization |
Añadir o editar una nota
Con id edita el texto de esa nota (guardando el texto anterior en previous_versions);
sin id agrega una nota nueva a la Evidence.
| Método | URI | Cabeceras |
|---|---|---|
| PATCH | /companies/{companyId}/evidence/{evidenceId} |
Authorization |
{
"id": "nullable|integer|min:1",
"text": "required|string|max:512"
}
| Código | HTTP | Cuándo ocurre |
|---|---|---|
ER422 |
422 | Se envió un id que no corresponde a ninguna nota de la evidencia. |
Eliminar una evidencia
Borra la Evidence indicada con todas sus notas.
| Método | URI | Cabeceras |
|---|---|---|
| DELETE | /companies/{companyId}/evidence/{evidenceId} |
Authorization |
Sube un attachment y lo agrega a la nota id de la Evidence indicada.
| Método | URI | Cabeceras |
|---|---|---|
| POST | /companies/{companyId}/evidence/{evidenceId}/add-attachment |
Authorization |
{
"id": "required|integer|min:1",
"attachment": "required|image|mimes:jpeg,png,bmp|max:8192"
}
| Código | HTTP | Cuándo ocurre |
|---|---|---|
ER422 |
422 | No existe una nota con ese id en la evidencia. |
allLogs HasMany ApiLoglogs HasMany ApiLogowner BelongsTo BalanceMovement