Functions
Functions: criar, implantar, executar e acompanhar execuções.
Classe Functions: 24 métodos (3 no @owbase/web, 24 no @owbase/node). Os exemplos usam a forma de objeto dos parâmetros; troque os valores entre < e > pelos seus.
Listar functions
SDK: só @owbase/node
Obtém a lista de todas as functions do projeto. Use os parâmetros de consulta para filtrar os resultados.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
queries |
string[] |
não | Lista de consultas geradas com a classe Query do SDK. Saiba mais sobre consultas. No máximo 100 consultas, cada uma com até 4096 caracteres. É possível filtrar pelos atributos: name, enabled, runtime, deploymentId, schedule, scheduleNext, schedulePrevious, timeout, entrypoint, commands, installationId |
search |
string |
não | Termo de busca para filtrar a lista. Tamanho máximo: 256 caracteres. |
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.list({ queries: [], // opcional search: '<SEARCH>', // opcional total: false, // opcional});Criar function
SDK: só @owbase/node
Cria uma function. Você pode passar uma lista de permissões para que usuários ou times do projeto possam executar a function pela API de cliente.
O deploy é só por upload: os parâmetros de repositório Git ficam de fora (veja Empacotar e enviar o código).
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. Escolha um ID próprio ou gere um ID aleatório com ID.unique(). Caracteres válidos: a-z, A-Z, 0-9, ponto, hífen e sublinhado. Não pode começar com caractere especial. Tamanho máximo: 36 caracteres. |
name |
string |
sim | Nome da function. Tamanho máximo: 128 caracteres. |
runtime |
Runtime |
sim | Runtime de execução. Valores: node-22 (só Node 22 no Owbase). |
execute |
string[] |
não | Lista de papéis em texto com permissão de execução. Por padrão, nenhum usuário recebe permissão de execução. Saiba mais sobre papéis. No máximo 100 papéis, cada um com até 64 caracteres. |
events |
string[] |
não | Lista de eventos. No máximo 100 eventos. |
schedule |
string |
não | Agendamento na sintaxe CRON. |
timeout |
number |
não | Tempo máximo de execução da function, em segundos. |
enabled |
boolean |
não | A function está ativa? Com false, os usuários não acessam a function, mas os SDKs de servidor com chave de API ainda podem acessá-la. Nenhum dado se perde ao alternar essa opção. |
logging |
boolean |
não | Quando desligado, as execuções não guardam logs nem erros e ficam um pouco mais rápidas. |
entrypoint |
string |
não | Arquivo de entrada. O caminho é relativo à raiz do pacote enviado. |
commands |
string |
não | Comandos de build. |
scopes |
ProjectKeyScopes[] |
não | Lista de escopos permitidos para a chave de API gerada automaticamente em cada execução. No máximo 200 escopos. Valores: project.read, project.write, usage.read, keys.read, keys.write, platforms.read, platforms.write, mocks.read, mocks.write, policies.read, policies.write, project.policies.read, project.policies.write, project.oauth2.read, project.oauth2.write, templates.read, templates.write, stages.read, stages.write, users.read, users.write, sessions.read, sessions.write, teams.read, teams.write, databases.read, databases.write, tables.read, tables.write, columns.read, columns.write, indexes.read, indexes.write, rows.read, rows.write, embeddings.write, collections.read, collections.write, attributes.read, attributes.write, documents.read, documents.write, documentsdb.read, documentsdb.write, documentsdb.collections.read, documentsdb.collections.write, documentsdb.documents.read, documentsdb.documents.write, documentsdb.indexes.read, documentsdb.indexes.write, vectorsdb.read, vectorsdb.write, vectorsdb.collections.read, vectorsdb.collections.write, vectorsdb.documents.read, vectorsdb.documents.write, vectorsdb.indexes.read, vectorsdb.indexes.write, buckets.read, buckets.write, files.read, files.write, tokens.read, tokens.write, functions.read, functions.write, executions.read, executions.write, execution.read, execution.write, sites.read, sites.write, log.read, log.write, providers.read, providers.write, topics.read, topics.write, subscribers.read, subscribers.write, targets.read, targets.write, messages.read, messages.write, rules.read, rules.write, webhooks.read, webhooks.write, locale.read, avatars.read, avatars.write, health.read, assistant.read, migrations.read, migrations.write, schedules.read, schedules.write, vcs.read, vcs.write, insights.read, insights.write, reports.read, reports.write, presences.read, presences.write. |
buildSpecification |
string |
não | Especificação de build dos deploys da function. |
runtimeSpecification |
string |
não | Especificação de runtime das execuções da function. |
deploymentRetention |
number |
não | Dias para manter os deploys inativos antes de excluí-los. Com 0, todos os deploys são mantidos. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions, Runtime, ProjectKeyScopes } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.create({ functionId: '<FUNCTION_ID>', name: '<NAME>', runtime: Runtime.Node22, execute: ['any'], // opcional events: [], // opcional schedule: '0 0 * * *', // opcional timeout: 1, // opcional enabled: false, // opcional logging: false, // opcional entrypoint: '<ENTRYPOINT>', // opcional commands: '<COMMANDS>', // opcional scopes: [ProjectKeyScopes.ProjectRead], // opcional buildSpecification: 's-1vcpu-512mb', // opcional runtimeSpecification: 's-1vcpu-512mb', // opcional deploymentRetention: 0, // opcional});listRuntimes
Seção intitulada “listRuntimes”Listar runtimes
SDK: só @owbase/node
Obtém a lista de todos os runtimes ativos na sua instância.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API sem escopo específico.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.listRuntimes({ total: false, // opcional});listSpecifications
Seção intitulada “listSpecifications”Listar especificações
SDK: só @owbase/node
Lista as especificações de function permitidas nesta instância.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type |
string |
não | Tipo de especificação a listar. Pode ser: runtimes, builds. O padrão é runtimes. |
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.listSpecifications({ type: 'runtimes', // opcional total: false, // opcional});Obter function
SDK: só @owbase/node
Obtém uma function pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.get({ functionId: '<FUNCTION_ID>',});Atualizar function
SDK: só @owbase/node
Atualiza uma function pelo ID.
O deploy é só por upload: os parâmetros de repositório Git ficam de fora (veja Empacotar e enviar o código).
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
name |
string |
sim | Nome da function. Tamanho máximo: 128 caracteres. |
runtime |
Runtime |
não | Runtime de execução. Valores: node-22 (só Node 22 no Owbase). |
execute |
string[] |
não | Lista de papéis em texto com permissão de execução. Por padrão, nenhum usuário recebe permissão de execução. Saiba mais sobre papéis. No máximo 100 papéis, cada um com até 64 caracteres. |
events |
string[] |
não | Lista de eventos. No máximo 100 eventos. |
schedule |
string |
não | Agendamento na sintaxe CRON. |
timeout |
number |
não | Tempo máximo de execução, em segundos. |
enabled |
boolean |
não | A function está ativa? Com false, os usuários não acessam a function, mas os SDKs de servidor com chave de API ainda podem acessá-la. Nenhum dado se perde ao alternar essa opção. |
logging |
boolean |
não | Quando desligado, as execuções não guardam logs nem erros e ficam um pouco mais rápidas. |
entrypoint |
string |
não | Arquivo de entrada. O caminho é relativo à raiz do pacote enviado. |
commands |
string |
não | Comandos de build. |
scopes |
ProjectKeyScopes[] |
não | Lista de escopos permitidos para a chave de API gerada automaticamente em cada execução. No máximo 200 escopos. Valores: project.read, project.write, usage.read, keys.read, keys.write, platforms.read, platforms.write, mocks.read, mocks.write, policies.read, policies.write, project.policies.read, project.policies.write, project.oauth2.read, project.oauth2.write, templates.read, templates.write, stages.read, stages.write, users.read, users.write, sessions.read, sessions.write, teams.read, teams.write, databases.read, databases.write, tables.read, tables.write, columns.read, columns.write, indexes.read, indexes.write, rows.read, rows.write, embeddings.write, collections.read, collections.write, attributes.read, attributes.write, documents.read, documents.write, documentsdb.read, documentsdb.write, documentsdb.collections.read, documentsdb.collections.write, documentsdb.documents.read, documentsdb.documents.write, documentsdb.indexes.read, documentsdb.indexes.write, vectorsdb.read, vectorsdb.write, vectorsdb.collections.read, vectorsdb.collections.write, vectorsdb.documents.read, vectorsdb.documents.write, vectorsdb.indexes.read, vectorsdb.indexes.write, buckets.read, buckets.write, files.read, files.write, tokens.read, tokens.write, functions.read, functions.write, executions.read, executions.write, execution.read, execution.write, sites.read, sites.write, log.read, log.write, providers.read, providers.write, topics.read, topics.write, subscribers.read, subscribers.write, targets.read, targets.write, messages.read, messages.write, rules.read, rules.write, webhooks.read, webhooks.write, locale.read, avatars.read, avatars.write, health.read, assistant.read, migrations.read, migrations.write, schedules.read, schedules.write, vcs.read, vcs.write, insights.read, insights.write, reports.read, reports.write, presences.read, presences.write. |
buildSpecification |
string |
não | Especificação de build dos deploys da function. |
runtimeSpecification |
string |
não | Especificação de runtime das execuções da function. |
deploymentRetention |
number |
não | Dias para manter os deploys inativos antes de excluí-los. Com 0, todos os deploys são mantidos. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions, Runtime, ProjectKeyScopes } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.update({ functionId: '<FUNCTION_ID>', name: '<NAME>', runtime: Runtime.Node22, // opcional execute: ['any'], // opcional events: [], // opcional schedule: '0 0 * * *', // opcional timeout: 1, // opcional enabled: false, // opcional logging: false, // opcional entrypoint: '<ENTRYPOINT>', // opcional commands: '<COMMANDS>', // opcional scopes: [ProjectKeyScopes.ProjectRead], // opcional buildSpecification: 's-1vcpu-512mb', // opcional runtimeSpecification: 's-1vcpu-512mb', // opcional deploymentRetention: 0, // opcional});Excluir function
SDK: só @owbase/node
Exclui uma function pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.delete({ functionId: '<FUNCTION_ID>',});updateFunctionDeployment
Seção intitulada “updateFunctionDeployment”Atualizar deploy da function
SDK: só @owbase/node
Atualiza o deploy ativo da function. Use este endpoint para trocar o deploy de código usado quando um visitante abre a function.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.updateFunctionDeployment({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>',});listDeployments
Seção intitulada “listDeployments”Listar deploys
SDK: só @owbase/node
Obtém a lista de todos os deploys de código da function. Use os parâmetros de consulta para filtrar os resultados.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
queries |
string[] |
não | Lista de consultas geradas com a classe Query do SDK. Saiba mais sobre consultas. No máximo 100 consultas, cada uma com até 4096 caracteres. É possível filtrar pelos atributos: buildSize, sourceSize, totalSize, buildDuration, status, activate, type |
search |
string |
não | Termo de busca para filtrar a lista. Tamanho máximo: 256 caracteres. |
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.listDeployments({ functionId: '<FUNCTION_ID>', queries: [], // opcional search: '<SEARCH>', // opcional total: false, // opcional});createDeployment
Seção intitulada “createDeployment”Criar deploy
SDK: só @owbase/node
Cria um deploy de código da function. Use este endpoint para enviar uma nova versão do código da function. Para executar o código recém-enviado, atualize o deploy da function para usar o UID do novo deploy.
Este endpoint aceita um arquivo tar.gz com o seu código compactado. Inclua no arquivo compactado todas as dependências do código. Saiba mais sobre empacotamento de código no tutorial de Functions do Owbase Cloud.
Use o parâmetro “entrypoint” para definir o arquivo de entrada usado para executar o código.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
code |
File (no node, também InputFile) |
sim | Arquivo gzip com o pacote do código. Com a CLI do Owbase, passe o caminho da pasta do código, e a CLI empacota o código automaticamente. Use um caminho dentro da pasta atual. |
activate |
boolean |
sim | Ativa o deploy automaticamente quando o build terminar. |
entrypoint |
string |
não | Arquivo de entrada. |
commands |
string |
não | Comandos de build. |
onProgress |
(progress: UploadProgress) => void |
não | Callback chamado depois de cada parte enviada, com o progresso do envio ($id, progresso em porcentagem, sizeUploaded, chunksTotal, chunksUploaded). |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';import { InputFile } from '@owbase/node/file';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.createDeployment({ functionId: '<FUNCTION_ID>', code: InputFile.fromPath('/path/to/file', 'filename'), activate: false, entrypoint: '<ENTRYPOINT>', // opcional commands: '<COMMANDS>', // opcional});createDuplicateDeployment
Seção intitulada “createDuplicateDeployment”Criar deploy duplicado
SDK: só @owbase/node
Cria um novo build de um deploy existente da function. Este endpoint refaz o build de um deploy com a configuração atualizada da function, inclusive o ponto de entrada e os comandos de build, se tiverem mudado. O build entra na fila e roda de forma assíncrona. O código do deploy original é mantido e usado no novo build.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
buildId |
string |
não | ID único do build. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.createDuplicateDeployment({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>', buildId: '<BUILD_ID>', // opcional});getDeployment
Seção intitulada “getDeployment”Obter deploy
SDK: só @owbase/node
Obtém um deploy da function pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.getDeployment({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>',});deleteDeployment
Seção intitulada “deleteDeployment”Excluir deploy
SDK: só @owbase/node
Exclui um deploy de código pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.deleteDeployment({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>',});getDeploymentDownload
Seção intitulada “getDeploymentDownload”Obter download do deploy
SDK: só @owbase/node
Obtém o conteúdo de um deploy da function pelo ID. A resposta vem com o header ‘Content-Disposition: attachment’, que faz o navegador baixar o arquivo para a pasta de downloads do usuário.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
type |
DeploymentDownloadType |
não | Arquivo do deploy a baixar. Pode ser: “source”, “output”. Valores: source, output. |
token |
string |
não | Token pré-assinado de download do código-fonte, para acessar este deploy sem sessão (jobs-service). |
Acesso: chave de API com o escopo functions.read ou sessão do usuário (vale o que as permissões do recurso deixam).
import { Client, Functions, DeploymentDownloadType } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.getDeploymentDownload({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>', type: DeploymentDownloadType.Source, // opcional token: '<TOKEN>', // opcional});updateDeploymentStatus
Seção intitulada “updateDeploymentStatus”Atualizar status do deploy
SDK: só @owbase/node
Cancela o build em andamento de um deploy da function. Se o build já estiver rodando, ele é interrompido e marcado como cancelado. Se ainda não começou, é marcado como cancelado sem rodar. Não é possível cancelar builds que já terminaram (status ‘ready’) ou falharam. A resposta traz o status final e os detalhes do build.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
deploymentId |
string |
sim | ID do deploy. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.updateDeploymentStatus({ functionId: '<FUNCTION_ID>', deploymentId: '<DEPLOYMENT_ID>',});listExecutions
Seção intitulada “listExecutions”Listar execuções
SDK: @owbase/web e @owbase/node
Obtém a lista de todos os logs de execução de functions do usuário atual. Use os parâmetros de consulta para filtrar os resultados.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
queries |
string[] |
não | Lista de consultas geradas com a classe Query do SDK. Saiba mais sobre consultas. No máximo 100 consultas, cada uma com até 4096 caracteres. É possível filtrar pelos atributos: trigger, status, responseStatusCode, duration, requestMethod, requestPath, deploymentId |
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API com o escopo executions.read (também aceita execution.read) ou sessão do usuário (vale o que as permissões do recurso deixam).
import { Client, Functions } from '@owbase/web';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>'); // ID do projeto
const functions = new Functions(client);
const result = await functions.listExecutions({ functionId: '<FUNCTION_ID>', queries: [], // opcional total: false, // opcional});
console.log(result);import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setSession(''); // sessão do usuário
const functions = new Functions(client);
const result = await functions.listExecutions({ functionId: '<FUNCTION_ID>', queries: [], // opcional total: false, // opcional});createExecution
Seção intitulada “createExecution”Criar execução
SDK: @owbase/web e @owbase/node
Dispara uma execução da function. O objeto devolvido traz o status atual da execução. Consulte o endpoint Get Execution para acompanhar o status da execução. Depois da chamada a este endpoint, a execução da function começa de forma assíncrona.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
body |
string |
não | Corpo HTTP da execução. O padrão é texto vazio. |
async |
boolean |
não | Executa o código em segundo plano. O padrão é false. |
xpath |
string |
não | Caminho HTTP da execução. O caminho pode ter parâmetros de consulta. O padrão é / |
method |
ExecutionMethod |
não | Método HTTP da execução. O padrão é POST. Valores: GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD. |
headers |
object |
não | Headers HTTP da execução. O padrão é vazio. |
scheduledAt |
string |
não | Horário agendado da execução, no formato ISO 8601. A data e hora precisa estar no futuro, com precisão de minutos. |
Acesso: chave de API com o escopo executions.write (também aceita execution.write) ou sessão do usuário, ou mesmo sem sessão (vale o que as permissões do recurso deixam).
import { Client, Functions, ExecutionMethod } from '@owbase/web';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>'); // ID do projeto
const functions = new Functions(client);
const result = await functions.createExecution({ functionId: '<FUNCTION_ID>', body: '<BODY>', // opcional async: false, // opcional xpath: '<PATH>', // opcional method: ExecutionMethod.GET, // opcional headers: {}, // opcional scheduledAt: '<SCHEDULED_AT>', // opcional});
console.log(result);import { Client, Functions, ExecutionMethod } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setSession(''); // sessão do usuário
const functions = new Functions(client);
const result = await functions.createExecution({ functionId: '<FUNCTION_ID>', body: '<BODY>', // opcional async: false, // opcional xpath: '<PATH>', // opcional method: ExecutionMethod.GET, // opcional headers: {}, // opcional scheduledAt: '<SCHEDULED_AT>', // opcional});getExecution
Seção intitulada “getExecution”Obter execução
SDK: @owbase/web e @owbase/node
Obtém o log de uma execução da function pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
executionId |
string |
sim | ID da execução. |
Acesso: chave de API com o escopo executions.read (também aceita execution.read) ou sessão do usuário (vale o que as permissões do recurso deixam).
import { Client, Functions } from '@owbase/web';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>'); // ID do projeto
const functions = new Functions(client);
const result = await functions.getExecution({ functionId: '<FUNCTION_ID>', executionId: '<EXECUTION_ID>',});
console.log(result);import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setSession(''); // sessão do usuário
const functions = new Functions(client);
const result = await functions.getExecution({ functionId: '<FUNCTION_ID>', executionId: '<EXECUTION_ID>',});deleteExecution
Seção intitulada “deleteExecution”Excluir execução
SDK: só @owbase/node
Exclui uma execução da function pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID da function. |
executionId |
string |
sim | ID da execução. |
Acesso: chave de API com o escopo executions.write (também aceita execution.write).
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.deleteExecution({ functionId: '<FUNCTION_ID>', executionId: '<EXECUTION_ID>',});listVariables
Seção intitulada “listVariables”Listar variáveis
SDK: só @owbase/node
Obtém a lista de todas as variáveis de uma function.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID único da function. |
queries |
string[] |
não | Lista de consultas geradas com a classe Query do SDK. Saiba mais sobre consultas. No máximo 100 consultas, cada uma com até 4096 caracteres. É possível filtrar pelos atributos: key, resourceType, resourceId, secret |
total |
boolean |
não | Com false, o total não é calculado e volta como 0. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.listVariables({ functionId: '<FUNCTION_ID>', queries: [], // opcional total: false, // opcional});createVariable
Seção intitulada “createVariable”Criar variável
SDK: só @owbase/node
Cria uma variável de ambiente da function. A function acessa essas variáveis durante a execução como variáveis de ambiente.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID único da function. |
variableId |
string |
sim | ID da variável. Escolha um ID próprio ou gere um ID aleatório com ID.unique(). Caracteres válidos: a-z, A-Z, 0-9, ponto, hífen e sublinhado. Não pode começar com caractere especial. Tamanho máximo: 36 caracteres. |
key |
string |
sim | Chave da variável. Só letras, dígitos e sublinhado, sem começar por dígito. Tamanho máximo: 255 caracteres. |
value |
string |
sim | Valor da variável. Tamanho máximo: 8192 caracteres. |
secret |
boolean |
não | Variáveis secretas podem ser atualizadas ou excluídas, mas só as functions conseguem lê-las, durante o build e a execução. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.createVariable({ functionId: '<FUNCTION_ID>', variableId: '<VARIABLE_ID>', key: '<KEY>', value: '<VALUE>', secret: false, // opcional});getVariable
Seção intitulada “getVariable”Obter variável
SDK: só @owbase/node
Obtém uma variável pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID único da function. |
variableId |
string |
sim | ID único da variável. |
Acesso: chave de API com o escopo functions.read.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.getVariable({ functionId: '<FUNCTION_ID>', variableId: '<VARIABLE_ID>',});updateVariable
Seção intitulada “updateVariable”Atualizar variável
SDK: só @owbase/node
Atualiza uma variável pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID único da function. |
variableId |
string |
sim | ID único da variável. |
key |
string |
não | Chave da variável. Só letras, dígitos e sublinhado, sem começar por dígito. Tamanho máximo: 255 caracteres. |
value |
string |
não | Valor da variável. Tamanho máximo: 8192 caracteres. |
secret |
boolean |
não | Variáveis secretas podem ser atualizadas ou excluídas, mas só as functions conseguem lê-las, durante o build e a execução. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.updateVariable({ functionId: '<FUNCTION_ID>', variableId: '<VARIABLE_ID>', key: '<KEY>', // opcional value: '<VALUE>', // opcional secret: false, // opcional});deleteVariable
Seção intitulada “deleteVariable”Excluir variável
SDK: só @owbase/node
Exclui uma variável pelo ID.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
functionId |
string |
sim | ID único da function. |
variableId |
string |
sim | ID único da variável. |
Acesso: chave de API com o escopo functions.write.
import { Client, Functions } from '@owbase/node';
const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') // endpoint da API .setProject('<YOUR_PROJECT_ID>') // ID do projeto .setKey('<YOUR_API_KEY>'); // chave de API (só no servidor)
const functions = new Functions(client);
const result = await functions.deleteVariable({ functionId: '<FUNCTION_ID>', variableId: '<VARIABLE_ID>',});As descrições desta página são traduções das que vêm da especificação da API do servidor (licença BSD-3-Clause), e os exemplos vêm do gerador de SDKs (licença MIT). Os avisos completos estão no arquivo NOTICE dos pacotes @owbase/web e @owbase/node.