API : Productos

https://www.obuma.cl/ayuda/articulo/13/api--productos


 

API Endpoint: Productos

 

Listar Productos

  • URL: /productos.list.json
  • Método: GET
  • Descripción: Obtiene una lista de todos los productos de la empresa.
  • Parámetros (opcional):
    • id: Filtra por ID del producto.
    • tipo: Filtra por tipo de producto.
    • codigo_sku: Filtra por código SKU del producto.
    • codigo_barra: Filtra por código de barra del producto.
    • categoria: Filtra por categoría del producto.
    • subcategoria: Filtra por subcategoría del producto.
    • fabricante: Filtra por fabricante del producto.
    • activo: Filtra por estado del producto (activo/inactivo).
    • Otros parámetros según las necesidades específicas.

 

Obtener Productos por Códigos de Proveedores

  • URL: /productos.listByCodigosProveedores.json
  • Método: GET
  • Descripción: Obtiene una lista de productos basada en los códigos de productos asignados por los proveedores.
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Crear Producto

  • URL: /productos.create.json
  • Método: POST
  • Descripción: Crea un nuevo producto con los datos proporcionados.
  • Body (JSON):
    • producto_tipo: Tipo de producto.
    • producto_codigo_comercial: Código SKU del producto.
    • producto_codigo_barra: Código de barras del producto.
    • producto_nombre: Nombre del producto.
    • producto_descripcion: Descripción breve del producto.
    • producto_descripcion_larga: Descripción larga del producto.
    • producto_categoria: ID de la categoría a la que pertenece el producto.
    • producto_subcategoria: ID de la subcategoría a la que pertenece el producto.
    • producto_fabricante: ID del fabricante del producto.
    • producto_costo_clp_neto: Costo neto del producto en CLP.
    • producto_precio_clp_neto: Precio neto del producto en CLP.
    • Otros campos relevantes para la creación.

 

Actualizar Producto

  • URL: /productos.update.json
  • Método: POST
  • Descripción: Actualiza un producto existente con los nuevos datos proporcionados.
  • Parámetros:
    • producto_id: (Obligatorio) ID del producto.
  • Body (JSON):
    • producto_id: (Obligatorio) ID del producto
    • producto_tipo: Tipo de producto.
    • producto_codigo_comercial: Código SKU del producto.
    • producto_codigo_barra: Código de barras del producto.
    • producto_nombre: Nombre del producto.
    • producto_descripcion: Descripción breve del producto.
    • producto_descripcion_larga: Descripción larga del producto.
    • producto_categoria: ID de la categoría a la que pertenece el producto.
    • producto_subcategoria: ID de la subcategoría a la que pertenece el producto.
    • producto_fabricante: ID del fabricante del producto.
    • producto_costo_clp_neto: Costo neto del producto en CLP.
    • producto_precio_clp_neto: Precio neto del producto en CLP.
    • Otros campos relevantes que se deseen actualizar.

 


 

API Endpoint: Consulta de Precios de Productos

 

Listar Precios de Productos

  • URL: /productosConsultaPrecios.list.json
  • Método: GET
  • Descripción: Obtiene una lista de precios de productos, que puede estar asociada a una lista de precios específica.
  • Parámetros (opcional):
    • lista_precio: ID de la lista de precios específica.
    • lista_precio_codigo: Código de la lista de precios específica.

 

Obtener Precio de Producto por ID

  • URL: /productosConsultaPrecios.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve los precios de un producto específico basado en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID del producto (incluido en la URL).

 

Obtener Precio de Producto por Código SKU

  • URL: /productosConsultaPrecios.findByCodigoSku.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve los precios de un producto específico basado en el código SKU proporcionado.
  • Parámetros:
    • RecursoId: Código SKU del producto (incluido en la URL).

 

 


 

API Endpoint: Categorías de Productos

 

Listar Categorías de Productos

  • URL: /productosCategorias.list.json
  • Método: GET
  • Descripción: Obtiene una lista de todas las categorías de productos de la empresa.
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Obtener Categoría de Producto por ID

  • URL: /productosCategorias.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve una categoría de producto específica basada en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID de la categoría de producto (incluido en la URL).

 

Obtener Categoría de Producto por Código

  • URL: /productosCategorias.findByCodigo.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve una categoría de producto específica basada en el código proporcionado.
  • Parámetros:
    • RecursoId: Código de la categoría de producto (incluido en la URL).

 

Crear Categoría de Producto

  • URL: /productosCategorias.create.json
  • Método: POST
  • Descripción: Crea una nueva categoría de producto con los datos proporcionados.
  • Body (JSON):
    • producto_categoria_nombre: Nombre de la categoría.
    • producto_categoria_descripcion: Descripción de la categoría.
    • producto_categoria_imagen: Imagen de la categoría.
    • producto_categoria_posicion: Posición de la categoría en la lista.
    • producto_categoria_mostrar: Indicador si la categoría debe mostrarse.
    • producto_categoria_metatitle: Meta title para SEO.
    • producto_categoria_metadescription: Meta description para SEO.
    • producto_categoria_metakeywords: Meta keywords para SEO.
    • producto_categoria_urlseo: URL SEO-friendly para la categoría.

 

Actualizar Categoría de Producto

  • URL: /productosCategorias.update.json
  • Método: POST
  • Descripción: Actualiza una categoría de producto existente con los nuevos datos proporcionados.
  • Parámetros:
    • RecursoId: ID de la categoría de producto (incluido en la URL).
  • Body (JSON):
    • producto_categoria_id: (Obligatorio) Id de la categoria.
    • producto_categoria_nombre: Nombre de la categoría.
    • producto_categoria_descripcion: Descripción de la categoría.
    • producto_categoria_imagen: Imagen de la categoría.
    • producto_categoria_posicion: Posición de la categoría en la lista.
    • producto_categoria_mostrar: Indicador si la categoría debe mostrarse.
    • producto_categoria_metatitle: Meta title para SEO.
    • producto_categoria_metadescription: Meta description para SEO.
    • producto_categoria_metakeywords: Meta keywords para SEO.
    • producto_categoria_urlseo: URL SEO-friendly para la categoría.

 

Eliminar Categoría de Producto

  • URL: /productosCategorias.delete.json/{RecursoId}
  • Método: POST
  • Descripción: Elimina una categoría de producto existente.
  • Parámetros:
    • RecursoId: ID de la categoría de producto (incluido en la URL).

 


 

API Endpoint: Subcategorías de Productos

 

Listar Subcategorías de Productos

  • URL: /productosSubCategorias.list.json
  • Método: GET
  • Descripción: Obtiene una lista de todas las subcategorías de productos de la empresa.
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Obtener Subcategoría de Producto por ID

  • URL: /productosSubCategorias.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve una subcategoría de producto específica basada en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID de la subcategoría de producto (incluido en la URL).

 

Obtener Subcategoría de Producto por Código

  • URL: /productosSubCategorias.findByCodigo.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve una subcategoría de producto específica basada en el código proporcionado.
  • Parámetros:
    • RecursoId: Código de la subcategoría de producto (incluido en la URL).

 

Obtener Subcategorías de Producto por ID de Categoría

  • URL: /productosSubCategorias.findByCategoryId.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve todas las subcategorías de productos que pertenecen a una categoría específica.
  • Parámetros:
    • RecursoId: ID de la categoría de producto (incluido en la URL).

 

Crear Subcategoría de Producto

  • URL: /productosSubCategorias.create.json
  • Método: POST
  • Descripción: Crea una nueva subcategoría de producto con los datos proporcionados.
  • Body (JSON):
    • producto_subcategoria_nombre: Nombre de la subcategoría.
    • producto_subcategoria_imagen: Imagen de la subcategoría.
    • producto_subcategoria_posicion: Posición de la subcategoría en la lista.
    • producto_subcategoria_mostrar: Indicador si la subcategoría debe mostrarse.
    • producto_subcategoria_metatitle: Meta title para SEO.
    • producto_subcategoria_metadescription: Meta description para SEO.
    • producto_subcategoria_metakeywords: Meta keywords para SEO.
    • producto_subcategoria_urlseo: URL SEO-friendly para la subcategoría.
    • rel_producto_categoria_id: ID de la categoría a la que pertenece la subcategoría.

 

Actualizar Subcategoría de Producto

  • URL: /productosSubCategorias.update.json
  • Método: POST
  • Descripción: Actualiza una subcategoría de producto existente con los nuevos datos proporcionados.
  • Parámetros:
    • Se deben pasar todos los campos del body, de lo contrario los campos quedan vacios.
  • Body (JSON):
    • producto_subcategoria_id: (Obligatorio) ID de la subcategoria.
    • producto_subcategoria_nombre: Nombre de la subcategoría.
    • producto_subcategoria_imagen: Imagen de la subcategoría.
    • producto_subcategoria_posicion: Posición de la subcategoría en la lista.
    • producto_subcategoria_mostrar: Indicador si la subcategoría debe mostrarse.
    • producto_subcategoria_metatitle: Meta title para SEO.
    • producto_subcategoria_metadescription: Meta description para SEO.
    • producto_subcategoria_metakeywords: Meta keywords para SEO.
    • producto_subcategoria_urlseo: URL SEO-friendly para la subcategoría.
    • rel_producto_categoria_id: ID de la categoría a la que pertenece la subcategoría.

 

Eliminar Subcategoría de Producto

  • URL: /productosSubCategorias.delete.json/{RecursoId}
  • Método: POST
  • Descripción: Elimina una subcategoría de producto existente.
  • Parámetros:
    • RecursoId: ID de la subcategoría de producto (incluido en la URL).

 


 

API Endpoint: Fabricantes de Productos

 

Listar Fabricantes de Productos

  • URL: /productosFabricantes.list.json
  • Método: GET
  • Descripción: Obtiene una lista de todos los fabricantes de productos de la empresa.
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Obtener Fabricante de Producto por ID

  • URL: /productosFabricantes.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve un fabricante de producto específico basado en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID del fabricante de producto (incluido en la URL).

 

Obtener Fabricante de Producto por Código

  • URL: /productosFabricantes.findByCodigo.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve un fabricante de producto específico basado en el código proporcionado.
  • Parámetros:
    • RecursoId: Código del fabricante de producto (incluido en la URL).

 

Crear Fabricante de Producto

  • URL: /productosFabricantes.create.json
  • Método: POST
  • Descripción: Crea un nuevo fabricante de producto con los datos proporcionados.
  • Body (JSON):
    • producto_fabricante_nombre: Nombre del fabricante.
    • producto_fabricante_imagen: Imagen del fabricante.
    • producto_fabricante_url: URL del fabricante.

 

Actualizar Fabricante de Producto

  • URL: /productosFabricantes.update.json
  • Método: POST
  • Descripción: Actualiza un fabricante de producto existente con los nuevos datos proporcionados.
  • Parámetros:
    • Se deben pasar todos los campos del body, de lo contrario los campos quedan vacios.
  • Body (JSON):
    • producto_fabricante_id: (Obligatorio) ID del fabricante.
    • producto_fabricante_nombre: Nombre del fabricante.
    • producto_fabricante_imagen: Imagen del fabricante.
    • producto_fabricante_url: URL del fabricante.

 

Eliminar Fabricante de Producto

  • URL: /productosFabricantes.delete.json/{RecursoId}
  • Método: POST
  • Descripción: Elimina un fabricante de producto existente.
  • Parámetros:
    • RecursoId: ID del fabricante de producto (incluido en la URL).

 


 

API Endpoint: Imágenes de Productos

 

Listar Imágenes de Productos

  • URL: /productosImagenes.list.json
  • Método: GET
  • Descripción: Obtiene una lista de imágenes asociadas a productos. La lista puede ser filtrada por categorías o subcategorías.
  • Parámetros (opcional):
    • categoria: Filtra por la categoría del producto.
    • sub_categoria: Filtra por la subcategoría del producto.

 

Obtener Imagen de Producto por ID

  • URL: /productosImagenes.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve una imagen específica de un producto basado en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID de la imagen del producto (incluido en la URL).

 

Obtener Imagen de Producto por SKU

  • URL: /productosImagenes.findByProductoSku.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve la imagen principal de un producto basado en el código SKU proporcionado.
  • Parámetros:
    • RecursoId: Código SKU del producto (incluido en la URL).

 


 

API Endpoint: Lista de Materiales (LdM) de Productos

 

Listar LdM de Productos

  • URL: /productosLdM.list.json
  • Método: GET
  • Descripción: Obtiene una lista de materiales (LdM) de todos los productos de la empresa.
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Obtener LdM de Producto por ID

  • URL: /productosLdM.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve la lista de materiales (LdM) de un producto específico basado en el ID proporcionado.
  • Parámetros:
    • RecursoId: ID del producto (incluido en la URL).

 

Obtener LdM de Producto por Código SKU

  • URL: /productosLdM.findByCodigoSku.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve la lista de materiales (LdM) de un producto específico basado en el código SKU proporcionado.
  • Parámetros:
    • RecursoId: Código SKU del producto (incluido en la URL).

 


 

API Endpoint: Stock de Productos

 

Listar Stock de Productos

  • URL: /productosStock.list.json
  • Método: GET
  • Descripción: Lista el stock de productos de la empresa.
  • Parámetros (opcional):
    • bodega: ID de la bodega para filtrar el stock.
    • id_bodega: ID alternativo de la bodega.
    • codigo_bodega: Código de la bodega (acepta "0" o "all" para todas las bodegas).
    • categoria: (Opcional) ID de la categoria.
    • subcategoria: (Opcional) ID de la subcategoria.
    • fabricante: (Opcional) ID del fabricante.
    • fecha_desde: (Opcional) Trae el stock modificado desde una fecha hacia adelante.

 

Listar Stock Detalle de Bodegas

  • URL: /productosStock.list-DetalleBodegas.json
  • Método: GET
  • Descripción: Entrega detalle del stock por cada bodega
  • Parámetros:
    • id_bodega: (Opcional) ID de la bodega se desea consultar.
    • id_producto: (Opcional) ID del producto que se desea consultar.
    • fecha_desde: (Opcional) Entrega todo el stock de una fecha x hacia adelante. 

 

Listar Stock Detalle de Bodegas 2

  • URL: /productosStock.list-DetalleBodegas2.json
  • Método: GET
  • Descripción: Una segunda versión para listar el detalle del stock por bodegas pero en sola columna o variable...
  • Parámetros:
    • No se requieren parámetros adicionales.

 

Obtener Stock de Producto por ID

  • URL: /productosStock.findById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve detalles de un producto específico basado en su ID.
  • Parámetros:
    • RecursoId: ID del producto (incluido en la URL).

 

Obtener Stock de Producto por ID y Bodega

  • URL: /productosStock.findById-DetalleBodegas.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock por cada bodega de un producto específico basado en su ID.
  • Parámetros:
    • RecursoId: ID del producto (incluido en la URL).

 

Obtener Stock Producto por Código SKU

  • URL: /productosStock.findByCodigoSku.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock de un producto específico basado en su código SKU.
  • Parámetros:
    • RecursoId: Código SKU del producto (incluido en la URL).

 

Obtener Stock Producto por Código de Barras

  • URL: /productosStock.findByCodigoBarra.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock de un producto específico basado en su código de barras.
  • Parámetros:
    • RecursoId: Código de barras del producto (incluido en la URL).

 

Obtener Stock de KIT por ID

  • URL: /productosStock.KITfindById.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock de un KIT específico basado en su ID.
  • Parámetros:
    • RecursoId: ID del KIT (incluido en la URL).

 

Obtener Stock de KIT por Código SKU

  • URL: /productosStock.KITfindByCodigoSku.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock de un KIT específico basado en su código SKU.
  • Parámetros:
    • RecursoId: Código SKU del KIT (incluido en la URL).

 

Obtener Stock de KIT por Código de Barras

  • URL: /productosStock.KITfindByCodigoBarra.json/{RecursoId}
  • Método: GET
  • Descripción: Devuelve el stock de un KIT específico basado en su código de barras.
  • Parámetros:
    • RecursoId: Código de barras del KIT (incluido en la URL).

 

Crear Stock

  • URL: /productosStock.create.json
  • Método: POST
  • Descripción: Crea una nueva entrada o salida de stock para uno o varios productos en una bodega específica.
  • Body (JSON):
    • bodega: (Obligatorio) ID de la bodega donde se va a registrar el stock.
    • codigo_bodega ( Opcional ) Si viene, reemplaza el id de bodega.
    • tipo_movimiento: (Obligatorio) Tipo de movimiento (ejemplo: "entrada" o "salida").
    • concepto: (Opcional) Concepto del movimiento de stock.
    • referencia: (Opcional) Es un comentario, dato de referencia del movimiento.
    • id_venta: (Opcional) ID de la venta vinculada al movimiento.
    • id_cliente: (Opcional) ID del cliente vinculado al movimiento.

Ejemplo de Body (JSON):

 
{
    "bodega" : "1", 
    "codigo_bodega" : "",
            
    "tipo_movimiento" : "SALIDA",
    "metodo_movimiento" : "salida",
    "concepto_movimiento" : "",
    "referencia_movimiento" : "comentario de descriptivo de referencia", 

    "items" : [
            {
            "producto_id": "",
            "cantidad": ""
            }
        ]

}

 

Listar Libros de Inventario

  • URL: /productosStock.listLibro.json
  • Método: GET
  • Descripción: Lista los libros de inventario relacionados con el stock de productos.
  • Parámetros (opcional):
    • mes: Filtra por mes del libro de inventario.
    • ano: Filtra por año del libro de inventario.
    • concepto: Filtra por concepto de movimiento (ej. ingreso, egreso).
    • centro_costo: Filtra por centro de costo asociado.
    • producto: ID del producto para filtrar por producto específico.
    • bodega: ID de la bodega para filtrar por bodega específica.
    • id: Filtra por ID de origen asociado.
    • folio: Filtra por folio del libro de inventario.
    • tipo_movimiento: Filtra por tipo de movimiento (ej. entrada, salida).
    • codigo_bodega: Filtra por el código de la bodega.

 

Listar Detalles del Libro de Inventario

  • URL: /productosStock.listLibroDetalle.json
  • Método: GET
  • Descripción: Lista detalles específicos del libro de inventario relacionado con el stock de productos.
  • Parámetros (opcional):
    • mes: Filtra por mes del movimiento en el libro.
    • ano: Filtra por año del movimiento en el libro.
    • concepto: Filtra por concepto del movimiento en el libro.
    • centro_costo: Filtra por centro de costo asociado.
    • tipo_movimiento: Filtra por tipo de movimiento de inventario (ej. entrada, salida).
    • bodega: ID de la bodega asociada.
    • producto: ID del producto asociado.
    • id: ID del origen asociado.
    • folio: Filtra por folio del libro de inventario.