Introdução a APIs

Introdução a APIs em Python

Chris Ramakers

Engineering Manager

O que é uma API?

  • Interface de Programação de Aplicações (API)
  • Conjunto de regras e recursos de comunicação
  • Permite interação entre aplicativos de software

Um diagrama mostrando interações de API entre um cliente de e-mail e um servidor de e-mail para enviar um e-mail para john@acme.com.

Introdução a APIs em Python

Web APIs, clientes e servidores

  • Web APIs se comunicam pela internet usando HTTP
  • O cliente envia uma requisição ao servidor
  • O servidor retorna uma resposta ao cliente

Um diagrama mostrando a interação cliente-servidor pela internet via uma API, com mensagens de requisição e resposta.

  • Ciclo requisição/resposta
Introdução a APIs em Python

Tipos de Web APIs

  • SOAP
    • Foco em design rígido e formal
    • Aplicações corporativas
  • REST
    • Foco em simplicidade e escalabilidade
    • Arquitetura de API mais comum
  • GraphQL
    • Foco em flexibilidade
    • Otimizado para desempenho
1 https://www.postman.com/state-of-api/api-technologies/#api-technologies
Introdução a APIs em Python

Trabalhando com APIs em Python

urllib

  • Vem com o Python
  • Poderosa, mas pouco amigável para devs
from urllib.request import urlopen
api = "http://api.music-catalog.com/"

with urlopen(api) as response:
  data = response.read()
  string = data.decode()
  print(string)

requests

  • Muitos recursos nativos poderosos
  • Mais fácil de usar
import requests
api = "http://api.music-catalog.com/"

response = requests.get(api)
print(response.text)
Introdução a APIs em Python

Vamos praticar!

Introdução a APIs em Python

Preparing Video For Download...