KosmoKrator

productivity

Sendy CLI for AI Agents

Use the Sendy CLI from KosmoKrator to call Sendy tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

Sendy CLI Setup

Sendy can be configured headlessly with `kosmokrator integrations:configure sendy`.

Install, configure, and verify
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure sendy --set api_key="$SENDY_API_KEY" --set hostname="$SENDY_HOSTNAME" --enable --read allow --write ask --json
kosmokrator integrations:doctor sendy --json
kosmokrator integrations:status --json

Credentials

Authentication type: API key api_key. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
api_key SENDY_API_KEY Secret secret yes API Key
hostname SENDY_HOSTNAME URL url yes Sendy Hostname

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call sendy.sendy_subscribe '{"list":"example_list","email":"example_email","name":"example_name","country":"example_country","ipaddress":"example_ipaddress","referrer":"example_referrer","gdpr":"example_gdpr","silent":"example_silent"}' --json
Provider shortcut
kosmo integrations:sendy sendy_subscribe '{"list":"example_list","email":"example_email","name":"example_name","country":"example_country","ipaddress":"example_ipaddress","referrer":"example_referrer","gdpr":"example_gdpr","silent":"example_silent"}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs sendy --json
kosmo integrations:docs sendy.sendy_subscribe --json
kosmo integrations:schema sendy.sendy_subscribe --json
kosmo integrations:search "Sendy" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

sendy.sendy_subscribe

Subscribe an email address to a Sendy mailing list. Optionally provide a name and custom fields.

Write write
Parameters
list, email, name, country, ipaddress, referrer, gdpr, silent, custom_fields
Generic call
kosmo integrations:call sendy.sendy_subscribe '{"list":"example_list","email":"example_email","name":"example_name","country":"example_country","ipaddress":"example_ipaddress","referrer":"example_referrer","gdpr":"example_gdpr","silent":"example_silent"}' --json
Shortcut
kosmo integrations:sendy sendy_subscribe '{"list":"example_list","email":"example_email","name":"example_name","country":"example_country","ipaddress":"example_ipaddress","referrer":"example_referrer","gdpr":"example_gdpr","silent":"example_silent"}' --json

sendy.sendy_unsubscribe

Unsubscribe an email address from a Sendy mailing list.

Write write
Parameters
list, email
Generic call
kosmo integrations:call sendy.sendy_unsubscribe '{"list":"example_list","email":"example_email"}' --json
Shortcut
kosmo integrations:sendy sendy_unsubscribe '{"list":"example_list","email":"example_email"}' --json

sendy.sendy_delete_subscriber

Delete a subscriber from a Sendy list by email address.

Write write
Parameters
list_id, email
Generic call
kosmo integrations:call sendy.sendy_delete_subscriber '{"list_id":"example_list_id","email":"example_email"}' --json
Shortcut
kosmo integrations:sendy sendy_delete_subscriber '{"list_id":"example_list_id","email":"example_email"}' --json

sendy.sendy_subscription_status

Get the current subscription status for an email address in a Sendy list.

Read read
Parameters
list_id, email
Generic call
kosmo integrations:call sendy.sendy_subscription_status '{"list_id":"example_list_id","email":"example_email"}' --json
Shortcut
kosmo integrations:sendy sendy_subscription_status '{"list_id":"example_list_id","email":"example_email"}' --json

sendy.sendy_list_subscribers

Get the active subscriber count for a Sendy mailing list.

Read read
Parameters
list_id
Generic call
kosmo integrations:call sendy.sendy_list_subscribers '{"list_id":"example_list_id"}' --json
Shortcut
kosmo integrations:sendy sendy_list_subscribers '{"list_id":"example_list_id"}' --json

sendy.sendy_get_lists

Get all lists for a Sendy brand, optionally including hidden lists.

Read read
Parameters
brand_id, include_hidden
Generic call
kosmo integrations:call sendy.sendy_get_lists '{"brand_id":"example_brand_id","include_hidden":true}' --json
Shortcut
kosmo integrations:sendy sendy_get_lists '{"brand_id":"example_brand_id","include_hidden":true}' --json

sendy.sendy_get_brands

Get all brands available in the Sendy installation.

Read read
Parameters
none
Generic call
kosmo integrations:call sendy.sendy_get_brands '{}' --json
Shortcut
kosmo integrations:sendy sendy_get_brands '{}' --json

sendy.sendy_create_campaign

Create a new email campaign in Sendy. You can create a draft or send immediately. Requires a list ID, subject, HTML content, and sender details.

Write write
Parameters
from_name, from_email, reply_to, title, subject, html_text, list_ids, plain_text, segment_ids, exclude_list_ids, exclude_segments_ids, send_campaign, brand_id, query_string, track_opens, track_clicks, schedule_date_time, schedule_timezone
Generic call
kosmo integrations:call sendy.sendy_create_campaign '{"from_name":"example_from_name","from_email":"example_from_email","reply_to":"example_reply_to","title":"example_title","subject":"example_subject","html_text":"example_html_text","list_ids":"example_list_ids","plain_text":"example_plain_text"}' --json
Shortcut
kosmo integrations:sendy sendy_create_campaign '{"from_name":"example_from_name","from_email":"example_from_email","reply_to":"example_reply_to","title":"example_title","subject":"example_subject","html_text":"example_html_text","list_ids":"example_list_ids","plain_text":"example_plain_text"}' --json

sendy.sendy_get_current_user

Get Sendy brands for the configured API key. This keeps the historical get_current_user tool slug for compatibility.

Read read
Parameters
none
Generic call
kosmo integrations:call sendy.sendy_get_current_user '{}' --json
Shortcut
kosmo integrations:sendy sendy_get_current_user '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

sendy.sendy_subscribe 9 parameters
Schema command
kosmo integrations:schema sendy.sendy_subscribe --json
ParameterTypeRequiredDescription
list string yes The list ID to subscribe to.
email string yes The subscriber's email address.
name string no The subscriber's name (optional).
country string no Optional two-letter country code.
ipaddress string no Optional signup IP address.
referrer string no Optional signup referrer URL.
gdpr string no Set to "true" for GDPR-compliant signups.
silent string no Set to "true" to bypass double opt-in where appropriate.
custom_fields object no Additional custom field tag values, keyed by the Sendy personalization tag name.
sendy.sendy_unsubscribe 2 parameters
Schema command
kosmo integrations:schema sendy.sendy_unsubscribe --json
ParameterTypeRequiredDescription
list string yes The list ID to unsubscribe from.
email string yes The subscriber's email address.
sendy.sendy_delete_subscriber 2 parameters
Schema command
kosmo integrations:schema sendy.sendy_delete_subscriber --json
ParameterTypeRequiredDescription
list_id string yes Encrypted list ID.
email string yes Subscriber email address to delete.
sendy.sendy_subscription_status 2 parameters
Schema command
kosmo integrations:schema sendy.sendy_subscription_status --json
ParameterTypeRequiredDescription
list_id string yes Encrypted list ID.
email string yes Subscriber email address to check.
sendy.sendy_list_subscribers 1 parameters
Schema command
kosmo integrations:schema sendy.sendy_list_subscribers --json
ParameterTypeRequiredDescription
list_id string yes The list ID to query subscriber count for.
sendy.sendy_get_lists 2 parameters
Schema command
kosmo integrations:schema sendy.sendy_get_lists --json
ParameterTypeRequiredDescription
brand_id string yes Sendy brand ID.
include_hidden boolean no Include hidden lists when true. Defaults to false.
sendy.sendy_get_brands 0 parameters
Schema command
kosmo integrations:schema sendy.sendy_get_brands --json
ParameterTypeRequiredDescription
No parameters.
sendy.sendy_create_campaign 18 parameters
Schema command
kosmo integrations:schema sendy.sendy_create_campaign --json
ParameterTypeRequiredDescription
from_name string yes Sender name (e.g., "Acme Corp").
from_email string yes Sender email address (e.g., "hello@acme.com").
reply_to string yes Reply-to email address.
title string yes Internal campaign title (for your reference).
subject string yes Email subject line.
html_text string yes HTML content of the email.
list_ids string no Comma-separated list IDs. Required when sending without segment_ids.
plain_text string no Plain text version of the email. Auto-generated if omitted.
segment_ids string no Comma-separated segment IDs to send to. Required when sending without list_ids.
exclude_list_ids string no Comma-separated list IDs to exclude.
exclude_segments_ids string no Comma-separated segment IDs to exclude.
send_campaign integer no Set to 1 to send immediately, 0 or omit to save as draft.
brand_id string no Brand ID (required for multi-brand setups).
query_string string no UTM query string appended to links (e.g., "utm_source=sendy&utm_medium=email").
track_opens integer no 0 disables, 1 enables, 2 enables anonymous open tracking.
track_clicks integer no 0 disables, 1 enables, 2 enables anonymous click tracking.
schedule_date_time string no Schedule time such as "June 15, 2026 6:05pm". Minutes must be increments of 5.
schedule_timezone string no PHP timezone name for scheduled campaigns, such as America/New_York.
sendy.sendy_get_current_user 0 parameters
Schema command
kosmo integrations:schema sendy.sendy_get_current_user --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.