{"openapi":"3.1.0","info":{"title":"Conta Clara API","version":"1.0.0","description":"Cálculos informativos brasileiros de 2026. Gratuito: 50 chamadas/dia UTC por IP. Chave anual: R$ 197,00, 20.000 chamadas/dia por 365 dias, sem renovação automática. Compra: https://api.rohnelt.dev/docs#chave-anual. Exemplos: https://api.rohnelt.dev/exemplos.","contact":{"email":"suporte@api.rohnelt.dev"}},"externalDocs":{"description":"Chave anual — compra e condições","url":"https://api.rohnelt.dev/docs#chave-anual"},"servers":[{"url":"https://api.rohnelt.dev"}],"security":[{},{"ApiKey":[]},{"Bearer":[]}],"components":{"securitySchemes":{"ApiKey":{"type":"apiKey","in":"header","name":"X-API-Key"},"Bearer":{"type":"http","scheme":"bearer"}}},"paths":{"/v1/inss":{"get":{"operationId":"get_inss","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"example":3000}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_inss","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":100000000}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/irrf":{"get":{"operationId":"get_irrf","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"example":3000},{"name":"dependents","in":"query","required":false,"schema":{"type":"integer","default":0,"minimum":0,"maximum":100},"example":0}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_irrf","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"dependents":{"type":"integer","default":0,"minimum":0,"maximum":100}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000,"dependents":0}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/ferias":{"get":{"operationId":"get_ferias","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"example":3000},{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":30,"minimum":1,"maximum":30},"example":30},{"name":"dependents","in":"query","required":false,"schema":{"type":"integer","default":0,"minimum":0,"maximum":100},"example":0}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_ferias","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"days":{"type":"integer","default":30,"minimum":1,"maximum":30},"dependents":{"type":"integer","default":0,"minimum":0,"maximum":100}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000,"days":30,"dependents":0}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/13o":{"get":{"operationId":"get_13o","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"example":3000},{"name":"months","in":"query","required":false,"schema":{"type":"integer","default":12,"minimum":0,"maximum":12},"example":12},{"name":"dependents","in":"query","required":false,"schema":{"type":"integer","default":0,"minimum":0,"maximum":100},"example":0},{"name":"advance","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":100000000},"example":0}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_13o","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"months":{"type":"integer","default":12,"minimum":0,"maximum":12},"dependents":{"type":"integer","default":0,"minimum":0,"maximum":100},"advance":{"type":"number","default":0,"minimum":0,"maximum":100000000}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000,"months":12,"dependents":0,"advance":0}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/rescisao":{"get":{"operationId":"get_rescisao","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"example":3000},{"name":"days","in":"query","required":false,"schema":{"type":"integer","default":30,"minimum":0,"maximum":30},"example":30},{"name":"months13","in":"query","required":false,"schema":{"type":"integer","default":12,"minimum":0,"maximum":12},"example":12},{"name":"monthsVacation","in":"query","required":false,"schema":{"type":"integer","default":12,"minimum":0,"maximum":12},"example":12},{"name":"periods","in":"query","required":false,"schema":{"type":"integer","default":0,"minimum":0,"maximum":10},"example":0},{"name":"notice","in":"query","required":false,"schema":{"type":"integer","default":30,"minimum":0,"maximum":90},"example":30},{"name":"fgts","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":100000000},"example":0},{"name":"type","in":"query","required":false,"schema":{"type":"string","enum":["sem","acordo","pedido","justa"],"default":"sem"},"example":"sem"}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_rescisao","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":100000000},"days":{"type":"integer","default":30,"minimum":0,"maximum":30},"months13":{"type":"integer","default":12,"minimum":0,"maximum":12},"monthsVacation":{"type":"integer","default":12,"minimum":0,"maximum":12},"periods":{"type":"integer","default":0,"minimum":0,"maximum":10},"notice":{"type":"integer","default":30,"minimum":0,"maximum":90},"fgts":{"type":"number","default":0,"minimum":0,"maximum":100000000},"type":{"type":"string","enum":["sem","acordo","pedido","justa"],"default":"sem"}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000,"days":30,"months13":12,"monthsVacation":12,"periods":0,"notice":30,"fgts":0,"type":"sem"}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/das-mei":{"get":{"operationId":"get_das-mei","parameters":[{"name":"activity","in":"query","required":true,"schema":{"type":"string","enum":["comercio","servicos","ambos"],"default":"servicos"},"example":"servicos"}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_das-mei","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"activity":{"type":"string","enum":["comercio","servicos","ambos"],"default":"servicos"}},"required":["activity"],"additionalProperties":false},"example":{"activity":"servicos"}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/horas-extras":{"get":{"operationId":"get_horas-extras","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":2200,"minimum":0,"maximum":10000000,"description":"Base remuneratória (R$)"},"example":2200},{"name":"divisor","in":"query","required":false,"schema":{"type":"number","default":220,"minimum":1,"maximum":300,"description":"Divisor mensal da jornada"},"example":220},{"name":"hours50","in":"query","required":false,"schema":{"type":"number","default":10,"minimum":0,"maximum":744,"description":"Horas extras a 50%"},"example":10},{"name":"hours100","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas extras a 100%"},"example":0},{"name":"workdays","in":"query","required":false,"schema":{"type":"integer","default":26,"minimum":1,"maximum":31,"description":"Dias úteis do mês (inclua sábados aplicáveis)"},"example":26},{"name":"rest","in":"query","required":false,"schema":{"type":"integer","default":4,"minimum":0,"maximum":31,"description":"Domingos e feriados sem duplicidade"},"example":4},{"name":"nightHours","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio noturnas regulares (sem extras)"},"example":0},{"name":"night50","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio extras noturnas a 50% (não repetir acima)"},"example":0},{"name":"night100","in":"query","required":false,"schema":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio extras noturnas a 100% (não repetir acima)"},"example":0}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_horas-extras","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":2200,"minimum":0,"maximum":10000000,"description":"Base remuneratória (R$)"},"divisor":{"type":"number","default":220,"minimum":1,"maximum":300,"description":"Divisor mensal da jornada"},"hours50":{"type":"number","default":10,"minimum":0,"maximum":744,"description":"Horas extras a 50%"},"hours100":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas extras a 100%"},"workdays":{"type":"integer","default":26,"minimum":1,"maximum":31,"description":"Dias úteis do mês (inclua sábados aplicáveis)"},"rest":{"type":"integer","default":4,"minimum":0,"maximum":31,"description":"Domingos e feriados sem duplicidade"},"nightHours":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio noturnas regulares (sem extras)"},"night50":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio extras noturnas a 50% (não repetir acima)"},"night100":{"type":"number","default":0,"minimum":0,"maximum":744,"description":"Horas de relógio extras noturnas a 100% (não repetir acima)"}},"required":["salary"],"additionalProperties":false},"example":{"salary":2200,"divisor":220,"hours50":10,"hours100":0,"workdays":26,"rest":4,"nightHours":0,"night50":0,"night100":0}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/fgts":{"get":{"operationId":"get_fgts","parameters":[{"name":"salary","in":"query","required":true,"schema":{"type":"number","default":3000,"minimum":0,"maximum":10000000,"description":"Remuneração sujeita ao FGTS (R$)"},"example":3000},{"name":"rate","in":"query","required":false,"schema":{"type":"number","default":8,"minimum":2,"maximum":8,"description":"Alíquota: 8 comum ou 2 aprendiz (%)","enum":[2,8]},"example":8},{"name":"balance","in":"query","required":false,"schema":{"type":"number","default":10000,"minimum":0,"maximum":100000000,"description":"Base rescisória para multa, não saldo após saques (R$)"},"example":10000},{"name":"current","in":"query","required":false,"schema":{"type":"number","default":10000,"minimum":0,"maximum":100000000,"description":"Saldo atual total das contas FGTS (R$)"},"example":10000},{"name":"months","in":"query","required":false,"schema":{"type":"integer","default":0,"minimum":0,"maximum":600,"description":"Meses futuros de depósitos a projetar"},"example":0}],"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"operationId":"post_fgts","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"salary":{"type":"number","default":3000,"minimum":0,"maximum":10000000,"description":"Remuneração sujeita ao FGTS (R$)"},"rate":{"type":"number","default":8,"minimum":2,"maximum":8,"description":"Alíquota: 8 comum ou 2 aprendiz (%)","enum":[2,8]},"balance":{"type":"number","default":10000,"minimum":0,"maximum":100000000,"description":"Base rescisória para multa, não saldo após saques (R$)"},"current":{"type":"number","default":10000,"minimum":0,"maximum":100000000,"description":"Saldo atual total das contas FGTS (R$)"},"months":{"type":"integer","default":0,"minimum":0,"maximum":600,"description":"Meses futuros de depósitos a projetar"}},"required":["salary"],"additionalProperties":false},"example":{"salary":3000,"rate":8,"balance":10000,"current":10000,"months":0}}}},"responses":{"200":{"description":"Cálculo informativo","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Entrada inválida","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Chave inválida ou expirada","content":{"application/json":{"schema":{"type":"object"}}}},"429":{"description":"Limite diário atingido","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/tabelas/2026":{"get":{"operationId":"tables2026","security":[],"responses":{"200":{"description":"Tabelas abertas de 2026; limite superior null significa sem teto.","content":{"application/json":{"schema":{"type":"object"}}}}}}}}}