Listar materiais e cores
GET
https://api.precificador3d.com.br/v1/insumos/materiais Escopo: insumos:ler. Custo por kg só com produtos:custos.
cURL
curl "https://api.precificador3d.com.br/v1/insumos/materiais?limite=25" \
-H "Authorization: Bearer $PC3D_CHAVE" JavaScript
const resposta = await fetch('https://api.precificador3d.com.br/v1/insumos/materiais?limite=25', {
headers: {
Authorization: `Bearer ${process.env.PC3D_CHAVE}`,
},
});
if (!resposta.ok) {
const erro = await resposta.json(); // application/problem+json
throw new Error(`${erro.codigo}: ${erro.detail} (${erro.requisicao_id})`);
}
const dados = await resposta.json(); Python
import os
import requests
resposta = requests.get(
"https://api.precificador3d.com.br/v1/insumos/materiais",
params={
"limite": 25,
},
headers={
"Authorization": f"Bearer {os.environ['PC3D_CHAVE']}",
},
timeout=10,
)
resposta.raise_for_status()
dados = resposta.json() Parâmetros de consulta
limiteinteger- Itens por página, de 1 a 100. Acima de 25 conta como operação cara. (de 1 a 100; padrão 25)
cursorstring- Valor de
proximo_cursorda página anterior. Opaco. (até 200 caracteres) atualizado_desdestring (date-time)- Só o que mudou a partir deste instante. Use com
ordem=atualizado_empara reconciliar depois de webhooks.
Cabeçalhos
If-None-Matchstring- ETag recebida antes. Se nada mudou, a resposta é
304e não gasta a cota mensal. (até 100 caracteres)
Resposta 200
Página de materiais.
Campos da resposta (17)
dadosarray de Material- (0 a 100 itens)
dados[].idstring (uuid)dados[].tipostringdados[].marcastring | nulldados[].linhastring | nulldados[].acabamento_clientestring- Valores:
nenhum,brilhante,fosco. dados[].atualizado_emstring (date-time)dados[].custo_kg_centavosinteger- [custos] (de 0 a 100000000000)
dados[].coresarray de objectdados[].cores[].idstring (uuid)dados[].cores[].codigostringdados[].cores[].nome_clientestringdados[].cores[].nome_internostringdados[].cores[].cor_hexstring | nulldados[].cores[].disponivelbooleandados[].cores[].custo_kg_centavosinteger- [custos] Só quando diferente do material. (de 0 a 100000000000)
proximo_cursorstring | null- Cursor da próxima página, ou
nullno fim.
{
"dados": [
{
"id": "3e4f5a6b-7c8d-4e9f-0a1b-2c3d4e5f6a7b",
"tipo": "PLA",
"marca": "Marca Exemplo",
"linha": "Silk",
"acabamento_cliente": "brilhante",
"atualizado_em": "2026-10-01T09:12:00-03:00",
"cores": [
{
"id": "4f5a6b7c-8d9e-4f0a-1b2c-3d4e5f6a7b8c",
"codigo": "#015",
"nome_cliente": "Dourado",
"nome_interno": "Dourado seda",
"cor_hex": "#C9A227",
"disponivel": true
}
]
}
],
"proximo_cursor": null
} Outras respostas
- 304 Nada mudou desde a ETag informada.
- 400
dados_invalidos: Dados, filtro, cursor ou cabeçalho inválido. - 401
nao_autenticado: Chave ausente, malformada, desconhecida, revogada ou expirada (a resposta é a mesma para todos os casos). - 403
escopo_insuficiente: Escopo insuficiente, conta bloqueada, módulo desligado ou chave suspensa. - 429
limite_excedido: Limite de uso excedido (rajada, minuto, mês ou requisições simultâneas). - 500
erro_interno: Erro interno. O detalhe fica no log, ligado ao requisicao_id. - 503
indisponivel: API desligada, sob pressão (disjuntor aberto) ou no limite global da plataforma.