Pular para o conteúdo principal
A Base44 oferece várias formas de conectar seu app a APIs externas. Cada abordagem tem diferentes trade-offs em torno da complexidade de configuração, gerenciamento de credenciais e flexibilidade.

Conectores

Login OAuth para serviços como Slack, Google Calendar ou Discord

Integrações personalizadas

Acesso a APIs em todo o workspace via specs OpenAPI

Funções de backend

Código de backend com controle total sobre as requisições

Conectores

Os conectores fornecem um token de acesso OAuth bruto para um serviço de terceiros, que você usa para chamar a API desse serviço diretamente. A Base44 cuida do fluxo OAuth e do armazenamento de credenciais. Existem dois tipos:
  • Conectores compartilhados: uma conta é conectada para todo o app. Todos os usuários do app compartilham o mesmo token. Ideal para contas de serviço, como postar em um canal do Slack da empresa ou ler de um calendário compartilhado.
  • Conectores de usuário do app: cada usuário logado no app conecta sua própria conta. Cada usuário recebe seu próprio token. Ideal para ações que precisam acontecer como usuário individual, como enviar e-mail de sua conta Gmail.
const { accessToken } = await base44.asServiceRole.connectors.getConnection(
  "googlecalendar"
);

const response = await fetch(
  "https://www.googleapis.com/calendar/v3/calendars",
  { headers: { Authorization: `Bearer ${accessToken}` } }
);

const calendars = await response.json();

connectors

Referência completa da API

Integrações personalizadas

As integrações personalizadas permitem chamar APIs externas usando credenciais compartilhadas que não são específicas de um usuário ou app. Um administrador de workspace importa uma especificação OpenAPI, configura as credenciais e, em seguida, qualquer app no workspace pode chamar essa API através do SDK. As requisições passam pelo backend da Base44, então os segredos nunca chegam ao navegador. Depois que uma integração é configurada, todos os apps do workspace a compartilham. Desenvolvedores nunca lidam com chaves de API diretamente, então o administrador pode rotacionar credenciais sem tocar no código dos apps.
const response = await base44.integrations.custom.call(
  "my-crm", // integration slug
  "get:/contacts", // endpoint: method:path format
  {
    pathParams: { id: "123" },
    queryParams: { limit: 10 },
  }
);

if (response.success) {
  console.log(response.data);
}

custom integrations

Referência completa da API

Funções de backend

As funções de backend são executadas no servidor, então você pode armazenar com segurança chaves de API e segredos como variáveis de ambiente sem expô-los ao navegador. Use funções de backend quando precisar de controle total sobre as requisições da API, quiser adicionar lógica personalizada ou transformação de dados, ou estiver trabalhando com APIs que não têm uma integração personalizada disponível. Seu frontend chama a função de backend, que então faz a requisição à API externa e retorna o resultado.
// In your backend function
export default async function handler(request: Request) {
  const apiKey = process.env.EXTERNAL_API_KEY;

  const response = await fetch("https://api.example.com/data", {
    headers: {
      Authorization: `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
  });

  return Response.json(await response.json());
}

functions

Saiba mais sobre funções de backend
Esta página foi traduzida usando IA. Para informações mais precisas e atualizadas, consulte a versão em inglês.