{"openapi":"3.0.0","info":{"title":"API de jurisprudência do Jurisconsulto","description":"API REST de jurisprudência brasileira: busca semântica em mais de 42 milhões de decisões do STF, STJ, TST, TNU, CARF, tribunais de justiça, tribunais regionais federais e tribunais regionais do trabalho, com resposta em JSON.\n\nCada busca recebe uma consulta em linguagem natural, sem operadores booleanos, e devolve na mesma resposta jurisprudências, precedentes vinculantes e legislação relacionada. Cada decisão vem com tribunal, número do processo, órgão julgador, relator, data de julgamento, ementa, trecho citado, score de relevância e link para o inteiro teor no site do tribunal.\n\nA API é usada como etapa de recuperação (RAG) em assistentes jurídicos, como busca de jurisprudência dentro de softwares jurídicos e em levantamentos por tribunal, período, órgão julgador e relator. A contratação é feita com o time do Jurisconsulto: https://www.jurisconsulto.com.br/api.html\n\nFluxo recomendado:\n1. Use `POST /auth/login` para obter `accessToken` e `refreshToken`.\n\n2. Envie `Authorization: Bearer <accessToken>` nos endpoints protegidos.\n\n3. Use `POST /auth/refresh` com o `refreshToken` para renovar a sessão.\n\n4. Use `POST /jurisearch/search` para executar buscas jurídicas.","version":"1.0","termsOfService":"https://www.jurisconsulto.com.br/termos-de-uso.html","contact":{"name":"Jurisconsulto","url":"https://www.jurisconsulto.com.br/api.html","email":"suporte@jurisconsulto.com.br"}},"externalDocs":{"description":"Apresentação da API de jurisprudência, exemplos de código e contratação","url":"https://www.jurisconsulto.com.br/api.html"},"tags":[{"name":"Autenticação","description":"Login com email e senha do usuário de integração e renovação da sessão por refresh token."},{"name":"Busca Jurídica","description":"Busca semântica de jurisprudência, precedentes vinculantes e legislação, com os catálogos de tribunais, órgãos julgadores e relatores aceitos nos filtros."},{"name":"Uso da API","description":"Plano atual, limites e histórico de buscas da conta de integração."}],"security":[{"access-token":[]}],"paths":{"/auth/login":{"post":{"tags":["Autenticação"],"summary":"Autenticar usuário","description":"Autentica um usuário com **email** e **senha**.\n\nRetorna **accessToken**, **refreshToken** e um resumo do usuário autenticado.\n\nO backend também valida o domínio do **email** durante o login.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LogInRequest"}}}},"responses":{"200":{"description":"Autenticação realizada com sucesso e tokens emitidos para uso na API REST.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthTokens"}}}},"400":{"description":"**email** ou **senha** ausente, ou com tipo inválido."},"401":{"description":"Credenciais inválidas ou usuário sem permissão para autenticar com a conta ou domínio informado."}}}},"/auth/refresh":{"post":{"tags":["Autenticação"],"summary":"Renovar sessão REST","description":"Renova a sessão REST usando o **refreshToken** enviado no header **Authorization**.\n\nRetorna um novo **accessToken**, um novo **refreshToken** e o resumo do usuário autenticado.","security":[{"refresh-token":[]}],"responses":{"200":{"description":"Tokens renovados com sucesso.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuthTokens"}}}},"400":{"description":"Payload do **refreshToken** sem os campos obrigatórios."},"401":{"description":"Header **Authorization** ausente, inválido, ou **refreshToken** não é mais válido."}}}},"/tribunais":{"get":{"tags":["Busca Jurídica"],"summary":"Listar tribunais disponíveis para filtro","description":"Retorna os códigos de tribunais prontos para produção que podem ser enviados em `filtros.tribunais` ao chamar `POST /jurisearch/search`.","responses":{"200":{"description":"Tribunais disponíveis retornados com sucesso.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TribunaisResponse"}}}},"401":{"description":"Header Authorization ausente ou accessToken inválido."},"403":{"description":"O usuário autenticado não possui assinatura ativa ou acesso à API REST."}}}},"/orgaos-julgadores":{"get":{"tags":["Busca Jurídica"],"summary":"Listar órgãos julgadores de um tribunal","description":"Retorna os órgãos julgadores catalogados para o tribunal informado, com a grafia canônica aceita em `filtros.orgaosJulgadores` ao chamar `POST /jurisearch/search`.","parameters":[{"name":"tribunal","in":"query","required":true,"description":"Código do tribunal, um dos retornados por `GET /tribunais`.","schema":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"}}],"responses":{"200":{"description":"Órgãos julgadores retornados com sucesso.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgaosJulgadoresResponse"}}}},"400":{"description":"Parâmetro `tribunal` ausente, repetido, inválido ou indisponível na API."},"401":{"description":"Header Authorization ausente ou accessToken inválido."},"403":{"description":"O usuário autenticado não possui assinatura ativa ou acesso à API REST."},"429":{"description":"Limite de requisições excedido para este endpoint. Tente novamente em instantes."}}}},"/relatores":{"get":{"tags":["Busca Jurídica"],"summary":"Listar relatores de um tribunal","description":"Retorna os relatores catalogados para o tribunal informado, com a grafia exata aceita em `filtros.relatores` ao chamar `POST /jurisearch/search`. Envie `consulta` para restringir a lista aos nomes que contêm o texto informado, sem diferenciar acentos, maiúsculas ou pontuação.","parameters":[{"name":"tribunal","in":"query","required":true,"description":"Código do tribunal, um dos retornados por `GET /tribunais`.","schema":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"}},{"name":"consulta","in":"query","description":"Trecho opcional do nome do relator. Quando omitido ou vazio, retorna a lista completa do tribunal.","schema":{"type":"string","example":"nancy"}}],"responses":{"200":{"description":"Relatores retornados com sucesso.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RelatoresResponse"}}}},"400":{"description":"Parâmetro `tribunal` ausente, repetido, inválido ou indisponível na API, ou `consulta` repetida."},"401":{"description":"Header Authorization ausente ou accessToken inválido."},"403":{"description":"O usuário autenticado não possui assinatura ativa ou acesso à API REST."},"429":{"description":"Limite de requisições excedido para este endpoint. Tente novamente em instantes."}}}},"/jurisearch/search":{"post":{"tags":["Busca Jurídica"],"summary":"Buscar jurisprudência, precedentes e legislação","description":"Executa o fluxo principal de busca REST.\n\nRequer `accessToken` no header `Authorization`.\nBody mínimo aceito:\n```json\n{\n  \"consulta\": \"texto da busca\"\n}\n```\n\nÉ possível enviar filtros opcionais por tribunais e intervalo de datas.\n\nPara limitar ou paginar as jurisprudências, envie `paginacao` com `pagina`, `resultadosPorPagina` e/ou `maxResultados` (todos entre 1 e 100). O teto de 100 corresponde à capacidade de resultados finais do pipeline atual; a busca continua avaliando o pool interno de candidatos para preservar a relevância.\n\nExemplo com paginação:\n```json\n{\n  \"consulta\": \"responsabilidade civil por erro médico\",\n  \"paginacao\": {\n    \"pagina\": 2,\n    \"resultadosPorPagina\": 10,\n    \"maxResultados\": 50\n  }\n}\n```\n\n**Separação por posição:** quando a consulta pede decisões de um lado de uma questão jurídica, a busca identifica a tese em discussão e classifica cada jurisprudência pela ementa, em `posicao`:\n\n- `FAVORAVEL`: o julgado acolhe a tese;\n- `DESFAVORAVEL`: o julgado rejeita a tese;\n- `SEM_POSICAO_CLARA`: a ementa não deixa clara a posição.\n\nA tese segue o sentido em que a questão costuma ser levada ao tribunal. Em \"julgados favoráveis ao dano moral por atraso de voo\", a tese é \"o atraso de voo gera dano moral\" e `posicaoProcurada` vem como `FAVORAVEL`. Em \"precedentes que negam dano moral por atraso de voo\", a tese é a mesma e `posicaoProcurada` vem como `DESFAVORAVEL`.\n\nAs jurisprudências da `posicaoProcurada` vêm primeiro, depois as sem posição clara e por último as da posição oposta; dentro de cada grupo, a ordem é a de relevância. A separação considera todo o pool interno de candidatos antes do corte de `maxResultados`, então os julgados da posição procurada têm prioridade para entrar no resultado. Ela acrescenta alguns segundos ao tempo da busca.\n\nExemplo de resposta de uma busca com lado (campos resumidos):\n```json\n{\n  \"jurisprudencias\": [\n    { \"numeroProcesso\": \"REsp 1234567\", \"posicao\": \"DESFAVORAVEL\" },\n    { \"numeroProcesso\": \"AgInt no AREsp 7654321\", \"posicao\": \"SEM_POSICAO_CLARA\" },\n    { \"numeroProcesso\": \"REsp 2345678\", \"posicao\": \"FAVORAVEL\" }\n  ],\n  \"posicaoProcurada\": \"DESFAVORAVEL\"\n}\n```\n\nQuando a consulta não indica um lado, ou se a separação não puder ser feita, `posicaoProcurada` e `posicao` vêm como `null` e a lista segue só a ordem de relevância. A classificação é automática: confira o acórdão antes de citá-lo.\n\n**Observação sobre score de relevância:** `scoreRelevancia` é um indicador de precisão de acordo com o input (query) do usuário.\n\n**Observação sobre inteiro teor:** *nem todos os documentos disponíveis na plataforma possuem inteiro teor armazenado ou acessível no momento da consulta. Por isso, em alguns casos, o link do inteiro teor pode não ser retornado. Esse comportamento é esperado para parte da base.*","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JurisearchRequest"}}}},"responses":{"200":{"description":"Busca executada com sucesso. Retorna apenas os dados úteis para consumo do cliente.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JurisearchResponse"}}}},"400":{"description":"`consulta` ausente ou inválida, datas de filtro inválidas, ou paginação fora do intervalo permitido."},"401":{"description":"Header Authorization ausente ou accessToken inválido."},"403":{"description":"O usuário autenticado não possui assinatura ativa ou acesso à organização."},"429":{"description":"Limite de requisições excedido para este endpoint. Tente novamente em instantes."}}}},"/usage":{"get":{"tags":["Uso da API"],"summary":"Consultar o uso da API","description":"Retorna o usuário, o plano atual e o histórico paginado de buscas REST. Quando o usuário pertence a uma organização ativa, retorna também o uso combinado da organização, com a quebra por credencial.","parameters":[{"name":"pagina","in":"query","description":"Página do histórico. O padrão é 1.","schema":{"type":"integer","example":1}},{"name":"itensPorPagina","in":"query","description":"Quantidade de itens por página. O máximo é 100.","schema":{"type":"integer","example":20}},{"name":"dataInicial","in":"query","description":"Início opcional do intervalo de uso, em ISO 8601.","schema":{"type":"string","format":"date-time","example":"2026-07-01T00:00:00.000Z"}},{"name":"dataFinal","in":"query","description":"Fim opcional do intervalo de uso, em ISO 8601.","schema":{"type":"string","format":"date-time","example":"2026-07-31T23:59:59.999Z"}}],"responses":{"200":{"description":"Informações de uso retornadas com sucesso.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RespostaUsoApi"}}}},"400":{"description":"Parâmetros de paginação ou datas inválidos."},"401":{"description":"Header Authorization ausente ou accessToken inválido."},"403":{"description":"O usuário autenticado não possui assinatura ativa ou acesso à API REST."}}}}},"components":{"securitySchemes":{"access-token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Use o accessToken retornado por POST /auth/login nos endpoints REST protegidos."},"refresh-token":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Use o refreshToken retornado por POST /auth/login ao chamar POST /auth/refresh."}},"schemas":{"LogInRequest":{"type":"object","properties":{"email":{"type":"string","description":"Email do usuário usado para autenticar na API REST.","example":"seu-email@dominio.com"},"password":{"type":"string","description":"Senha do usuário.","example":"sua-senha"}},"required":["email","password"]},"AuthUser":{"type":"object","properties":{"id":{"type":"string","description":"Identificador único do usuário.","example":"user-id"},"email":{"type":"string","description":"Email do usuário autenticado.","example":"seu-email@dominio.com"}},"required":["id","email"]},"AuthTokens":{"type":"object","properties":{"accessToken":{"type":"string","description":"JWT **accessToken** usado nos endpoints REST protegidos.","example":"eyJ..."},"refreshToken":{"type":"string","description":"JWT **refreshToken** usado para renovar a sessão.","example":"eyJ..."},"user":{"description":"Resumo do usuário autenticado.","$ref":"#/components/schemas/AuthUser"}},"required":["accessToken","refreshToken","user"]},"TribunaisResponse":{"type":"object","properties":{"tribunais":{"type":"array","description":"Códigos de tribunais disponíveis para uso em filtros de busca.","items":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"]},"example":["STJ","TJSP"]},"nomes":{"type":"object","description":"Mapa do código do tribunal para o seu nome completo, contendo exatamente os mesmos tribunais listados em `tribunais`.","additionalProperties":{"type":"string"},"example":{"STJ":"Superior Tribunal de Justiça","TJSP":"Tribunal de Justiça de São Paulo"}}},"required":["tribunais","nomes"]},"OrgaosJulgadoresResponse":{"type":"object","properties":{"tribunal":{"type":"string","description":"Código do tribunal consultado.","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"},"orgaosJulgadores":{"type":"array","description":"Órgãos julgadores do tribunal, com os valores canônicos aceitos em `filtros.orgaosJulgadores`.","items":{"type":"string"},"example":["Primeira Turma","Segunda Turma"]}},"required":["tribunal","orgaosJulgadores"]},"RelatoresResponse":{"type":"object","properties":{"tribunal":{"type":"string","description":"Código do tribunal consultado.","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"},"relatores":{"type":"array","description":"Relatores do tribunal, com os nomes exatos aceitos em `filtros.relatores`.","items":{"type":"string"},"example":["Herman Benjamin","Nancy Andrighi"]}},"required":["tribunal","relatores"]},"JuriSearchFilters":{"type":"object","properties":{"tribunais":{"type":"array","description":"Filtro opcional de tribunais. Quando omitido, o backend pode buscar em toda a base ou inferir os tribunais a partir da consulta.","items":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"]},"example":["STJ","TJSP"],"nullable":true},"dataInicial":{"type":"string","format":"date","description":"Data inicial opcional para filtrar decisões.","example":"2023-01-01","nullable":true},"dataFinal":{"type":"string","format":"date","description":"Data final opcional para filtrar decisões.","example":"2025-12-31","nullable":true},"orgaosJulgadores":{"type":"array","description":"Filtro de órgãos julgadores (valores canônicos). Consulte os valores aceitos em `GET /orgaos-julgadores`.","items":{"type":"string"},"example":["1ª Turma","2ª Turma"],"nullable":true},"relatores":{"type":"array","description":"Filtro de relatores (nomes exatos). Consulte os nomes aceitos em `GET /relatores`.","items":{"type":"string"},"example":["Min. Alexandre de Moraes"],"nullable":true}}},"JurisearchPaginationRequest":{"type":"object","description":"Configura o recorte de jurisprudências. Quando omitido, a API preserva o comportamento atual: primeira página, até 100 resultados.","properties":{"pagina":{"type":"integer","description":"Página solicitada, começando em 1.","default":1,"minimum":1,"maximum":100,"example":2},"resultadosPorPagina":{"type":"integer","description":"Quantidade máxima de jurisprudências por página.","default":100,"minimum":1,"maximum":100,"example":10},"maxResultados":{"type":"integer","description":"Teto de jurisprudências consideradas para paginação nesta busca.","default":100,"minimum":1,"maximum":100,"example":50}}},"JurisearchRequest":{"type":"object","properties":{"consulta":{"type":"string","description":"Consulta jurídica principal em texto livre.","example":"responsabilidade civil por erro medico"},"filtros":{"description":"Filtros opcionais de busca.","nullable":true,"$ref":"#/components/schemas/JuriSearchFilters"},"paginacao":{"description":"Personalização opcional da quantidade e da página de jurisprudências retornadas.","nullable":true,"$ref":"#/components/schemas/JurisearchPaginationRequest"}},"required":["consulta"]},"TemaRelacionado":{"type":"object","properties":{"numero":{"type":"string","description":"Número do tema.","example":"1089"},"relator":{"type":"string","description":"Relator do tema.","example":"Min. Nancy Andrighi"},"titulo":{"type":"string","description":"Título do tema.","example":"Responsabilidade civil por erro médico"},"tese":{"type":"string","description":"Texto da tese, quando disponível.","nullable":true},"processoParadigma":{"type":"string","description":"Processo paradigma do tema.","example":"REsp 123456"},"tribunalOrigem":{"type":"string","description":"Tribunal de origem do tema.","example":"STJ"},"url":{"type":"string","description":"Link oficial do tema.","example":"https://stj.jus.br/..."}},"required":["numero","relator","titulo","processoParadigma","tribunalOrigem","url"]},"Jurisprudencia":{"type":"object","properties":{"scoreRelevancia":{"type":"number","description":"Indicador de precisão normalizado entre 0 e 1 de acordo com o input (query) do usuário.","example":0.91,"nullable":true},"tribunal":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"},"nomeTribunal":{"type":"string","example":"Superior Tribunal de Justiça"},"dataPublicacao":{"type":"string","format":"date-time"},"numeroProcesso":{"type":"string","example":"REsp 123456"},"ementa":{"type":"string","description":"Ementa ou resumo da decisão."},"relator":{"type":"string","nullable":true},"orgaoJulgador":{"type":"string","nullable":true},"tipoDecisao":{"type":"string","nullable":true},"numeroDecisao":{"type":"string","nullable":true},"dataJulgamento":{"type":"string","format":"date-time","nullable":true},"citacao":{"type":"string","nullable":true,"description":"Referência jurisprudencial que identifica o julgado em peças, pareceres e demais documentos jurídicos."},"url":{"type":"string","format":"uri","nullable":true},"urlInteiroTeor":{"type":"string","format":"uri","nullable":true},"temasRelacionados":{"type":"array","items":{"$ref":"#/components/schemas/TemaRelacionado"}},"posicao":{"type":"string","enum":["FAVORAVEL","DESFAVORAVEL","SEM_POSICAO_CLARA"],"description":"Posição do julgado em relação à tese identificada na consulta: `FAVORAVEL` (acolhe a tese), `DESFAVORAVEL` (rejeita a tese) ou `SEM_POSICAO_CLARA`. `null` quando a busca não separou os resultados por posição.","example":"FAVORAVEL","nullable":true}},"required":["tribunal","nomeTribunal","dataPublicacao","numeroProcesso","ementa"]},"PrecedenteVinculante":{"type":"object","properties":{"scoreRelevancia":{"type":"number","example":0.88,"nullable":true},"titulo":{"type":"string","example":"Súmula 7/STJ"},"numero":{"type":"integer","example":7},"vinculante":{"type":"boolean","example":true},"tribunal":{"type":"string","enum":["BACEN","CARF","CSJT","CVM","RFB","STF","STJ","TJAC","TJAL","TJAM","TJBA","TJCE","TJDFT","TJES","TJGO","TJMA","TJMG","TJMS","TJMT","TJPB","TJPI","TJPR","TJRJ","TJRN","TJRR","TJRS","TJSC","TJSE","TJSP","TJTO","TNU","TRF2","TRF3","TRF4","TRF6","TRT1","TRT10","TRT11","TRT12","TRT13","TRT14","TRT15","TRT16","TRT17","TRT18","TRT19","TRT2","TRT20","TRT21","TRT22","TRT23","TRT24","TRT3","TRT4","TRT5","TRT6","TRT7","TRT8","TRT9","TST"],"example":"STJ"},"texto":{"type":"string"},"situacao":{"type":"string","enum":["Aprovada","Alterada","Cancelada"],"description":"Situação da súmula no tribunal de origem. `Cancelada` só ocorre no TST, que é coletado com as súmulas canceladas para a consulta mostrar que elas não vigoram mais.","example":"Aprovada"},"precedentesRelacionados":{"type":"array","items":{"type":"string"},"example":["REsp 123456"]}},"required":["titulo","numero","vinculante","tribunal","texto","situacao","precedentesRelacionados"]},"Legislacao":{"type":"object","properties":{"scoreRelevancia":{"type":"number","example":0.77,"nullable":true},"numeroLei":{"type":"string","example":"10.406"},"tipoLei":{"type":"string","example":"Lei"},"nomeLei":{"type":"string","example":"Código Civil","nullable":true},"artigo":{"type":"string","example":"Art. 186"},"texto":{"type":"string"}},"required":["numeroLei","tipoLei","artigo","texto"]},"JurisearchPaginationResponse":{"type":"object","description":"`totalResultados` representa os resultados encontrados dentro de `maxResultados`, não uma contagem total da base.","properties":{"pagina":{"type":"integer","example":2},"resultadosPorPagina":{"type":"integer","example":10},"maxResultados":{"type":"integer","example":50},"totalResultados":{"type":"integer","example":47},"totalPaginas":{"type":"integer","example":5}},"required":["pagina","resultadosPorPagina","maxResultados","totalResultados","totalPaginas"]},"JurisearchResponse":{"type":"object","properties":{"jurisprudencias":{"type":"array","items":{"$ref":"#/components/schemas/Jurisprudencia"}},"precedentesVinculantes":{"type":"array","items":{"$ref":"#/components/schemas/PrecedenteVinculante"}},"legislacao":{"type":"array","items":{"$ref":"#/components/schemas/Legislacao"}},"paginacao":{"$ref":"#/components/schemas/JurisearchPaginationResponse"},"posicaoProcurada":{"type":"string","enum":["FAVORAVEL","DESFAVORAVEL"],"description":"Posição que a consulta pede, quando ela indica um lado de uma questão jurídica. As jurisprudências dessa posição vêm primeiro. `null` quando a busca não separou os resultados por posição.","example":"DESFAVORAVEL","nullable":true}},"required":["jurisprudencias","precedentesVinculantes","legislacao","paginacao"]},"UsuarioUsoApi":{"type":"object","properties":{"id":{"type":"string"},"nome":{"type":"string"},"email":{"type":"string"}},"required":["id","nome","email"]},"PlanoAtualUsoApi":{"type":"object","properties":{"nivel":{"type":"string","enum":["inicial","intermediário","crescimento","escala","empresarial"],"nullable":true},"nome":{"type":"string"},"limitePorMinuto":{"type":"integer"},"totalBuscasIncluidas":{"type":"integer","nullable":true},"personalizado":{"type":"boolean"},"limitePadraoPorMinuto":{"type":"integer"}},"required":["nivel","nome","limitePorMinuto","totalBuscasIncluidas","personalizado","limitePadraoPorMinuto"]},"EntradaHistoricoUsoApi":{"type":"object","properties":{"id":{"type":"string"},"consulta":{"type":"string"},"tribunais":{"type":"array","items":{"type":"string"},"nullable":true},"quantidadeResultados":{"type":"integer"},"criadoEm":{"type":"string","format":"date-time"}},"required":["id","consulta","tribunais","quantidadeResultados","criadoEm"]},"PaginacaoUsoApi":{"type":"object","properties":{"pagina":{"type":"integer"},"itensPorPagina":{"type":"integer"},"totalItens":{"type":"integer"},"totalPaginas":{"type":"integer"}},"required":["pagina","itensPorPagina","totalItens","totalPaginas"]},"ResumoBuscasUsoApi":{"type":"object","properties":{"buscasHoje":{"type":"integer"},"buscasSemana":{"type":"integer"},"buscasMes":{"type":"integer"}},"required":["buscasHoje","buscasSemana","buscasMes"]},"CredencialOrganizacaoUsoApi":{"type":"object","properties":{"usuarioId":{"type":"string"},"email":{"type":"string"},"buscasHoje":{"type":"integer"},"buscasSemana":{"type":"integer"},"buscasMes":{"type":"integer"}},"required":["usuarioId","email","buscasHoje","buscasSemana","buscasMes"]},"OrganizacaoUsoApi":{"type":"object","nullable":true,"description":"Uso combinado das credenciais da organização ativa do usuário. É `null` quando o usuário não pertence a uma organização ativa.","properties":{"id":{"type":"string"},"nome":{"type":"string"},"resumo":{"$ref":"#/components/schemas/ResumoBuscasUsoApi"},"grafico":{"type":"object","properties":{"dias":{"type":"integer"},"pontos":{"type":"array","items":{"type":"object","properties":{"data":{"type":"string","format":"date"},"total":{"type":"integer"}},"required":["data","total"]}}},"required":["dias","pontos"]},"credenciais":{"type":"array","items":{"$ref":"#/components/schemas/CredencialOrganizacaoUsoApi"}}},"required":["id","nome","resumo","grafico","credenciais"]},"RespostaUsoApi":{"type":"object","properties":{"usuario":{"$ref":"#/components/schemas/UsuarioUsoApi"},"planoAtual":{"$ref":"#/components/schemas/PlanoAtualUsoApi"},"historico":{"type":"array","items":{"$ref":"#/components/schemas/EntradaHistoricoUsoApi"}},"paginacao":{"$ref":"#/components/schemas/PaginacaoUsoApi"},"organizacao":{"$ref":"#/components/schemas/OrganizacaoUsoApi"}},"required":["usuario","planoAtual","historico","paginacao","organizacao"]}}},"servers":[{"url":"https://juri.onrender.com"}]}