Skip to content

Productivity

Google Sheets, Notion, Airtable, and Stripe integrations.

10 modules

ModuleDescription
Google Sheets LeggiLeggi dati da foglio Google Sheets
Google Sheets ScriviScrivi dati su foglio Google Sheets
Notion Crea PaginaCrea nuova pagina in database Notion
Interroga Database NotionQuery pagine da database Notion con filtri e ordinamento
Stripe Crea PagamentoCrea un intento di pagamento con Stripe
Stripe Ottieni ClienteRecupera informazioni cliente da Stripe
Stripe Elenca AddebitiElenca addebiti recenti da Stripe
Airtable Crea RecordCrea un nuovo record nella tabella Airtable
Airtable Leggi RecordLeggi record dalla tabella Airtable
Airtable Aggiorna RecordAggiorna un record esistente nella tabella Airtable

Modules

Google Sheets Leggi

api.google_sheets.read

Leggi dati da foglio Google Sheets

Parameters:

NameTypeRequiredDefaultDescription
credentialsobjectNo-Credenziali JSON service account Google (default env.GOOGLE_CREDENTIALS_JSON)
spreadsheet_idstringYes-ID foglio Google Sheets (da URL)
rangestringYes-Intervallo notazione A1 da leggere
include_headerbooleanNoTrueAnalizza prima riga come intestazioni colonna

Output:

FieldTypeDescription
valuesarrayAnalizza prima riga come intestazioni colonna
dataarrayArray di righe (ogni riga e array di valori)
row_countnumberArray di righe (ogni riga e array di valori)

Example: Read with headers

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

Google Sheets Scrivi

api.google_sheets.write

Scrivi dati su foglio Google Sheets

Parameters:

NameTypeRequiredDefaultDescription
credentialsobjectNo-Credenziali JSON service account Google (default env.GOOGLE_CREDENTIALS_JSON)
spreadsheet_idstringYes-ID foglio Google Sheets (da URL)
rangestringYes-ID foglio Google Sheets (da URL)
valuesarrayYes-Intervallo notazione A1 da scrivere
value_input_optionstringNoUSER_ENTEREDCome interpretare valori input

Output:

FieldTypeDescription
updated_rangestringIntervallo che e stato aggiornato
updated_rowsnumberIntervallo che e stato aggiornato
updated_columnsnumberIntervallo che e stato aggiornato
updated_cellsnumberNumero di righe aggiornate

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"]]

Notion Crea Pagina

api.notion.create_page

Crea nuova pagina in database Notion

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Token integrazione Notion (default env.NOTION_API_KEY)
database_idstringYes-ID database Notion (stringa hex 32 caratteri)
propertiesobjectYes-Proprieta pagina (titolo, testo, select, ecc.)
contentarrayNo-Proprieta pagina (titolo, testo, select, ecc.)

Output:

FieldTypeDescription
page_idstringContenuto pagina come blocchi Notion
urlstringContenuto pagina come blocchi Notion
created_timestringID pagina creata

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"}}}

Interroga Database Notion

api.notion.query_database

Query pagine da database Notion con filtri e ordinamento

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Token integrazione Notion (default env.NOTION_API_KEY)
database_idstringYes-ID database Notion
filterobjectNo-ID database Notion
sortsarrayNo-Condizioni filtro per query
page_sizenumberNo100Ordine per risultati

Output:

FieldTypeDescription
resultsarrayNumero di risultati da restituire
countnumberArray di oggetti pagina
has_morebooleanArray di oggetti 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 Crea Pagamento

payment.stripe.create_payment

Crea un intento di pagamento con Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave segreta Stripe (o usa env STRIPE_API_KEY)
amountnumberYes-Chiave segreta Stripe (o usa env STRIPE_API_KEY)
currencystringNousdImporto in centesimi (es. 1000 per 10,00 EUR)
descriptionstringNo-Codice valuta a tre lettere (es. usd, eur)
customerstringNo-Descrizione pagamento

Output:

FieldTypeDescription
idstringID cliente Stripe (opzionale)
amountnumberID cliente Stripe (opzionale)
currencystringIdentificatore univoco
statusstringImporto pagamento
client_secretstringCodice valuta

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 Ottieni Cliente

payment.stripe.get_customer

Recupera informazioni cliente da Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave segreta Stripe (o usa env STRIPE_API_KEY)
customer_idstringYes-Chiave segreta Stripe (o usa 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 Elenca Addebiti

payment.stripe.list_charges

Elenca addebiti recenti da Stripe

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave segreta Stripe (o usa env STRIPE_API_KEY)
limitnumberNo10Chiave segreta Stripe (o usa env STRIPE_API_KEY)
customerstringNo-Filtra per ID cliente (opzionale)

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 Crea Record

productivity.airtable.create

Crea un nuovo record nella tabella Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
base_idstringYes-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
table_namestringYes-ID base Airtable
fieldsjsonYes-Nome della tabella

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 Leggi Record

productivity.airtable.read

Leggi record dalla tabella Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
base_idstringYes-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
table_namestringYes-ID base Airtable
viewstringNo-Nome della tabella
max_recordsnumberNo100Nome vista da usare (opzionale)

Output:

FieldTypeDescription
recordsarrayNumero massimo di record da restituire
countnumberI record

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 Aggiorna Record

productivity.airtable.update

Aggiorna un record esistente nella tabella Airtable

Parameters:

NameTypeRequiredDefaultDescription
api_keystringNo-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
base_idstringYes-Chiave API Airtable (o usa env AIRTABLE_API_KEY)
table_namestringYes-ID base Airtable
record_idstringYes-Nome della tabella
fieldsjsonYes-ID del record da aggiornare

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.