Ver categorias

API REST de banco de dados: transforme qualquer consulta SQL em um endpoint.

API REST do banco de dados · o hub

Transforme qualquer coisa consulta SQL em um API REST ponto final

Escreva uma consulta no Construtor de Consultas usando qualquer um dos 59 conectores e clique em Novo ponto finalVocê tem um URL em api.querystreams.com com sua própria chave. O SQL é executado em modo somente leitura no Agente que já contém seus dados; os chamadores recebem JSON ou CSV e nunca veem o SQL, o esquema ou as credenciais. Não é necessário hospedar nenhum servidor, nem abrir nenhuma porta, e todos os planos, incluindo o gratuito, incluem essa funcionalidade. Esta página é uma visão geral; cada conector tem seu próprio guia abaixo.

Aproximadamente 90 segundos a partir de uma consulta salva Nenhum servidor para hospedar Os dados permanecem na sua rede. Uma chave por chamador, revogue a qualquer momento.
Teve alguma dúvida? É só perguntar. Aberto Suporte Em Fluxos de Consulta (menu no canto superior direito → Suporte) e envie-nos uma mensagem. Pessoas reais leem as mensagens, e "Não sei o que esta tela está pedindo" é uma pergunta perfeitamente válida.

O resultado final será o que você obterá.

Uma URL que retorna as linhas de uma consulta salva para qualquer pessoa que possua a chave, testada no console do portal antes de ser compartilhada. Assim:

PUBLICARapi.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19
ChaveValorDescrição
cidade cordão OpcionalSeattleFiltro chamável a partir da consulta salva
Chave X-APIqsapi_AB••••••••••Seu token secreto
{
  "cidade": "Seattle"
}
CabeçalhoValorDescrição
Chave X-APIqsapi_AB••••••••••Seu token secreto. Um por chamador, revogue a qualquer momento.
Tipo de conteúdoaplicativo/jsonOs parâmetros são transmitidos como um corpo JSON.
Aceitaraplicativo/jsonRetorna JSON; solicita texto/CSV e recebe CSV.
curl -X POST "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19" \ -H "X-API-Key: qsapi_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"city": "Seattle"}'
Status 200 OKTempo 84 msTamanho 412 BTruncado não
{
  "colunas": [ { "nome": "id_do_cliente", "tipo": "inteiro" }, { "nome": "nome", "tipo": "corda" }, { "nome": "cidade", "tipo": "corda" } ],
  "fileiras": [
    { "id_do_cliente": 1042, "nome": "Comerciantes do Vento Norte", "cidade": "Seattle" },
    { "id_do_cliente": 1057, "nome": "Alpine Outfitters", "cidade": "Denver" },
    { "id_do_cliente": 1063, "nome": "Alimentos do Porto", "cidade": "Halifax" }
  ],
  "meta": { "contagem_de_linhas": 3, "duração_do_agente_ms": 41, "id_da_solicitação": "req_7Hq2mKd9" }
}
CabeçalhoValorDescrição
tipo de conteúdoapplication/json; charset=utf-8O envelope na aba Corpo
comprimento do conteúdo412Bytes retornados; o indicador de tamanho acima
Somente leitura: uma consulta salva, nada mais. O SQL nunca sai da sua conta. Cada chamada na aba Atividade

A maioria das ferramentas que implementam uma API REST em um banco de dados, como PostgREST, Hasura, DreamFactory, Directus e os frameworks que você mesmo criaria, expõem o esquema: cada tabela se torna um endpoint e o usuário navega por ela. O Query Streams faz o oposto. Uma consulta salva define exatamente o que um endpoint retorna. O usuário recebe essas linhas e nada mais sobre como elas foram produzidas, e você nunca precisa executar um servidor de API, porque o agente que você já possui executa a consulta e o api.querystreams.com cuida do HTTP.

ONDE O BANCO DE DADOS ESTÁ LOCALIZADOsua rede de escritório ou sala de servidoresSeu próprio banco de dadospermanece na sua redeAgente de fluxos de consultaexecuta a consulta salvaapi.querystreamsverifica a chaveHTTPS · somente linhas, nunca o SQLQUEM TEM A CHAVEseu aplicativo, um painel de controle, um parceiro, um scriptGET ou POST com chave X-APIJSON, CSV ou NDJSON de volta
O agente reside com seus dados e executa a consulta. O api.querystreams.com verifica a chave e o limite de taxa e repassa as linhas. O chamador nunca acessa sua rede.

O que você vai precisar

Uma conta do Query Streams

Todos os planos incluem a API REST. O plano gratuito oferece um endpoint, duas chaves e 250 linhas por chamada, o suficiente para criar este guia. Cadastre-se em my.querystreams.com.

O agente em um computador que pode acessar seu próprio banco de dados, com a conexão adicionada.

Geralmente, trata-se do próprio servidor de banco de dados ou de um computador que permanece sempre ligado na mesma rede.

Uma consulta salva no Construtor de Consultas

O endpoint encapsula exatamente uma consulta salva. Escreva o SELECT, execute-o uma vez e salve-o. Adicione um filtro dinâmico (um @variable (na cláusula WHERE) se os chamadores devem poder filtrar.

Quem pode criar endpoints? Proprietários, administradores e criadores. Se o API O item está faltando na sua barra superior. Um administrador pode ativá-lo para o seu usuário em [inserir configurações aqui]. Conta → PermissõesQualquer pessoa com quem você compartilhe um endpoint precisa apenas de uma conta do Query Streams, em qualquer plano.

Configure em quatro etapas

  1. Salvar consulta

    Em Construtor de consultas Escolha uma conexão, escreva o comando SELECT e execute-o uma vez. @variable na cláusula WHERE torna-se um parâmetro da API:

    Consulta salva · com um filtro dinâmico
    SELECIONAR ID do cliente, nome, cidade
    DE clientes
    ONDE cidade = @cidade
    ORDEM POR nome;

    Clique em Salvar; o nome passa a ser o nome de exibição do ponto de extremidade.

  2. Crie o endpoint

    Aberto API Na barra superior, clique Novo ponto finale em Selecione a consulta Clique na consulta que você salvou. Clique Próximo.

  3. Configurar e bloquear parâmetros

    Sobre Configurar manter Vida útil Permanente, Modo de resposta Estático e Formato interno JSON para um primeiro ponto de extremidade; o modo e o formato são fixos após a criação. Parâmetros de bloqueio deixar cidade como Invocável, ou Bloquear Defina-o para um valor fixo que o chamador não possa alterar. Clique. Próximo.

  4. Compartilhe e ganhe sua chave.

    Convidar Pessoas por e-mail, adicione um Chave de serviço para uma ferramenta, ou ignore por enquanto e depois clique Criar e obter minha chaveCopie a chave de 49 caracteres que começa com qsapi_; poderá ser revelado novamente mais tarde a partir do Compartilhamento guia. Clique Enviar no console para fazer a primeira chamada.

É isso. A consulta responde em uma URL, somente leitura, para as chaves que você fornecer. Cada guia de conector abaixo descreve os mesmos quatro passos com o SQL específico daquele conector e os detalhes que o tornam particular.

Ligue de qualquer lugar

Substitua o ID do endpoint pelo seu e qsapi_SUA_CHAVE com a sua chave:

GET · parâmetros na string de consulta
curl "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19?city=Seattle" \ -H "X-API-Key: qsapi_YOUR_KEY"
Resposta · 200 OK · application/json
{
  "colunas": [ { "nome": "id_do_cliente", "tipo": "inteiro" }, { "nome": "nome", "tipo": "corda" }, { "nome": "cidade", "tipo": "corda" } ],
  "fileiras": [
    { "id_do_cliente": 1042, "nome": "Comerciantes do Vento Norte", "cidade": "Seattle" },
    { "id_do_cliente": 1057, "nome": "Alpine Outfitters", "cidade": "Denver" },
    { "id_do_cliente": 1063, "nome": "Alimentos do Porto", "cidade": "Halifax" }
  ],
  "meta": { "contagem_de_linhas": 3, "duração_do_agente_ms": 41, "id_da_solicitação": "req_7Hq2mKd9" }
}

As linhas retornam como objetos indexados pelo nome da coluna, com a lista de colunas e um meta Bloco que informa quantas linhas existem, se o resultado foi truncado e o ID da solicitação que você pode citar para suporte. A mesma chamada que um POST coloca os parâmetros em um corpo JSON, que é a escolha certa para longas listas de valores:

POST · parâmetros em um corpo JSON
curl -X POST "https://api.querystreams.com/v1/endpoints/8f2c4d1e-6b3a-4f7e-9c21-5d0a7b3e2f19" \ -H "X-API-Key: qsapi_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{"params": {"city": "Seattle"}}'
?formato=csv
CSV em vez de JSON, com linha de cabeçalho incluída. Aceitar: texto/csv faz o mesmo. Os endpoints de streaming retornam NDJSON (um objeto JSON por linha) com um final {"_summary": true, "row_count": N} linha; verifique essa última linha.
?sample=true
No máximo cinco linhas, sem cobrança. Ideal para conectar os cabos de um cliente.
?compressão=lz4
Um corpo de estrutura LZ4 para chamadas de alto volume com decodificador; o Código A aba contém o trecho de código decodificador para cada idioma. A compressão gzip simples ocorre automaticamente quando seu cliente envia o arquivo. Codificação aceita: gzip.
Autorização: Portador qsapi_…
Aceito como um pseudônimo para Chave X-APIUse-o a partir do código do navegador.

Onde ele se conecta

Excel e Power BI

Exportar → Power Query M (.pq) Isso lhe fornece uma consulta pronta. Cole-a no Editor Avançado (Excel: Dados → Obter Dados → De Outras Fontes → Consulta em Branco; Power BI: Página Inicial → Transformar dados → Nova Fonte → Consulta em Branco) e substitua o espaço reservado pela sua consulta. qsapi_ chave.

Carteiro, Insônia, Amarelinha

O mesmo Exportar O menu baixa uma coleção do Postman v2.1, uma exportação do Insomnia v5 ou uma coleção do Hoppscotch com os parâmetros preenchidos e um espaço reservado para a chave.

Seu próprio código

O Código A aba contém exemplos funcionais para cURL, Python, JavaScript, TypeScript, Java, C#, Go, PHP, PowerShell e Ruby. Exportar → Especificação OpenAPI 3.1 Alimenta qualquer gerador de cliente ou interface de usuário Swagger.

n8n, Zapier, Make, cron

Criar um Chave de serviço Para a ferramenta, cole o URL e a chave no nó HTTP correspondente e agende a execução. Cada ferramenta recebe sua própria chave, então você pode revogar uma sem afetar as outras.

Guias por conector

Todos os conectores compatíveis com o Query Streams podem ser publicados desta forma. Escolha o seu:

Bancos de dados que você executa

Armazéns de dados

Bancos de dados hospedados

Pastas de arquivos e registros

Conectores SaaS e API

Guias para o consumidor: Power BI e Excel via Power Query M.

O que os planos permitem

PlanoPontos finaisChaves por endpointPessoas por ponto finalLinhas por chamada (estático)Linhas por chamada (streaming)Chamadas por minuto, por tecla
Gratuito1212502503
Núcleo Pessoal2325,000250,00015
Personal Plus55510,000500,00030
Núcleo de negócios5101050,0001,000,000300
Negócios Plus102025100,0005,000,000600
Business Max253050250,00010,000,000600
Núcleo Empresarial5050100500,00025,000,0001,000
Enterprise Plus1001002501,000,00050,000,0001,000
Empresa Max2502005002,500,000100,000,0001,500

Cada chamada também possui um tempo limite fixo de consulta de 60 segundos e um limite de resposta de 8 MiB, e os bytes retornados são contabilizados na sua franquia de dados mensal, a mesma franquia usada pelos suplementos do Excel e do Google Sheets. O plano gratuito inclui um endpoint e 5 MB por mês, o que é suficiente para uma pequena tabela acessada várias vezes ao dia. Consulte a página de preços. para as verbas previstas no plano.

Gratuito é um plano que você mantém. Não se trata de um período de teste. Veja exatamente o que está incluído no anúncio. página de preços.

Mantendo-o seguro

O SQL continua sendo seu.

Quem faz a chamada recebe as linhas. Nunca vê a consulta, os nomes das tabelas ou os detalhes da conexão, e não pode alterar o que o endpoint executa.

Uma chave, um ponto final, um chamador

Uma chave funciona para apenas um ponto de extremidade. Atribua uma chave a cada pessoa ou ferramenta, e todas as chamadas serão registradas para ela. Revogue uma chave e as outras continuarão funcionando; a revogação entra em vigor em cerca de cinco minutos.

Somente leitura, do seu lado da parede.

O agente executa apenas o comando SELECT salvo, e nada mais, dentro da sua rede, através de sua própria conexão de saída. Não há necessidade de abrir nenhuma porta nem de fornecer credenciais na internet.

Cada chamada no livro-razão

O Atividade A aba mostra cada chamada com hora, destinatário, status, linhas, bytes e duração, incluindo as recusadas. Defina um Expirando duração do compartilhamento temporário e o ponto de extremidade se desliga automaticamente na data definida.

Quando algo não funciona

StatusCódigoO que fazer
401API_KEY_REQUIRED / API_KEY_INVALIDO cabeçalho está faltando ou a chave está incorreta. Enviar X-API-Key: qsapi_…, todos os 49 caracteres. As chaves podem ser copiadas novamente na guia Compartilhamento do endpoint.
403API_KEY_ENDPOINT_MISMATCHUma chave válida usada em um endpoint diferente. Cada chave pertence a um endpoint.
403API_KEY_REVOGADA / API_ENDPOINT_EXPIREDA chave foi revogada ou o endpoint expirou. Gere uma nova chave ou restaure o endpoint.
400API_PARAM_NOT_OVERRIDABLEVocê enviou um parâmetro que o proprietário não marcou como Callable. O corpo da mensagem lista os nomes permitidos.
414API_QUERY_TOO_LARGEA string de consulta GET passou 8 KB ou 200 valores de lista. Envie os mesmos parâmetros como corpo JSON em uma requisição POST.
413API_OUTPUT_TOO_LARGEO resultado ultrapassou o limite de 8 MiB. Refine a consulta ou altere o endpoint para Streaming.
429API_RATE_LIMITEDMuitas chamadas neste minuto para a chave ou o ponto de extremidade. Aguarde. Tentar novamente após segundos, ou aumentar Limite de taxa Em Configurações da API → Padrões, dentro do seu plano.
429API_DATA_REALM_EXHAUSTEDO pacote de dados mensal do proprietário foi atingido. Ele será renovado no próximo mês de faturamento; faça um upgrade para obter mais dados.
503API_AGENT_NOT_CONNECTEDO agente responsável pelo seu banco de dados está offline. Verifique em Dados → Agentes de Dados; as chamadas serão retomadas assim que a conexão for restabelecida.
504API_QUERY_TIMEOUTA consulta demorou mais de 60 segundos. Adicione um filtro ou um índice, ou salve uma consulta mais específica.

Cada corpo de erro tem a forma {"erro": {"código": "…", "mensagem": "…"}} e cada resposta carrega um X-QS-Request-Id Ao entrar em contato com o suporte, mencione o ID no cabeçalho.

Perguntas que as pessoas fazem

Meus dados são copiados para o Query Streams?

Não. O agente executa a consulta no local onde seus dados estão armazenados e envia apenas as linhas solicitadas pela chamada. Nada é sincronizado ou armazenado em cache nesse meio tempo; cada chamada executa a consulta.

Quem faz a chamada pode alterar o SQL ou solicitar outras tabelas?

Não. Um endpoint executa uma consulta salva. Os chamadores só podem definir os parâmetros que você marcou. Invocávele os valores são vinculados com segurança: o texto é colocado entre aspas e escapado, os números têm seus intervalos verificados e as listas são expandidas.

Como faço para entregar isso a um parceiro?

No ponto final Compartilhamento guia escolher Pessoas e insira o e-mail deles. Eles recebem um link mágico, fazem login com esse endereço (uma conta gratuita funciona) e geram sua própria chave; você vê as chamadas deles por nome na aba Atividade. Para um servidor ou uma ferramenta de automação, crie um Chave de API com um rótulo em vez disso.

O que acontece quando eu edito a consulta salva?

O endpoint executa o novo SQL na próxima chamada e sua especificação OpenAPI é regenerada. A URL e as chaves não mudam. Se você adicionar ou remover um filtro, revise as configurações. Parâmetros de bloqueio para que os chamadores vejam os parâmetros corretos.

O plano gratuito realmente cobre isso?

Sim. O plano gratuito é permanente, não um período de teste com prazo de validade. Ele inclui um endpoint, duas chaves e 250 linhas por chamada. Veja exatamente o que está incluído no [link para a página de detalhes]. página de preços.

Em que isso difere do PostgREST, Hasura ou DreamFactory?

Esses serviços expõem seu esquema como uma API e você os hospeda. Aqui, uma consulta salva é um endpoint, o SQL e o esquema permanecem privados e não há nada para hospedar: o agente que você já executa realiza a consulta e o api.querystreams.com fornece o HTTP, as chaves, os limites de taxa e o livro-razão.

É possível que um único ponto de extremidade combine dados de dois bancos de dados?

Sim. Salve uma consulta federada (entre fontes diferentes) no Construtor de Consultas e exponha-a; os endpoints federados são executados no modo estático.

Posso transmitir resultados grandes?

Escolher Transmissão como modo de resposta ao criar o endpoint. As linhas chegam em formato NDJSON ou CSV em blocos até o limite de linhas de streaming do seu plano, com uma linha de resumo no final.

Ainda com dificuldades? Aberto Suporte Em Fluxos de Consulta, informe-nos em qual etapa você está e o que você vê. Nós o conectaremos.

Setup trouble?

  • Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?
Atualizado em 27 de setembro de 2026

Desenvolvido por BetterDocs