KosmoKrator

other

Eventbrite Lua API for KosmoKrator Agents

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

9 functions 6 read 3 write API token auth

Lua Namespace

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

Eventbrite — Lua API Reference

list_events

List events for the configured Eventbrite organization.

Parameters

NameTypeRequiredDescription
statusstringnoFilter by status: live, draft, started, ended, completed, canceled, or all
order_bystringnoSort order: start_asc, start_desc, created_asc, created_desc, name_asc
pageintegernoPage number for pagination (default: 1)
continuationstringnoContinuation token from a previous response

Examples

local result = app.integrations.eventbrite.list_events({
  status = "live",
  order_by = "start_asc"
})

for _, event in ipairs(result.events) do
  print(event.name .. " — " .. event.start)
end
-- Paginate through all events
local result = app.integrations.eventbrite.list_events({
  status = "all",
  page = 2
})

get_event

Get full details for a single event by ID.

Parameters

NameTypeRequiredDescription
event_idstringyesThe Eventbrite event ID

Example

local result = app.integrations.eventbrite.get_event({
  event_id = "123456789"
})

print(result.name.text)
print(result.description.html)
print(result.venue.name)

create_event

Create a new event on Eventbrite.

Parameters

NameTypeRequiredDescription
namestringyesEvent title
start_utcstringyesStart time in UTC (ISO 8601, e.g. "2026-06-15T18:00:00Z")
end_utcstringyesEnd time in UTC (ISO 8601, e.g. "2026-06-15T21:00:00Z")
currencystringyesThree-letter currency code (USD, EUR, GBP, etc.)
descriptionstringnoHTML description of the event
summarystringnoShort plaintext summary (max 140 chars)
timezonestringnoEvent timezone (e.g. "America/New_York")
venue_idstringnoID of an existing venue (omit for online events)
online_eventbooleannoSet to true for a virtual event
listedbooleannoPublicly listed (default: true)
capacityintegernoMaximum number of attendees

Example

local result = app.integrations.eventbrite.create_event({
  name = "Annual Tech Meetup 2026",
  start_utc = "2026-06-15T18:00:00Z",
  end_utc = "2026-06-15T21:00:00Z",
  currency = "USD",
  timezone = "America/New_York",
  venue_id = "987654321",
  description = "<p>Join us for an evening of tech talks and networking.</p>",
  capacity = 200,
  listed = true
})

print("Created event ID: " .. result.id)

Create an online event

local result = app.integrations.eventbrite.create_event({
  name = "Webinar: AI in Production",
  start_utc = "2026-07-01T14:00:00Z",
  end_utc = "2026-07-01T15:30:00Z",
  currency = "EUR",
  online_event = true,
  summary = "Learn how to deploy AI agents in production environments"
})

update_event

Update an existing event. Only the fields you provide will be changed.

Parameters

NameTypeRequiredDescription
event_idstringyesThe event ID to update
namestringnoNew event title
start_utcstringnoNew start time in UTC
end_utcstringnoNew end time in UTC
descriptionstringnoNew HTML description
summarystringnoNew short summary
timezonestringnoNew timezone
venue_idstringnoNew venue ID
online_eventbooleannoToggle online/in-person
listedbooleannoToggle public listing
statusstringno"live" to publish, "draft" to unpublish
capacityintegernoNew max attendees
currencystringnoNew currency code

Example

-- Publish a draft event
local result = app.integrations.eventbrite.update_event({
  event_id = "123456789",
  status = "live"
})

-- Change venue and capacity
local result = app.integrations.eventbrite.update_event({
  event_id = "123456789",
  venue_id = "111222333",
  capacity = 500
})

list_attendees

List attendees for an event with profile information and ticket details.

Parameters

NameTypeRequiredDescription
event_idstringyesThe Eventbrite event ID
statusstringnoFilter: "attending", "not_attending", or "all" (default: "attending")
pageintegernoPage number (default: 1)
continuationstringnoContinuation token for pagination

Example

local result = app.integrations.eventbrite.list_attendees({
  event_id = "123456789"
})

for _, attendee in ipairs(result.attendees) do
  print(attendee.name .. " — " .. attendee.email .. " — " .. attendee.ticket_class_name)
end
-- Filter to not attending
local result = app.integrations.eventbrite.list_attendees({
  event_id = "123456789",
  status = "not_attending"
})

get_attendee

Get full details for a single attendee.

Parameters

NameTypeRequiredDescription
event_idstringyesThe Eventbrite event ID
attendee_idstringyesThe attendee ID

Example

local result = app.integrations.eventbrite.get_attendee({
  event_id = "123456789",
  attendee_id = "456789012"
})

print(result.profile.first_name)
print(result.profile.email)
print(result.status)
print(result.checked_in)

list_venues

List venues for the configured organization.

Parameters

NameTypeRequiredDescription
pageintegernoPage number (default: 1)
continuationstringnoContinuation token

Example

local result = app.integrations.eventbrite.list_venues({})

for _, venue in ipairs(result.venues) do
  print(venue.name .. " — " .. venue.city .. ", " .. venue.country)
end

create_venue

Create a new venue for events.

Parameters

NameTypeRequiredDescription
namestringyesVenue name
address_1stringyesStreet address
citystringyesCity
countrystringyesTwo-letter country code (US, GB, NL, etc.)
regionstringnoState or region
postal_codestringnoZIP or postal code
latitudestringnoLatitude for map
longitudestringnoLongitude for map
capacityintegernoMaximum capacity

Example

local result = app.integrations.eventbrite.create_venue({
  name = "Grand Ballroom",
  address_1 = "123 Main Street",
  city = "San Francisco",
  region = "California",
  postal_code = "94102",
  country = "US",
  capacity = 500
})

print("Created venue ID: " .. result.id)

get_current_user

Get the currently authenticated Eventbrite user profile.

Parameters

None.

Example

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

print("Logged in as: " .. result.name)
print("Emails: " .. vim.inspect(result.emails))

Multi-Account Usage

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

-- Default account (always works)
app.integrations.eventbrite.list_events({})

-- Explicit default (portable across setups)
app.integrations.eventbrite.default.list_events({})

-- Named accounts
app.integrations.eventbrite.work.list_events({})
app.integrations.eventbrite.personal.list_events({})

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

Raw agent markdown
# Eventbrite — Lua API Reference

## list_events

List events for the configured Eventbrite organization.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `status` | string | no | Filter by status: `live`, `draft`, `started`, `ended`, `completed`, `canceled`, or `all` |
| `order_by` | string | no | Sort order: `start_asc`, `start_desc`, `created_asc`, `created_desc`, `name_asc` |
| `page` | integer | no | Page number for pagination (default: 1) |
| `continuation` | string | no | Continuation token from a previous response |

### Examples

```lua
local result = app.integrations.eventbrite.list_events({
  status = "live",
  order_by = "start_asc"
})

for _, event in ipairs(result.events) do
  print(event.name .. " — " .. event.start)
end
```

```lua
-- Paginate through all events
local result = app.integrations.eventbrite.list_events({
  status = "all",
  page = 2
})
```

---

## get_event

Get full details for a single event by ID.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `event_id` | string | yes | The Eventbrite event ID |

### Example

```lua
local result = app.integrations.eventbrite.get_event({
  event_id = "123456789"
})

print(result.name.text)
print(result.description.html)
print(result.venue.name)
```

---

## create_event

Create a new event on Eventbrite.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | yes | Event title |
| `start_utc` | string | yes | Start time in UTC (ISO 8601, e.g. `"2026-06-15T18:00:00Z"`) |
| `end_utc` | string | yes | End time in UTC (ISO 8601, e.g. `"2026-06-15T21:00:00Z"`) |
| `currency` | string | yes | Three-letter currency code (`USD`, `EUR`, `GBP`, etc.) |
| `description` | string | no | HTML description of the event |
| `summary` | string | no | Short plaintext summary (max 140 chars) |
| `timezone` | string | no | Event timezone (e.g. `"America/New_York"`) |
| `venue_id` | string | no | ID of an existing venue (omit for online events) |
| `online_event` | boolean | no | Set to `true` for a virtual event |
| `listed` | boolean | no | Publicly listed (default: `true`) |
| `capacity` | integer | no | Maximum number of attendees |

### Example

```lua
local result = app.integrations.eventbrite.create_event({
  name = "Annual Tech Meetup 2026",
  start_utc = "2026-06-15T18:00:00Z",
  end_utc = "2026-06-15T21:00:00Z",
  currency = "USD",
  timezone = "America/New_York",
  venue_id = "987654321",
  description = "<p>Join us for an evening of tech talks and networking.</p>",
  capacity = 200,
  listed = true
})

print("Created event ID: " .. result.id)
```

### Create an online event

```lua
local result = app.integrations.eventbrite.create_event({
  name = "Webinar: AI in Production",
  start_utc = "2026-07-01T14:00:00Z",
  end_utc = "2026-07-01T15:30:00Z",
  currency = "EUR",
  online_event = true,
  summary = "Learn how to deploy AI agents in production environments"
})
```

---

## update_event

Update an existing event. Only the fields you provide will be changed.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `event_id` | string | yes | The event ID to update |
| `name` | string | no | New event title |
| `start_utc` | string | no | New start time in UTC |
| `end_utc` | string | no | New end time in UTC |
| `description` | string | no | New HTML description |
| `summary` | string | no | New short summary |
| `timezone` | string | no | New timezone |
| `venue_id` | string | no | New venue ID |
| `online_event` | boolean | no | Toggle online/in-person |
| `listed` | boolean | no | Toggle public listing |
| `status` | string | no | `"live"` to publish, `"draft"` to unpublish |
| `capacity` | integer | no | New max attendees |
| `currency` | string | no | New currency code |

### Example

```lua
-- Publish a draft event
local result = app.integrations.eventbrite.update_event({
  event_id = "123456789",
  status = "live"
})

-- Change venue and capacity
local result = app.integrations.eventbrite.update_event({
  event_id = "123456789",
  venue_id = "111222333",
  capacity = 500
})
```

---

## list_attendees

List attendees for an event with profile information and ticket details.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `event_id` | string | yes | The Eventbrite event ID |
| `status` | string | no | Filter: `"attending"`, `"not_attending"`, or `"all"` (default: `"attending"`) |
| `page` | integer | no | Page number (default: 1) |
| `continuation` | string | no | Continuation token for pagination |

### Example

```lua
local result = app.integrations.eventbrite.list_attendees({
  event_id = "123456789"
})

for _, attendee in ipairs(result.attendees) do
  print(attendee.name .. " — " .. attendee.email .. " — " .. attendee.ticket_class_name)
end
```

```lua
-- Filter to not attending
local result = app.integrations.eventbrite.list_attendees({
  event_id = "123456789",
  status = "not_attending"
})
```

---

## get_attendee

Get full details for a single attendee.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `event_id` | string | yes | The Eventbrite event ID |
| `attendee_id` | string | yes | The attendee ID |

### Example

```lua
local result = app.integrations.eventbrite.get_attendee({
  event_id = "123456789",
  attendee_id = "456789012"
})

print(result.profile.first_name)
print(result.profile.email)
print(result.status)
print(result.checked_in)
```

---

## list_venues

List venues for the configured organization.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `page` | integer | no | Page number (default: 1) |
| `continuation` | string | no | Continuation token |

### Example

```lua
local result = app.integrations.eventbrite.list_venues({})

for _, venue in ipairs(result.venues) do
  print(venue.name .. " — " .. venue.city .. ", " .. venue.country)
end
```

---

## create_venue

Create a new venue for events.

### Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `name` | string | yes | Venue name |
| `address_1` | string | yes | Street address |
| `city` | string | yes | City |
| `country` | string | yes | Two-letter country code (`US`, `GB`, `NL`, etc.) |
| `region` | string | no | State or region |
| `postal_code` | string | no | ZIP or postal code |
| `latitude` | string | no | Latitude for map |
| `longitude` | string | no | Longitude for map |
| `capacity` | integer | no | Maximum capacity |

### Example

```lua
local result = app.integrations.eventbrite.create_venue({
  name = "Grand Ballroom",
  address_1 = "123 Main Street",
  city = "San Francisco",
  region = "California",
  postal_code = "94102",
  country = "US",
  capacity = 500
})

print("Created venue ID: " .. result.id)
```

---

## get_current_user

Get the currently authenticated Eventbrite user profile.

### Parameters

None.

### Example

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

print("Logged in as: " .. result.name)
print("Emails: " .. vim.inspect(result.emails))
```

---

## Multi-Account Usage

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

```lua
-- Default account (always works)
app.integrations.eventbrite.list_events({})

-- Explicit default (portable across setups)
app.integrations.eventbrite.default.list_events({})

-- Named accounts
app.integrations.eventbrite.work.list_events({})
app.integrations.eventbrite.personal.list_events({})
```

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

Metadata-Derived Lua Example

local result = app.integrations.eventbrite.eventbrite_list_events({
  status = "example_status",
  order_by = "example_order_by",
  page = 1,
  continuation = "example_continuation"
})
print(result)

Functions

eventbrite_list_events

List events for the Eventbrite organization. Returns paginated events with name, status, dates, and URL. Filter by status (live, draft, started, ended, completed, canceled) or order results.

Operation
Read read
Full name
eventbrite.eventbrite_list_events
ParameterTypeRequiredDescription
status string no Filter by status: live, draft, started, ended, completed, canceled, or all.
order_by string no Sort order: start_asc, start_desc, created_asc, created_desc, or name_asc.
page integer no Page number for pagination (default: 1).
continuation string no Continuation token from a previous response for cursor-based pagination.

eventbrite_get_event

Get full details for a single Eventbrite event by ID. Returns description, venue, ticket classes, organizer, and all settings.

Operation
Read read
Full name
eventbrite.eventbrite_get_event
ParameterTypeRequiredDescription
event_id string yes The Eventbrite event ID.

eventbrite_create_event

Create a new event on Eventbrite. Provide event name, start/end times, currency, and optionally a venue ID or online event details.

Operation
Write write
Full name
eventbrite.eventbrite_create_event
ParameterTypeRequiredDescription
name string yes The event title.
start_utc string yes Start time in UTC (ISO 8601, e.g. "2026-06-15T18:00:00Z").
end_utc string yes End time in UTC (ISO 8601, e.g. "2026-06-15T21:00:00Z").
currency string yes Three-letter currency code (e.g. "USD", "EUR", "GBP").
description string no HTML description of the event.
summary string no Short plaintext summary (max 140 characters) for search and social.
timezone string no Event timezone (e.g. "America/New_York", "Europe/London"). Defaults to UTC.
venue_id string no ID of an existing venue. Omit for online events.
online_event boolean no Set to true for a virtual/online event.
listed boolean no Whether the event is publicly listed (default: true).
capacity integer no Maximum number of attendees. Omit for unlimited.

eventbrite_update_event

Update an existing Eventbrite event. Only the fields you provide will be changed. Use to change title, times, description, venue, or status.

Operation
Write write
Full name
eventbrite.eventbrite_update_event
ParameterTypeRequiredDescription
event_id string yes The Eventbrite event ID to update.
name string no New event title.
start_utc string no New start time in UTC (ISO 8601).
end_utc string no New end time in UTC (ISO 8601).
description string no New HTML description.
summary string no New short summary (max 140 characters).
timezone string no New timezone (e.g. "America/New_York").
venue_id string no New venue ID.
online_event boolean no Set to true for online, false for in-person.
listed boolean no Whether the event is publicly listed.
status string no Change event status: "live" to publish, "draft" to unpublish.
capacity integer no New maximum number of attendees.
currency string no New three-letter currency code.

eventbrite_list_attendees

List attendees for an Eventbrite event. Returns paginated attendee profiles with name, email, ticket class, and check-in status.

Operation
Read read
Full name
eventbrite.eventbrite_list_attendees
ParameterTypeRequiredDescription
event_id string yes The Eventbrite event ID.
status string no Filter by attendance status: "attending", "not_attending", or "all" (default: "attending").
page integer no Page number for pagination (default: 1).
continuation string no Continuation token from a previous response.

eventbrite_get_attendee

Get full details for a single Eventbrite attendee by event and attendee ID. Includes profile, ticket info, custom answers, and barcode.

Operation
Read read
Full name
eventbrite.eventbrite_get_attendee
ParameterTypeRequiredDescription
event_id string yes The Eventbrite event ID.
attendee_id string yes The attendee ID.

eventbrite_list_venues

List venues for the Eventbrite organization. Returns paginated venues with name, address, city, and capacity.

Operation
Read read
Full name
eventbrite.eventbrite_list_venues
ParameterTypeRequiredDescription
page integer no Page number for pagination (default: 1).
continuation string no Continuation token from a previous response.

eventbrite_create_venue

Create a new venue on Eventbrite. Provide name and address details. Returns the venue ID for use when creating events.

Operation
Write write
Full name
eventbrite.eventbrite_create_venue
ParameterTypeRequiredDescription
name string yes Venue name (e.g. "Convention Center Hall A").
address_1 string yes Street address.
city string yes City name.
region string no State or region.
postal_code string no ZIP or postal code.
country string yes Two-letter country code (e.g. "US", "GB", "NL").
latitude string no Latitude for map pin.
longitude string no Longitude for map pin.
capacity integer no Maximum venue capacity.

eventbrite_get_current_user

Get the currently authenticated Eventbrite user profile. Returns name, email, and organization memberships. Useful for verifying credentials.

Operation
Read read
Full name
eventbrite.eventbrite_get_current_user
ParameterTypeRequiredDescription
No parameters.