API HFbrasil

A API é um serviço de disponibilização de dados divulgados no site https://www.hfbrasil.org.br/br. Todos os direitos divulgados no site, devem ser aplicados para esse serviço.

A API foi desenvolvida no padrão REST.

URL da API: https://api.hfbrasil.org.br/v1

Serviço restrito

O serviço de acesso a dados por meio da API está restrito para parcerias. Informações devem ser solicitadas por e-mail: hfbrasil@cepea.org.br

1 - Autenticação

POST https://api.hfbrasil.org.br/v1/login

O token de retorno terá validade de 3h, sendo necessário fazer um novo login após esse período.


+ Request (JSON Message)

+ Header

Content-Type: application/json

  

+ Body

  

{

"email": "email",

"password": "password",

}


+ Response 200 (application/json)

  

+ Body

  

{ "token": "seu token" }

2 - Atualização de senha

POST https://api.hfbrasil.org.br/v1/update


+ Request (JSON Message)

  

+ Header

Content-Type: application/json

Authorization: token

  

+ Body

  

{

"password": "new password",

}


+ Response 200 (application/json)

  

+ Body

  

{ "message": "user has been updated" }

3 - Produtos

Nesta chamada será retornado todos os produtos disponíveis na API.

Exemplo: Batata, Cebola, Uva etc.

GET https://api.hfbrasil.org.br/v1/products


+ Request

  

+ Header

Authorization: token


+ Response 200 (application/json)

  

+ Body

  

[

{

"id": 1,

"product": "Batata"

},

{

"id": 2,

"product": "Cebola"

},

{

"id": 3,

"product": "Uva"

}, ...

]

4 - Listar Códigos de produtos

Nesta chamada serão listados todos os códigos disponíveis para consulta na API.

A solicitação abaixo retorna todos os códigos de todos os produtos disponíveis.

GET https://api.hfbrasil.org.br/v1/codes


+ Request

  

+ Header

Authorization: token


+ Response 200 (application/json)

  

+ Body

  

[

{

"id": 1,

"product": "Batata",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"unit": "sc. 50 Kg",

"region": "Brasília (região)"

},

{

"id": 2,

"product": "Batata",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"unit": "sc. 50 Kg",

"region": "Curitiba (região)"

},

{

"id": 3,

"product": "Batata",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"unit": "sc. 50 Kg",

"region": "Guarapuava (região)"

}, ...

]

Existe também a possibilidade de requisitar apenas os códigos dos produtos desejados.

GET https://api.hfbrasil.org.br/v1/codes?products=1-2

Essa requisição irá retornar apenas os códigos de Batata (1) e Cebola (2).

Atenção: sempre separar com “-” cada produto desejado como no exemplo acima.

5 - Último preço

A chamada retornará somente o valor da última data disponível do código solicitado.

GET https://api.hfbrasil.org.br/v1/last-price?codes=1

Esse exemplo irá retornar apenas o valor da última data disponível do código (1), referente a:


"id": 1,

"product": "Batata",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"unit": "sc. 50 Kg",

"region": "Brasília (região)"


+ Request

  

+ Header

Authorization: token


+ Response 200 (application/json)

  

+ Body

  

[

{

"date": "2021-09-08T03:00:00.000Z",

"price": 46,

"id": 1

}

]

É possível solicitar até no máximo 10 códigos por vez, como o exemplo abaixo:

GET /last-price?codes=1-2-3-4-5-6-7-8-9-10

Irá retornar o valor da última data disponível para cada um dos códigos.

Atenção: sempre separar com “-” cada código desejado, como no exemplo acima.

6 - Histórico de preços

Esta chamada retornará o histórico de preços de somente um código por solicitação.

GET https://api.hfbrasil.org.br/v1/price-history?codes=1?start_date=2020-05-31&end_date=2021-05-30

Nessa requisição algumas regras específicas são necessárias:

Somente pode ser solicitado um código por requisição.

É obrigatório o envio dos parâmetros start_date e end_date. Pois a requisição irá retornar todos os preços disponíveis nesse intervalo de datas.

A intervalor máximo entre as datas de início e fim não deve ser superior a 1 ANO.

O formato das datas devem ser do tipo YYYY-MM-DD.


+ Request

  

+ Header

Authorization: token


+ Response 200 (application/json)

  

+ Body

  

[

{

"date": "2020-08-06T03:00:00.000Z",

"product": "Batata",

"unit": "sc. 50 Kg",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"region": "Brasília (região)",

"price": 46.483

},

{

"date": "2020-09-04T03:00:00.000Z",

"product": "Batata",

"unit": "sc. 50 Kg",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"region": "Brasília (região)",

"price": 45

},

{

"date": "2020-10-09T03:00:00.000Z",

"product": "Batata",

"unit": "sc. 50 Kg",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"region": "Brasília (região)",

"price": 39.1

},

{

"date": "2020-11-05T03:00:00.000Z",

"product": "Batata",

"unit": "sc. 50 Kg",

"description": "Valor mínimo - padrão agata - beneficiada - >=41 t/ha",

"region": "Brasília (região)",

"price": 40.55

}

]