KosmoKrator

productivity

Accelo Lua API for KosmoKrator Agents

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

7 functions 6 read 1 write Bearer token auth

Lua Namespace

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

Accelo — Lua API Reference

list_tickets

List support tickets in Accelo.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of tickets per page (default: 25, max: 100)
pageintegernoPage number for pagination (1-based)
statusstringnoFilter by status (e.g. “open”, “closed”, “resolved”)

Examples

-- List open tickets
local result = app.integrations.accelo.list_tickets({
  status = "open",
  limit = 10
})

for _, ticket in ipairs(result) do
  print(ticket.id .. ": " .. ticket.title)
end
-- Paginate through all tickets
local page1 = app.integrations.accelo.list_tickets({ limit = 50, page = 1 })
local page2 = app.integrations.accelo.list_tickets({ limit = 50, page = 2 })

get_ticket

Get details of a specific support ticket.

Parameters

NameTypeRequiredDescription
idintegeryesThe Accelo ticket ID

Examples

local ticket = app.integrations.accelo.get_ticket({ id = 12345 })
print(ticket.title)
print(ticket.body)
print("Status: " .. ticket.status)

create_ticket

Create a new support ticket.

Parameters

NameTypeRequiredDescription
titlestringyesTicket title or subject
bodystringyesTicket description
contract_idintegernoContract ID to associate
priorityintegernoPriority level (1–5, where 1 is highest)

Examples

-- Create a basic ticket
local ticket = app.integrations.accelo.create_ticket({
  title = "Login issue",
  body = "User cannot log in to the portal after password reset."
})

print("Created ticket #" .. ticket.id)
-- Create a ticket with contract and priority
local ticket = app.integrations.accelo.create_ticket({
  title = "Feature request",
  body = "Customer requests SSO integration.",
  contract_id = 100,
  priority = 2
})

list_tasks

List tasks in Accelo.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of tasks per page (default: 25, max: 100)
pageintegernoPage number for pagination (1-based)
statusstringnoFilter by status (e.g. “open”, “completed”, “in_progress”)

Examples

-- List in-progress tasks
local tasks = app.integrations.accelo.list_tasks({
  status = "in_progress",
  limit = 20
})

for _, task in ipairs(tasks) do
  print(task.id .. ": " .. task.title .. " [" .. task.status .. "]")
end

get_task

Get details of a specific task.

Parameters

NameTypeRequiredDescription
idintegeryesThe Accelo task ID

Examples

local task = app.integrations.accelo.get_task({ id = 67890 })
print(task.title)
print("Status: " .. task.status)
print("Assignee: " .. (task.assignee or "unassigned"))

list_projects

List projects in Accelo.

Parameters

NameTypeRequiredDescription
limitintegernoNumber of projects per page (default: 25, max: 100)
pageintegernoPage number for pagination (1-based)
statusstringnoFilter by status (e.g. “open”, “completed”, “in_progress”)

Examples

-- List all open projects
local projects = app.integrations.accelo.list_projects({
  status = "open"
})

for _, project in ipairs(projects) do
  print(project.id .. ": " .. project.title)
end

get_current_user

Get the currently authenticated Accelo user’s profile.

Parameters

None.

Examples

local user = app.integrations.accelo.get_current_user({})
print("Logged in as: " .. user.first_name .. " " .. user.last_name)
print("Email: " .. user.email)

Multi-Account Usage

If you have multiple Accelo deployments configured, use account-specific namespaces:

-- Default account (always works)
app.integrations.accelo.list_tickets({})

-- Explicit default (portable across setups)
app.integrations.accelo.default.list_tickets({})

-- Named accounts
app.integrations.accelo.production.list_tickets({})
app.integrations.accelo.staging.list_tickets({})

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

Raw agent markdown
# Accelo — Lua API Reference

## list_tickets

List support tickets in Accelo.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of tickets per page (default: 25, max: 100) |
| `page` | integer | no | Page number for pagination (1-based) |
| `status` | string | no | Filter by status (e.g. "open", "closed", "resolved") |

### Examples

```lua
-- List open tickets
local result = app.integrations.accelo.list_tickets({
  status = "open",
  limit = 10
})

for _, ticket in ipairs(result) do
  print(ticket.id .. ": " .. ticket.title)
end
```

```lua
-- Paginate through all tickets
local page1 = app.integrations.accelo.list_tickets({ limit = 50, page = 1 })
local page2 = app.integrations.accelo.list_tickets({ limit = 50, page = 2 })
```

---

## get_ticket

Get details of a specific support ticket.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | integer | yes | The Accelo ticket ID |

### Examples

```lua
local ticket = app.integrations.accelo.get_ticket({ id = 12345 })
print(ticket.title)
print(ticket.body)
print("Status: " .. ticket.status)
```

---

## create_ticket

Create a new support ticket.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `title` | string | yes | Ticket title or subject |
| `body` | string | yes | Ticket description |
| `contract_id` | integer | no | Contract ID to associate |
| `priority` | integer | no | Priority level (1–5, where 1 is highest) |

### Examples

```lua
-- Create a basic ticket
local ticket = app.integrations.accelo.create_ticket({
  title = "Login issue",
  body = "User cannot log in to the portal after password reset."
})

print("Created ticket #" .. ticket.id)
```

```lua
-- Create a ticket with contract and priority
local ticket = app.integrations.accelo.create_ticket({
  title = "Feature request",
  body = "Customer requests SSO integration.",
  contract_id = 100,
  priority = 2
})
```

---

## list_tasks

List tasks in Accelo.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of tasks per page (default: 25, max: 100) |
| `page` | integer | no | Page number for pagination (1-based) |
| `status` | string | no | Filter by status (e.g. "open", "completed", "in_progress") |

### Examples

```lua
-- List in-progress tasks
local tasks = app.integrations.accelo.list_tasks({
  status = "in_progress",
  limit = 20
})

for _, task in ipairs(tasks) do
  print(task.id .. ": " .. task.title .. " [" .. task.status .. "]")
end
```

---

## get_task

Get details of a specific task.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `id` | integer | yes | The Accelo task ID |

### Examples

```lua
local task = app.integrations.accelo.get_task({ id = 67890 })
print(task.title)
print("Status: " .. task.status)
print("Assignee: " .. (task.assignee or "unassigned"))
```

---

## list_projects

List projects in Accelo.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `limit` | integer | no | Number of projects per page (default: 25, max: 100) |
| `page` | integer | no | Page number for pagination (1-based) |
| `status` | string | no | Filter by status (e.g. "open", "completed", "in_progress") |

### Examples

```lua
-- List all open projects
local projects = app.integrations.accelo.list_projects({
  status = "open"
})

for _, project in ipairs(projects) do
  print(project.id .. ": " .. project.title)
end
```

---

## get_current_user

Get the currently authenticated Accelo user's profile.

### Parameters

None.

### Examples

```lua
local user = app.integrations.accelo.get_current_user({})
print("Logged in as: " .. user.first_name .. " " .. user.last_name)
print("Email: " .. user.email)
```

---

## Multi-Account Usage

If you have multiple Accelo deployments configured, use account-specific namespaces:

```lua
-- Default account (always works)
app.integrations.accelo.list_tickets({})

-- Explicit default (portable across setups)
app.integrations.accelo.default.list_tickets({})

-- Named accounts
app.integrations.accelo.production.list_tickets({})
app.integrations.accelo.staging.list_tickets({})
```

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

Metadata-Derived Lua Example

local result = app.integrations.accelo.accelo_list_tickets({
  limit = 1,
  page = 1,
  status = "example_status"
})
print(result)

Functions

accelo_list_tickets

List support tickets in Accelo. Returns a paginated list of tickets, optionally filtered by status.

Operation
Read read
Full name
accelo.accelo_list_tickets
ParameterTypeRequiredDescription
limit integer no Number of tickets to return per page (default: 25, max: 100).
page integer no Page number for pagination (1-based).
status string no Filter tickets by status (e.g. "open", "closed", "resolved").

accelo_get_ticket

Get details of a specific support ticket in Accelo by its ID.

Operation
Read read
Full name
accelo.accelo_get_ticket
ParameterTypeRequiredDescription
id integer yes The Accelo ticket ID.

accelo_create_ticket

Create a new support ticket in Accelo. Requires a title and body. Optionally associate with a contract and set priority.

Operation
Write write
Full name
accelo.accelo_create_ticket
ParameterTypeRequiredDescription
title string yes The ticket title or subject.
body string yes The ticket description or body content.
contract_id integer no Optional contract ID to associate with the ticket.
priority integer no Priority level (e.g. 1–5, where 1 is highest).

accelo_list_tasks

List tasks in Accelo. Returns a paginated list of tasks, optionally filtered by status.

Operation
Read read
Full name
accelo.accelo_list_tasks
ParameterTypeRequiredDescription
limit integer no Number of tasks to return per page (default: 25, max: 100).
page integer no Page number for pagination (1-based).
status string no Filter tasks by status (e.g. "open", "completed", "in_progress").

accelo_get_task

Get details of a specific task in Accelo by its ID.

Operation
Read read
Full name
accelo.accelo_get_task
ParameterTypeRequiredDescription
id integer yes The Accelo task ID.

accelo_list_projects

List projects in Accelo. Returns a paginated list of projects, optionally filtered by status.

Operation
Read read
Full name
accelo.accelo_list_projects
ParameterTypeRequiredDescription
limit integer no Number of projects to return per page (default: 25, max: 100).
page integer no Page number for pagination (1-based).
status string no Filter projects by status (e.g. "open", "completed", "in_progress").

accelo_get_current_user

Get the profile of the currently authenticated Accelo user. Use this to verify credentials and see user details.

Operation
Read read
Full name
accelo.accelo_get_current_user
ParameterTypeRequiredDescription
No parameters.