Events
List events
Retrieve a paginated list of events for the company associated with the API key.
Authorization
x-kommunity-api-key
<token>API key for authentication.
In: header
Query Parameters
limit
integerNumber of events to return per page
Default:
10
Minimum: 1
offset
integerNumber of events to skip for pagination
Default:
0
Minimum: 0
Response Body
Successfully retrieved events
success
RequiredbooleanIndicates if the API call was successful
data
Requiredobjectexport interface Response {
/**
* Indicates if the API call was successful
*/
success: boolean;
data: {
/**
* List of events matching the query
*/
events: Event[];
/**
* Pagination information
*/
pagination: {
/**
* Total number of events available
*/
total: number;
/**
* Number of events per page
*/
limit: number;
/**
* Number of events skipped
*/
offset: number;
/**
* Whether there are more events available
*/
hasMore: boolean;
};
};
}
export interface Event {
/**
* Name of the event
*/
name: string;
/**
* Detailed description of the event in HTML format
*/
description: string;
/**
* Primary category the event belongs to
*/
category: string;
/**
* Subcategory for more specific event classification
*/
subcategory: string;
/**
* Maximum number of attendees allowed (null means no limit)
*/
attendeeLimit?: number | null;
/**
* Country where the event takes place (required for in-person events)
*/
country?: string | null;
/**
* Street address (required for in-person events)
*/
street?: string | null;
/**
* City (required for in-person events)
*/
city?: string | null;
/**
* State or province (required for in-person events)
*/
state?: string | null;
/**
* Postal/ZIP code (required for in-person events)
*/
zipCode?: string | null;
/**
* URL to the event image. Must be a URL from Kommunity's CDN (cdn.kommunity.app). See [Image Upload Process](/docs/image-upload) for details.
*/
eventImg?: string | null;
/**
* Event start time in ISO 8601 format, must be in UTC
*/
startTime: string;
/**
* Event end time in ISO 8601 format, must be in UTC and after startTime
*/
endTime: string;
/**
* Timezone identifier for the event (e.g., 'America/New_York')
*/
timezone: string;
/**
* List of tickets available for the event (empty array means the event is free)
*/
tickets?: {
/**
* Unique identifier for the ticket (optional, will be auto-generated if not provided)
*/
id?: string;
/**
* Name of the ticket type
*/
name: string;
/**
* Price of the ticket in the default currency
*/
price: number;
}[];
/**
* URL for joining online events (required for online events)
*/
joinUrl?: string | null;
/**
* Custom questions for attendees to answer when registering (maximum 3 questions)
*
* @maxItems 3
*/
questions?:
| []
| [
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
}
]
| [
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
},
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
}
]
| [
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
},
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
},
{
/**
* The question text
*/
question: string;
/**
* Whether answering this question is required
*/
required?: boolean;
}
];
/**
* Cross-posting configuration to other event platforms. Cross-posting must be specified at event creation as it cannot be configured after the event is created. Should be `null` if event has tickets.
*/
crossPost?: {
/**
* Whether to cross-post to Luma
*/
luma?: boolean;
/**
* Whether to cross-post to Eventbrite
*/
eventbrite?: boolean;
/**
* Whether to cross-post to Meetup
*/
meetup?: boolean;
};
}
curl -X GET "/api/v1/events?limit=10&offset=0" \
-H "x-kommunity-api-key: <token>"
{
"success": true,
"data": {
"events": [
{
"name": "string",
"description": "string",
"category": "string",
"subcategory": "string",
"attendeeLimit": 1,
"country": "string",
"street": "string",
"city": "string",
"state": "string",
"zipCode": "string",
"eventImg": "string",
"startTime": "string",
"endTime": "string",
"timezone": "string",
"tickets": [
{
"id": "string",
"name": "string",
"price": 0
}
],
"joinUrl": "http://example.com",
"questions": [
{
"question": "string",
"required": false
},
{
"question": "string",
"required": false
},
{
"question": "string",
"required": false
}
],
"crossPost": {
"luma": false,
"eventbrite": false,
"meetup": false
}
}
],
"pagination": {
"total": 0,
"limit": 0,
"offset": 0,
"hasMore": true
}
}
}