Respuestas
El envelope común a todos los endpoints: errorCode, errorMsg y data.
Todas las respuestas comparten el mismo envelope JSON: errorCode (espeja el
código de estado HTTP), errorMsg (vacío si todo fue bien) y data
con el resultado de la operación:
{
"errorCode": 200,
"errorMsg": "",
"data": {
"url": "https://clientes.aferapp.com/mi-empresa/?loginToken=aBc123XyZ"
}
}
En endpoints de creación, data contiene directamente el identificador cifrado
del elemento creado. Cuando una búsqueda no produce resultados, data puede ser
false.
La contraparte de cada documento
Todos los listados de documentos y todos los obtener devuelven, junto al documento, quién está al otro lado: el cliente en venta y el proveedor en compra. Y lo devuelven con la misma forma en todas partes, para que el código que pinta un cliente valga igual viniendo de una factura, de un albarán o de un pendiente de cobro.
Llega con sus vías de contacto —email, telefono, movil— y, en el
caso del cliente, con sus consentimientos RGPD por canal. Así no hace falta una segunda
llamada para decidir si a esa persona se le puede escribir después de haber leído sus documentos.
"cliente": {
"clienteId": "dEf456…",
"nombre_fiscal": "FERRER INTERIORS SL",
"nombre_comercial": "Ferrer Interiors",
"cif": "B07123456",
"email": "admin@ferrerinteriors.com",
"telefono": "971123456",
"movil": "600123456",
"rgpd": {
"comunicaciones_email": true,
"comunicaciones_whatsapp": false,
"comunicaciones_sms": null,
"tratamiento_imagenes": null
}
}
Cada permiso tiene tres estados, no dos:
trueconsentido |
Dio su permiso expreso para ese canal. |
falsedenegado |
Dijo que no. No le escribas por ahí. |
nullsin respuesta |
Nunca se le ha preguntado. No es un "sí" ni un "no": decide tú qué hacer con tu base legal, pero no lo trates como consentimiento. |
Los proveedores llegan con contacto pero sin bloque rgpd: los
consentimientos se registran sobre clientes. Si tu cuenta todavía no tiene los campos de RGPD
configurados, el bloque simplemente no aparece — nunca llega inventado.
La API no envía nada: te da el dato y el permiso para que tu integración decida. Los envíos que salen de Afer siguen su propio circuito.