# Almanac.tools > Deterministic, primary-source-cited reference APIs for fintech, HR, legal, and ops software. Seven APIs behind one key. All endpoints live under https://almanac.tools/v1/ and require an `Authorization: Bearer ` header. Successful responses are deterministic JSON wrapped in a `{ "data": ... }` envelope; errors use `{ "error": { "code", "message", "status" } }`. Input validation runs before authentication, so a malformed request never consumes a credit. ## APIs ### Business Days & Settlement Page: https://almanac.tools/business-days The Business Days API computes whether a date is a trading or business day, adds or counts business days, and resolves T+N settlement dates across 21 market and national calendars. Unlike free holiday APIs, it models market half-days, regional subcalendars, and observed-date shifts. - GET https://almanac.tools/v1/business-days/check — Is a date a business day in a jurisdiction? Returns holiday name + type. - GET https://almanac.tools/v1/business-days/add — Add N business days to a date. - GET https://almanac.tools/v1/business-days/diff — Count business days between two dates. - GET https://almanac.tools/v1/business-days/next — Next business day after a date. - GET https://almanac.tools/v1/business-days/holidays — List holidays for a jurisdiction over a range. - GET https://almanac.tools/v1/business-days/jurisdictions — List supported jurisdictions and hierarchy. - POST https://almanac.tools/v1/business-days/settlement — Compute a T+N settlement date for a market. - POST https://almanac.tools/v1/business-days/batch — Multi-jurisdiction check in one call. ### VAT & GST Validation Page: https://almanac.tools/vat The VAT & GST Validation API checks whether a VAT or GST registration number is well-formed, normalizing it, detecting its country and scheme, and verifying the format against 36 national rule sets. For six countries it also runs the published checksum algorithm. It is deterministic and offline — it never depends on the EU VIES service being up. - GET https://almanac.tools/v1/vat/validate — Validate one VAT/GST number (query: vat). Returns country, scheme, format and checksum result. - GET https://almanac.tools/v1/vat/countries — List all supported schemes with a real example and whether a checksum is implemented. - POST https://almanac.tools/v1/vat/batch — Validate up to 50 numbers in one call (body: vats[]), preserving input order. ### Postal Code Validation Page: https://almanac.tools/postal-codes The Postal Code Validation API checks whether a postal code is structurally valid for a given country, normalizes it to canonical form, and tells you honestly when a country has no postal-code system. It validates format against 208 countries — no live address-database lookup and no paid verification subscription required. - GET https://almanac.tools/v1/postal-codes/validate — Validate one code against a country format. Query: code, country. - GET https://almanac.tools/v1/postal-codes/countries — List every supported country, its name and whether it uses postal codes. - POST https://almanac.tools/v1/postal-codes/batch — Validate up to 100 { code, country } items in one call. ### NAICS Industry Codes Page: https://almanac.tools/naics The NAICS Industry Codes API resolves a NAICS 2022 code to its official title and hierarchy, ranks free-text industry descriptions to candidate codes, and crosswalks legacy 1987 SIC codes to their NAICS equivalents. It covers all 20 sectors down to 6-digit national industries, so onboarding, KYB and firmographic-enrichment forms can classify a business without scraping the Census site. - GET https://almanac.tools/v1/naics/lookup — Resolve a NAICS code (2–6 digit or ranged sector) to its title, level and parent. - GET https://almanac.tools/v1/naics/search — Ranked keyword search over industry titles. Query: q, optional limit. - GET https://almanac.tools/v1/naics/sectors — List all 20 NAICS 2022 sectors. - GET https://almanac.tools/v1/naics/crosswalk — Map a 1987 SIC code to its NAICS 2022 entries. Query: sic. ### IBAN Validation Page: https://almanac.tools/iban The IBAN Validation API checks an International Bank Account Number for the right length, the correct per-country BBAN structure, and a valid ISO 7064 mod-97-10 check digit, then extracts the bank, branch and account fields for the countries with a known layout. It covers the full 77-country IBAN registry and is pure and deterministic — no network, no clock, no I/O. - GET https://almanac.tools/v1/iban/validate — Validate one IBAN (query: iban). Returns format, checksum and extracted fields. - GET https://almanac.tools/v1/iban/countries — List all 77 registry countries with total length and a valid example. - POST https://almanac.tools/v1/iban/batch — Validate up to 50 IBANs in one call (body: ibans[]). ### HS & Tariff Codes Page: https://almanac.tools/hs-codes The HS & Tariff Codes API serves the World Customs Organization Harmonized System 2022 nomenclature as structured JSON — the international 6-digit base every country builds its tariff schedule on. It looks up a code, searches the taxonomy by keyword, and resolves the section/chapter hierarchy, so you classify products without parsing PDF tariff schedules. - GET https://almanac.tools/v1/hs-codes/lookup — Look up one HS code (2/4/6-digit, dotted forms accepted). Returns title, level, section and parent. - GET https://almanac.tools/v1/hs-codes/search — Keyword search over entry titles with relevance ranking. Optional limit (default 25). - GET https://almanac.tools/v1/hs-codes/sections — List all 21 WCO sections with their chapter membership. - GET https://almanac.tools/v1/hs-codes/chapters — List all 99 chapters with title and parent section. ### Statute of Limitations Page: https://almanac.tools/statutes The Statute of Limitations API returns the general civil limitation period (in years) for a US state and cause of action, and computes a filing deadline from an accrual date. It is general reference information, not legal advice: real deadlines turn on exceptions like discovery rules, tolling, and minority, so always confirm with a licensed attorney. - GET https://almanac.tools/v1/statutes/lookup — Limitation period (years) for a state + cause. Query: state, cause. - GET https://almanac.tools/v1/statutes/causes — List the 8 supported causes of action (id + label). - GET https://almanac.tools/v1/statutes/states — List the 51 supported jurisdictions (2-letter code + name). - POST https://almanac.tools/v1/statutes/deadline — Compute a filing deadline from an accrual date. Body: state, cause, accrualDate. ## Reference - OpenAPI 3.1 spec: https://almanac.tools/api/openapi - Interactive documentation: https://almanac.tools/docs - Pricing (free / $29 / $99 per month, one key for all APIs): https://almanac.tools/pricing - Methodology & sourcing: https://almanac.tools/methodology