KosmoKrator

productivity

Invoice Ninja Lua API for KosmoKrator Agents

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

Lua Namespace

Agents call this integration through app.integrations.invoiceninja.*. Use lua_read_doc("integrations.invoiceninja") 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 Invoice Ninja workflow without starting an interactive agent session.

Inline Lua call
kosmo integrations:lua --eval 'dump(app.integrations.invoiceninja.blank_client({}))' --json
Read Lua docs headlessly
kosmo integrations:lua --eval 'print(docs.read("invoiceninja"))' --json
kosmo integrations:lua --eval 'print(docs.read("invoiceninja.blank_client"))' --json

Workflow file

Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.

workflow.lua
local invoiceninja = app.integrations.invoiceninja
local result = invoiceninja.blank_client({})

dump(result)
Run the workflow
kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json
Namespace note. integrations:lua exposes app.integrations.invoiceninja, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.invoiceninja.default.* or app.integrations.invoiceninja.work.* when you configured named credential accounts.

MCP-only Lua

If the script only needs configured MCP servers and does not need Invoice Ninja, use the narrower mcp:lua command.

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.

Invoice Ninja Lua API Reference

Namespace: app.integrations.invoiceninja

Use this integration to inspect and manage Invoice Ninja v5 business records. The API token must be configured for the target Invoice Ninja account or self-hosted instance.

Return Shape

Tools return the parsed Invoice Ninja JSON response. Most successful resource calls return a top-level data object or data array. Paginated list endpoints may include pagination metadata from Invoice Ninja. Binary endpoints such as PDF downloads are intentionally not exposed here because agent tools expect JSON-shaped results.

Common List Parameters

Most list tools accept:

NameTypeRequiredNotes
per_pageintegernoNumber of records per page. Invoice Ninja defaults to 20.
pageintegernoPage number.
sortstringnoSort expression such as `name
includestringnoComma-separated relations to include.
searchstringnoSearch text or endpoint-supported filter.
client_idstringnoFilter by client where supported.
vendor_idstringnoFilter by vendor where supported.
project_idstringnoFilter by project where supported.

Invoice Ninja supports rich query filters such as balance=gt:1000 on some endpoints. If a filter is not listed as a first-class parameter, use the closest specific tool only when the endpoint supports it in Invoice Ninja.

Core Tools

The namespace exposes list/get/create/update/delete/blank/bulk tools for these resources:

ResourceTool prefix
Clientsclient, clients
Invoicesinvoice, invoices
Productsproduct, products
Paymentspayment, payments
Quotesquote, quotes
Creditscredit, credits
Projectsproject, projects
Taskstask, tasks
Vendorsvendor, vendors
Expensesexpense, expenses
Recurring invoicesrecurring_invoice, recurring_invoices
Purchase orderspurchase_order, purchase_orders
Tax ratestax_rate, tax_rates

Examples:

local clients = app.integrations.invoiceninja.list_clients({
  per_page = 25,
  sort = "name|desc"
})

local quote = app.integrations.invoiceninja.create_quote({
  payload = {
    client_id = "client_123",
    line_items = {
      { product_key = "consulting", notes = "Planning call", quantity = 1, cost = 250 }
    }
  }
})

local task = app.integrations.invoiceninja.update_task({
  id = "task_123",
  payload = {
    description = "Follow up with client",
    project_id = "project_123"
  }
})

Payload Tools

Generated create, update and bulk tools use a payload object. The payload is sent as the JSON body to the corresponding Invoice Ninja endpoint. Use Invoice Ninja field names exactly, for example client_id, line_items, contacts, amount, due_date, or action.

Client create/update calls require child contacts when contact data changes; Invoice Ninja does not modify client contacts in isolation.

Bulk tools expect the action payload shape supported by Invoice Ninja for that resource:

app.integrations.invoiceninja.bulk_invoices({
  payload = {
    action = "archive",
    ids = { "invoice_123" }
  }
})

Payments

Payment tools include list_payments, get_payment, create_payment, update_payment, delete_payment, refund_payment, blank_payment, and bulk_payments.

local result = app.integrations.invoiceninja.refund_payment({
  id = "payment_123",
  payload = {
    amount = 25.00,
    reason = "Duplicate charge"
  }
})

Reference And Health

Use these read tools for setup and lookup flows:

ToolPurpose
get_current_userVerify the configured token and current user.
list_users / get_userInspect Invoice Ninja users.
list_activities / get_activityInspect activity feed entries.
staticsFetch static selector data.
pingLightweight API ping.
health_checkHealth-check endpoint for compatible hosts.

Multi-Account Usage

app.integrations.invoiceninja.list_invoices({ per_page = 20 })
app.integrations.invoiceninja.default.list_invoices({ per_page = 20 })
app.integrations.invoiceninja.production.list_invoices({ per_page = 20 })

All account namespaces expose the same tools; only credentials and base URL differ.

Raw agent markdown
# Invoice Ninja Lua API Reference

Namespace: `app.integrations.invoiceninja`

Use this integration to inspect and manage Invoice Ninja v5 business records. The API token must be configured for the target Invoice Ninja account or self-hosted instance.

## Return Shape

Tools return the parsed Invoice Ninja JSON response. Most successful resource calls return a top-level `data` object or `data` array. Paginated list endpoints may include pagination metadata from Invoice Ninja. Binary endpoints such as PDF downloads are intentionally not exposed here because agent tools expect JSON-shaped results.

## Common List Parameters

Most list tools accept:

| Name | Type | Required | Notes |
| --- | --- | --- | --- |
| `per_page` | integer | no | Number of records per page. Invoice Ninja defaults to 20. |
| `page` | integer | no | Page number. |
| `sort` | string | no | Sort expression such as `name|desc`. |
| `include` | string | no | Comma-separated relations to include. |
| `search` | string | no | Search text or endpoint-supported filter. |
| `client_id` | string | no | Filter by client where supported. |
| `vendor_id` | string | no | Filter by vendor where supported. |
| `project_id` | string | no | Filter by project where supported. |

Invoice Ninja supports rich query filters such as `balance=gt:1000` on some endpoints. If a filter is not listed as a first-class parameter, use the closest specific tool only when the endpoint supports it in Invoice Ninja.

## Core Tools

The namespace exposes list/get/create/update/delete/blank/bulk tools for these resources:

| Resource | Tool prefix |
| --- | --- |
| Clients | `client`, `clients` |
| Invoices | `invoice`, `invoices` |
| Products | `product`, `products` |
| Payments | `payment`, `payments` |
| Quotes | `quote`, `quotes` |
| Credits | `credit`, `credits` |
| Projects | `project`, `projects` |
| Tasks | `task`, `tasks` |
| Vendors | `vendor`, `vendors` |
| Expenses | `expense`, `expenses` |
| Recurring invoices | `recurring_invoice`, `recurring_invoices` |
| Purchase orders | `purchase_order`, `purchase_orders` |
| Tax rates | `tax_rate`, `tax_rates` |

Examples:

```lua
local clients = app.integrations.invoiceninja.list_clients({
  per_page = 25,
  sort = "name|desc"
})

local quote = app.integrations.invoiceninja.create_quote({
  payload = {
    client_id = "client_123",
    line_items = {
      { product_key = "consulting", notes = "Planning call", quantity = 1, cost = 250 }
    }
  }
})

local task = app.integrations.invoiceninja.update_task({
  id = "task_123",
  payload = {
    description = "Follow up with client",
    project_id = "project_123"
  }
})
```

## Payload Tools

Generated create, update and bulk tools use a `payload` object. The payload is sent as the JSON body to the corresponding Invoice Ninja endpoint. Use Invoice Ninja field names exactly, for example `client_id`, `line_items`, `contacts`, `amount`, `due_date`, or `action`.

Client create/update calls require child contacts when contact data changes; Invoice Ninja does not modify client contacts in isolation.

Bulk tools expect the action payload shape supported by Invoice Ninja for that resource:

```lua
app.integrations.invoiceninja.bulk_invoices({
  payload = {
    action = "archive",
    ids = { "invoice_123" }
  }
})
```

## Payments

Payment tools include `list_payments`, `get_payment`, `create_payment`, `update_payment`, `delete_payment`, `refund_payment`, `blank_payment`, and `bulk_payments`.

```lua
local result = app.integrations.invoiceninja.refund_payment({
  id = "payment_123",
  payload = {
    amount = 25.00,
    reason = "Duplicate charge"
  }
})
```

## Reference And Health

Use these read tools for setup and lookup flows:

| Tool | Purpose |
| --- | --- |
| `get_current_user` | Verify the configured token and current user. |
| `list_users` / `get_user` | Inspect Invoice Ninja users. |
| `list_activities` / `get_activity` | Inspect activity feed entries. |
| `statics` | Fetch static selector data. |
| `ping` | Lightweight API ping. |
| `health_check` | Health-check endpoint for compatible hosts. |

## Multi-Account Usage

```lua
app.integrations.invoiceninja.list_invoices({ per_page = 20 })
app.integrations.invoiceninja.default.list_invoices({ per_page = 20 })
app.integrations.invoiceninja.production.list_invoices({ per_page = 20 })
```

All account namespaces expose the same tools; only credentials and base URL differ.
Metadata-derived Lua example
local result = app.integrations.invoiceninja.blank_client({})
print(result)

Functions

blank_client Read

Fetch a blank client object with Invoice Ninja defaults.

Lua path
app.integrations.invoiceninja.blank_client
Full name
invoiceninja.invoiceninja_blank_client
ParameterTypeRequiredDescription
No parameters.
blank_credit Read

Fetch a blank Invoice Ninja credit object with defaults.

Lua path
app.integrations.invoiceninja.blank_credit
Full name
invoiceninja.invoiceninja_blank_credit
ParameterTypeRequiredDescription
No parameters.
blank_expense Read

Fetch a blank Invoice Ninja expense object with defaults.

Lua path
app.integrations.invoiceninja.blank_expense
Full name
invoiceninja.invoiceninja_blank_expense
ParameterTypeRequiredDescription
No parameters.
blank Read

Fetch a blank invoice object with Invoice Ninja defaults.

Lua path
app.integrations.invoiceninja.blank
Full name
invoiceninja.invoiceninja_blank_invoice
ParameterTypeRequiredDescription
No parameters.
blank_payment Read

Fetch a blank payment object with Invoice Ninja defaults.

Lua path
app.integrations.invoiceninja.blank_payment
Full name
invoiceninja.invoiceninja_blank_payment
ParameterTypeRequiredDescription
No parameters.
blank_product Read

Fetch a blank product object with Invoice Ninja defaults.

Lua path
app.integrations.invoiceninja.blank_product
Full name
invoiceninja.invoiceninja_blank_product
ParameterTypeRequiredDescription
No parameters.
blank_project Read

Fetch a blank Invoice Ninja project object with defaults.

Lua path
app.integrations.invoiceninja.blank_project
Full name
invoiceninja.invoiceninja_blank_project
ParameterTypeRequiredDescription
No parameters.
blank_purchase_order Read

Fetch a blank Invoice Ninja purchase order object with defaults.

Lua path
app.integrations.invoiceninja.blank_purchase_order
Full name
invoiceninja.invoiceninja_blank_purchase_order
ParameterTypeRequiredDescription
No parameters.
blank_quote Read

Fetch a blank Invoice Ninja quote object with defaults.

Lua path
app.integrations.invoiceninja.blank_quote
Full name
invoiceninja.invoiceninja_blank_quote
ParameterTypeRequiredDescription
No parameters.
blank_recurring Read

Fetch a blank Invoice Ninja recurring invoice object with defaults.

Lua path
app.integrations.invoiceninja.blank_recurring
Full name
invoiceninja.invoiceninja_blank_recurring_invoice
ParameterTypeRequiredDescription
No parameters.
blank_task Read

Fetch a blank Invoice Ninja task object with defaults.

Lua path
app.integrations.invoiceninja.blank_task
Full name
invoiceninja.invoiceninja_blank_task
ParameterTypeRequiredDescription
No parameters.
blank_tax_rate Read

Fetch a blank Invoice Ninja tax rate object with defaults.

Lua path
app.integrations.invoiceninja.blank_tax_rate
Full name
invoiceninja.invoiceninja_blank_tax_rate
ParameterTypeRequiredDescription
No parameters.
blank_vendor Read

Fetch a blank Invoice Ninja vendor object with defaults.

Lua path
app.integrations.invoiceninja.blank_vendor
Full name
invoiceninja.invoiceninja_blank_vendor
ParameterTypeRequiredDescription
No parameters.
bulk_clients Write

Run a documented bulk action against Invoice Ninja clients.

Lua path
app.integrations.invoiceninja.bulk_clients
Full name
invoiceninja.invoiceninja_bulk_clients
ParameterTypeRequiredDescription
No parameters.
bulk_credits Write

Run a documented bulk action against Invoice Ninja credits.

Lua path
app.integrations.invoiceninja.bulk_credits
Full name
invoiceninja.invoiceninja_bulk_credits
ParameterTypeRequiredDescription
No parameters.
bulk_expenses Write

Run a documented bulk action against Invoice Ninja expenses.

Lua path
app.integrations.invoiceninja.bulk_expenses
Full name
invoiceninja.invoiceninja_bulk_expenses
ParameterTypeRequiredDescription
No parameters.
bulk Write

Run a documented bulk action against Invoice Ninja invoices.

Lua path
app.integrations.invoiceninja.bulk
Full name
invoiceninja.invoiceninja_bulk_invoices
ParameterTypeRequiredDescription
No parameters.
bulk_payments Write

Run a documented bulk action against Invoice Ninja payments.

Lua path
app.integrations.invoiceninja.bulk_payments
Full name
invoiceninja.invoiceninja_bulk_payments
ParameterTypeRequiredDescription
No parameters.
bulk_products Write

Run a documented bulk action against Invoice Ninja products.

Lua path
app.integrations.invoiceninja.bulk_products
Full name
invoiceninja.invoiceninja_bulk_products
ParameterTypeRequiredDescription
No parameters.
bulk_projects Write

Run a documented bulk action against Invoice Ninja projects.

Lua path
app.integrations.invoiceninja.bulk_projects
Full name
invoiceninja.invoiceninja_bulk_projects
ParameterTypeRequiredDescription
No parameters.
bulk_purchase_orders Write

Run a documented bulk action against Invoice Ninja purchase orders.

Lua path
app.integrations.invoiceninja.bulk_purchase_orders
Full name
invoiceninja.invoiceninja_bulk_purchase_orders
ParameterTypeRequiredDescription
No parameters.
bulk_quotes Write

Run a documented bulk action against Invoice Ninja quotes.

Lua path
app.integrations.invoiceninja.bulk_quotes
Full name
invoiceninja.invoiceninja_bulk_quotes
ParameterTypeRequiredDescription
No parameters.
bulk_recurring Write

Run a documented bulk action against Invoice Ninja recurring invoices.

Lua path
app.integrations.invoiceninja.bulk_recurring
Full name
invoiceninja.invoiceninja_bulk_recurring_invoices
ParameterTypeRequiredDescription
No parameters.
bulk_tasks Write

Run a documented bulk action against Invoice Ninja tasks.

Lua path
app.integrations.invoiceninja.bulk_tasks
Full name
invoiceninja.invoiceninja_bulk_tasks
ParameterTypeRequiredDescription
No parameters.
bulk_tax_rates Write

Run a documented bulk action against Invoice Ninja tax rates.

Lua path
app.integrations.invoiceninja.bulk_tax_rates
Full name
invoiceninja.invoiceninja_bulk_tax_rates
ParameterTypeRequiredDescription
No parameters.
bulk_vendors Write

Run a documented bulk action against Invoice Ninja vendors.

Lua path
app.integrations.invoiceninja.bulk_vendors
Full name
invoiceninja.invoiceninja_bulk_vendors
ParameterTypeRequiredDescription
No parameters.
create_client Write

Create a new client in Invoice Ninja. Provide name and at least one contact with an email address.

Lua path
app.integrations.invoiceninja.create_client
Full name
invoiceninja.invoiceninja_create_client
ParameterTypeRequiredDescription
name string yes Client or company name.
contacts array yes Array of contacts. Each contact should have: first_name, last_name, email. Optionally: phone.
id_number string no Custom ID number for the client.
vat_number string no VAT/tax identification number.
website string no Client website URL.
phone string no Primary phone number.
address1 string no Street address line 1.
address2 string no Street address line 2.
city string no City.
state string no State or province.
postal_code string no Postal / ZIP code.
country_id string no Country ID (ISO 3166-1 numeric).
private_notes string no Private notes (internal only).
public_notes string no Public notes visible to the client.
create_credit Write

Create an Invoice Ninja credit.

Lua path
app.integrations.invoiceninja.create_credit
Full name
invoiceninja.invoiceninja_create_credit
ParameterTypeRequiredDescription
No parameters.
create_expense Write

Create an Invoice Ninja expense.

Lua path
app.integrations.invoiceninja.create_expense
Full name
invoiceninja.invoiceninja_create_expense
ParameterTypeRequiredDescription
No parameters.
create Write

Create a new invoice in Invoice Ninja. Requires a client_id and at least one line item. Supports custom due dates, partial deposits, and notes.

Lua path
app.integrations.invoiceninja.create
Full name
invoiceninja.invoiceninja_create_invoice
ParameterTypeRequiredDescription
client_id string yes The client ID to assign the invoice to.
line_items array yes Array of line items. Each item should have: product_key (or product_cost), notes, quantity, cost (unit price).
due_date string no Due date in YYYY-MM-DD format.
date string no Invoice date in YYYY-MM-DD format (defaults to today).
public_notes string no Public notes visible to the client.
private_notes string no Private notes (internal only).
discount number no Discount amount or percentage.
is_amount_discount boolean no Whether discount is a fixed amount (true) or percentage (false).
tax_name1 string no First tax name.
tax_rate1 number no First tax rate percentage.
partial number no Partial/deposit amount.
partial_due_date string no Due date for the partial deposit (YYYY-MM-DD).
create_payment Write

Create an Invoice Ninja payment.

Lua path
app.integrations.invoiceninja.create_payment
Full name
invoiceninja.invoiceninja_create_payment
ParameterTypeRequiredDescription
No parameters.
create_product Write

Create an Invoice Ninja product.

Lua path
app.integrations.invoiceninja.create_product
Full name
invoiceninja.invoiceninja_create_product
ParameterTypeRequiredDescription
No parameters.
create_project Write

Create an Invoice Ninja project.

Lua path
app.integrations.invoiceninja.create_project
Full name
invoiceninja.invoiceninja_create_project
ParameterTypeRequiredDescription
No parameters.
create_purchase_order Write

Create an Invoice Ninja purchase order.

Lua path
app.integrations.invoiceninja.create_purchase_order
Full name
invoiceninja.invoiceninja_create_purchase_order
ParameterTypeRequiredDescription
No parameters.
create_quote Write

Create an Invoice Ninja quote.

Lua path
app.integrations.invoiceninja.create_quote
Full name
invoiceninja.invoiceninja_create_quote
ParameterTypeRequiredDescription
No parameters.
create_recurring Write

Create an Invoice Ninja recurring invoice.

Lua path
app.integrations.invoiceninja.create_recurring
Full name
invoiceninja.invoiceninja_create_recurring_invoice
ParameterTypeRequiredDescription
No parameters.
create_task Write

Create an Invoice Ninja task.

Lua path
app.integrations.invoiceninja.create_task
Full name
invoiceninja.invoiceninja_create_task
ParameterTypeRequiredDescription
No parameters.
create_tax_rate Write

Create an Invoice Ninja tax rate.

Lua path
app.integrations.invoiceninja.create_tax_rate
Full name
invoiceninja.invoiceninja_create_tax_rate
ParameterTypeRequiredDescription
No parameters.
create_vendor Write

Create an Invoice Ninja vendor.

Lua path
app.integrations.invoiceninja.create_vendor
Full name
invoiceninja.invoiceninja_create_vendor
ParameterTypeRequiredDescription
No parameters.
delete_client Write

Delete or archive an Invoice Ninja client by ID.

Lua path
app.integrations.invoiceninja.delete_client
Full name
invoiceninja.invoiceninja_delete_client
ParameterTypeRequiredDescription
No parameters.
delete_credit Write

Delete or archive an Invoice Ninja credit by ID.

Lua path
app.integrations.invoiceninja.delete_credit
Full name
invoiceninja.invoiceninja_delete_credit
ParameterTypeRequiredDescription
No parameters.
delete_expense Write

Delete or archive an Invoice Ninja expense by ID.

Lua path
app.integrations.invoiceninja.delete_expense
Full name
invoiceninja.invoiceninja_delete_expense
ParameterTypeRequiredDescription
No parameters.
delete Write

Delete or archive an Invoice Ninja invoice by ID.

Lua path
app.integrations.invoiceninja.delete
Full name
invoiceninja.invoiceninja_delete_invoice
ParameterTypeRequiredDescription
No parameters.
delete_payment Write

Delete an Invoice Ninja payment by ID.

Lua path
app.integrations.invoiceninja.delete_payment
Full name
invoiceninja.invoiceninja_delete_payment
ParameterTypeRequiredDescription
No parameters.
delete_product Write

Delete or archive an Invoice Ninja product by ID.

Lua path
app.integrations.invoiceninja.delete_product
Full name
invoiceninja.invoiceninja_delete_product
ParameterTypeRequiredDescription
No parameters.
delete_project Write

Delete or archive an Invoice Ninja project by ID.

Lua path
app.integrations.invoiceninja.delete_project
Full name
invoiceninja.invoiceninja_delete_project
ParameterTypeRequiredDescription
No parameters.
delete_purchase_order Write

Delete or archive an Invoice Ninja purchase order by ID.

Lua path
app.integrations.invoiceninja.delete_purchase_order
Full name
invoiceninja.invoiceninja_delete_purchase_order
ParameterTypeRequiredDescription
No parameters.
delete_quote Write

Delete or archive an Invoice Ninja quote by ID.

Lua path
app.integrations.invoiceninja.delete_quote
Full name
invoiceninja.invoiceninja_delete_quote
ParameterTypeRequiredDescription
No parameters.
delete_recurring Write

Delete or archive an Invoice Ninja recurring invoice by ID.

Lua path
app.integrations.invoiceninja.delete_recurring
Full name
invoiceninja.invoiceninja_delete_recurring_invoice
ParameterTypeRequiredDescription
No parameters.
delete_task Write

Delete or archive an Invoice Ninja task by ID.

Lua path
app.integrations.invoiceninja.delete_task
Full name
invoiceninja.invoiceninja_delete_task
ParameterTypeRequiredDescription
No parameters.
delete_tax_rate Write

Delete or archive an Invoice Ninja tax rate by ID.

Lua path
app.integrations.invoiceninja.delete_tax_rate
Full name
invoiceninja.invoiceninja_delete_tax_rate
ParameterTypeRequiredDescription
No parameters.
delete_vendor Write

Delete or archive an Invoice Ninja vendor by ID.

Lua path
app.integrations.invoiceninja.delete_vendor
Full name
invoiceninja.invoiceninja_delete_vendor
ParameterTypeRequiredDescription
No parameters.
get_activity Read

Get a single Invoice Ninja activity by ID.

Lua path
app.integrations.invoiceninja.get_activity
Full name
invoiceninja.invoiceninja_get_activity
ParameterTypeRequiredDescription
No parameters.
get_client Read

Get a single Invoice Ninja client by ID.

Lua path
app.integrations.invoiceninja.get_client
Full name
invoiceninja.invoiceninja_get_client
ParameterTypeRequiredDescription
No parameters.
get_credit Read

Get a single Invoice Ninja credit by ID.

Lua path
app.integrations.invoiceninja.get_credit
Full name
invoiceninja.invoiceninja_get_credit
ParameterTypeRequiredDescription
No parameters.
get_current_user Read

Get the profile of the currently authenticated Invoice Ninja user. Useful for verifying connection details and account information.

Lua path
app.integrations.invoiceninja.get_current_user
Full name
invoiceninja.invoiceninja_get_current_user
ParameterTypeRequiredDescription
No parameters.
get_expense Read

Get a single Invoice Ninja expense by ID.

Lua path
app.integrations.invoiceninja.get_expense
Full name
invoiceninja.invoiceninja_get_expense
ParameterTypeRequiredDescription
No parameters.
get Read

Get a single invoice from Invoice Ninja by ID. Returns full invoice details including line items, client info, and payment status.

Lua path
app.integrations.invoiceninja.get
Full name
invoiceninja.invoiceninja_get_invoice
ParameterTypeRequiredDescription
id string yes The invoice ID.
get_payment Read

Get a single Invoice Ninja payment by ID.

Lua path
app.integrations.invoiceninja.get_payment
Full name
invoiceninja.invoiceninja_get_payment
ParameterTypeRequiredDescription
No parameters.
get_product Read

Get a single Invoice Ninja product by ID.

Lua path
app.integrations.invoiceninja.get_product
Full name
invoiceninja.invoiceninja_get_product
ParameterTypeRequiredDescription
No parameters.
get_project Read

Get a single Invoice Ninja project by ID.

Lua path
app.integrations.invoiceninja.get_project
Full name
invoiceninja.invoiceninja_get_project
ParameterTypeRequiredDescription
No parameters.
get_purchase_order Read

Get a single Invoice Ninja purchase order by ID.

Lua path
app.integrations.invoiceninja.get_purchase_order
Full name
invoiceninja.invoiceninja_get_purchase_order
ParameterTypeRequiredDescription
No parameters.
get_quote Read

Get a single Invoice Ninja quote by ID.

Lua path
app.integrations.invoiceninja.get_quote
Full name
invoiceninja.invoiceninja_get_quote
ParameterTypeRequiredDescription
No parameters.
get_recurring Read

Get a single Invoice Ninja recurring invoice by ID.

Lua path
app.integrations.invoiceninja.get_recurring
Full name
invoiceninja.invoiceninja_get_recurring_invoice
ParameterTypeRequiredDescription
No parameters.
get_task Read

Get a single Invoice Ninja task by ID.

Lua path
app.integrations.invoiceninja.get_task
Full name
invoiceninja.invoiceninja_get_task
ParameterTypeRequiredDescription
No parameters.
get_tax_rate Read

Get a single Invoice Ninja tax rate by ID.

Lua path
app.integrations.invoiceninja.get_tax_rate
Full name
invoiceninja.invoiceninja_get_tax_rate
ParameterTypeRequiredDescription
No parameters.
get_user Read

Get a single Invoice Ninja user by ID.

Lua path
app.integrations.invoiceninja.get_user
Full name
invoiceninja.invoiceninja_get_user
ParameterTypeRequiredDescription
No parameters.
get_vendor Read

Get a single Invoice Ninja vendor by ID.

Lua path
app.integrations.invoiceninja.get_vendor
Full name
invoiceninja.invoiceninja_get_vendor
ParameterTypeRequiredDescription
No parameters.
health_check Read

Call the Invoice Ninja health-check endpoint.

Lua path
app.integrations.invoiceninja.health_check
Full name
invoiceninja.invoiceninja_health_check
ParameterTypeRequiredDescription
No parameters.
list_activities Read

List Invoice Ninja account activities.

Lua path
app.integrations.invoiceninja.list_activities
Full name
invoiceninja.invoiceninja_list_activities
ParameterTypeRequiredDescription
No parameters.
list_clients Read

List clients from Invoice Ninja. Supports filtering by name, email, and ID number with pagination.

Lua path
app.integrations.invoiceninja.list_clients
Full name
invoiceninja.invoiceninja_list_clients
ParameterTypeRequiredDescription
per_page integer no Number of clients per page (default: 20).
page integer no Page number for pagination.
search string no Search clients by name or email (partial match).
id_number string no Filter by client ID number.
sort string no Sort field (e.g. "name", "balance", "created_at").
list_credits Read

List Invoice Ninja credits with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_credits
Full name
invoiceninja.invoiceninja_list_credits
ParameterTypeRequiredDescription
No parameters.
list_expenses Read

List Invoice Ninja expenses with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_expenses
Full name
invoiceninja.invoiceninja_list_expenses
ParameterTypeRequiredDescription
No parameters.
list Read

List invoices from Invoice Ninja. Supports filtering by client, status, and date range with pagination.

Lua path
app.integrations.invoiceninja.list
Full name
invoiceninja.invoiceninja_list_invoices
ParameterTypeRequiredDescription
per_page integer no Number of invoices per page (default: 20).
page integer no Page number for pagination.
client_id string no Filter invoices by client ID.
status string no Filter by status: draft, sent, partial, paid, cancelled, overdue, reversed.
number string no Filter by invoice number (partial match).
sort string no Sort field (e.g. "number", "date", "due_date", "amount").
list_payments Read

List payments from Invoice Ninja. Supports filtering by client, invoice, status, and date range with pagination.

Lua path
app.integrations.invoiceninja.list_payments
Full name
invoiceninja.invoiceninja_list_payments
ParameterTypeRequiredDescription
per_page integer no Number of payments per page (default: 20).
page integer no Page number for pagination.
client_id string no Filter payments by client ID.
invoice_id string no Filter payments by invoice ID.
status string no Filter by payment status (e.g. "completed", "pending", "failed", "refunded").
sort string no Sort field (e.g. "amount", "date", "created_at").
list_products Read

List products from Invoice Ninja. Supports filtering by product key, custom value, and text search with pagination.

Lua path
app.integrations.invoiceninja.list_products
Full name
invoiceninja.invoiceninja_list_products
ParameterTypeRequiredDescription
per_page integer no Number of products per page (default: 20).
page integer no Page number for pagination.
product_key string no Filter by product key (exact match).
sort string no Sort field (e.g. "product_key", "cost", "created_at").
is_deleted boolean no Include soft-deleted products.
list_projects Read

List Invoice Ninja projects with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_projects
Full name
invoiceninja.invoiceninja_list_projects
ParameterTypeRequiredDescription
No parameters.
list_purchase_orders Read

List Invoice Ninja purchase orders with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_purchase_orders
Full name
invoiceninja.invoiceninja_list_purchase_orders
ParameterTypeRequiredDescription
No parameters.
list_quotes Read

List Invoice Ninja quotes with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_quotes
Full name
invoiceninja.invoiceninja_list_quotes
ParameterTypeRequiredDescription
No parameters.
list_recurring Read

List Invoice Ninja recurring invoices with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_recurring
Full name
invoiceninja.invoiceninja_list_recurring_invoices
ParameterTypeRequiredDescription
No parameters.
list_tasks Read

List Invoice Ninja tasks with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_tasks
Full name
invoiceninja.invoiceninja_list_tasks
ParameterTypeRequiredDescription
No parameters.
list_tax_rates Read

List Invoice Ninja tax rates with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_tax_rates
Full name
invoiceninja.invoiceninja_list_tax_rates
ParameterTypeRequiredDescription
No parameters.
list_users Read

List Invoice Ninja users.

Lua path
app.integrations.invoiceninja.list_users
Full name
invoiceninja.invoiceninja_list_users
ParameterTypeRequiredDescription
No parameters.
list_vendors Read

List Invoice Ninja vendors with optional filters and pagination.

Lua path
app.integrations.invoiceninja.list_vendors
Full name
invoiceninja.invoiceninja_list_vendors
ParameterTypeRequiredDescription
No parameters.
ping Read

Call the Invoice Ninja ping endpoint.

Lua path
app.integrations.invoiceninja.ping
Full name
invoiceninja.invoiceninja_ping
ParameterTypeRequiredDescription
No parameters.
refund_payment Write

Refund an Invoice Ninja payment.

Lua path
app.integrations.invoiceninja.refund_payment
Full name
invoiceninja.invoiceninja_refund_payment
ParameterTypeRequiredDescription
No parameters.
statics Read

Fetch Invoice Ninja static reference data used by selectors.

Lua path
app.integrations.invoiceninja.statics
Full name
invoiceninja.invoiceninja_statics
ParameterTypeRequiredDescription
No parameters.
update_client Write

Update an Invoice Ninja client. Mutating client requests should include child contacts when changing contact data.

Lua path
app.integrations.invoiceninja.update_client
Full name
invoiceninja.invoiceninja_update_client
ParameterTypeRequiredDescription
No parameters.
update_credit Write

Update an Invoice Ninja credit by ID.

Lua path
app.integrations.invoiceninja.update_credit
Full name
invoiceninja.invoiceninja_update_credit
ParameterTypeRequiredDescription
No parameters.
update_expense Write

Update an Invoice Ninja expense by ID.

Lua path
app.integrations.invoiceninja.update_expense
Full name
invoiceninja.invoiceninja_update_expense
ParameterTypeRequiredDescription
No parameters.
update Write

Update an Invoice Ninja invoice by ID.

Lua path
app.integrations.invoiceninja.update
Full name
invoiceninja.invoiceninja_update_invoice
ParameterTypeRequiredDescription
No parameters.
update_payment Write

Update an Invoice Ninja payment by ID.

Lua path
app.integrations.invoiceninja.update_payment
Full name
invoiceninja.invoiceninja_update_payment
ParameterTypeRequiredDescription
No parameters.
update_product Write

Update an Invoice Ninja product by ID.

Lua path
app.integrations.invoiceninja.update_product
Full name
invoiceninja.invoiceninja_update_product
ParameterTypeRequiredDescription
No parameters.
update_project Write

Update an Invoice Ninja project by ID.

Lua path
app.integrations.invoiceninja.update_project
Full name
invoiceninja.invoiceninja_update_project
ParameterTypeRequiredDescription
No parameters.
update_purchase_order Write

Update an Invoice Ninja purchase order by ID.

Lua path
app.integrations.invoiceninja.update_purchase_order
Full name
invoiceninja.invoiceninja_update_purchase_order
ParameterTypeRequiredDescription
No parameters.
update_quote Write

Update an Invoice Ninja quote by ID.

Lua path
app.integrations.invoiceninja.update_quote
Full name
invoiceninja.invoiceninja_update_quote
ParameterTypeRequiredDescription
No parameters.
update_recurring Write

Update an Invoice Ninja recurring invoice by ID.

Lua path
app.integrations.invoiceninja.update_recurring
Full name
invoiceninja.invoiceninja_update_recurring_invoice
ParameterTypeRequiredDescription
No parameters.
update_task Write

Update an Invoice Ninja task by ID.

Lua path
app.integrations.invoiceninja.update_task
Full name
invoiceninja.invoiceninja_update_task
ParameterTypeRequiredDescription
No parameters.
update_tax_rate Write

Update an Invoice Ninja tax rate by ID.

Lua path
app.integrations.invoiceninja.update_tax_rate
Full name
invoiceninja.invoiceninja_update_tax_rate
ParameterTypeRequiredDescription
No parameters.
update_vendor Write

Update an Invoice Ninja vendor by ID.

Lua path
app.integrations.invoiceninja.update_vendor
Full name
invoiceninja.invoiceninja_update_vendor
ParameterTypeRequiredDescription
No parameters.