Back to top

Bluve - API de Integração

v. 3.0.0

Antes de você começar

Importante

  • Este material tem por objetivo mostrar como deve ser feita a integração do seu sistema com a plataforma Bluve da 4C.

  • A url dessa documentação aponta para o nosso Sandbox e tem o propósito de servir ao processo de homologação. Quando aprovada, sua empresa precisará apontar para o endereço oficial;

  • Esta documentação pode ser alterada no futuro sem aviso prévio, mantendo-se no entanto, o compromisso de retrocompatibilidade.

Atenção!

  • As versões anteriores (v1 e v2) estão disponíveis, porém se tornaram obsoletas e não devem ser utilizadas no desenvolvimento de novos recursos ou homologações;

Token

Função

Gera o Token que garante a segurança e autenticidade das transações no Bluve.

Geração do Token

Criação do Token
GET/getToken

Example URI

GET https://dev.bluve.com.br/api/v3/getToken
Request  Gerar o Token
HideShow
Headers
Accept: application/json
Content-Type: application/json
key: chave-unica-de-integracao
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "token": "Token de Autorização"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "token": {
      "type": "string",
      "description": "Token de autorização"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}

Integração

Função

API para cadastro/alteração/consulta de produtos, motivos, vendedores e vendas no sistema Bluve

Vendedores em Atendimento

Vendedores - Em Atendimento
GET/atendimentos

Example URI

GET https://dev.bluve.com.br/api/v3/atendimentos
Request  Payload de Atendimentos
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "vendedores": [
    {
      "id": "id do vendedor no Bluve",
      "apelido": "Batman",
      "nome": "Bruce Wayne",
      "cpf": "00000000000",
      "pdvId": "1",
      "atendimento": [
        {
          "emAtendimento": true,
          "inicio": "Data e Hora do início do Atendimento",
          "emFurouFila": false
        }
      ]
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "vendedores": {
      "type": "array",
      "description": "Vendedores em Atendimento"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Cadastrar Produtos

Produtos - Cadastro
POST/produtos

Example URI

POST https://dev.bluve.com.br/api/v3/produtos
Request  Payload de Produtos
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Body
[
  {
    "codigo": "XPTO0001",
    "ativo": true,
    "pdvId": "1",
    "nome": "Cinto de Utilidades",
    "grupoId": "1",
    "familiaId": "1"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "logs": [
    "Descrição item a item do que ocorreu"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "logs de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  429
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 429,
  "message": "Muitas requisições no endpoint. Alguns só permitem o envio de integração a cada 24 horas"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Atualizar Produtos

Produtos - Atualizar
PUT/produtos/update

Example URI

PUT https://dev.bluve.com.br/api/v3/produtos/update
Request  Payload de Produtos
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Body
[
  {
    "codigo": "XPTO0001",
    "ativo": true,
    "pdvId": "1",
    "nome": "Cinto de Utilidades",
    "grupoId": "1",
    "familiaId": "1"
  }
]
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "array"
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "logs": [
    "Descrição item a item do que ocorreu"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "logs de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  429
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 429,
  "message": "Muitas requisições no endpoint. Alguns só permitem o envio de integração a cada 24 horas"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Auxiliares - Cadastro

Nota

  • São auxiliares as tabelas Grupos e Famílias que compõem o cadastro de produtos

  • Você pode enviar um ou outro item (por exemplo somente grupos ou somente familias) mas não pode omitir ambos.

  • Se o produto existir, o mesmo não será gravado. Veja sempre o log retornado

Auxliares - Cadastro
POST/produtos/auxiliar

Example URI

POST https://dev.bluve.com.br/api/v3/produtos/auxiliar
Request  Payload de Auxiliares
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Body
{
  "grupos": [
    {
      "codigo": "ABC",
      "ativo": true,
      "pdvId": "1",
      "nome": "Nome"
    }
  ],
  "familias": [
    {
      "codigo": "ABC",
      "ativo": true,
      "pdvId": "1",
      "nome": "Nome"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "grupos": {
      "type": "array",
      "description": "Grupos de produtos"
    },
    "familias": {
      "type": "array",
      "description": "Grupos de famílias"
    }
  }
}
Response  201
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 201,
  "message": "Mensagem de Retorno",
  "logs": [
    "Descrição item a item do que ocorreu"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "logs de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  429
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 429,
  "message": "Muitas requisições no endpoint. Alguns só permitem o envio de integração a cada 24 horas"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Auxiliares - Atualizar

Notas

  • São auxiliares as tabelas Grupos e Famílias que compõem o cadastro de produtos

  • Você pode enviar um ou outro item (por exemplo somente grupos ou somente familias) mas não pode omitir ambos;

  • Se o produto não existir, não será possível atualizar. Veja sempre o log retornado.

Auxliares - Atualizar
PUT/produtos/auxiliar/update

Example URI

PUT https://dev.bluve.com.br/api/v3/produtos/auxiliar/update
Request  Payload de Auxiliares
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Body
{
  "grupos": [
    {
      "codigo": "ABC",
      "ativo": true,
      "pdvId": "1",
      "nome": "Nome"
    }
  ],
  "familias": [
    {
      "codigo": "ABC",
      "ativo": true,
      "pdvId": "1",
      "nome": "Nome"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "grupos": {
      "type": "array",
      "description": "Grupos de produtos"
    },
    "familias": {
      "type": "array",
      "description": "Grupos de famílias"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "logs": [
    "Descrição item a item do que ocorreu"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "logs de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  429
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 429,
  "message": "Muitas requisições no endpoint. Alguns só permitem o envio de integração a cada 24 horas"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Vendas

Venda - Cadastrar
POST/vendas

Notas

  • Você deve informar as vendas em um array conforme especificado no “Payload de Vendas”, pois assim, é possível enviar mais de uma venda de uma vez;

  • Ao informar o Nome e CPF do vendedor, o mesmo será cadastrado ou atualizado (caso já exista) independentemente da venda ser ou não efetivada;

  • Ao informar o Nome e Código do Produto, o mesmo será cadastrado ou atualizado (caso já exista) independentemente da venda ser ou não efetivada.

Example URI

POST https://dev.bluve.com.br/api/v3/vendas
Request  Payload de Vendas
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
Body
{
  "vendas": [
    {
      "vendedorPdvId": "id do vendedor no pdv",
      "vendaId": "id da venda no pdv",
      "cpfVendedor": "cpf do vendedor",
      "nomeVendedor": "Nome do vendedor",
      "photoUrlVendedor": "Caminho para foto do Vendedor [opicional]",
      "produtos": [
        {
          "pdvId": "1",
          "nome": "Nome do produto",
          "codigo": "Código do produto",
          "qtd": 10,
          "valorVenda": 100,
          "vendedorPdvId": "id do vendedor no pdv [para vendas rateadas]",
          "rateado": false
        }
      ],
      "valorTotal": 100,
      "totalPecas": 10,
      "cpfCliente": "CPF",
      "codigoIndicacao": "Código de indicação de 4 dígitos que o cliente apresentar"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "vendas": {
      "type": "array",
      "description": "Vendas"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "logs": [
    {
      "vendaId": "id da venda no pdv",
      "gravou": true,
      "indicacao": {
        "cpfCliente": "CPF do cliente indicado",
        "codigo": "ABC1",
        "mensagem": "Mensagem da api"
      },
      "mensagem": "Mensagem geral de retorno"
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "Logs"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Vendas

Venda - Atualizar
PUT/venda/atualizar

Example URI

PUT https://dev.bluve.com.br/api/v3/venda/atualizar
Request  Payload de Atualização
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
vendaid: Identificador da venda
Body
{
  "venda": {
    "vendedorPdvId": "id do vendedor no pdv",
    "produtos": [
      {
        "pdvId": "1",
        "qtd": 10,
        "valorVenda": 100,
        "vendedorPdvId": "id do vendedor no pdv [para vendas rateadas]",
        "rateado": false
      }
    ],
    "valorTotal": 100,
    "totalPecas": 10
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "venda": {
      "type": "object",
      "properties": {
        "vendedorPdvId": {
          "type": "string",
          "description": "id do vendedor no pdv"
        },
        "produtos": {
          "type": "array",
          "description": "Produtos"
        },
        "valorTotal": {
          "type": "number",
          "description": "Total da venda de todos os itens"
        },
        "totalPecas": {
          "type": "number",
          "description": "Total de peças vendidas"
        }
      },
      "required": [
        "valorTotal",
        "totalPecas"
      ],
      "description": "Venda"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "atualizad": true,
  "message": "Mensagem de Retorno",
  "logs": [
    "Descrição item a item do que ocorreu"
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "atualizad": {
      "type": "boolean",
      "description": "true/false"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "logs": {
      "type": "array",
      "description": "logs de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Vendas

Venda - Cancelar
DELETE/venda/cancelar

Example URI

DELETE https://dev.bluve.com.br/api/v3/venda/cancelar
Request  Payload de Cancelamento
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
vendaid: Identificador da venda
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "cancelada": true,
  "message": "Mensagem de Retorno"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "cancelada": {
      "type": "boolean",
      "description": "true/false"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Indicação

Função

Possibilita efetuar consulta de indicações (por código ou cpf) feitas por vendedores parceiros

Consultar por Código

Por Código
GET/indicacao/verificar/codigo

Example URI

GET https://dev.bluve.com.br/api/v3/indicacao/verificar/codigo
Request  Payload de Consulta de Indicação por Código
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
codigo: Código da indicação do cliente
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "indicacao": {
    "usado": true
  }
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "indicacao": {
      "type": "object",
      "properties": {
        "usado": {
          "type": "boolean",
          "description": "Usado/Não usado"
        }
      },
      "description": "Indicacao"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Consultar por CPF

Por CPF
GET/indicacao/verificar/cpf

Example URI

GET https://dev.bluve.com.br/api/v3/indicacao/verificar/cpf
Request  Payload de Consulta de Indicação por CPF
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
cpf: CPF do cliente que foi indicado
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "indicacoes": [
    {
      "codigo": "ABC1",
      "usado": false
    }
  ]
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "indicacoes": {
      "type": "array",
      "description": "Indicacões"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Ponto

Função

Possibilita que sistemas de ponto sejam integrados ao Fila do Bluve para que os nossos vendedores entram e saiam da fila automaticamente. Observe que a rotina de Token deve usar a versão 2.0 da api e não o token v1 descrito no início deste documento.

Geração do Token

Criação do Token
GET/ponto/getToken

Example URI

GET https://dev.bluve.com.br/api/v3/ponto/getToken
Request  Gerar o Token
HideShow
Headers
Accept: application/json
Content-Type: application/json
key: chave-unica-de-integracao
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno",
  "token": "Token de Autorização"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    },
    "token": {
      "type": "string",
      "description": "Token de autorização"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}

Envio da marcação de ponto

Enviar marcação
POST/ponto/send

Example URI

POST https://dev.bluve.com.br/api/v3/ponto/send
Request  Payload de Ponto
HideShow
Headers
Accept: application/json
Content-Type: application/json
Authorization: bearer jwt-token
cpf: Cpf do vendedor
timestamp: Data e Hora do evento em formato timestamp
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 200,
  "message": "Mensagem de Retorno"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Mensagem de Retorno"
    }
  }
}
Response  400
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 400,
  "message": "Motivo da Rejeição",
  "errors": []
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Motivo da Rejeição"
    },
    "errors": {
      "description": "Informado apenas quando for o caso"
    }
  }
}
Response  403
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 403,
  "message": "Token inválido ou expirado"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Token inválido ou expirado"
    }
  }
}
Response  404
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 404,
  "message": "Not Found / Quando não encontrar o registro informado por parâmtro, como empresa, vendedor, etc"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string",
      "description": "Not Found"
    }
  }
}
Response  429
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 429,
  "message": "Muitas requisições no endpoint. Alguns só permitem o envio de integração a cada 24 horas"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "message": {
      "type": "string"
    }
  }
}
Response  500
HideShow
Headers
Content-Type: application/json
Body
{
  "code": 500,
  "error": "Motivo do Erro"
}
Schema
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "description": "Código de Retorno (o mesmo do http response)"
    },
    "error": {
      "type": "string",
      "description": "Motivo do Erro"
    }
  }
}

Generated by aglio on 29 Sep 2022