Planogramas

Listar

Lista os planogramas de determinada máquina e instalação.

GET /api/v1/machines/[machine_id]/installations/[installation_id]/planograms

Parâmetros de URL:

parâmetro

descrição

obrigatório

machine_id

id da máquina

sim

installation_id

id da instalação

sim

Retorno

status

descrição

200

OK

Campos que serão retornados apenas se o operador controlar estoque e a máquina for do tipo micromarket

nome

descrição

alternative_only

indica se o item é um produto somente alternativo no planograma

Exemplo:

[
  {
    "id": 2477,
    "created_at": "2015-11-04T11:11:02.000-02:00",
    "updated_at": "2015-11-12T15:46:32.000-02:00",
    "due": "due_now",
    "started_at": "2015-11-04T11:12:02.000-02:00",
    "ended_at": "2015-11-12T15:41:52.000-02:00",
    "details": "Planograma temporário",
    "items": [
      {
        "id": 93477,
        "created_at": "2015-11-04T11:11:02.000-02:00",
        "updated_at": "2015-12-21T09:35:15.000-02:00",
        "planogram_id": 2477,
        "type": "Coil",
        "good_id": 163,
        "name": "11",
        "capacity": 8,
        "par_level": 8,
        "alert_level": 3,
        "desired_price": 4.5,
        "modified": false,
        "undefined": false,
        "logical_locator": "1",
        "physical_locators": [
          "11"
        ],
        "children": null,
        "current_balance": 6,
        "status": "active",
        "pick_list_minimum_quantity": 4,
        "good": {
          "id": 163,
          "name": "Ruffles 50 g",
          "upc_code": "91",
          "upc_code_name": "91 - Ruffles 50 g",
          "unit_description": "Unidade",
          "unit_symbol": "un"
        },
        "alternative_only": true
      },
      {
        "id": 93478,
        "created_at": "2015-11-04T11:11:02.000-02:00",
        "updated_at": "2015-12-21T09:35:15.000-02:00",
        "planogram_id": 2477,
        "type": "Coil",
        "good_id": 1449,
        "name": "12",
        "capacity": 8,
        "par_level": 8,
        "alert_level": 3,
        "desired_price": 2.75,
        "modified": false,
        "undefined": false,
        "logical_locator": "2",
        "physical_locators": [
          "12"
        ],
        "children": null,
        "current_balance": 5,
        "status": "active",
        "good": {
          "id": 1449,
          "name": "Rosquiletas",
          "upc_code": "232",
          "upc_code_name": "232 - Rosquiletas",
          "unit_description": "Unidade",
          "unit_symbol": "un"
        }
      }
    ]
  }
]

Ver

Mostra determinado planograma de uma máquina e instalação.

GET /api/v1/machines/[machine_id]/installations/[installation_id]/planograms/[id]

Parâmetros de URL:

parâmetro

descrição

obrigatório

machine_id

id da máquina

sim

installation_id

id da instalação

sim

id

id do planograma

sim

Retorno

status

descrição

200

OK

Campos que serão retornados apenas se o operador controlar estoque e a máquina for do tipo micromarket

nome

descrição

alternative_only

indica se o item é um produto somente alternativo no planograma

Exemplo:

{
  "id": 189976,
  "created_at": "2016-01-26T17:36:44.000-02:00",
  "updated_at": "2016-01-26T17:36:44.000-02:00",
  "due": "now",
  "started_at": "2016-01-26T17:36:44.000-02:00",
  "details": "Planograma temporário",
  "items": [
    {
      "id": 86717,
      "type": "Coil",
      "name": "1,2",
      "good_id": 10,
      "capacity": 20,
      "par_level": 20,
      "alert_level": 4,
      "desired_price": 2.5,
      "logical_locator": 1,
      "current_balance": 11.0,
      "status": "active",
    },
    {
      "id": 86718,
      "type": "Coil",
      "name": "3",
      "good_id": 12,
      "capacity": 10,
      "par_level": 10,
      "alert_level": 2,
      "desired_price": 2.3,
      "logical_locator": 2,
      "current_balance": 8.0,
      "status": "active",
    },
    {
      "id": 86719,
      "type": "VirtualCoil",
      "name": "4",
      "good_id": 23,
      "desired_price": 4.0,
      "logical_locator": 3,
      "children": { "1": 2, "2": 1 },
      "status": "active",
    },
    {
      "id": 86720,
      "type": "Canister",
      "good_id": 26,
      "capacity": 2000,
      "par_level": 2000,
      "alert_level": 200,
      "logical_locator": 4,
      "current_balance": 983.3,
      "status": "active",
    },
    {
      "id": 86721,
      "type": "Canister",
      "good_id": 27,
      "capacity": 3000,
      "par_level": 3000,
      "alert_level": 300,
      "logical_locator": 5,
      "current_balance": 1975.4,
      "status": "active",
    },
    {
      "id": 86722,
      "type": "VirtualCanister",
      "good_id": 30,
      "name": "5",
      "desired_price": 3.0,
      "logical_locator": 6,
      "children": { "4": 20, "5": 15 },
      "status": "active",
    }
  ]
}

Erros

status

descrição

response body

404

máquina/instalação/planograma não encontrado

{ “status”: “404”, “error”: “Not Found” }

Criar

Cria uma novo planograma em determinada máquina e instalação.

O planograma criado fica pendente e pode ser atualizado. O mesmo só entra em atividade no próximo reabastecimento da máquina.

Uma instalação pode ter somente um planograma pendente. Se houver uma tentativa de cadastro de um outro planograma, será retornado um erro de validação, código HTTP 422.

POST /api/v1/machines/[machine_id]/installations/[installation_id]/planograms

Parâmetros de URL:

parâmetro

descrição

obrigatório

machine_id

id da máquina

sim

installation_id

id da instalação

sim

Campos que serão aceitos apenas se o operador estiver com a configuração habilitada

nome

descrição

alternative_only

indica se o item é um produto somente alternativo no planograma

Request:

{
  "planogram": {
    "details": "Planograma para testes de canaleta",
    "items_attributes": [
      {
        "type": "Coil",
        "name": "1,2",
        "good_id": 10,
        "capacity": 20,
        "par_level": 20,
        "alert_level": 4,
        "desired_price": 2.5,
        "logical_locator": 1,
        "status": "active",
        "alternative_only": false
      },
      {
        "type": "Coil",
        "name": "3,4",
        "good_id": 11,
        "capacity": 20,
        "par_level": 20,
        "alert_level": 4,
        "desired_price": 2.5,
        "logical_locator": 2,
        "status": "active"
      },
      {
        "type": "Canister",
        "good_id": 12,
        "capacity": 3000,
        "par_level": 3000,
        "alert_level": 500,
        "logical_locator": 3
      },
      {
        "type": "Canister",
        "good_id": 13,
        "capacity": 300,
        "par_level": 300,
        "alert_level": 50,
        "logical_locator": 4
      },
      {
        "type": "VirtualCanister",
        "name": "5",
        "good_id": 15,
        "desired_price": 3.5,
        "logical_locator": 5,
        "children": { "3": 21, "4": 1 }
      },
      {
        "type": "VirtualCoil",
        "name": "6",
        "good_id": 23,
        "desired_price": 6.0,
        "logical_locator": 6,
        "children": { "1": 2, "2": 1 }
      }
    ]
  }
}

Campos

Obrigatórios

  • planogram

    • items_attributes: um array contendo os items do planograma (deve conter no máximo 2000 items, caso contrário o servidor poderá recusar a requisição).

      • Os items podem ser de 4 tipos: canaletas, combos, canisters e seleções.

      • Canaletas:

        • type: deve ser igual a “Coil”.

        • name: o número da canaleta. Caso se trate de um agrupamento de canaletas, os números devem ser separados por vírgulas. Este campo será mapeado em um vetor no campo physical_locators como pode ser observado no exemplo de retorno.

        • good_id: id do produto. Nesse caso não pode ser composto. Good neste caso se traduz como bem.

        • capacity: a capacidade total da canaleta. No caso de agrupameto de canaletas, deve-se colocar aqui a capacidade total, somando-se todas as canaletas.

        • par_level: o nível de par da canaleta. No caso de agrupameto de canaletas, deve-se colocar aqui o nível de par total, somando-se todas as canaletas.

        • alert_level: o nível de alerta da canaleta.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico da canaleta. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

      • Combos:

        • type: deve ser igual a “VirtualCoil”.

        • name: o número de seleção do combo. Este campo será mapeado em um vetor no campo physical_locators como pode ser observado no exemplo de retorno.

        • good_id: id do produto. Nesse caso deve ser composto e com o type Combo. Good neste caso se traduz como bem.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico do combo. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

        • children: as canaletas e suas quantidades que compõe o combo. É um objeto cujas chaves são identificadores lógicos (campo logical_locator) das canaletas e os valores as quantidades. No exemplo acima, o combo é composto de 2 produtos da canaleta cujo name é “1,2” - ou seja, canaletas 1 e 2 agrupadas - e 1 produto da canaleta cujo name é “3,4”.

      • Canisters:

        • type: deve ser igual a “Canister”.

        • good_id: id do insumo. Good neste caso se traduz como bem.

        • capacity: a capacidade total do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • par_level: o nível de par do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • alert_level: o nível de alerta do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • logical_locator: trata-se do identificador lógico do canister. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

      • Seleções:

        • type: deve ser igual a “VirtualCanister”.

        • name: o número da seleção. Este campo será mapeado em um vetor no campo physical_locators como pode ser observado no exemplo de retorno.

        • good_id: id do produto. Nesse caso deve ser composto e com o type Mixture. Good neste caso se traduz como bem.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico da seleção. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

        • children: os canisters e suas quantidades que compõe a seleção. É um objeto cujas chaves são identificadores lógicos (campo logical_locator) dos canisters e os valores as quantidades. No exemplo acima, digamos que o insumo de id 12 seja Chocolate Solúvel com Leite e o de id 13, Copo Plástico 160 ml. Logo, a seleção é composta de 21 gramas de Chocolate Solúvel com Leite e 1 unidade de Copo Plástico 160 ml.

      • Campo Status:

        • active: o item está ativo e disponível para uso no vmpay e para venda

        • inactive: o item está inativo e não poderá ser usado no vmpay nem disponibilizado para venda

        • suspended o item está suspenso e não poderá ser usado no vmpay, mas as unidades em campo poderão ser vendidas

Opcionais

  • planogram

    • details: Texto explicativo relacionado ao planograma

Retorno

status

descrição

201

Criado com sucesso

Exemplo:

{
  "id": 2950,
  "created_at": "2016-02-15T16:19:36.843-02:00",
  "updated_at": "2016-02-15T16:19:36.843-02:00",
  "due": "due_next_restock",
  "started_at": null,
  "ended_at": null,
  "details": "Planograma para testes de canaleta",
  "items": [
    {
      "id": 113846,
      "created_at": "2016-02-15T16:19:36.843-02:00",
      "updated_at": "2016-02-15T16:19:36.843-02:00",
      "planogram_id": 2950,
      "type": "Coil",
      "good_id": 10,
      "name": "1,2",
      "capacity": 20,
      "par_level": 20,
      "alert_level": 4,
      "desired_price": 2.5,
      "modified": false,
      "undefined": false,
      "logical_locator": "1",
      "physical_locators": [
        "1",
        "2"
      ],
      "children": null,
      "current_balance": 0,
      "status": "active",
      "good": {
        "id": 10,
        "name": "Amendoin",
        "upc_code": "77",
        "upc_code_name": "77 - Amendoin",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    },
    {
      "id": 113847,
      "created_at": "2016-02-15T16:19:36.843-02:00",
      "updated_at": "2016-02-15T16:19:36.843-02:00",
      "planogram_id": 2950,
      "type": "Coil",
      "good_id": 11,
      "name": "3,4",
      "capacity": 20,
      "par_level": 20,
      "alert_level": 4,
      "desired_price": 2.5,
      "modified": false,
      "undefined": false,
      "logical_locator": "2",
      "physical_locators": [
        "3",
        "4"
      ],
      "children": null,
      "current_balance": 0,
      "status": "active",
      "good": {
        "id": 11,
        "name": "Coca Cola",
        "upc_code": "77",
        "upc_code_name": "77 - Coca Cola",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    },
    {
      "id":113848,
      "created_at":"2016-02-15T16:19:36.843-02:00",
      "updated_at":"2016-02-15T16:19:36.843-02:00",
      "planogram_id":2950,
      "type":"Canister",
      "good_id":12,
      "name":"Chocolate Solúvel com Leite 1kg",
      "capacity":3000.0,
      "par_level":3000.0,
      "alert_level":500.0,
      "desired_price":null,
      "modified": false,
      "undefined":false,
      "logical_locator":"3",
      "physical_locators":[],
      "children":null,
      "current_balance":0,
      "status": "active",
      "good":{
        "id":12,
        "name":"Chocolate Solúvel com Leite 1kg",
        "upc_code":null,
        "upc_code_name":"Chocolate Solúvel com Leite 1kg",
        "unit_description":"Grama",
        "unit_symbol":"g"
      }
    },
    {
      "id":113849,
      "created_at":"2016-02-15T16:19:36.843-02:00",
      "updated_at":"2016-02-15T16:19:36.843-02:00",
      "planogram_id":2950,
      "type":"Canister",
      "good_id":13,
      "name":"Copo Plástico 160 ml",
      "capacity":300.0,
      "par_level":300.0,
      "alert_level":50.0,
      "desired_price":null,
      "modified": false,
      "undefined":false,
      "logical_locator":"4",
      "physical_locators":[],
      "children":null,
      "current_balance":0,
      "status": "active",
      "good":{
        "id":13,
        "name":"Copo Plástico 160 ml",
        "upc_code":null,
        "upc_code_name":"Copo Plástico 160 ml",
        "unit_description":"Unidade",
        "unit_symbol":"un"
      }
    },
    {
      "id": 113850,
      "created_at": "2016-02-15T16:19:36.843-02:00",
      "updated_at": "2016-02-15T16:19:36.843-02:00",
      "planogram_id": 2950,
      "type": "VirtualCanister",
      "good_id": 15,
      "name": "5",
      "capacity": 10,
      "par_level": 10,
      "alert_level": 2,
      "desired_price": 3.5,
      "modified": false,
      "undefined": false,
      "logical_locator": "5",
      "physical_locators": [
        "5"
      ],
      "children": "children": {
        "3": "21.00",
        "4": "1.00"
      },
      "current_balance": 0,
      "status": "active",
      "good": {
        "id": 15,
        "name": "Dose Chocolate Quente",
        "upc_code": null,
        "upc_code_name": "Dose Chocolate Quente",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    },
    {
      "id": 113851,
      "created_at": "2016-02-15T16:19:36.843-02:00",
      "updated_at": "2016-02-15T16:19:36.843-02:00",
      "planogram_id": 2950,
      "type": "VirtualCoil",
      "good_id": 23,
      "name": "6",
      "capacity": 10,
      "par_level": 10,
      "alert_level": 4,
      "desired_price": 6,
      "modified": false,
      "undefined": false,
      "logical_locator": "6",
      "physical_locators": [
        "6"
      ],
      "children": {
        "1": "2.00",
        "2": "1.00"
      },
      "status": "active",
      "good": {
        "id": 23,
        "name": "2x Amendoins + 1x Coca Cola",
        "upc_code": "0",
        "upc_code_name": "0 - 2x Amendoins + 1x Coca Cola",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    }
  ]
}

Erros

status

descrição

response body

400

parâmetros faltando

{ “status”: “400”, “error”: “Bad Request” }

401

não autorizado

(vazio)

422

erro ao criar

ver exemplo abaixo

422 - erro ao criar

{
  "base": [
    "Já existe um planograma cadastrado para o próximo reabastecimento",
    "Há uma pick list pendente para essa instalação"
  ]
}

Atualizar

Atualiza um planograma de determinada máquina e instalação.

Somente planogramas pendentes podem ser atualizados. Se houver uma tentativa de atualização de planograma ativo ou anterior, será retornado um erro de validação, código HTTP 422.

PATCH /api/v1/machines/[machine_id]/installations/[installation_id]/planograms/[id]

Parâmetros de URL:

parâmetro

descrição

obrigatório

machine_id

id da máquina

sim

installation_id

id da instalação

sim

id

id do planograma

sim

Campos que serão aceitos apenas se o operador estiver com a configuração habilitada

nome

descrição

alternative_only

indica se o item é um produto somente alternativo no planograma

Request:

{
  "planogram": {
    "details": "Planograma para testes de canaleta",
    "items_attributes": [
      {
        "id": 113846,
        "type": "Coil",
        "name": "1,2",
        "good_id": 10,
        "capacity": 25,
        "par_level": 25,
        "alert_level": 5,
        "desired_price": 2.5,
        "logical_locator": 1,
        "status": "active",
        "alternative_only": true
      }
    ]
  }
}

Campos

Obrigatórios

  • planogram

    • items_attributes: um array contendo os items do planograma (deve conter no máximo 2000 items, caso contrário o servidor poderá recusar a requisição).

      • Os items podem ser de 4 tipos: canaletas, combos, canisters e seleções.

      • Canaletas:

        • id: o id do item, gerado automaticamente pelo sistema no momento da criação do planograma.

        • type: deve ser igual a “Coil”.

        • name: o número da canaleta. Caso se trate de um agrupamento de canaletas, os números devem ser separados por vírgulas.

        • good_id: id do produto. Nesse caso não pode ser composto. Good neste caso se traduz como bem.

        • capacity: a capacidade total da canaleta. No caso de agrupameto de canaletas, deve-se colocar aqui a capacidade total, somando-se todas as canaletas.

        • par_level: o nível de par da canaleta. No caso de agrupameto de canaletas, deve-se colocar aqui o nível de par total, somando-se todas as canaletas.

        • alert_level: o nível de alerta da canaleta.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico da canaleta. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

      • Combos:

        • id: o id do item, gerado automaticamente pelo sistema no momento da criação do planograma.

        • type: deve ser igual a “VirtualCoil”.

        • name: o número de seleção do combo.

        • good_id: id do produto. Nesse caso deve ser composto e com o type Combo. Good neste caso se traduz como bem.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico do combo. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

        • children: as canaletas e suas quantidades que compõe o combo. É um objeto cujas chaves são identificares lógicos (campo logical_locator) das canaletas e os valores as quantidades. No exemplo acima, o combo é composto de 2 produtos da canaleta cujo name é “1,2” - ou seja, canaletas 1 e 2 agrupadas - e 1 produto da canaleta 3.

      • Canisters:

        • id: o id do item, gerado automaticamente pelo sistema no momento da criação do planograma.

        • type: deve ser igual a “Canister”.

        • good_id: id do insumo. Good neste caso se traduz como bem.

        • capacity: a capacidade total do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • par_level: o nível de par do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • alert_level: o nível de alerta do canister. Deve ser preenchido na mesma unidade do insumo (g, ml ou un).

        • logical_locator: trata-se do identificador lógico do canister. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

      • Seleções:

        • id: o id do item, gerado automaticamente pelo sistema no momento da criação do planograma.

        • type: deve ser igual a “VirtualCanister”.

        • name: o número da seleção.

        • good_id: id do produto. Nesse caso deve ser composto e com o type Mixture. Good neste caso se traduz como bem.

        • desired_price: o preço unitário desejado.

        • logical_locator: trata-se do identificador lógico da seleção. Deve-se gerar um inteiro único dentro de todos os items do planograma.

        • status: o estado do item no planograma. Caso não seja informado, o padrão active será usado

        • children: os canisters e suas quantidades que compõe a seleção. É um objeto cujas chaves são identificares lógicos (campo logical_locator) dos canisters e os valores as quantidades. No exemplo acima, digamos que o insumo de id 26 seja Café em pó e o de id 27, Leite em pó. Logo, a seleção é composta de 20 gramas de Café em pó e 15 gramas de Leite em pó.

      • Campo Status:

        • active: o item está ativo e disponível para uso no vmpay e para venda

        • inactive: o item está inativo e não poderá ser usado no vmpay nem disponibilizado para venda

        • suspended o item está suspenso e não poderá ser usado no vmpay, mas as unidades em campo poderão ser vendidas

Opcionais

  • planogram

    • details: Texto explicativo relacionado ao planograma

Retorno

status

descrição

200

Atualizado com sucesso

Exemplo:

{
  "id": 2961,
  "created_at": "2016-02-16T16:54:39.000-02:00",
  "updated_at": "2016-02-16T16:54:39.000-02:00",
  "due": "due_next_restock",
  "started_at": null,
  "ended_at": null,
  "details": "Planograma para testes de canaleta",
  "items": [
    {
      "id": 113846,
      "created_at": "2016-02-16T16:54:39.000-02:00",
      "updated_at": "2016-02-16T17:03:27.727-02:00",
      "planogram_id": 2961,
      "type": "Coil",
      "good_id": 10,
      "name": "1,2",
      "capacity": 25,
      "par_level": 25,
      "alert_level": 5,
      "desired_price": 2.5,
      "modified": true,
      "undefined": false,
      "logical_locator": "1",
      "physical_locators": [
        "1",
        "2"
      ],
      "children": null,
      "current_balance": 0,
      "status": "active",
      "good": {
        "id": 10,
        "name": "Amendoin",
        "upc_code": "77",
        "upc_code_name": "77 - Amendoin",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    },
    {
      "id": 113847,
      "created_at": "2016-02-16T16:54:39.000-02:00",
      "updated_at": "2016-02-16T16:54:39.000-02:00",
      "planogram_id": 2961,
      "type": "Coil",
      "good_id": 12,
      "name": "3",
      "capacity": 10,
      "par_level": 10,
      "alert_level": 2,
      "desired_price": 2.3,
      "modified": true,
      "undefined": false,
      "logical_locator": "2",
      "physical_locators": [
        "3"
      ],
      "children": null,
      "current_balance": 0,
      "status": "active",
      "good": {
        "id": 12,
        "name": "Twix",
        "upc_code": "99",
        "upc_code_name": "99 - Twix",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    },
    {
      "id": 113848,
      "created_at": "2016-02-16T16:54:39.000-02:00",
      "updated_at": "2016-02-16T16:54:39.000-02:00",
      "planogram_id": 2961,
      "type": "VirtualCoil",
      "good_id": 23,
      "name": "4",
      "capacity": null,
      "par_level": null,
      "alert_level": null,
      "desired_price": 4,
      "modified": true,
      "undefined": false,
      "logical_locator": "3",
      "physical_locators": [
        "4"
      ],
      "children": {
        "1": 2,
        "2": 1
      },
      "status": "active",
      "good": {
        "id": 23,
        "name": "Camiseta Acqua tamanho G",
        "upc_code": "0",
        "upc_code_name": "0 - Camiseta Acqua tamanho G",
        "unit_description": "Unidade",
        "unit_symbol": "un"
      }
    }
  ]
}

Erros

status

descrição

response body

400

parâmetros faltando

{ “status”: “400”, “error”: “Bad Request” }

401

não autorizado

(vazio)

404

máquina/instalação/planograma não encontrado

{ “status”: “404”, “error”: “Not Found” }

422

erro ao atualizar

ver exemplo abaixo

422 - erro ao atualizar:

{
  "items.physical_locators": [
    "já está em uso"
  ],
  "base": [
    "Registros filhos duplicados"
  ]
}

Excluir

Exclui um planograma de determinada máquina e instalação.

Somente planogramas pendentes podem ser excluídos. Se houver uma tentativa de exclusão de planograma ativo ou anterior, será retornado um erro de validação, código HTTP 422.

DELETE /api/v1/machines/[machine_id]/installations/[installation_id]/planograms/[id]

Parâmetros de URL:

parâmetro

descrição

obrigatório

machine_id

id da máquina

sim

installation_id

id da instalação

sim

id

id do planograma

sim

Retorno

status

descrição

response body

204

Excluído com sucesso

(vazio)

Erros

status

descrição

response body

404

máquina/instalação/planograma não encontrado

{ “status”: “404”, “error”: “Not Found” }