Sobre este projeto
it-programming / web-development
Aberto
Contexto Geral do Projeto
Estou desenvolvendo um aplicativo para que os usuários possam escalar seus times pelo meu app, em Capacitor + Firebase, para Android/iOS. Já possuo toda a base do app (login Firebase, telas de mercado, filtros, estatísticas, ranking etc.). O ponto que falta: implementar o login autenticado do Cartola FC, para que o usuário possa acessar os dados do próprio time diretamente no app. O que já fiz: Integrei um plugin Capacitor custom que abre o WebView para o login da Globo. Já consigo capturar GLBID, cookieHeader e até JWTs (GLOBO_ID, glb_uid_jwt) após o login. Tenho uma Firebase Cloud Function (apiTime) que recebe token e cookie e tenta chamar o endpoint oficial https://api.cartolafc.globo.com/auth/time. Testei várias combinações de headers (X-GLB-Token, Authorization: Bearer ..., Cookies completos, etc.), Mas o retorno é sempre 401 Unauthorized. Já identifiquei que o login oficial do Cartola passa pelo fluxo OIDC (authx.globoid.globo.com → goidc.globo.com → login-callback.html), possivelmente exigindo client_id, redirect_uri e PKCE corretos. O que eu preciso que você resolva: Fazer o fluxo de login funcionar de ponta a ponta sem parceria oficial com a Globo, isto é, reproduzindo o comportamento dos apps de terceiros (ex.: Guru do Cartola, Cartomante, Parciais CFC), que conseguem autenticar e consumir o endpoint /auth/time. Ajustar meu backend (Firebase Function) e/ou meu plugin Capacitor para capturar o token/cookies corretos e permitir que o app consuma os dados do time autenticado. Entregar o código funcionando: o usuário loga no app → autoriza com sua conta Globo → e o app consegue consumir https://api.cartolafc.globo.com/auth/time retornando os dados do time. Stack atual: Frontend: Capacitor (Vite, js/ts, android studio, xcode) backend: firebase cloud functions (node.js) Login atual: Plugin Capacitor custom que abre WebView para login.globo.com O que espero da entrega: Orientação clara sobre as mudanças necessárias no fluxo OAuth/captura de cookies/tokens. Código pronto (tanto no app quanto na Firebase Function) que retorne 200 OK em /auth/time. Se possível, documentação curta explicando o fluxo final adotado. Observações importantes: Não quero depender de credenciais/parcerias oficiais da Globo. Preciso de uma solução que funcione “como os outros apps já fazem”. O escopo é apenas fazer o login autenticado funcionar. Todo o resto do app já está implementado.
Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho uma ideia geral
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor
Prazo de Entrega: Não estabelecido
Habilidades necessárias