Pular para o conteúdo

Bubble

Bubble

Bubble é uma linguagem de programação visual e uma plataforma como serviço (PaaS) desenvolvida pelo Bubble Group. Ela permite criar aplicativos web completos sem escrever código, com banco de dados integrado, lógica de negócio e interface visual. Com a integração Bubble no SquadOS, seus agentes podem interagir diretamente com os dados e workflows de qualquer aplicativo Bubble via API.

Esta ferramenta utiliza chave de API (API_KEY) para conectar.

Você vai precisar dos seguintes campos:

CampoObrigatórioDescrição
fullSimURL raiz da sua Data API do Bubble. Se estiver usando o domínio padrão: https://nome-do-app.bubbleapps.io. Se estiver usando domínio customizado: https://seudominio.com.
bearer_tokenSimToken de API gerado nas configurações do seu aplicativo Bubble, usado para autenticar requisições na Data API.
  1. Acesse o editor do seu aplicativo Bubble em bubble.io e selecione o app desejado.

  2. Clique em Settings no menu lateral esquerdo.

  3. Navegue até a aba API.

  4. Marque a opção Enable Data API para ativar a Data API do seu aplicativo.

  5. Na lista de tipos de dados exibida abaixo, selecione quais data types devem ser expostos pela API (marque apenas os necessários).

  6. Role a página até a seção API tokens e clique em Generate a new API token para criar um novo token.

  7. Copie o token gerado — esse é o valor que você usará no campo bearer_token ao conectar no SquadOS.

  8. Para o campo full (Base URL), use o formato https://nome-do-app.bubbleapps.io (substituindo nome-do-app pelo subdomínio do seu app) ou o domínio customizado configurado no app.

  1. Acesse Ferramentas no menu lateral (/admin/tools).
  2. Abra a aba Disponíveis e procure por Bubble.
  3. Clique no card para abrir os detalhes e em Conectar.
  4. Você é levado para a página de conexão segura hospedada pela Composio, onde informa a URL base e o token de API obtidos acima.
  5. Ao confirmar, você volta para o SquadOS com a conta já conectada e a ferramenta disponível para os agentes. (Detalhes do fluxo de conexão em Ferramentas da Organização.)

BUBBLE_DATA_BULK_CREATE_THINGS

Cria várias Things no Bubble de uma vez via JSON separado por novas linhas. Use quando precisar inserir muitos registros de uma só vez. É necessário ter a permissão Create via API habilitada.

NomeTipoObrigatórioDescrição
itemsarraySimLista de objetos a serem criados. Deve conter entre 1 e 1000 itens.
typenamestringSimNome do tipo de dado (Data Type) no Bubble em formato de API (minúsculas, sem espaços).
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint de bulk. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_DATA_CREATE_THING

Cria um novo registro (Thing) no Bubble. Use quando você tem um payload JSON completo para adicionar um novo registro.

NomeTipoObrigatórioDescrição
fieldsobjectSimObjeto JSON mapeando nomes de campos para valores da nova Thing. Campos obrigatórios do tipo devem ser fornecidos (ex: email para o Data Type user).
typenamestringSimNome do Data Type (Thing) a criar (diferencia maiúsculas e minúsculas).
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint de criação. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_DATA_DELETE_THING_BY_ID

Exclui uma Thing do Bubble pelo seu ID único. Use quando precisar remover um registro específico via Data API.

NomeTipoObrigatórioDescrição
uidstringSimIdentificador único do registro a excluir.
typenamestringSimNome do Data Type do Bubble (minúsculas, sem espaços).
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint de exclusão. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_DATA_GET_THING_BY_ID

Recupera uma única Thing (registro) de um Data Type do Bubble pelo seu ID único. Operação somente leitura que retorna os detalhes completos do registro. A resposta inclui todos os campos customizados definidos no Data Type, além dos campos padrão do Bubble (_id, created_by, created_date, modified_date). Use quando precisar: buscar detalhes de um registro conhecido pelo ID; verificar se um registro existe; obter os valores mais recentes de uma Thing. Requer que a Data API esteja habilitada nas configurações do app e que o Data Type esteja exposto via API.

NomeTipoObrigatórioDescrição
uidstringSimIdentificador único da Thing a recuperar. É o valor retornado no campo _id ou id quando a Thing foi criada. O Bubble usa tipicamente formato como 1234567890123x123456789012345678.
typenamestringSimNome do Data Type do Bubble (diferencia maiúsculas e minúsculas). É o tipo definido no seu app Bubble (ex: user, order, product). Consulte a aba Data do seu app Bubble para ver os tipos disponíveis.
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint GET. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_DATA_PATCH_THING_BY_ID

Modifica apenas os campos selecionados de uma Thing pelo ID único. Use depois de confirmar que a Thing existe.

NomeTipoObrigatórioDescrição
uidstringSimID único do registro a modificar.
typenamestringSimNome do Data Type no formato URL (minúsculas, sem espaços).
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
field_updatesobjectSimObjeto JSON de campos a atualizar. Cada chave é o nome de um campo existente; cada valor deve bater com o tipo definido do campo.
full_url_overridestringNãoURL completa para sobrescrever o endpoint de patch. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_DATA_PUT_REPLACE_THING_BY_ID

Substitui todos os campos editáveis de uma Thing pelo ID único. Use quando precisar sobrescrever completamente uma Thing e resetar os campos omitidos para o valor padrão.

NomeTipoObrigatórioDescrição
uidstringSimID único da Thing a sobrescrever.
dataobjectSimMapeamento de cada nome de campo editável para seu novo valor. Campos editáveis omitidos serão resetados para os valores padrão.
typenamestringSimNome do Data Type do Bubble onde fazer a substituição.
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint PUT. Se fornecida, a requisição será enviada para essa URL como está, ignorando typename, custom_domain e subdomain.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_FILE_DOWNLOAD

Baixa um arquivo dada uma URL. Use quando precisar recuperar o conteúdo de um arquivo e obter um s3key para testes de upload posteriores.

NomeTipoObrigatórioDescrição
urlstringSimURL HTTP ou HTTPS do arquivo a baixar.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_FILE_TEMP_CREATE

Faz upload de bytes como arquivo temporário no Cloudflare R2 e retorna uma S3 key. Use quando precisar de uma referência de arquivo de curta duração antes de persistir em uma Thing.

NomeTipoObrigatórioDescrição
namestringSimNome a ser atribuído ao arquivo temporário (incluindo extensão).
contentstringSimConteúdo do arquivo em base64 ou texto puro.
mimetypestringSimTipo MIME do arquivo.
subdomainstringNãoSubdomínio do app Bubble para direcionar *.bubbleapps.io (ex: meu-app).
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
full_url_overridestringNãoURL completa para sobrescrever o endpoint de upload temporário. Se fornecida, a requisição será enviada para essa URL como está.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_FILE_UPLOAD

Envia um arquivo para o storage do Bubble. Use quando precisar armazenar arquivos arbitrários via endpoint /fileupload do Bubble.

NomeTipoObrigatórioDescrição
fileobjectSimArquivo a ser enviado.
subdomainstringNãoSubdomínio Bubble (ex: meu-app) para direcionar https://<subdomain>.bubbleapps.io/fileupload.
custom_domainstringNãoHost de domínio customizado (ex: app.exemplo.com) para direcionar https://<host>/fileupload.
additional_fieldsobjectNãoCampos adicionais do formulário multipart a incluir na requisição de upload.
full_url_overridestringNãoURL completa para sobrescrever o endpoint de upload (ex: https://httpbin.org/post).
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_META_GET_SWAGGER_JSON

Recupera o Swagger JSON gerado automaticamente para as APIs habilitadas. Use depois de habilitar o arquivo Swagger nas configurações de API do seu app Bubble.

NomeTipoObrigatórioDescrição
subdomainstringNãoSubdomínio do app Bubble (ex: meu-app) para direcionar *.bubbleapps.io.
swagger_urlstringNãoURL completa do Swagger 2.0 JSON a buscar. Tem precedência se fornecida.
custom_domainstringNãoHost de domínio customizado para direcionar (ex: meuapp.exemplo.com).
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_O_AUTH_ACCESS_TOKEN

Troca um authorization code ou refresh token por um access token OAuth2. Use depois de obter um authorization code ou ao renovar um token expirado.

NomeTipoObrigatórioDescrição
codestringNãoAuthorization code retornado por /oauth/authorize; obrigatório para a troca inicial.
client_idstringSimIdentificador do cliente OAuth.
subdomainstringNãoSubdomínio do app Bubble (ex: meu-app).
grant_typestringNãoDeve ser refresh_code ao trocar um refresh token por um novo access token. Observação: o Bubble usa refresh_code em vez do valor padrão OAuth 2.0 refresh_token.
redirect_uristringSimURI de redirecionamento usada na requisição de autorização.
client_secretstringSimSegredo do cliente OAuth.
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
refresh_tokenstringNãoRefresh token emitido anteriormente; obrigatório quando grant_type=refresh_code.
use_version_testbooleanNãoSe deve direcionar o ambiente /version-test ao construir a URL.
token_url_overridestringNãoURL completa do endpoint de token. Se fornecida, tem precedência sobre URL derivada de domínio/subdomínio/metadata.
additional_body_fieldsobjectNãoCampos adicionais a incluir no corpo JSON do POST.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_OAUTH_AUTHORIZE

Inicia o fluxo de autorização OAuth2 para o Bubble. Use ao configurar uma integração de login de terceiros. Retorna a URL para redirecionamento do user-agent para obtenção do authorization code.

NomeTipoObrigatórioDescrição
scopestringNãoLista separada por espaços dos escopos solicitados.
statestringNãoValor opaco para manter estado entre requisição e callback (token CSRF, etc).
client_idstringSimIdentificador do cliente OAuth emitido pelo Bubble ao registrar sua aplicação.
subdomainstringNãoSubdomínio do app Bubble (ex: meu-app) para direcionar *.bubbleapps.io.
extra_paramsobjectNãoParâmetros de query adicionais a incluir na requisição de autorização.
redirect_uristringSimURL de callback para onde o Bubble enviará o authorization code.
custom_domainstringNãoHost de domínio customizado para direcionar (ex: meuapp.exemplo.com).
response_typestringNãoTipo de resposta OAuth. Para o fluxo authorization code deve ser code.
use_version_testbooleanNãoSe true, usa /version-test no caminho raiz para apps Bubble.
authorize_url_overridestringNãoURL completa do endpoint de autorização. Se fornecida, tem precedência sobre URL derivada de subdomínio/custom_domain/metadata.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_O_AUTH_REGISTER_APP

Valida e inicializa as credenciais de uma aplicação OAuth no Bubble. Faz uma chamada real ao endpoint /oauth/authorize do Bubble (ou a um override fornecido) usando client_id e redirect_uri para confirmar conectividade e retornar as credenciais informadas.

NomeTipoObrigatórioDescrição
client_idstringSimIdentificador do cliente OAuth conforme configurado no editor Bubble.
subdomainstringNãoSubdomínio do app Bubble (ex: meu-app).
extra_paramsobjectNãoParâmetros de query adicionais a acrescentar na requisição de autorização.
redirect_uristringSimURI de redirecionamento configurada no app OAuth do Bubble.
client_secretstringNãoSegredo do cliente OAuth conforme configurado no editor Bubble.
custom_domainstringNãoHost de domínio customizado (ex: meuapp.exemplo.com).
use_version_testbooleanNãoSe deve direcionar o ambiente /version-test.
authorize_url_overridestringNãoURL completa para chamar ao invés de construir a partir de domínio/subdomínio. Útil para testes.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_WORKFLOW_TRIGGER_GET

Dispara um workflow de API do Bubble via requisição HTTP GET. Workflows de API são workflows server-side do Bubble que podem ser acionados externamente. Use GET para workflows simples que não exigem corpo de requisição (parâmetros passados como query string). Para workflows que exigem dados complexos ou upload de arquivos, use a versão POST. Pré-requisitos: o workflow deve estar criado no editor de workflows do Bubble e marcado como Expose as a public API workflow. O app Bubble precisa ter acesso à API habilitado na assinatura.

NomeTipoObrigatórioDescrição
branchstringNãoBranch de deploy do Bubble a direcionar. Use live para workflows em produção ou version-test para workflows de desenvolvimento/teste.
parametersobjectNãoParâmetros de query string a passar ao workflow, correspondendo aos inputs definidos no workflow. Cada chave deve bater com um nome de parâmetro configurado no seu workflow Bubble.
workflow_namestringSimNome do workflow de API a disparar (conforme definido no editor de workflows do Bubble). É o nome exato dado ao workflow, que compõe parte da URL do endpoint.
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.

BUBBLE_WORKFLOW_TRIGGER_POST

Dispara um workflow de API do Bubble pelo nome via requisição POST. Use essa ação para executar workflows de backend no seu aplicativo Bubble. O workflow deve estar configurado na seção API Workflows do app com Expose as public API workflow habilitado. Passe os parâmetros necessários como objeto JSON no campo parameters.

NomeTipoObrigatórioDescrição
branchstringNãoBranch de deploy a direcionar. Use live para ambiente de produção ou version-test para desenvolvimento/teste.
parametersobjectNãoParâmetros em corpo JSON a passar ao workflow, correspondendo aos parâmetros de entrada configurados no workflow. Use formato ISO 8601 para datas (ex: 2024-01-15T10:30:00Z) e IDs únicos (strings) para referências a Data Types do Bubble.
workflow_namestringSimNome amigável de URL do workflow de API do Bubble a disparar. É o nome que você configurou na seção API Workflows, convertido para minúsculas com hífens no lugar de espaços (ex: send-email, process-payment).
NomeTipoObrigatórioDescrição
datastringSimDados retornados pela execução da ação.
errorstringNãoMensagem de erro caso a execução tenha falhado.
successfulbooleanSimIndica se a ação foi executada com sucesso.