curl --request GET \
--url https://api.1club.ai/v1/platform/events \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.1club.ai/v1/platform/events"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.1club.ai/v1/platform/events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.1club.ai/v1/platform/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.1club.ai/v1/platform/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.1club.ai/v1/platform/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.1club.ai/v1/platform/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 123,
"slug": "<string>",
"title": "<string>",
"summary": "<string>",
"description": {
"blocks": [
{
"type": "paragraph",
"data": {},
"id": "<string>",
"tunes": {}
}
],
"time": 123,
"version": "<string>"
},
"descriptionText": "<string>",
"coverImage": "<string>",
"location": "<string>",
"clubId": 123,
"club": {
"id": 123,
"name": "<string>"
},
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"status": "draft",
"visibility": "Public",
"featured": true,
"bookable": true,
"paymentCollection": "online",
"sports": [
"<string>"
],
"notifyStaff": true,
"translations": {},
"publishedAt": "2023-11-07T05:31:56Z",
"publicUrl": "<string>",
"instructors": [
{
"id": 123,
"name": "<string>"
}
],
"areas": [
{
"id": 123,
"name": "<string>"
}
],
"tickets": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"price": 123,
"capacity": 123,
"revenueAccountId": 123,
"sortOrder": 123,
"translations": {},
"soldCount": 123
}
],
"bookedCount": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"total": 123,
"limit": 123,
"offset": 123
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}List events
Returns the organization’s events - one-off occasions such as an open day, a social or a tournament weekend, sold through tickets - in start order, earliest first.
status is draft (not visible to members), live (published) or cancelled. from and to select the events that overlap the window, so an event already running at from is included. Each accepts an ISO date (2026-05-01, read as midnight UTC) or date-time.
Each event carries bookedCount, its active bookings across all tickets. Who booked is not served here: attendees are personal data, and are reachable through the bookings resource with its own scope.
curl --request GET \
--url https://api.1club.ai/v1/platform/events \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.1club.ai/v1/platform/events"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.1club.ai/v1/platform/events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.1club.ai/v1/platform/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.1club.ai/v1/platform/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.1club.ai/v1/platform/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.1club.ai/v1/platform/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": 123,
"slug": "<string>",
"title": "<string>",
"summary": "<string>",
"description": {
"blocks": [
{
"type": "paragraph",
"data": {},
"id": "<string>",
"tunes": {}
}
],
"time": 123,
"version": "<string>"
},
"descriptionText": "<string>",
"coverImage": "<string>",
"location": "<string>",
"clubId": 123,
"club": {
"id": 123,
"name": "<string>"
},
"startTime": "2023-11-07T05:31:56Z",
"endTime": "2023-11-07T05:31:56Z",
"status": "draft",
"visibility": "Public",
"featured": true,
"bookable": true,
"paymentCollection": "online",
"sports": [
"<string>"
],
"notifyStaff": true,
"translations": {},
"publishedAt": "2023-11-07T05:31:56Z",
"publicUrl": "<string>",
"instructors": [
{
"id": 123,
"name": "<string>"
}
],
"areas": [
{
"id": 123,
"name": "<string>"
}
],
"tickets": [
{
"id": 123,
"name": "<string>",
"description": "<string>",
"price": 123,
"capacity": 123,
"revenueAccountId": 123,
"sortOrder": 123,
"translations": {},
"soldCount": 123
}
],
"bookedCount": 123,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"total": 123,
"limit": 123,
"offset": 123
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}{
"error": "<string>",
"code": "<string>",
"details": {}
}Authorizations
Organization-scoped bearer credential: a customer API key (1club_sk_live_...) or an MCP OAuth access token.
Query Parameters
Only events in this state
draft, live, cancelled Only events at this club (organization-wide events, which name no club, are left out)
Match on title or location
120Only events still running at or after this date or date-time
Only events starting at or before this date or date-time
1 <= x <= 100x >= 0Was this page helpful?