API Elementos
Apariencia
API Elementos de Lazarvs
Esta documentación describe los endpoints disponibles en la API de Lazarvs para acceder a datos de elementos, verificar la existencia de clientes y objetos de contrato, así como insertarlos.
Índice
Información General
- Título: API_Elementos
- Descripción: API para operaciones de elementos en Lazarvs.
- URL Base del Servidor: {{URL de Lazarvs}}/elementos
Autenticación
Para acceder a los endpoints, se requiere un token JWT que debe incluirse en el encabezado Authorization con el prefijo "Bearer".
Ejemplo de Encabezado:
Authorization: Bearer <tu_token_jwt>
Endpoints de la API
1. /Cliente (Verificar Existencia)
- Descripción
- Verifica la existencia de un cliente mediante su documento.
- Método
- GET
- URL
- /Cliente
- Parámetros de Consulta
- Documentopersonafisica (string, opcional): Documento de persona física.
- Documentopersonajuridica (string, opcional): Documento de persona jurídica.
- Códigos de Respuesta
- 200 OK: La solicitud fue exitosa, devuelve un JSON con la estructura de Cliente_getOutput.
- 404 Not Found: Cliente no encontrado.
- 401 Unauthorized: Token JWT inválido o ausente.
- 500 Internal Server Error: Error interno del servidor.
- Ejemplo de Respuesta Exitosa
{ "SDTCliente":
{
"Nombre": "Corporate YYY",
"DocumentoNumero": "219999990099",
"TipoPersona": "J"
},
"Mensajes":
[
{
"Id": "MSG001",
"Type": 1,
"Description": "Cliente encontrado"
}
]
}
2. /Cliente (Insertar)
- Descripción
- Inserta un nuevo cliente en el sistema.
- Método
- POST
- URL
- /Cliente
- Cuerpo de la Solicitud (JSON)
- SDTCliente (object): Datos del cliente a insertar.
- Cuerpo de solicitud vacío
{
"SDTCliente": {
"Codigo": "<string>",
"Nombre": "<string>",
"NombreFantasia": "<string>",
"NumeroFidelizacion": "<string>",
"Direccion": "<string>",
"Ciudad": "<string>",
"CodigoPostal": "<string>",
"EstadoProvincia": "<string>",
"Pais": "<string>",
"Telefono": "<string>",
"Celular": "<string>",
"Email": "<string>",
"EmailFacturacion": "<string>",
"DatosFacturacion": "<string>",
"TipoCliente": "<string>",
"TipoPersona": "<string>",
"Territorio": "<string>",
"DocumentoTipo": "<string>",
"DocumentoNumero": "<string>",
"Nacimiento": "<date>",
"TrabajoNombre": "<string>",
"TrabajoDireccion": "<string>",
"TrabajoTelefono": "<string>",
"Localizacion": "<string>",
"IdentificacionFiscal": "<string>",
"Contacto": "<string>",
"LimiteCredito": "<double>",
"Moneda": "<string>",
"Condicion": "<string>",
"PresentacionDia": "<string>",
"PagoDia": "<string>",
"PagoContacto": "<string>",
"PagoTelefono": "<string>",
"PagoEmail": "<string>",
"PagoEmailSeEnvia": "<boolean>",
"PagoEmailEnvioDia": "<integer>",
"Situacion": "<string>",
"Estado": "<string>"
}
}
- Ejemplo de Cuerpo de Solicitud
{
"SDTCliente": {
"Nombre": "Corporate YYY",
"NombreFantasia": "YYY",
"NumeroFidelizacion": "",
"Direccion": "Calle y Número",
"Ciudad": "Ciudad X",
"CodigoPostal": "12345",
"EstadoProvincia": "Montevideo",
"Pais": "UY",
"Telefono": "12345678",
"Celular": "012345678",
"Email": "aa@bb.com",
"EmailFacturacion": "cc@bb.com",
"DatosFacturacion": "N/A",
"TipoCliente": "CN",
"TipoPersona": "J",
"Territorio": "01",
"DocumentoTipo": "N",
"DocumentoNumero": "219999990099",
"Nacimiento": "1950-07-28",
"TrabajoNombre": "",
"TrabajoDireccion": "",
"TrabajoTelefono": "",
"Localizacion": "",
"IdentificacionFiscal": "",
"Contacto": "Persona X",
"LimiteCredito": "10000",
"Moneda": "USD",
"Condicion": "",
"PresentacionDia": "",
"PagoDia": "",
"PagoContacto": "",
"PagoTelefono": "",
"PagoEmail": "",
"PagoEmailSeEnvia": "true",
"PagoEmailEnvioDia": "0",
"Situacion": "A",
"Estado": "A"
}
}
- Códigos de Respuesta
- 200 OK: Cliente insertado exitosamente, devuelve un array de mensajes con la estructura de Mensajes.
- 404 Not Found: Error en la inserción.
- 400 Bad Request: Datos del cliente inválidos o faltantes.
- 401 Unauthorized: Token JWT inválido o ausente.
- 500 Internal Server Error: Error interno del servidor.
- Ejemplo de Respuesta Exitosa
[
{
"Id": "MSG002",
"Type": 1,
"Description": "Cliente insertado exitosamente"
}
]
3. /ObjetoContrato (Verificar Existencia)
- Descripción
- Verifica la existencia de un objeto de contrato mediante datos de cliente y objeto.
- Método
- GET
- URL
- /ObjetoContrato
- Parámetros de Consulta
- Documpersonafisica (string, opcional): Documento de persona física.
- Documpersonajuridica (string, opcional): Documento de persona jurídica.
- Modelo (string, opcional): Modelo del objeto.
- Serie (string, opcional): Serie del objeto.
- Códigos de Respuesta
- 200 OK: La solicitud fue exitosa, devuelve un JSON con la estructura de ObjetoContrato_getOutput.
- 404 Not Found: Objeto de contrato no encontrado.
- 401 Unauthorized: Token JWT inválido o ausente.
- 500 Internal Server Error: Error interno del servidor.
- Ejemplo de Respuesta Exitosa
{
"SDTObjetoContrato": {
"Cliente": "00001",
"Codigo": "123456",
"Nombre": "Nombre Apellido"
},
"Mensajes": [
{
"Id": "MSG003",
"Type": 1,
"Description": "Objeto de contrato encontrado"
}
]
}
4. /ObjetoContrato (Insertar)
- Descripción
- Inserta un nuevo objeto de contrato en el sistema.
- Método
- POST
- URL
- /ObjetoContrato
- Cuerpo de la Solicitud (JSON)
- SDTObjetoContrato (object, opcional): Datos del objeto de contrato a insertar. Ver Esquema ObjetoContratoInsertarInput.
- Cuerpo de Solicitud vacío
{
"SDTObjetoContrato": {
"Cliente": "<string>",
"Codigo": "<string>",
"Nombre": "<string>",
"FechaInicio": "<date>",
"FechaFin": "<date>",
"Tipo": "<string>",
"DocumentoTipo": "<string>",
"DocumentoNumero": "<string>",
"FechaNacimiento": "<date>",
"Telefono": "<string>",
"Email": "<string>",
"EmailFacturacion": "<string>",
"Localizacion": "<string>",
"IdentificacionFiscal": "<string>",
"Contacto": "<string>",
"Modelo": "<string>",
"Serie": "<string>",
"Ubicacion": "<string>",
"Responsable": "<string>",
"Plan": "<string>",
"Poliza": "<string>",
"DatoAdicional": "<string>",
"Estado": "<string>"
}
}
- Ejemplo de Cuerpo de Solicitud
{
"SDTObjetoContrato": {
"Cliente": "00001",
"Codigo": "123456",
"Nombre": "Nombre Apellido",
"FechaInicio": "2024-01-01",
"FechaFin": "",
"Tipo": "F",
"DocumentoTipo": "C",
"DocumentoNumero": "1234567890",
"FechaNacimiento": "2050-06-30",
"Telefono": "12345678",
"Email": "aa@bb.com",
"EmailFacturacion": "cc@bb.com",
"Localizacion": "",
"IdentificacionFiscal": "",
"Contacto": "Nombre y apellido",
"Modelo": "",
"Serie": "",
"Ubicacion": "",
"Responsable": "",
"Plan": "Plan X",
"Poliza": "Póliza Y",
"DatoAdicional": "Otra información",
"Estado": "A"
}
}
- Códigos de Respuesta
- 200 OK: Objeto de contrato insertado exitosamente, devuelve un array de mensajes con la estructura de Mensajes.
- 404 Not Found: Error en la inserción.
- 400 Bad Request: Datos del objeto de contrato inválidos o faltantes.
- 401 Unauthorized: Token JWT inválido o ausente.
- 500 Internal Server Error: Error interno del servidor.
- Ejemplo de Respuesta Exitosa
[
{
"Id": "MSG004",
"Type": 1,
"Description": "Objeto de contrato insertado exitosamente"
}
]
5. /Proyecto (Verificar Existencia)
- Descripción
- Verifica la existencia de un proyecto mediante su código.
- Método
- GET
- URL
- /Proyecto
- Parámetros de Consulta
Proyecto (string, opcional): Código del proyecto.
- Códigos de Respuesta
- 200 OK: La solicitud fue exitosa, devuelve un JSON con la estructura de ProyectoOutput.
- 404 Not Found: Proyecto no encontrado.
- 401 Unauthorized: Token JWT inválido o ausente.
- 500 Internal Server Error: Error interno del servidor.
- Ejemplo de Respuesta Exitosa
{
"SDTProyectoLista": [
{
"PryCod": "PRJ001",
"PryNom": "Proyecto Alpha",
"Compania": "Empresa X"
}
],
"Mensajes": [
{
"Id": "MSG005",
"Type": 1,
"Description": "Proyecto encontrado"
}
]
}
Esquemas de Respuesta
Esquema Cliente_getOutput
- SDTCliente (object, opcional): Información detallada del cliente. Ver Esquema ClienteInsertarInput.
- Mensajes (array, opcional): Mensajes relacionados con la operación. Ver Mensajes.
Esquema ObjetoContrato_getOutput
- SDTObjetoContrato (object, opcional): Información detallada del objeto de contrato. Ver Esquema ObjetoContratoInsertarInput.
- Mensajes (array, opcional): Mensajes relacionados con la operación. Ver Mensajes.
Esquema ProyectoOutput
- SDTProyectoLista (array, opcional): Lista de proyectos.
* PryCod (string): Código del proyecto. * PryNom (string): Nombre del proyecto. * Compania (string): Compañía asociada.
- Mensajes (array, opcional): Mensajes relacionados con la operación. Ver Mensajes.
Esquema Mensajes
- Id (string): ID del mensaje.
- Type (integer, format: int32): Tipo de mensaje (1: Informativo, 2: Advertencia, 3: Error).
- Description (string): Descripción del mensaje.
Esquema ClienteInsertarInput
- SDTCliente (object, opcional): Información detallada del cliente a insertar.
* Codigo (string, opcional): Código de Cliente. * Nombre (string, opcional): Nombre de Cliente. * NombreFantasia (string, opcional): Nombre Fantasía. * NumeroFidelizacion (string, opcional): Número de Fidelización. * Direccion (string, opcional): Dirección de Cliente. * Ciudad (string, opcional): Ciudad del Cliente. * CodigoPostal (string, opcional): Código Postal. * EstadoProvincia (string, opcional): Estado/Provincia. * Pais (string, opcional): País (ejemplo: "UY"). * Telefono (string, opcional): Teléfono del Cliente. * Celular (string, opcional): Celular. * Email (string, opcional): E-mail del Cliente. * EmailFacturacion (string, opcional): E-mail facturación. * DatosFacturacion (string, opcional): Datos Facturación. * TipoCliente (string, opcional): Tipo de Cliente (ejemplo: "CN"). * TipoPersona (string, opcional): Tipo de Persona (ejemplo: "J" para jurídica, "F" para física). * Territorio (string, opcional): Código de Territorio. * DocumentoTipo (string, opcional): Tipo de Documento (ejemplo: "N"). * DocumentoNumero (string, opcional): Número de Documento. * Nacimiento (string, format: date, opcional): Fecha de Nacimiento (formato: YYYY-MM-DD). * TrabajoNombre (string, opcional): Trabajo del Cliente. * TrabajoDireccion (string, opcional): Dirección del Trabajo del Cliente. * TrabajoTelefono (string, opcional): Teléfono del Trabajo del Cliente. * Localizacion (string, opcional): Localización. * IdentificacionFiscal (string, opcional): Id Tributaria. * Contacto (string, opcional): Contacto en el Cliente. * LimiteCredito (number, format: double, opcional): Límite de Crédito. * Moneda (string, opcional): Moneda (ejemplo: "USD"). * Condicion (string, opcional): Condición. * PresentacionDia (string, opcional): Días de presentación de facturas. * PagoDia (string, opcional): Días de pago a proveedores. * PagoContacto (string, opcional): Contacto pago a proveedores. * PagoTelefono (string, opcional): Teléfono pago a proveedores. * PagoEmail (string, opcional): E-mail pago a proveedores. * PagoEmailSeEnvia (boolean, opcional): ¿Se envían mails recordatorios? * PagoEmailEnvioDia (integer, format: int32, opcional): Día de envío. * Situacion (string, opcional): Situación (ejemplo: "A"). * Estado (string, opcional): Estado del Cliente (ejemplo: "A").
Esquema ObjetoContratoInsertarInput
- SDTObjetoContrato (object, opcional): Información detallada del contrato a insertar.
* Cliente (string, opcional): Código de Cliente. * Codigo (string, opcional): Código. * Nombre (string, opcional): Nombre. * FechaInicio (string, format: date, opcional): Fecha de inicio (formato: YYYY-MM-DD). * FechaFin (string, format: date, opcional): Fecha de fin (formato: YYYY-MM-DD). * Tipo (string, opcional): Tipo (ejemplo: "F"). * DocumentoTipo (string, opcional): Tipo de Documento (ejemplo: "C"). * DocumentoNumero (string, opcional): Número de Documento. * FechaNacimiento (string, format: date, opcional): Fecha de Nacimiento (formato: YYYY-MM-DD). * Telefono (string, opcional): Teléfono. * Email (string, opcional): E-mail. * EmailFacturacion (string, opcional): E-mail facturación. * Localizacion (string, opcional): Localización. * IdentificacionFiscal (string, opcional): Identificación Fiscal. * Contacto (string, opcional): Contacto. * Modelo (string, opcional): Modelo. * Serie (string, opcional): Serie. * Ubicacion (string, opcional): Ubicación. * Responsable (string, opcional): Responsable. * Plan (string, opcional): Plan. * Poliza (string, opcional): Póliza. * DatoAdicional (string, opcional): Dato Adicional. * Estado (string, opcional): Estado (ejemplo: "A").