KosmoKrator

analytics

Klipfolio Lua API for KosmoKrator Agents

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

7 functions 7 read 0 write Bearer token auth

Lua Namespace

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

Klipfolio — Lua API Reference

list_dashboards

List all dashboards accessible to the authenticated user.

Parameters

NameTypeRequiredDescription
limitintegernoMaximum number of dashboards to return per page (default: 25)
pageintegernoPage number for pagination, 1-based (default: 1)

Example

local result = app.integrations.klipfolio.list_dashboards({
  limit = 10,
  page = 1
})

for _, dashboard in ipairs(result.data.dashboards) do
  print(dashboard.name .. " (ID: " .. dashboard.id .. ")")
end

get_dashboard

Get details for a specific Klipfolio dashboard by ID.

Parameters

NameTypeRequiredDescription
idstringyesThe unique dashboard identifier

Example

local result = app.integrations.klipfolio.get_dashboard({
  id = "abc123def456"
})

print("Dashboard: " .. result.data.name)
print("Description: " .. (result.data.description or "N/A"))

list_metrics

List all metrics accessible to the authenticated user.

Parameters

NameTypeRequiredDescription
limitintegernoMaximum number of metrics to return per page (default: 25)
pageintegernoPage number for pagination, 1-based (default: 1)

Example

local result = app.integrations.klipfolio.list_metrics({
  limit = 50,
  page = 1
})

for _, metric in ipairs(result.data.metrics) do
  print(metric.name .. " (ID: " .. metric.id .. ")")
end

get_metric

Get details for a specific Klipfolio metric by ID.

Parameters

NameTypeRequiredDescription
idstringyesThe unique metric identifier

Example

local result = app.integrations.klipfolio.get_metric({
  id = "metric123"
})

print("Metric: " .. result.data.name)
print("Formula: " .. (result.data.formula or "N/A"))

list_datasources

List all data sources accessible to the authenticated user.

Parameters

NameTypeRequiredDescription
limitintegernoMaximum number of data sources to return per page (default: 25)
pageintegernoPage number for pagination, 1-based (default: 1)

Example

local result = app.integrations.klipfolio.list_datasources({
  limit = 25,
  page = 1
})

for _, ds in ipairs(result.data.datasources) do
  print(ds.name .. " — " .. ds.connector_type .. " (ID: " .. ds.id .. ")")
end

get_datasource

Get details for a specific Klipfolio data source by ID.

Parameters

NameTypeRequiredDescription
idstringyesThe unique data source identifier

Example

local result = app.integrations.klipfolio.get_datasource({
  id = "ds789xyz"
})

print("Data Source: " .. result.data.name)
print("Connector: " .. result.data.connector_type)

get_current_user

Get the authenticated user’s profile information.

Parameters

None.

Example

local result = app.integrations.klipfolio.get_current_user({})

print("User: " .. result.data.name)
print("Email: " .. result.data.email)
print("Role: " .. result.data.role)

Multi-Account Usage

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

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

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

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

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

Raw agent markdown
# Klipfolio — Lua API Reference

## list_dashboards

List all dashboards accessible to the authenticated user.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Maximum number of dashboards to return per page (default: 25) |
| `page` | integer | no | Page number for pagination, 1-based (default: 1) |

### Example

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

for _, dashboard in ipairs(result.data.dashboards) do
  print(dashboard.name .. " (ID: " .. dashboard.id .. ")")
end
```

---

## get_dashboard

Get details for a specific Klipfolio dashboard by ID.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | string | yes | The unique dashboard identifier |

### Example

```lua
local result = app.integrations.klipfolio.get_dashboard({
  id = "abc123def456"
})

print("Dashboard: " .. result.data.name)
print("Description: " .. (result.data.description or "N/A"))
```

---

## list_metrics

List all metrics accessible to the authenticated user.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Maximum number of metrics to return per page (default: 25) |
| `page` | integer | no | Page number for pagination, 1-based (default: 1) |

### Example

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

for _, metric in ipairs(result.data.metrics) do
  print(metric.name .. " (ID: " .. metric.id .. ")")
end
```

---

## get_metric

Get details for a specific Klipfolio metric by ID.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | string | yes | The unique metric identifier |

### Example

```lua
local result = app.integrations.klipfolio.get_metric({
  id = "metric123"
})

print("Metric: " .. result.data.name)
print("Formula: " .. (result.data.formula or "N/A"))
```

---

## list_datasources

List all data sources accessible to the authenticated user.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Maximum number of data sources to return per page (default: 25) |
| `page` | integer | no | Page number for pagination, 1-based (default: 1) |

### Example

```lua
local result = app.integrations.klipfolio.list_datasources({
  limit = 25,
  page = 1
})

for _, ds in ipairs(result.data.datasources) do
  print(ds.name .. " — " .. ds.connector_type .. " (ID: " .. ds.id .. ")")
end
```

---

## get_datasource

Get details for a specific Klipfolio data source by ID.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | string | yes | The unique data source identifier |

### Example

```lua
local result = app.integrations.klipfolio.get_datasource({
  id = "ds789xyz"
})

print("Data Source: " .. result.data.name)
print("Connector: " .. result.data.connector_type)
```

---

## get_current_user

Get the authenticated user's profile information.

### Parameters

None.

### Example

```lua
local result = app.integrations.klipfolio.get_current_user({})

print("User: " .. result.data.name)
print("Email: " .. result.data.email)
print("Role: " .. result.data.role)
```

---

## Multi-Account Usage

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

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

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

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

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

Metadata-Derived Lua Example

local result = app.integrations.klipfolio.klipfolio_list_dashboards({
  limit = 1,
  page = 1
})
print(result)

Functions

klipfolio_list_dashboards

List all dashboards accessible to the authenticated user in Klipfolio. Returns dashboard IDs, names, and metadata.

Operation
Read read
Full name
klipfolio.klipfolio_list_dashboards
ParameterTypeRequiredDescription
limit integer no Maximum number of dashboards to return per page (default: 25).
page integer no Page number for pagination, 1-based (default: 1).

klipfolio_get_dashboard

Get details for a specific Klipfolio dashboard by ID, including its layout, Klips, and sharing settings.

Operation
Read read
Full name
klipfolio.klipfolio_get_dashboard
ParameterTypeRequiredDescription
id string yes The unique dashboard identifier.

klipfolio_list_metrics

List all metrics accessible to the authenticated user in Klipfolio. Returns metric IDs, names, and associated data sources.

Operation
Read read
Full name
klipfolio.klipfolio_list_metrics
ParameterTypeRequiredDescription
limit integer no Maximum number of metrics to return per page (default: 25).
page integer no Page number for pagination, 1-based (default: 1).

klipfolio_get_metric

Get details for a specific Klipfolio metric by ID, including its formula, data bindings, and formatting.

Operation
Read read
Full name
klipfolio.klipfolio_get_metric
ParameterTypeRequiredDescription
id string yes The unique metric identifier.

klipfolio_list_datasources

List all data sources accessible to the authenticated user in Klipfolio. Returns data source IDs, names, and connector types.

Operation
Read read
Full name
klipfolio.klipfolio_list_datasources
ParameterTypeRequiredDescription
limit integer no Maximum number of data sources to return per page (default: 25).
page integer no Page number for pagination, 1-based (default: 1).

klipfolio_get_datasource

Get details for a specific Klipfolio data source by ID, including its connector type, refresh settings, and configuration.

Operation
Read read
Full name
klipfolio.klipfolio_get_datasource
ParameterTypeRequiredDescription
id string yes The unique data source identifier.

klipfolio_get_current_user

Get the authenticated Klipfolio user's profile information, including name, email, and role.

Operation
Read read
Full name
klipfolio.klipfolio_get_current_user
ParameterTypeRequiredDescription
No parameters.