Skip to content

Productivity

Google Sheets, Notion, Airtable, and Stripe integrations.

10 modules

ModuleDescription
Ler Google SheetsLer dados de planilha Google Sheets
Escrever Google SheetsEscrever dados em planilha Google Sheets
Criar Pagina NotionCriar nova pagina em banco de dados Notion
Consultar Banco de Dados NotionConsultar paginas de banco de dados Notion com filtros e ordenacao
Stripe Criar PagamentoCriar intencao de pagamento com Stripe
Stripe Obter ClienteRecuperar informacoes do cliente do Stripe
Stripe Listar CobrancasListar cobrancas recentes do Stripe
Airtable Criar RegistroCriar novo registro em tabela Airtable
Airtable Ler RegistrosLer registros de tabela Airtable
Airtable Atualizar RegistroAtualizar registro existente em tabela Airtable

Modules

Ler Google Sheets

api.google_sheets.read

Ler dados de planilha Google Sheets

Parameters:

NameTypeRequiredDefaultDescription
credentialsobjectNo-Credenciais JSON da conta de servico Google (padrao para env.GOOGLE_CREDENTIALS_JSON)
spreadsheet_idstringYes-ID da planilha Google Sheets (da URL)
rangestringYes-Intervalo em notacao A1 para ler
include_headerbooleanNoTrueInterpretar primeira linha como cabecalhos de coluna

Output:

FieldTypeDescription
valuesarrayInterpretar primeira linha como cabecalhos de coluna
dataarrayArray de linhas (cada linha e array de valores)
row_countnumberArray de linhas (cada linha e array de valores)

Example: Read with headers

yaml
spreadsheet_id: 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms
range: Sheet1!A1:D100
include_header: true

Escrever Google Sheets

api.google_sheets.write

Escrever dados em planilha Google Sheets

Parameters:

NameTypeRequiredDefaultDescription
credentialsobjectNo-Credenciais JSON da conta de servico Google (padrao para env.GOOGLE_CREDENTIALS_JSON)
spreadsheet_idstringYes-ID da planilha Google Sheets (da URL)
rangestringYes-ID da planilha Google Sheets (da URL)
valuesarrayYes-Intervalo em notacao A1 para escrever
value_input_optionstringNoUSER_ENTEREDComo interpretar valores de entrada

Output:

FieldTypeDescription
updated_rangestringIntervalo que foi atualizado
updated_rowsnumberIntervalo que foi atualizado
updated_columnsnumberIntervalo que foi atualizado
updated_cellsnumberNumero de linhas atualizadas

Example: Write data with headers

yaml
spreadsheet_id: 1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms
range: Sheet1!A1
values: [["Name", "Email", "Status"], ["John Doe", "john@example.com", "Active"], ["Jane Smith", "jane@example.com", "Active"]]

Criar Pagina Notion

api.notion.create_page

Criar nova pagina em banco de dados Notion

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Token de integracao Notion (padrao para env.NOTION_API_KEY)
database_idstringYes-ID do banco de dados Notion (string hex de 32 caracteres)
propertiesobjectYes-Propriedades da pagina (titulo, texto, select, etc.)
contentarrayNo-Propriedades da pagina (titulo, texto, select, etc.)

Output:

FieldTypeDescription
page_idstringConteudo da pagina como blocos Notion
urlstringConteudo da pagina como blocos Notion
created_timestringID da pagina criada

Example: Create task page

yaml
database_id: your_database_id
properties: {"Name": {"title": [{"text": {"content": "New Task"}}]}, "Status": {"select": {"name": "In Progress"}}, "Priority": {"select": {"name": "High"}}}

Consultar Banco de Dados Notion

api.notion.query_database

Consultar paginas de banco de dados Notion com filtros e ordenacao

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Token de integracao Notion (padrao para env.NOTION_API_KEY)
database_idstringYes-ID do banco de dados Notion
filterobjectNo-ID do banco de dados Notion
sortsarrayNo-Condicoes de filtro para consulta
page_sizenumberNo100Ordem de classificacao para resultados

Output:

FieldTypeDescription
resultsarrayNumero de resultados a retornar
countnumberArray de objetos de pagina
has_morebooleanArray de objetos de pagina

Example: Query all pages

yaml
database_id: your_database_id

Example: Query with filter

yaml
database_id: your_database_id
filter: {"property": "Status", "select": {"equals": "In Progress"}}
sorts: [{"property": "Created", "direction": "descending"}]

Stripe Criar Pagamento

payment.stripe.create_payment

Criar intencao de pagamento com Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave secreta Stripe (ou use env STRIPE_API_KEY)
amountnumberYes-Chave secreta Stripe (ou use env STRIPE_API_KEY)
currencystringNousdValor em centavos (ex: 1000 para $10.00)
descriptionstringNo-Codigo de moeda de tres letras (ex: usd, eur)
customerstringNo-Descricao do pagamento

Output:

FieldTypeDescription
idstringID do cliente Stripe (opcional)
amountnumberID do cliente Stripe (opcional)
currencystringIdentificador unico
statusstringValor do pagamento
client_secretstringCodigo da moeda

Example: Create $50 payment

yaml
amount: 5000
currency: usd
description: Product purchase

Example: Create payment for customer

yaml
amount: 2999
currency: usd
customer: cus_XXXXXXXXXXXXXXX
description: Subscription payment

Stripe Obter Cliente

payment.stripe.get_customer

Recuperar informacoes do cliente do Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave secreta Stripe (ou use env STRIPE_API_KEY)
customer_idstringYes-Chave secreta Stripe (ou use env STRIPE_API_KEY)

Output:

FieldTypeDescription
idstringUnique identifier
emailstringEmail address
namestringName of the item
creatednumberCreation timestamp
balancenumberAccount balance

Example: Get customer info

yaml
customer_id: cus_XXXXXXXXXXXXXXX

Stripe Listar Cobrancas

payment.stripe.list_charges

Listar cobrancas recentes do Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave secreta Stripe (ou use env STRIPE_API_KEY)
limitnumberNo10Chave secreta Stripe (ou use env STRIPE_API_KEY)
customerstringNo-Filtrar por ID do cliente (opcional)

Output:

FieldTypeDescription
chargesarrayThe charges
countnumberNumber of items
has_morebooleanThe has more

Example: List recent charges

yaml
limit: 20

Example: List customer charges

yaml
customer: cus_XXXXXXXXXXXXXXX
limit: 50

Airtable Criar Registro

productivity.airtable.create

Criar novo registro em tabela Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave API Airtable (ou use env AIRTABLE_API_KEY)
base_idstringYes-Chave API Airtable (ou use env AIRTABLE_API_KEY)
table_namestringYes-ID da base Airtable
fieldsjsonYes-Nome da tabela

Output:

FieldTypeDescription
idstringUnique identifier
createdTimestringRecord creation timestamp
fieldsjsonThe fields

Example: Create customer record

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Customers
fields: {"Name": "John Doe", "Email": "john@example.com", "Status": "Active"}

Example: Create task

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Tasks
fields: {"Title": "Review PR", "Assignee": "Alice", "Priority": "High"}

Airtable Ler Registros

productivity.airtable.read

Ler registros de tabela Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave API Airtable (ou use env AIRTABLE_API_KEY)
base_idstringYes-Chave API Airtable (ou use env AIRTABLE_API_KEY)
table_namestringYes-ID da base Airtable
viewstringNo-Nome da tabela
max_recordsnumberNo100Nome da visualizacao a usar (opcional)

Output:

FieldTypeDescription
recordsarrayNumero maximo de registros para retornar
countnumberOs registros

Example: Read all customers

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Customers
max_records: 100

Example: Read from specific view

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Tasks
view: Active Tasks
max_records: 50

Airtable Atualizar Registro

productivity.airtable.update

Atualizar registro existente em tabela Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chave API Airtable (ou use env AIRTABLE_API_KEY)
base_idstringYes-Chave API Airtable (ou use env AIRTABLE_API_KEY)
table_namestringYes-ID da base Airtable
record_idstringYes-Nome da tabela
fieldsjsonYes-ID do registro para atualizar

Output:

FieldTypeDescription
idstringUnique identifier
fieldsjsonThe fields

Example: Update customer status

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Customers
record_id: recXXXXXXXXXXXXXX
fields: {"Status": "Inactive"}

Example: Update task

yaml
base_id: appXXXXXXXXXXXXXX
table_name: Tasks
record_id: recYYYYYYYYYYYYYY
fields: {"Status": "Completed", "Completed Date": "2024-01-15"}

Released under the Apache 2.0 License.