Items
Itens (insumos) de um setor. Suporta busca textual em português (full-text search), filtro por unidade de medida, UF, mês de referência, regime tributário e paginação. Cada item possui código, descrição, unidade, preço unitário, normas técnicas, informações gerais e imagem de referência.
Buscar itens de um setor
Retorna uma lista paginada de itens (insumos) de um setor.
Busca textual: Use o parâmetro search para buscar por descrição ou informações gerais. A busca utiliza full-text search em português (PostgreSQL tsvector).
Filtro por unidade: Use o parâmetro unit para filtrar por unidade de medida (ex: KG, M, M2, UN).
Filtro por UF: Use o parâmetro state para filtrar por estado (ex: SP, RJ, MG).
Filtro por mês: Use o parâmetro month no formato AAAA-MM. Se não informado, retorna o último mês disponível.
Regime tributário: Use o parâmetro is_desonerated para filtrar por desoneração. Default: false.
Paginação: Use page e limit para controlar a paginação. Máximo de 100 itens por página.
Performance: Use include_total=false para evitar COUNT(*) e compact=true para retornar payload reduzido.
Path Parameters
Query Parameters
Número da página
11 <= valueItens por página (máx. 100)
501 <= value <= 100Inclui total e totalPages na paginação. Use false para evitar COUNT(*) em listagens grandes.
trueTermo de busca (full-text search em português)
Filtrar por unidade de medida
UF de 2 letras (ex: SP, RJ, MG)
2 <= length <= 2Mês de referência no formato AAAA-MM
^\d{4}-\d{2}$Regime tributário: true = desonerado, false = não desonerado
falseRetorna payload reduzido para listagens de alta performance
falseResponse Body
application/json
application/json
curl -X GET "https://api.sinpres.com.br/api/v1/sectors/civil-construction/items"{
"data": [
{
"id": 0,
"categoryId": 0,
"code": 0,
"description": "string",
"unit": "string",
"stateCode": "st",
"referenceMonth": "strings",
"isDesonerated": true,
"unitPrice": 0,
"technicalStandards": "string",
"generalInfo": "string",
"imageUrl": "string",
"metadata": null,
"sourceUpdatedAt": "string",
"previousCode": null,
"createdAt": "string"
}
],
"meta": {
"total": 0,
"page": 0,
"limit": 0,
"totalPages": 0,
"hasNextPage": true
}
}{
"error": "string"
}Detalhar item por código
Retorna os detalhes completos de um item (insumo) pelo seu código de referência. Para Construção Civil, o código corresponde ao código SINAPI. Aceita filtros opcionais de UF, mês e regime tributário.
Path Parameters
Query Parameters
UF de 2 letras (ex: SP, RJ, MG)
2 <= length <= 2Mês de referência no formato AAAA-MM
^\d{4}-\d{2}$Regime tributário: true = desonerado, false = não desonerado
falseResponse Body
application/json
application/json
curl -X GET "https://api.sinpres.com.br/api/v1/sectors/civil-construction/items/{code}"{
"data": {
"id": 0,
"categoryId": 0,
"code": 0,
"description": "string",
"unit": "string",
"stateCode": "st",
"referenceMonth": "strings",
"isDesonerated": true,
"unitPrice": 0,
"technicalStandards": "string",
"generalInfo": "string",
"imageUrl": "string",
"metadata": null,
"sourceUpdatedAt": "string",
"previousCode": null,
"createdAt": "string"
}
}{
"error": "string"
}Buscar múltiplos insumos por código
Retorna múltiplos insumos em uma única request, preservando a ordem de entrada e evitando N+1 no consumidor. Limite máximo de 100 consultas por request.
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://api.sinpres.com.br/api/v1/sectors/civil-construction/items/bulk" \ -H "Content-Type: application/json" \ -d '{ "queries": [ { "code": "34", "state": "SP", "month": "2026-03", "is_desonerated": false } ] }'{
"results": [
{
"code": "string",
"found": true,
"item": {
"id": 0,
"categoryId": 0,
"code": 0,
"description": "string",
"unit": "string",
"stateCode": "st",
"referenceMonth": "strings",
"isDesonerated": true,
"unitPrice": 0,
"technicalStandards": "string",
"generalInfo": "string",
"imageUrl": "string",
"metadata": null,
"sourceUpdatedAt": "string",
"previousCode": null,
"createdAt": "string"
},
"reason": "no_price_for_coordinate"
}
]
}{
"error": "string"
}{
"error": "string"
}