Atributos dinámicos

Los atributos dinámicos son usados en documentos, formas de pago y clientes. como atributos opcionales en la mayoría de casos.

Estructura JSON

Al realizar una petición HTTP, el servicio retornara un JSON con la siguiente estructura:

{
    "href": "https://api.bsale.com.pe/v1/dynamic_attributes/5.json",
    "id": 5,
    "name": "Obser.",
    "tip": "",
    "type": 4,
    "isMandatory": 0,
    "state": 0,
    "document_type": {
        "href": "https://api.bsale.com.pe/v1/document_types/4.json",
        "id": "4"
    }
}
  • href, url del atributo dinámico (String).
  • id, identificador único del atributo dinámico (Integer).
  • name, nombre del atributo dinámico (String).
  • tip, tooltip del atributo dinámico (String).
  • isMandatory, indica si un atributo dinámico es obligatorio No(0) o Si(1) (Boolean).
  • state, estado del atributo dinámico indica si esta activo(0) o inactivo (1) (Boolean).
  • payment_type, nodo que indica la relación con las formas de pago.

GET de una colección de atributos dinámicos

  • GET /v1/dynamic_attributes.json retornara todos los Atributos dinámicos.

Parámetros

  • limit, limita la cantidad de items de una respuesta JSON, por defecto el limit es 25, el máximo permitido es 50.
  • offset, permite paginar los items de una respuesta JSON, por defecto el offset es 0.
  • fields, solo devolver atributos específicos de un recurso
  • expand, permite expandir instancias y colecciones.
  • name, Permite filtrar por nombre del atributo.
  • type, filtra tipo de atributo.
  • state, boolean (0 o 1) indica si las listas de precio están activas(0) inactivas (1).
  • paymenttypeid, filtra por la forma de pago.
  • documenttypeid, filtra por el tipo de documento.

Ejemplos

  • GET /v1/dynamic_attributes.json?limit=10&offset=0
  • GET /v1/dynamic_attributes.json?fields=[name,type,state]
  • GET /v1/dynamic_attributes.json?paymenttypeid=1
  • GET /v1/dynamic_attributes.json?expand=[coin,details]
  • GET /v1/dynamic_attributes.json?limit=2&offset=1

Respuesta

{
    "href": "https://api.bsale.com.pe/v1/dynamic_attributes.json",
    "count": 30,
    "limit": 2,
    "offset": 1,
    "items": [
        {
            "href": "https://api.bsale.com.pe/v1/dynamic_attributes/27.json",
            "id": 27,
            "name": "Código producto",
            "tip": "",
            "type": 4,
            "isMandatory": 0,
            "state": 0,
            "document_type": {
                "href": "https://api.bsale.com.pe/v1/document_types/1.json",
                "id": "1"
            }
        },
        {
            "href": "https://api.bsale.com.pe/v1/dynamic_attributes/28.json",
            "id": 28,
            "name": "código producto wsp",
            "tip": "",
            "type": 4,
            "isMandatory": 0,
            "state": 0,
            "document_type": {
                "href": "https://api.bsale.com.pe/v1/document_types/22.json",
                "id": "22"
            }
        }
    ],
    "previous": "https://api.bsale.com.pe/v1/dynamic_attributes.json?limit=2&offset=0",
    "next": "https://api.bsale.com.pe/v1/dynamic_attributes.json?limit=2&offset=3"
}

GET de un atributo dinámico

  • GET /v1/dynamic_attributes/3.json

Parámetros

  • expand, permite expandir instancias y colecciones.

Ejemplos

  • GET /v1/dynamic_attributes/5.json?expand=[payment_type]

Respuesta

{
    "href": "https://api.bsale.com.pe/v1/dynamic_attributes/5.json",
    "id": 5,
    "name": "Obser.",
    "tip": "",
    "type": 4,
    "isMandatory": 0,
    "state": 0,
    "document_type": {
        "href": "https://api.bsale.com.pe/v1/document_types/4.json",
        "id": "4"
    }
}

GET detalles de un atributo dinámico

  • GET /v1/dynamic_attributes/8/details.json
{
    "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8.json",
    "id": 8,
    "name": "Tipo Traslado",
    "tip": "",
    "type": 7,
    "isMandatory": 0,
    "state": 1,
    "document_type": {
        "href": "https://api.bsale.com.pe/v1/document_types/4.json",
        "id": "4"
    },
    "details": {
        "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details.json",
        "count": 9,
        "limit": 25,
        "offset": 0,
        "items": [
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/1.json",
                "id": 1,
                "name": "Operación Constituye Venta",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/2.json",
                "id": 2,
                "name": "Venta por Efectuar",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/3.json",
                "id": 3,
                "name": "Consignaciones",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/4.json",
                "id": 4,
                "name": "Entrega Gratuita",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/5.json",
                "id": 5,
                "name": "Traslado Interno",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/6.json",
                "id": 6,
                "name": "Otros Traslados No Venta",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/7.json",
                "id": 7,
                "name": "Guía Devolución",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/8.json",
                "id": 8,
                "name": "Traslado para Exportación",
                "state": 1
            },
            {
                "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/9.json",
                "id": 9,
                "name": "Venta para Exportación",
                "state": 1
            }
        ]
    }
}

GET un de detalle de un atributo dinámico

  • GET /v1/dynamic_attributes/8/details/9.json
{
    "href": "https://api.bsale.com.pe/v1/dynamic_attributes/8/details/8.json",
    "id": 8,
    "name": "Traslado para Exportación",
    "state": 1
}