Get Calendar Event
curl --request GET \
--url https://api.example.com/v1/calendar/events/{id}import requests
url = "https://api.example.com/v1/calendar/events/{id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/v1/calendar/events/{id}', 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.example.com/v1/calendar/events/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.example.com/v1/calendar/events/{id}"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/v1/calendar/events/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/calendar/events/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"provider": "<string>",
"title": "<string>",
"description": "<string>",
"location": "<string>",
"conference_url": "<string>",
"start_time": "<string>",
"end_time": "<string>",
"all_day": true,
"recurrence_rule": "<string>",
"attendees": [
{
"email": "<string>",
"name": "<string>",
"response_status": "<string>",
"contact_id": "<string>"
}
],
"organizer_email": "<string>",
"contact_ids": [
{}
],
"deal_id": "<string>",
"task_ids": [
{}
],
"status": "<string>",
"created_at": "<string>",
"updated_at": "<string>"
}
}Calendar
Get Calendar Event
Retrieve a single calendar event with the complete attendee list and linked entities
GET
/
v1
/
calendar
/
events
/
{id}
Get Calendar Event
curl --request GET \
--url https://api.example.com/v1/calendar/events/{id}import requests
url = "https://api.example.com/v1/calendar/events/{id}"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.example.com/v1/calendar/events/{id}', 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.example.com/v1/calendar/events/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.example.com/v1/calendar/events/{id}"
req, _ := http.NewRequest("GET", url, nil)
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.example.com/v1/calendar/events/{id}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/calendar/events/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"provider": "<string>",
"title": "<string>",
"description": "<string>",
"location": "<string>",
"conference_url": "<string>",
"start_time": "<string>",
"end_time": "<string>",
"all_day": true,
"recurrence_rule": "<string>",
"attendees": [
{
"email": "<string>",
"name": "<string>",
"response_status": "<string>",
"contact_id": "<string>"
}
],
"organizer_email": "<string>",
"contact_ids": [
{}
],
"deal_id": "<string>",
"task_ids": [
{}
],
"status": "<string>",
"created_at": "<string>",
"updated_at": "<string>"
}
}Request
Path Parameters
string
required
Event identifier returned by
GET /v1/calendar/events.Headers
Authorization: Bearer wbk_your_api_key_here
Response
object
Show properties
Show properties
string
Event identifier
string
google or microsoftstring
Event title
string
Description
string
Location
string
Conference URL
string
ISO 8601 start time
string
ISO 8601 end time
boolean
True for all-day events
string
RFC 5545 RRULE string, if recurring
array
string
Organizer email
array
Linked contact UUIDs
string
Linked deal UUID
array
Linked task UUIDs
string
confirmed, tentative, or cancelledstring
ISO 8601 creation timestamp
string
ISO 8601 update timestamp
X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, and X-Request-ID.
curl https://data.leadlex.com/functions/v1/api-gateway/v1/calendar/events/evt_01HYXYZ123 \
-H "Authorization: Bearer wbk_your_api_key_here"
import requests
API_KEY = "wbk_your_api_key_here"
event_id = "evt_01HYXYZ123"
r = requests.get(
f"https://data.leadlex.com/functions/v1/api-gateway/v1/calendar/events/{event_id}",
headers={"Authorization": f"Bearer {API_KEY}"},
)
event = r.json()["data"]
print(event["title"], "attendees:", len(event["attendees"]))
const eventId = 'evt_01HYXYZ123';
const res = await fetch(
`https://data.leadlex.com/functions/v1/api-gateway/v1/calendar/events/${eventId}`,
{ headers: { Authorization: 'Bearer wbk_your_api_key_here' } },
);
const { data } = await res.json();
console.log(data.title, data.attendees.length);
Example Response
{
"data": {
"id": "evt_01HYXYZ123",
"provider": "google",
"title": "Intro call with Jane Doe",
"description": "Discuss Series B counsel",
"location": "Google Meet",
"conference_url": "https://meet.google.com/abc-defg-hij",
"start_time": "2026-04-18T15:00:00Z",
"end_time": "2026-04-18T15:30:00Z",
"all_day": false,
"recurrence_rule": null,
"attendees": [
{
"email": "jane@acme.com",
"name": "Jane Doe",
"response_status": "accepted",
"contact_id": "123e4567-e89b-12d3-a456-426614174000"
}
],
"organizer_email": "team@emasex.de",
"contact_ids": ["123e4567-e89b-12d3-a456-426614174000"],
"deal_id": null,
"task_ids": [],
"status": "confirmed",
"created_at": "2026-04-10T08:00:00Z",
"updated_at": "2026-04-12T08:00:00Z"
}
}
Errors
| Status | Code | Description |
|---|---|---|
| 401 | invalid_key | Invalid or expired API key |
| 403 | insufficient_permissions | Missing read:calendar permission |
| 404 | not_found | Event not found in this workspace |
| 429 | rate_limited | Rate limit exceeded |