KosmoKrator

productivity

WP Engine Lua API for KosmoKrator Agents

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

7 functions 7 read 0 write Bearer token auth

Lua Namespace

Agents call this integration through app.integrations.wp_engine.*. Use lua_read_doc("integrations.wp_engine") 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.

WP Engine — Lua API Reference

list_sites

List WP Engine sites with optional pagination.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of sites per page (default: 100)
pageintegernoPage number for pagination (1-indexed, default: 1)

Examples

-- List sites
local result = app.integrations.wp_engine.list_sites({
  limit = 10,
  page = 1
})

for _, site in ipairs(result.sites) do
  print(site.id .. ": " .. site.name .. " (" .. site.status .. ")")
end

get_site

Get details for a specific WP Engine site.

Parameters

NameTypeRequiredDescription
idstringyesThe site ID

Examples

local result = app.integrations.wp_engine.get_site({ id = "12345" })
print(result.name)
print(result.status)
print(result.created_at)

list_installs

List WP Engine installs with optional pagination.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of installs per page (default: 100)
pageintegernoPage number for pagination (1-indexed, default: 1)

Examples

-- List installs
local result = app.integrations.wp_engine.list_installs({
  limit = 10,
  page = 1
})

for _, install in ipairs(result.installs) do
  print(install.id .. ": " .. install.name .. " - " .. install.environment)
end

get_install

Get details for a specific WP Engine install.

Parameters

NameTypeRequiredDescription
idstringyesThe install ID

Examples

local result = app.integrations.wp_engine.get_install({ id = "67890" })
print(result.name)
print(result.environment)
print(result.php_version)
print(result.status)

list_domains

List domains across WP Engine installs.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of domains per page (default: 100)
pageintegernoPage number for pagination (1-indexed, default: 1)

Examples

local result = app.integrations.wp_engine.list_domains({
  limit = 50,
  page = 1
})

for _, domain in ipairs(result.domains) do
  print(domain.name .. " -> " .. domain.installs_id)
end

list_users

List WP Engine users with optional pagination.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of users per page (default: 100)
pageintegernoPage number for pagination (1-indexed, default: 1)

Examples

local result = app.integrations.wp_engine.list_users({
  limit = 10,
  page = 1
})

for _, user in ipairs(result.users) do
  print(user.id .. ": " .. user.email .. " (" .. user.role .. ")")
end

get_current_user

Get the profile of the currently authenticated user.

Parameters

None.

Examples

local result = app.integrations.wp_engine.get_current_user({})
print("Logged in as: " .. result.email .. " (" .. result.id .. ")")

Multi-Account Usage

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

-- Default account (always works)
app.integrations.wp_engine.function_name({...})

-- Explicit default (portable across setups)
app.integrations.wp_engine.default.function_name({...})

-- Named accounts
app.integrations.wp_engine.production.function_name({...})
app.integrations.wp_engine.staging.function_name({...})

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

Raw agent markdown
# WP Engine — Lua API Reference

## list_sites

List WP Engine sites with optional pagination.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of sites per page (default: 100) |
| `page` | integer | no | Page number for pagination (1-indexed, default: 1) |

### Examples

```lua
-- List sites
local result = app.integrations.wp_engine.list_sites({
  limit = 10,
  page = 1
})

for _, site in ipairs(result.sites) do
  print(site.id .. ": " .. site.name .. " (" .. site.status .. ")")
end
```

---

## get_site

Get details for a specific WP Engine site.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | string | yes | The site ID |

### Examples

```lua
local result = app.integrations.wp_engine.get_site({ id = "12345" })
print(result.name)
print(result.status)
print(result.created_at)
```

---

## list_installs

List WP Engine installs with optional pagination.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of installs per page (default: 100) |
| `page` | integer | no | Page number for pagination (1-indexed, default: 1) |

### Examples

```lua
-- List installs
local result = app.integrations.wp_engine.list_installs({
  limit = 10,
  page = 1
})

for _, install in ipairs(result.installs) do
  print(install.id .. ": " .. install.name .. " - " .. install.environment)
end
```

---

## get_install

Get details for a specific WP Engine install.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | string | yes | The install ID |

### Examples

```lua
local result = app.integrations.wp_engine.get_install({ id = "67890" })
print(result.name)
print(result.environment)
print(result.php_version)
print(result.status)
```

---

## list_domains

List domains across WP Engine installs.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of domains per page (default: 100) |
| `page` | integer | no | Page number for pagination (1-indexed, default: 1) |

### Examples

```lua
local result = app.integrations.wp_engine.list_domains({
  limit = 50,
  page = 1
})

for _, domain in ipairs(result.domains) do
  print(domain.name .. " -> " .. domain.installs_id)
end
```

---

## list_users

List WP Engine users with optional pagination.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of users per page (default: 100) |
| `page` | integer | no | Page number for pagination (1-indexed, default: 1) |

### Examples

```lua
local result = app.integrations.wp_engine.list_users({
  limit = 10,
  page = 1
})

for _, user in ipairs(result.users) do
  print(user.id .. ": " .. user.email .. " (" .. user.role .. ")")
end
```

---

## get_current_user

Get the profile of the currently authenticated user.

### Parameters

None.

### Examples

```lua
local result = app.integrations.wp_engine.get_current_user({})
print("Logged in as: " .. result.email .. " (" .. result.id .. ")")
```

---

## Multi-Account Usage

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

```lua
-- Default account (always works)
app.integrations.wp_engine.function_name({...})

-- Explicit default (portable across setups)
app.integrations.wp_engine.default.function_name({...})

-- Named accounts
app.integrations.wp_engine.production.function_name({...})
app.integrations.wp_engine.staging.function_name({...})
```

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

Metadata-Derived Lua Example

local result = app.integrations.wp_engine.wp_engine_list_sites({
  limit = 1,
  page = 1
})
print(result)

Functions

wp_engine_list_sites

List WP Engine sites. Supports pagination with limit and page parameters.

Operation
Read read
Full name
wp_engine.wp_engine_list_sites
ParameterTypeRequiredDescription
limit integer no Number of sites per page (default: 100).
page integer no Page number for pagination (1-indexed, default: 1).

wp_engine_get_site

Get details for a specific WP Engine site by ID.

Operation
Read read
Full name
wp_engine.wp_engine_get_site
ParameterTypeRequiredDescription
id string yes The site ID.

wp_engine_list_installs

List WP Engine installs. Supports pagination with limit and page parameters.

Operation
Read read
Full name
wp_engine.wp_engine_list_installs
ParameterTypeRequiredDescription
limit integer no Number of installs per page (default: 100).
page integer no Page number for pagination (1-indexed, default: 1).

wp_engine_get_install

Get details for a specific WP Engine install by ID.

Operation
Read read
Full name
wp_engine.wp_engine_get_install
ParameterTypeRequiredDescription
id string yes The install ID.

wp_engine_list_domains

List domains across WP Engine installs. Supports pagination with limit and page parameters.

Operation
Read read
Full name
wp_engine.wp_engine_list_domains
ParameterTypeRequiredDescription
limit integer no Number of domains per page (default: 100).
page integer no Page number for pagination (1-indexed, default: 1).

wp_engine_list_users

List WP Engine users. Supports pagination with limit and page parameters.

Operation
Read read
Full name
wp_engine.wp_engine_list_users
ParameterTypeRequiredDescription
limit integer no Number of users per page (default: 100).
page integer no Page number for pagination (1-indexed, default: 1).

wp_engine_get_current_user

Get the profile of the currently authenticated WP Engine user. Useful for verifying credentials and displaying account information.

Operation
Read read
Full name
wp_engine.wp_engine_get_current_user
ParameterTypeRequiredDescription
No parameters.