productivity
Mailgun Lua API for KosmoKrator Agents
Agent-facing Lua documentation and function reference for the Mailgun KosmoKrator integration.Lua Namespace
Agents call this integration through app.integrations.mailgun.*.
Use lua_read_doc("integrations.mailgun") inside KosmoKrator to discover the same reference at runtime.
Call Lua from the Headless CLI
Use kosmo integrations:lua when a shell script, CI job, cron job, or another coding CLI should run a deterministic
Mailgun workflow without starting an interactive agent session.
kosmo integrations:lua --eval 'dump(app.integrations.mailgun.api_get({}))' --json kosmo integrations:lua --eval 'print(docs.read("mailgun"))' --json
kosmo integrations:lua --eval 'print(docs.read("mailgun.api_get"))' --json Workflow file
Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.
local mailgun = app.integrations.mailgun
local result = mailgun.api_get({})
dump(result) kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json integrations:lua exposes app.integrations.mailgun, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.mailgun.default.* or app.integrations.mailgun.work.* when you configured named credential accounts.
MCP-only Lua
If the script only needs configured MCP servers and does not need Mailgun, use the narrower mcp:lua command.
# Use mcp:lua for MCP-only scripts; use integrations:lua for this integration namespace.
kosmo mcp:lua --eval 'dump(mcp.servers())' --json Agent-Facing Lua Docs
This is the rendered version of the full Lua documentation exposed to agents when they inspect the integration namespace.
Mailgun Lua Reference
Namespace: app.integrations.mailgun
Mailgun tools use Basic Auth with username api and the configured api_key as password. Configure a default domain for domain-scoped tools; you can override it per call with domain where supported.
Examples
app.integrations.mailgun.send_email({
from = "Example <noreply@example.test>",
to = { "user@example.test" },
subject = "Hello",
text = "Hello from Mailgun"
})
local events = app.integrations.mailgun.list_events({
event = "delivered",
limit = 100
})
local bounce = app.integrations.mailgun.create_bounce({
address = "bad@example.test",
code = 550,
error = "Suppressed by support request"
})
Coverage Notes
- Domain-scoped tools default to the configured sending domain.
- Suppression tools cover bounces, complaints, unsubscribes, and allowlists.
- Route, webhook, mailing-list, member, template, tag, stats, IP, and domain tools are exposed as focused operations.
- Raw
api_get,api_post,api_put, andapi_deletecan call any Mailgun API path, including/v4/...for domain APIs.
Responses are decoded Mailgun JSON exactly as returned by the API.
Raw agent markdown
# Mailgun Lua Reference
Namespace: `app.integrations.mailgun`
Mailgun tools use Basic Auth with username `api` and the configured `api_key` as password. Configure a default `domain` for domain-scoped tools; you can override it per call with `domain` where supported.
## Examples
```lua
app.integrations.mailgun.send_email({
from = "Example <noreply@example.test>",
to = { "user@example.test" },
subject = "Hello",
text = "Hello from Mailgun"
})
local events = app.integrations.mailgun.list_events({
event = "delivered",
limit = 100
})
local bounce = app.integrations.mailgun.create_bounce({
address = "bad@example.test",
code = 550,
error = "Suppressed by support request"
})
```
## Coverage Notes
- Domain-scoped tools default to the configured sending domain.
- Suppression tools cover bounces, complaints, unsubscribes, and allowlists.
- Route, webhook, mailing-list, member, template, tag, stats, IP, and domain tools are exposed as focused operations.
- Raw `api_get`, `api_post`, `api_put`, and `api_delete` can call any Mailgun API path, including `/v4/...` for domain APIs.
Responses are decoded Mailgun JSON exactly as returned by the API. local result = app.integrations.mailgun.api_get({})
print(result) Functions
api_get Read
Call any Mailgun API GET endpoint path.
- Lua path
app.integrations.mailgun.api_get- Full name
mailgun.mailgun_api_get
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
api_post Write
Call any Mailgun API POST endpoint path.
- Lua path
app.integrations.mailgun.api_post- Full name
mailgun.mailgun_api_post
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
api_put Write
Call any Mailgun API PUT endpoint path.
- Lua path
app.integrations.mailgun.api_put- Full name
mailgun.mailgun_api_put
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
api_delete Write
Call any Mailgun API DELETE endpoint path.
- Lua path
app.integrations.mailgun.api_delete- Full name
mailgun.mailgun_api_delete
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_current_user Read
Verify API credentials by listing one domain.
- Lua path
app.integrations.mailgun.get_current_user- Full name
mailgun.mailgun_get_current_user
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_domains Read
List domains in the Mailgun account.
- Lua path
app.integrations.mailgun.list_domains- Full name
mailgun.mailgun_list_domains
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_domain Read
Get a Mailgun domain and DNS records.
- Lua path
app.integrations.mailgun.get_domain- Full name
mailgun.mailgun_get_domain
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_domain Write
Create a Mailgun sending domain.
- Lua path
app.integrations.mailgun.create_domain- Full name
mailgun.mailgun_create_domain
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_domain Write
Delete a Mailgun domain.
- Lua path
app.integrations.mailgun.delete_domain- Full name
mailgun.mailgun_delete_domain
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
verify_domain Write
Trigger Mailgun domain verification.
- Lua path
app.integrations.mailgun.verify_domain- Full name
mailgun.mailgun_verify_domain
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_domain_ips Read
List IPs assigned to a domain.
- Lua path
app.integrations.mailgun.list_domain_ips- Full name
mailgun.mailgun_list_domain_ips
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
add_domain_ip Write
Assign an IP to a domain.
- Lua path
app.integrations.mailgun.add_domain_ip- Full name
mailgun.mailgun_add_domain_ip
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_domain_ip Write
Remove an IP from a domain.
- Lua path
app.integrations.mailgun.delete_domain_ip- Full name
mailgun.mailgun_delete_domain_ip
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
send_email Write
Send an email with Mailgun messages API.
- Lua path
app.integrations.mailgun.send_email- Full name
mailgun.mailgun_send_email
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
send_mime Write
Send a MIME message with Mailgun.
- Lua path
app.integrations.mailgun.send_mime- Full name
mailgun.mailgun_send_mime
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_events Read
List message events for a domain.
- Lua path
app.integrations.mailgun.list_events- Full name
mailgun.mailgun_list_events
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_messages Read
Compatibility alias for Mailgun domain events.
- Lua path
app.integrations.mailgun.list_messages- Full name
mailgun.mailgun_list_messages
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_stats Read
Get total stats for a domain.
- Lua path
app.integrations.mailgun.get_stats- Full name
mailgun.mailgun_get_stats
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_tags Read
List tags for a domain.
- Lua path
app.integrations.mailgun.list_tags- Full name
mailgun.mailgun_list_tags
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_tag Read
Get one tag for a domain.
- Lua path
app.integrations.mailgun.get_tag- Full name
mailgun.mailgun_get_tag
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_tag Write
Delete a tag from a domain.
- Lua path
app.integrations.mailgun.delete_tag- Full name
mailgun.mailgun_delete_tag
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_bounces Read
List Mailgun Bounces for a domain.
- Lua path
app.integrations.mailgun.list_bounces- Full name
mailgun.mailgun_list_bounces
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_bounce Read
Get one Mailgun Bounce record.
- Lua path
app.integrations.mailgun.get_bounce- Full name
mailgun.mailgun_get_bounce
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_bounce Write
Create a Mailgun Bounce record.
- Lua path
app.integrations.mailgun.create_bounce- Full name
mailgun.mailgun_create_bounce
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_bounce Write
Delete a Mailgun Bounce record.
- Lua path
app.integrations.mailgun.delete_bounce- Full name
mailgun.mailgun_delete_bounce
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_complaints Read
List Mailgun Complaints for a domain.
- Lua path
app.integrations.mailgun.list_complaints- Full name
mailgun.mailgun_list_complaints
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_complaint Read
Get one Mailgun Complaint record.
- Lua path
app.integrations.mailgun.get_complaint- Full name
mailgun.mailgun_get_complaint
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_complaint Write
Create a Mailgun Complaint record.
- Lua path
app.integrations.mailgun.create_complaint- Full name
mailgun.mailgun_create_complaint
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_complaint Write
Delete a Mailgun Complaint record.
- Lua path
app.integrations.mailgun.delete_complaint- Full name
mailgun.mailgun_delete_complaint
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_unsubscribes Read
List Mailgun Unsubscribes for a domain.
- Lua path
app.integrations.mailgun.list_unsubscribes- Full name
mailgun.mailgun_list_unsubscribes
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_unsubscribe Read
Get one Mailgun Unsubscribe record.
- Lua path
app.integrations.mailgun.get_unsubscribe- Full name
mailgun.mailgun_get_unsubscribe
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_unsubscribe Write
Create a Mailgun Unsubscribe record.
- Lua path
app.integrations.mailgun.create_unsubscribe- Full name
mailgun.mailgun_create_unsubscribe
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_unsubscribe Write
Delete a Mailgun Unsubscribe record.
- Lua path
app.integrations.mailgun.delete_unsubscribe- Full name
mailgun.mailgun_delete_unsubscribe
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_allowlists Read
List Mailgun Allowlists for a domain.
- Lua path
app.integrations.mailgun.list_allowlists- Full name
mailgun.mailgun_list_whitelists
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_allowlist Read
Get one Mailgun Allowlist record.
- Lua path
app.integrations.mailgun.get_allowlist- Full name
mailgun.mailgun_get_allowlist
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_allowlist Write
Create a Mailgun Allowlist record.
- Lua path
app.integrations.mailgun.create_allowlist- Full name
mailgun.mailgun_create_allowlist
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_allowlist Write
Delete a Mailgun Allowlist record.
- Lua path
app.integrations.mailgun.delete_allowlist- Full name
mailgun.mailgun_delete_allowlist
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_suppressions Read
Compatibility alias for listing bounces.
- Lua path
app.integrations.mailgun.get_suppressions- Full name
mailgun.mailgun_get_suppressions
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_suppression Write
Compatibility alias for creating a bounce suppression.
- Lua path
app.integrations.mailgun.create_suppression- Full name
mailgun.mailgun_create_suppression
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_routes Read
List account-level inbound routes.
- Lua path
app.integrations.mailgun.list_routes- Full name
mailgun.mailgun_list_routes
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_route Read
Get one route by ID.
- Lua path
app.integrations.mailgun.get_route- Full name
mailgun.mailgun_get_route
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_route Write
Create an inbound route.
- Lua path
app.integrations.mailgun.create_route- Full name
mailgun.mailgun_create_route
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_route Write
Update an inbound route.
- Lua path
app.integrations.mailgun.update_route- Full name
mailgun.mailgun_update_route
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_route Write
Delete an inbound route.
- Lua path
app.integrations.mailgun.delete_route- Full name
mailgun.mailgun_delete_route
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_webhooks Read
List webhooks configured for a domain.
- Lua path
app.integrations.mailgun.list_webhooks- Full name
mailgun.mailgun_list_webhooks
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_webhook Read
Get one webhook by event type.
- Lua path
app.integrations.mailgun.get_webhook- Full name
mailgun.mailgun_get_webhook
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_webhook Write
Create a webhook for a domain event.
- Lua path
app.integrations.mailgun.create_webhook- Full name
mailgun.mailgun_create_webhook
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_webhook Write
Update a webhook for a domain event.
- Lua path
app.integrations.mailgun.update_webhook- Full name
mailgun.mailgun_update_webhook
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_webhook Write
Delete a webhook for a domain event.
- Lua path
app.integrations.mailgun.delete_webhook- Full name
mailgun.mailgun_delete_webhook
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_mailing_lists Read
List mailing lists in the account.
- Lua path
app.integrations.mailgun.list_mailing_lists- Full name
mailgun.mailgun_list_mailing_lists
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_mailing_list Read
Get one mailing list by address.
- Lua path
app.integrations.mailgun.get_mailing_list- Full name
mailgun.mailgun_get_mailing_list
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_mailing_list Write
Create a mailing list.
- Lua path
app.integrations.mailgun.create_mailing_list- Full name
mailgun.mailgun_create_mailing_list
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_mailing_list Write
Update a mailing list.
- Lua path
app.integrations.mailgun.update_mailing_list- Full name
mailgun.mailgun_update_mailing_list
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_mailing_list Write
Delete a mailing list.
- Lua path
app.integrations.mailgun.delete_mailing_list- Full name
mailgun.mailgun_delete_mailing_list
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_members Read
List members of a mailing list.
- Lua path
app.integrations.mailgun.list_members- Full name
mailgun.mailgun_list_members
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_member Read
Get one mailing list member.
- Lua path
app.integrations.mailgun.get_member- Full name
mailgun.mailgun_get_member
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
add_member Write
Add or update one mailing list member.
- Lua path
app.integrations.mailgun.add_member- Full name
mailgun.mailgun_add_member
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_member Write
Update one mailing list member.
- Lua path
app.integrations.mailgun.update_member- Full name
mailgun.mailgun_update_member
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_member Write
Delete one mailing list member.
- Lua path
app.integrations.mailgun.delete_member- Full name
mailgun.mailgun_delete_member
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
add_member_bulk Write
Bulk add mailing list members.
- Lua path
app.integrations.mailgun.add_member_bulk- Full name
mailgun.mailgun_add_member_bulk
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_templates Read
List stored email templates for a domain.
- Lua path
app.integrations.mailgun.list_templates- Full name
mailgun.mailgun_list_templates
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_template Read
Get one template.
- Lua path
app.integrations.mailgun.get_template- Full name
mailgun.mailgun_get_template
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_template Write
Create an email template.
- Lua path
app.integrations.mailgun.create_template- Full name
mailgun.mailgun_create_template
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_template Write
Update template metadata.
- Lua path
app.integrations.mailgun.update_template- Full name
mailgun.mailgun_update_template
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_template Write
Delete a template.
- Lua path
app.integrations.mailgun.delete_template- Full name
mailgun.mailgun_delete_template
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_template_versions Read
List versions for a template.
- Lua path
app.integrations.mailgun.list_template_versions- Full name
mailgun.mailgun_list_template_versions
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
create_template_version Write
Create a template version.
- Lua path
app.integrations.mailgun.create_template_version- Full name
mailgun.mailgun_create_template_version
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
update_template_version Write
Update a template version.
- Lua path
app.integrations.mailgun.update_template_version- Full name
mailgun.mailgun_update_template_version
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
delete_template_version Write
Delete a template version.
- Lua path
app.integrations.mailgun.delete_template_version- Full name
mailgun.mailgun_delete_template_version
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_ips Read
List account IPs.
- Lua path
app.integrations.mailgun.list_ips- Full name
mailgun.mailgun_list_ips
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
get_ip Read
Get one IP.
- Lua path
app.integrations.mailgun.get_ip- Full name
mailgun.mailgun_get_ip
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
list_ip_pools Read
List account IP pools.
- Lua path
app.integrations.mailgun.list_ip_pools- Full name
mailgun.mailgun_list_ip_pools
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||