Skip to content

RESTful API da Copa do Mundo FIFA de Futebol Feminino 2023 construída em Kotlin com Spring Boot 3. https://youtu.be/eL5tVGEuPK8

License

Notifications You must be signed in to change notification settings

luismendes070/womens-world-cup-2023

 
 

Repository files navigation

Women's World Cup 2023: A Koltin RESTful API

Este é um projeto que visa fornecer informações sobre a Copa do Mundo de Futebol Feminino de 2023. O projeto inclui uma API em Kotlin que permite o acesso aos dados das seleções participantes e integração com o ChatGPT-4 para simular as partidas da Copa e prever os resultados dos jogos.

Configuração

Essas instruções fornecerão aos usuários as etapas necessárias para clonar o repositório e iniciar a aplicação em diferentes ambientes (Unix e Windows) com o perfil de desenvolvimento ativado.

  1. Clone o repositório: git clone git@github.com:digitalinnovationone/womens-world-cup-2023.git
  2. Inicie a aplicação no ambiente Unix: ./gradlew bootrun --args='--spring.profiles.active=dev'
  3. Inicie a aplicação no ambiente Windows: gradle.bat bootrun --args='--spring.profiles.active=dev'

Para integrar com o ChatGPT e usá-lo como um modelo para análise de sentimentos dos nossos comentários.

Seguem alguns links úteis:

  1. Endpoint de Chat Completion (que vamos consumir)
  2. Collection Postman da OpenAI (útil pra entender todas as APIs da OpenAI)

Request

curl https://api.openai.com/v1/chat/completions \
 -H "Authorization: Bearer $OPENAI_API_KEY" \
 -H "Content-Type: application/json" \
 -d '{
 "model": "gpt-3.5-turbo",
 "messages": [
    {"role": "user", "content": "What is the OpenAI mission?"}] 
 }'

Response

{
  "id": "chatcmpl-6p5FEv1JHictSSnDZsGU4KvbuBsbu",
  "object": "messages",
  "created": 1677693600,
  "model": "gpt-3.5-turbo",
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "OpenAI's mission is to ensure that AI benefits all of humanity."
      }
    }
  ],
  "usage": {
    "prompt_tokens": 20,
    "completion_tokens": 18,
    "total_tokens": 38
  }
}

Uso da API

Request

Simular partida entre dois times:

  • Método: GET
  • Endpoint: /simulate/{team1Id}/{team2Id}

Parâmetros de caminho:

  • {team1Id}: ID da primeira equipe.

  • {team2Id}: ID da segunda equipe.

  • Exemplo de solicitação:

GET /simulate/ARG/BRA

Response

  • Código de resposta: 200 OK
  • Corpo da resposta: TeamDto contendo os dados da equipe vencedora.

Exemplo de resposta:

{
  "id": "ARG",
  "name": "Argentina",
  "score": 1682.45
}

Códigos de resposta possíveis:

  • 200 OK: A simulação foi concluída com sucesso e a equipe vencedora é retornada.
  • 422 Unprocessable Entity: Uma ou ambas as equipes não foram encontradas na Copa do Mundo Feminina.

Documentação do Swagger

A documentação da API pode ser encontrada no Swagger. Para visualizá-la, acesse: Documentação do Swagger.

Hospedagem no Railway.app

Durante a live hospedamos o projeto no Railway.app na seguinte URL: https://wwc-2023-prd.up.railway.app/swagger-ui.html

Licença

Este projeto está licenciado sob a licença MIT. Consulte o arquivo (LICENSE) para obter.

Autores


Venilton FalvoJr

LinkedIn

Camila Cavalcante

LinkedIn

About

RESTful API da Copa do Mundo FIFA de Futebol Feminino 2023 construída em Kotlin com Spring Boot 3. https://youtu.be/eL5tVGEuPK8

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Kotlin 99.6%
  • Procfile 0.4%