data
Venmo Lua API for KosmoKrator Agents
Agent-facing Lua documentation and function reference for the Venmo KosmoKrator integration.Lua Namespace
Agents call this integration through app.integrations.venmo.*.
Use lua_read_doc("integrations.venmo") 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
Venmo workflow without starting an interactive agent session.
kosmo integrations:lua --eval 'dump(app.integrations.venmo.list_payments({limit = 1, offset = 1, after = "example_after", before = "example_before"}))' --json kosmo integrations:lua --eval 'print(docs.read("venmo"))' --json
kosmo integrations:lua --eval 'print(docs.read("venmo.list_payments"))' --json Workflow file
Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.
local venmo = app.integrations.venmo
local result = venmo.list_payments({limit = 1, offset = 1, after = "example_after", before = "example_before"})
dump(result) kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json integrations:lua exposes app.integrations.venmo, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.venmo.default.* or app.integrations.venmo.work.* when you configured named credential accounts.
MCP-only Lua
If the script only needs configured MCP servers and does not need Venmo, use the narrower 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.
Venmo — Lua API Reference
Availability
This package targets the legacy Venmo Developer API at https://api.venmo.com/v1.
Venmo states that its Developer and Payouts APIs have been retired for new businesses. Existing businesses that were granted access in the past, generally before 2016, may retain access. New integrations should usually use PayPal Payouts to Venmo for payouts, or PayPal/Braintree Venmo checkout for purchase flows.
Authentication
Configure a legacy Venmo access_token. The token is sent as Authorization: Bearer <token>.
Do not expect this package to provide a new OAuth enrollment flow. Token acquisition is only available to already-approved legacy API users.
Payments
app.integrations.venmo.list_payments(...)
List payments for the authenticated legacy API account.
local result = app.integrations.venmo.list_payments({
limit = 20,
offset = 0,
})
Optional filters: limit, offset, after, and before.
app.integrations.venmo.get_payment(...)
Retrieve a legacy Venmo payment by ID.
local payment = app.integrations.venmo.get_payment({
id = "1234567890",
})
app.integrations.venmo.create_payment(...)
Create a payment through a grandfathered Venmo Developer API token.
local payment = app.integrations.venmo.create_payment({
amount = 25.00,
user_id = "1234567890",
note = "Dinner",
audience = "private",
})
Audience values: private, friends, and public.
Users
app.integrations.venmo.list_users(...)
Search users by username, email, or phone number.
local result = app.integrations.venmo.list_users({
query = "janesmith",
limit = 10,
})
app.integrations.venmo.get_user(...)
Retrieve a user by ID.
local user = app.integrations.venmo.get_user({
id = "1234567890",
})
Transactions
app.integrations.venmo.list_transactions(...)
List transactions with optional filtering.
local result = app.integrations.venmo.list_transactions({
action = "pay",
limit = 20,
})
Optional filters: limit, offset, after, before, and action.
Current User
app.integrations.venmo.get_current_user(...)
Get the authenticated legacy API user’s profile.
local me = app.integrations.venmo.get_current_user({})
Notes
- Amounts are represented as dollar values by the legacy API.
- The legacy API uses offset-based pagination.
- This package intentionally documents the retired-access status. Treat failed setup for new Venmo accounts as expected vendor behavior, not a host bug.
- For new payout use cases, evaluate PayPal Payouts to Venmo instead of this package.
Multi-Account Usage
app.integrations.venmo.list_payments({})
app.integrations.venmo.default.list_payments({})
app.integrations.venmo.legacy.list_payments({})
All functions are identical across accounts; only stored credentials differ.
Raw agent markdown
# Venmo — Lua API Reference
## Availability
This package targets the legacy Venmo Developer API at `https://api.venmo.com/v1`.
Venmo states that its Developer and Payouts APIs have been retired for new businesses. Existing businesses that were granted access in the past, generally before 2016, may retain access. New integrations should usually use PayPal Payouts to Venmo for payouts, or PayPal/Braintree Venmo checkout for purchase flows.
## Authentication
Configure a legacy Venmo `access_token`. The token is sent as `Authorization: Bearer <token>`.
Do not expect this package to provide a new OAuth enrollment flow. Token acquisition is only available to already-approved legacy API users.
## Payments
### `app.integrations.venmo.list_payments(...)`
List payments for the authenticated legacy API account.
```lua
local result = app.integrations.venmo.list_payments({
limit = 20,
offset = 0,
})
```
Optional filters: `limit`, `offset`, `after`, and `before`.
### `app.integrations.venmo.get_payment(...)`
Retrieve a legacy Venmo payment by ID.
```lua
local payment = app.integrations.venmo.get_payment({
id = "1234567890",
})
```
### `app.integrations.venmo.create_payment(...)`
Create a payment through a grandfathered Venmo Developer API token.
```lua
local payment = app.integrations.venmo.create_payment({
amount = 25.00,
user_id = "1234567890",
note = "Dinner",
audience = "private",
})
```
Audience values: `private`, `friends`, and `public`.
## Users
### `app.integrations.venmo.list_users(...)`
Search users by username, email, or phone number.
```lua
local result = app.integrations.venmo.list_users({
query = "janesmith",
limit = 10,
})
```
### `app.integrations.venmo.get_user(...)`
Retrieve a user by ID.
```lua
local user = app.integrations.venmo.get_user({
id = "1234567890",
})
```
## Transactions
### `app.integrations.venmo.list_transactions(...)`
List transactions with optional filtering.
```lua
local result = app.integrations.venmo.list_transactions({
action = "pay",
limit = 20,
})
```
Optional filters: `limit`, `offset`, `after`, `before`, and `action`.
## Current User
### `app.integrations.venmo.get_current_user(...)`
Get the authenticated legacy API user's profile.
```lua
local me = app.integrations.venmo.get_current_user({})
```
## Notes
- Amounts are represented as dollar values by the legacy API.
- The legacy API uses offset-based pagination.
- This package intentionally documents the retired-access status. Treat failed setup for new Venmo accounts as expected vendor behavior, not a host bug.
- For new payout use cases, evaluate PayPal Payouts to Venmo instead of this package.
## Multi-Account Usage
```lua
app.integrations.venmo.list_payments({})
app.integrations.venmo.default.list_payments({})
app.integrations.venmo.legacy.list_payments({})
```
All functions are identical across accounts; only stored credentials differ. local result = app.integrations.venmo.list_payments({limit = 1, offset = 1, after = "example_after", before = "example_before"})
print(result) Functions
list_payments Read
List Venmo payments with optional filtering. Supports pagination with limit and offset parameters.
- Lua path
app.integrations.venmo.list_payments- Full name
venmo.venmo_list_payments
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Number of payments to return (default 20). |
offset | integer | no | Offset for pagination. |
after | string | no | Only return payments after this timestamp (ISO 8601). |
before | string | no | Only return payments before this timestamp (ISO 8601). |
get_payment Read
Retrieve a Venmo payment by ID. Returns full payment details including amount, status, note, sender, and recipient.
- Lua path
app.integrations.venmo.get_payment- Full name
venmo.venmo_get_payment
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Venmo payment ID. |
create_payment Write
Create a Venmo payment. Specify amount, recipient user ID, an optional note, and audience visibility.
- Lua path
app.integrations.venmo.create_payment- Full name
venmo.venmo_create_payment
| Parameter | Type | Required | Description |
|---|---|---|---|
amount | number | yes | Payment amount in dollars (e.g., 25.00). |
user_id | string | yes | Recipient Venmo user ID. |
note | string | yes | Payment note or description. |
audience | string | no | Visibility: "private", "friends", or "public". Default: "friends". |
list_users Read
List Venmo users with optional filtering. Supports search by username, email, or phone and pagination.
- Lua path
app.integrations.venmo.list_users- Full name
venmo.venmo_list_users
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | no | Search query — username, email, or phone number. |
limit | integer | no | Number of users to return (default 20). |
offset | integer | no | Offset for pagination. |
get_user Read
Retrieve a Venmo user by ID. Returns user profile details including username, display name, and profile picture.
- Lua path
app.integrations.venmo.get_user- Full name
venmo.venmo_get_user
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Venmo user ID. |
list_transactions Read
List Venmo transactions with optional filtering. Supports filtering by date range, action type, and pagination.
- Lua path
app.integrations.venmo.list_transactions- Full name
venmo.venmo_list_transactions
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Number of transactions to return (default 20). |
offset | integer | no | Offset for pagination. |
after | string | no | Only return transactions after this timestamp (ISO 8601). |
before | string | no | Only return transactions before this timestamp (ISO 8601). |
action | string | no | Filter by action type: "pay" or "charge". |
get_current_user Read
Get the currently authenticated Venmo user. Returns the authenticated user's full profile including balance and account details.
- Lua path
app.integrations.venmo.get_current_user- Full name
venmo.venmo_get_current_user
| Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||