MCPcopy Create free account
hub / github.com/BrasilAPI/BrasilAPI / getFipePriceInfo

Function getFipePriceInfo

pages/api/fipe/preco/v1/[fipeCode].js:6–36  ·  view source on GitHub ↗
(request, response)

Source from the content-addressed store, hash-verified

4import { listReferenceTables } from '@/services/fipe/referenceTable';
5
6async function getFipePriceInfo(request, response) {
7 try {
8 const referenceTableCode = request.query.tabela_referencia;
9 const { fipeCode } = request.query;
10
11 const referenceTable = referenceTableCode
12 ? parseInt(referenceTableCode, 10)
13 : undefined;
14
15 if (referenceTableCode) {
16 const referenceTables = await listReferenceTables();
17
18 const hasReferenceTable = !!referenceTables.find(
19 (table) => table.codigo === referenceTable
20 );
21
22 if (!hasReferenceTable) {
23 throw new BadRequestError({ message: 'Tabela de referência inválida' });
24 }
25 }
26
27 const data = await getFipePrice({ referenceTable, fipeCode });
28 return response.status(200).json(data);
29 } catch (err) {
30 if (err.message === 'Código fipe inválido') {
31 throw new BadRequestError({ message: err.message });
32 }
33
34 throw err;
35 }
36}
37
38export default app({ cache: 86400 }).get(getFipePriceInfo);

Callers

nothing calls this directly

Calls 2

listReferenceTablesFunction · 0.90
getFipePriceFunction · 0.90

Tested by

no test coverage detected