KosmoKrator

forms

Wufoo Lua API for KosmoKrator Agents

Agent-facing Lua documentation and function reference for the Wufoo KosmoKrator integration.

6 functions 6 read 0 write API key auth

Lua Namespace

Agents call this integration through app.integrations.wufoo.*. Use lua_read_doc("integrations.wufoo") inside KosmoKrator to discover the same reference at runtime.

Agent-Facing Lua Docs

This is the rendered version of the full Lua documentation exposed to agents when they inspect the integration namespace.

Wufoo — Lua API Reference

list_forms

List all forms in your Wufoo account.

Parameters

NameTypeRequiredDescription
This tool takes no parameters.

Response

Returns an object containing a Forms array with form details including:

FieldTypeDescription
HashstringUnique form identifier
NamestringForm name
DescriptionstringForm description
UrlstringPublic form URL
DateCreatedstringCreation date
DateUpdatedstringLast update date
EntryCountstringTotal number of entries

Example

local result = app.integrations.wufoo.list_forms()

for _, form in ipairs(result.Forms) do
  print(form.Name .. " (" .. form.Hash .. ") — " .. form.EntryCount .. " entries")
end

get_form

Get details for a specific Wufoo form by its identifier.

Parameters

NameTypeRequiredDescription
form_idstringyesThe form hash or identifier

Example

local result = app.integrations.wufoo.get_form({
  form_id = "q1w2e3r4t5y6"
})

local form = result.Forms[1]
print("Form: " .. form.Name)
print("Fields: " .. #form.Fields)

list_entries

List entries submitted to a Wufoo form with pagination and optional filters.

Parameters

NameTypeRequiredDescription
form_idstringyesThe form hash or identifier
pageintegernoPage number (0-based). Default: 0
page_sizeintegernoEntries per page. Default: 25, max: 100
filtersobjectnoOptional field filters (see below)

Filter Parameters

Filters are passed as key-value pairs. Common filter keys:

KeyDescription
Filter1First filter expression (e.g., "Field1+Is+equal_to+value")
MatchMatch logic: "AND" or "OR" when using multiple filters
SortByField to sort by (prefix with - for descending)
SortDirectionSort direction: "ASC" or "DESC"

Example

-- Get first page of entries
local result = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  page = 0,
  page_size = 25
})

for _, entry in ipairs(result.Entries) do
  print(entry.EntryId .. ": " .. (entry.Field1 or "no value"))
end

-- Get next page
local page2 = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  page = 1,
  page_size = 25
})

-- With filters
local filtered = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  filters = {
    Filter1 = "Field1+Is+equal_to+John"
  }
})

get_entry

Get a single form entry by its identifier.

Parameters

NameTypeRequiredDescription
entry_idstringyesThe entry identifier

Example

local result = app.integrations.wufoo.get_entry({
  entry_id = "12345"
})

local entry = result.Entries[1]
print("Entry ID: " .. entry.EntryId)
print("Date Created: " .. entry.DateCreated)

list_reports

List all reports in your Wufoo account.

Parameters

NameTypeRequiredDescription
This tool takes no parameters.

Example

local result = app.integrations.wufoo.list_reports()

for _, report in ipairs(result.Reports) do
  print(report.Name .. " — Form: " .. report.FormName)
end

get_current_user

Get the authenticated Wufoo user’s profile information.

Parameters

NameTypeRequiredDescription
This tool takes no parameters.

Example

local result = app.integrations.wufoo.get_current_user()

local user = result.Users[1]
print("User: " .. user.FirstName .. " " .. user.LastName)
print("Email: " .. user.Email)
print("Organization: " .. user.Organization)

Multi-Account Usage

If you have multiple Wufoo accounts configured, use account-specific namespaces:

-- Default account (always works)
app.integrations.wufoo.list_forms({})

-- Explicit default (portable across setups)
app.integrations.wufoo.default.list_forms({})

-- Named accounts
app.integrations.wufoo.marketing.list_forms({})
app.integrations.wufoo.support.list_entries({
  form_id = "abc123",
  page_size = 50
})

All functions are identical across accounts — only the credentials differ.

Raw agent markdown
# Wufoo — Lua API Reference

## list_forms

List all forms in your Wufoo account.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| — | — | — | This tool takes no parameters. |

### Response

Returns an object containing a `Forms` array with form details including:

| Field | Type | Description |
|-------|------|-------------|
| `Hash` | string | Unique form identifier |
| `Name` | string | Form name |
| `Description` | string | Form description |
| `Url` | string | Public form URL |
| `DateCreated` | string | Creation date |
| `DateUpdated` | string | Last update date |
| `EntryCount` | string | Total number of entries |

### Example

```lua
local result = app.integrations.wufoo.list_forms()

for _, form in ipairs(result.Forms) do
  print(form.Name .. " (" .. form.Hash .. ") — " .. form.EntryCount .. " entries")
end
```

---

## get_form

Get details for a specific Wufoo form by its identifier.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `form_id` | string | yes | The form hash or identifier |

### Example

```lua
local result = app.integrations.wufoo.get_form({
  form_id = "q1w2e3r4t5y6"
})

local form = result.Forms[1]
print("Form: " .. form.Name)
print("Fields: " .. #form.Fields)
```

---

## list_entries

List entries submitted to a Wufoo form with pagination and optional filters.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `form_id` | string | yes | The form hash or identifier |
| `page` | integer | no | Page number (0-based). Default: 0 |
| `page_size` | integer | no | Entries per page. Default: 25, max: 100 |
| `filters` | object | no | Optional field filters (see below) |

### Filter Parameters

Filters are passed as key-value pairs. Common filter keys:

| Key | Description |
|-----|-------------|
| `Filter1` | First filter expression (e.g., `"Field1+Is+equal_to+value"`) |
| `Match` | Match logic: `"AND"` or `"OR"` when using multiple filters |
| `SortBy` | Field to sort by (prefix with `-` for descending) |
| `SortDirection` | Sort direction: `"ASC"` or `"DESC"` |

### Example

```lua
-- Get first page of entries
local result = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  page = 0,
  page_size = 25
})

for _, entry in ipairs(result.Entries) do
  print(entry.EntryId .. ": " .. (entry.Field1 or "no value"))
end

-- Get next page
local page2 = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  page = 1,
  page_size = 25
})

-- With filters
local filtered = app.integrations.wufoo.list_entries({
  form_id = "q1w2e3r4t5y6",
  filters = {
    Filter1 = "Field1+Is+equal_to+John"
  }
})
```

---

## get_entry

Get a single form entry by its identifier.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `entry_id` | string | yes | The entry identifier |

### Example

```lua
local result = app.integrations.wufoo.get_entry({
  entry_id = "12345"
})

local entry = result.Entries[1]
print("Entry ID: " .. entry.EntryId)
print("Date Created: " .. entry.DateCreated)
```

---

## list_reports

List all reports in your Wufoo account.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| — | — | — | This tool takes no parameters. |

### Example

```lua
local result = app.integrations.wufoo.list_reports()

for _, report in ipairs(result.Reports) do
  print(report.Name .. " — Form: " .. report.FormName)
end
```

---

## get_current_user

Get the authenticated Wufoo user's profile information.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| — | — | — | This tool takes no parameters. |

### Example

```lua
local result = app.integrations.wufoo.get_current_user()

local user = result.Users[1]
print("User: " .. user.FirstName .. " " .. user.LastName)
print("Email: " .. user.Email)
print("Organization: " .. user.Organization)
```

---

## Multi-Account Usage

If you have multiple Wufoo accounts configured, use account-specific namespaces:

```lua
-- Default account (always works)
app.integrations.wufoo.list_forms({})

-- Explicit default (portable across setups)
app.integrations.wufoo.default.list_forms({})

-- Named accounts
app.integrations.wufoo.marketing.list_forms({})
app.integrations.wufoo.support.list_entries({
  form_id = "abc123",
  page_size = 50
})
```

All functions are identical across accounts — only the credentials differ.

Metadata-Derived Lua Example

local result = app.integrations.wufoo.wufoo_get_current_user({})
print(result)

Functions

wufoo_get_current_user

Get the authenticated Wufoo user's profile. Returns account details such as name, email, and organization.

Operation
Read read
Full name
wufoo.wufoo_get_current_user
ParameterTypeRequiredDescription
No parameters.

wufoo_get_entry

Get a single Wufoo form entry by its identifier. Returns all field values and submission metadata for the entry.

Operation
Read read
Full name
wufoo.wufoo_get_entry
ParameterTypeRequiredDescription
entry_id string yes The entry identifier to retrieve.

wufoo_get_form

Get details for a specific Wufoo form by its identifier. Returns the full form definition including fields, settings, and metadata.

Operation
Read read
Full name
wufoo.wufoo_get_form
ParameterTypeRequiredDescription
form_id string yes The form hash or identifier (e.g., "q1w2e3r4t5y6").

wufoo_list_entries

List entries submitted to a Wufoo form. Supports pagination and optional filters to narrow results. Use the page and pageSize parameters to paginate through large result sets.

Operation
Read read
Full name
wufoo.wufoo_list_entries
ParameterTypeRequiredDescription
form_id string yes The form hash or identifier to list entries for.
page integer no Page number for pagination (0-based). Default: 0.
page_size integer no Number of entries per page. Default: 25, maximum: 100.
filters object no Optional field filters. Keys are filter parameters (e.g., "Filter1", "Match", "SortBy") and values are the filter values.

wufoo_list_forms

List all forms in your Wufoo account. Returns form identifiers, names, descriptions, and metadata that can be used with other Wufoo tools.

Operation
Read read
Full name
wufoo.wufoo_list_forms
ParameterTypeRequiredDescription
No parameters.

wufoo_list_reports

List all reports in your Wufoo account. Returns report identifiers, names, descriptions, and the forms they are associated with.

Operation
Read read
Full name
wufoo.wufoo_list_reports
ParameterTypeRequiredDescription
No parameters.