{"_id":"@altis-tech/fipe","name":"@altis-tech/fipe","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@altis-tech/fipe","version":"0.1.0","description":"Cliente oficial da Altis FIPE API — consulte a Tabela FIPE (carros, motos, caminhões) com uma chave de API.","keywords":["fipe","tabela-fipe","altis","veiculos","carros","api","brasil"],"license":"SEE LICENSE IN LICENSE","author":{"name":"Altis"},"homepage":"https://fipe.altis.online/docs","repository":{"type":"git","url":"git+https://github.com/altis/altisfipeapi.git","directory":"packages/sdk-node"},"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"engines":{"node":">=18"},"scripts":{"build":"tsup src/index.ts --format esm,cjs --dts --clean","dev":"tsup src/index.ts --format esm,cjs --dts --watch","test":"vitest run","prepublishOnly":"npm run build"},"devDependencies":{"tsup":"^8.0.0","typescript":"^5.4.0","vitest":"^1.6.0"},"_id":"@altis-tech/fipe@0.1.0","gitHead":"595b4e238e30d27f49568462351ac9fabf2ea535","bugs":{"url":"https://github.com/altis/altisfipeapi/issues"},"_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-X3aH+0VWoD+3AVke/s/BAKl5Lfmtbv6vNf4goVxZXSZQWBETyvPt/cYFRDWDupZbHx9GS+Ib6KoNAYzNwUhGWQ==","shasum":"280f63a67dc50fe22046a60a21e5a0d847bb98d2","tarball":"https://registry.npmjs.org/@altis-tech/fipe/-/fipe-0.1.0.tgz","fileCount":7,"unpackedSize":25386,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDxxBGHchwVqEOQCWFk6dFvBwdGLW+tx1inoLBaxnjhCgIgVhlRX5s5EEhRgQeMaP2HRexKZrz3vePx9EuaOfmCzcE="}]},"_npmUser":{"name":"lebettega","email":"lebettega@gmail.com"},"directories":{},"maintainers":[{"name":"lebettega","email":"lebettega@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fipe_0.1.0_1780769591053_0.4876048496828378"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-06T18:13:10.949Z","0.1.0":"2026-06-06T18:13:11.188Z","modified":"2026-06-06T18:13:11.398Z"},"maintainers":[{"name":"lebettega","email":"lebettega@gmail.com"}],"description":"Cliente oficial da Altis FIPE API — consulte a Tabela FIPE (carros, motos, caminhões) com uma chave de API.","homepage":"https://fipe.altis.online/docs","keywords":["fipe","tabela-fipe","altis","veiculos","carros","api","brasil"],"repository":{"type":"git","url":"git+https://github.com/altis/altisfipeapi.git","directory":"packages/sdk-node"},"author":{"name":"Altis"},"bugs":{"url":"https://github.com/altis/altisfipeapi/issues"},"license":"SEE LICENSE IN LICENSE","readme":"# @altis-tech/fipe\n\nCliente oficial **Node/TypeScript** da [Altis FIPE API](https://fipe.altis.online). Consulte a Tabela FIPE (carros, motos e caminhões) com poucas linhas.\n\n## Instalação\n\n```bash\nnpm install @altis-tech/fipe\n# ou: pnpm add @altis-tech/fipe / yarn add @altis-tech/fipe\n```\n\n## Pegue sua chave (grátis)\n\n1. Crie a conta em **https://fipe.altis.online/cadastro** — você ganha **1.000 créditos de cortesia**.\n2. Copie a chave `fpk_live_...` que aparece no fim do cadastro (ou em **Painel → API Keys**).\n3. Exporte como variável de ambiente:\n\n```bash\nexport ALTIS_FIPE_KEY=\"fpk_live_xxxxxxxxxxxx\"\n```\n\n## Uso\n\n```ts\nimport { AltisFipe } from \"@altis-tech/fipe\";\n\nconst fipe = new AltisFipe({ apiKey: process.env.ALTIS_FIPE_KEY! });\n\n// 1. Marcas de carros (grátis, 0 créditos)\nconst brands = await fipe.cars.brands();\n\n// 2. Modelos da marca\nconst models = await fipe.cars.models(56);\n\n// 3. Anos disponíveis\nconst years = await fipe.cars.years(56, 9984);\n\n// 4. Preço FIPE (consulta-mãe)\nconst quote = await fipe.cars.quote({ brandId: 56, modelId: 9984, yearId: \"2025-6\" });\nconsole.log(`${quote.model}: ${quote.price} (${quote.referenceMonth})`);\n```\n\nMotos e caminhões usam a mesma interface:\n\n```ts\nawait fipe.motorcycles.brands();\nawait fipe.trucks.quote({ brandId: 1, modelId: 100, yearId: \"2024-3\" });\n```\n\n## Tratamento de erros\n\n```ts\nimport { AltisFipe, AltisFipeError } from \"@altis-tech/fipe\";\n\ntry {\n  await fipe.cars.quote({ brandId: 56, modelId: 9984, yearId: \"2025-6\" });\n} catch (err) {\n  if (err instanceof AltisFipeError) {\n    if (err.isOutOfCredits) console.error(\"Sem créditos — compre mais no painel.\");\n    else if (err.isRateLimited) console.error(\"Muitas requisições, aguarde.\");\n    else if (err.isAuthError) console.error(\"Chave inválida.\");\n    else console.error(err.code, err.message, err.details);\n  }\n}\n```\n\n## Opções\n\n| Opção | Default | Descrição |\n| --- | --- | --- |\n| `apiKey` | — | **Obrigatório.** Chave `fpk_live_...` |\n| `baseUrl` | `https://api.fipe.altis.online` | Sobrescreve a base (ex.: staging/local) |\n| `timeoutMs` | `15000` | Timeout por requisição |\n| `maxRetries` | `2` | Retentativas em 429/5xx (com backoff) |\n| `fetch` | global | `fetch` customizado |\n\n## Combustível (`yearId`)\n\n`yearId` segue o padrão `YYYY-F`: `1`=Gasolina, `2`=Álcool, `3`=Diesel, `4`=Flex, `5`=Elétrico, `6`=Híbrido. Ex.: `2025-4` = 2025 Flex.\n\n## Créditos por chamada\n\n| Chamada | Créditos |\n| --- | --- |\n| `references()`, `brands()` | 0 |\n| `models()`, `years()`, `yearsByBrand()`, `modelsByYear()` | 1 |\n| `quote()` | 2 |\n\nA cobrança só ocorre em respostas `2xx`.\n\n## Licença\n\nProprietária — Altis 2026.\n","readmeFilename":"README.md","_rev":"1-9f3485d3371daa8fe3d59ad5ba8f1d28"}