Como criar APIs em Python usando FastAPI

Caroline Carvalho
Caroline Carvalho

Compartilhe

Ao pesquisar sobre FastAPI, é comum encontrar referências a esse framework como uma forma de construir APIs em Python com alta performance, fácil aprendizado, simplicidade na programação e pronto para produção, conforme destaca sua documentação oficial.

Mas, afinal, o que essas características realmente significam? 

Para entender melhor como funciona o FastAPI e suas vantagens, é importante conhecer o objetivo para o qual foi desenvolvido. Vamos conferir juntos? 

A mente por trás da criação 

Foto de Sebastián Ramírez. 

Sebastián Ramírez (@tiangolo) 

Fonte: https://fastapi.tiangolo.com 

Sebastián Ramírez, criador do FastAPI, trabalha há muitos anos desenvolvendo APIs com requisitos complexos, e como parte deste cenário pôde conhecer e utilizar várias ferramentas em busca de algo que realmente atendesse às necessidades que ele e seu time de desenvolvedores tinham. 

Após explorar inúmeros frameworks e plug-ins, ele percebeu a necessidade de unir todas as funcionalidades que encontrava nessas ferramentas em um único lugar. 

Com base em toda essa experiência, criou um framework pensado desde o início para ter uma abordagem moderna, utilizando programação assíncrona, suporte a type hints e com as funcionalidades mais recentes do Python. 

Banner promocional da Alura destacando oferta especial com até 40% de desconto em cursos de tecnologia. A mensagem convida a transformar a carreira na maior escola tech da América Latina, com botão “Aproveite” para acessar a promoção.

Por que criar API em Python com FastAPI? Vantagens e recursos 

Além da abordagem moderna, o FastAPI oferece uma grande variedade de funcionalidades. Entre seus principais recursos, destacam-se: 

  • Uso de OpenAPI para criação de APIs, permitindo que sistemas internos de uma organização interajam de forma segura e autenticada com ambientes externos, estendendo funcionalidades e possibilitando usos inovadores. 
  • Possui duas opções de documentação automática incluídas por padrão: Swagger UI, para navegação interativa e testes diretos da API pelo navegador; e ReDoc, alternativa navegável para documentação da API. 
  • Utiliza a biblioteca Pydantic (atualmente na versão 2.x) para validação de dados usando type hints do Python o que garante validação para todos os tipos de dados Python usando type hints. Atualmente (março 2026), o FastAPI requer Python 3.10 ou superior e suporta até Python 3.14, garantindo acesso às funcionalidades modernas da linguagem.
  • O FastAPI foi projetado para ser de fácil utilização, incluindo suporte aos principais editores de código e funcionalidades como autocomplete presentes em várias partes do framework. 
  • Possui padrões bem definidos, mas permite configuração conforme as necessidades do projeto. 
  • Conta com um sistema de injeção de dependência fácil de utilizar, com validação automática e suporte para sistemas de autenticação complexos e conexões com bancos de dados
  • Utiliza type annotations e possui 100% de cobertura de testes. 
Garoto em um quarto de criança com pôsteres na parede e brinquedos ao fundo,  segurando uma longa lista que se desenrola pelo chão. 

Ufa! E o mais fantástico é que esta lista não para por aí, e é graças a essa grande quantidade de recursos, sua fácil integração com outros frameworks como Django e Flask, e sua alta performance ao realizar tarefas de grande desempenho que vêm dando a ele popularidade entre quem busca como criar uma API com Python robusta e produtiva.

Grandes empresas, como Uber e Microsoft, usam FastAPI em aplicações que demandam alta performance e processamento de grandes volumes de dados. 

Como criar uma API em Python passo a passo usando FastAPI 

Vamos colocar a mão na massa? Após criar o projeto em sua IDE, vamos começar: 

Criando o ambiente virtual, abra o terminal dentro da pasta criada e digite o comando: 

python3 -m venv .venv 

Instalando no terminal as dependências do FastAPI: 

pip install fastapi 

Instalando o uvicorn, que será utilizado como um servidor para rodar o código: 

pip install "uvicorn[standard]" 

Após a instalação e ativação do ambiente virtual (source .venv/bin/activate no Linux/Mac ou .venv\Scripts\activate no Windows), precisamos criar um arquivo, que neste exemplo será o main.py. Nele, vamos: 

Importar o FastAPI 

from fastapi import FastAPI 

Criar uma instância para a classe FastAPI 

app = FastAPI() 

Definir um decorador de rota para tratar as requisições feitas à rota '/' usando o método GET. 

@app.get("/") 

Definir a função associada à rota  

def hello_root(): 

Retornar o conteúdo desejado. 

return {"message": "Hello World"} 

O bloco de código completo fica assim: 

from fastapi import FastAPI 
app = FastAPI() 
@app.get("/") 
def hello_root(): 
    return {"message": "Hello World"} 

Após realizar os passos podemos executar nosso servidor pelo terminal com o comando: 

fastapi dev main.py 
# OU alternativamente: 
uvicorn main:app --reload 
Garoto usando camiseta branca com as mão no rosto e expressão de surpresa,na parte superior a frase “It’s magic” aparece escrita em branco, ao fundo uma espiral verde e azul gira como um círculo de hipnose. 

(Tradução livre: “É mágica”) 

Pronto! Agora é possível acompanhar o funcionamento da API diretamente no navegador: 

Visualizar localmente a resposta em formato JSON; 

Aba do navegador Chrome mostrando o retorno em servidor local com a mensagem {“message”: “Hello World”} no formato JSON. 

Interagir com a documentação gerada automaticamente pelo Swagger UI; 

Screenshot do Swagger UI em 127.0.0.1:8000/docs mostrando a interface de documentação interativa do FastAPI com o endpoint GET na rota raiz, exibindo o código de status 200 e a resposta em formato JSON 

Acessar a documentação alternativa automática fornecida pelo ReDoc. 

Screenshot da interface ReDoc em 127.0.0.1:8000/redoc exibindo a documentação alternativa do FastAPI com layout de três painéis, mostrando o endpoint GET na rota raiz com resposta código 200 em formato JSON. 

Próximos passos para aprender mais sobre API em Python e FastAPI 

Vamos relembrar, ponto a ponto, o que aprendemos: 

Neste artigo, conhecemos um pouco mais sobre o framework FastAPI, explorando como e por que ele foi criado. Vimos também algumas de suas funcionalidades mais valorizadas pela comunidade e como elas funcionam.

Por fim, aprendemos os primeiros passos práticos para criar uma API. 

Agora, se você quiser conhecer mais sobre como programar em Python para web, APIs e backend, não deixe de conferir nossos cursos Flask: crie uma webapp com Python e Flask parte 2: Avançando no desenvolvimento web, e também as formações Django e Django Rest API.

Caroline Carvalho
Caroline Carvalho

Analista de qualidade de software, estudante de Engenharia de Computação e de Análise e Desenvolvimento de Sistemas. Faço parte do Scuba Team, exploradora do universo Python , e também gosto muito de DevOps. Nas horas vagas gosto de falar sobre cultura geek e café.

Veja outros artigos sobre Programação