Get a Scheduling Page
Retrieve a single scheduling page by UUID, including its profile, custom invitee questions, duration, and configuration.
curl --request GET \
--url https://api.zeeg.me/v2/event-types/{uuid} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.zeeg.me/v2/event-types/{uuid}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zeeg.me/v2/event-types/{uuid}', 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.zeeg.me/v2/event-types/{uuid}",
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.zeeg.me/v2/event-types/{uuid}"
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.zeeg.me/v2/event-types/{uuid}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeeg.me/v2/event-types/{uuid}")
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{
"resource": {
"uri": "https://api.zeeg.me/v2/event-types/80f46bf5-eb01-4c07-960e-a9a3e18aae5e",
"uuid": "80f46bf5-eb01-4c07-960e-a9a3e18aae5e",
"title": "30-Minute Discovery Call",
"type": "ONE_ON_ONE",
"slug": "30min-discovery-call",
"schedulingUrl": "https://zeeg.me/lena-meier/30min-discovery-call",
"isActive": true,
"duration": 30,
"eventDurations": [
{
"minutes": 30,
"default": true
}
],
"profile": {
"type": "User",
"firstName": "Lena",
"lastName": "Meier",
"slug": "lena-meier",
"url": "https://zeeg.me/lena-meier",
"avatarUrl": null,
"email": "lena.meier@horizondigital.de"
},
"description": "<p>Let's connect for a quick 30-minute discovery call to explore how we can help your business grow.</p>",
"color": "2196f3",
"maxActiveInvitees": 1,
"inviteeNameFormat": "FULL_NAME",
"inviteePhoneNumber": false,
"inviteeQuestions": [
{
"id": 1,
"order": 1,
"question": "What would you like to discuss?",
"isActive": true,
"isRequired": true,
"type": "TEXT_INPUT",
"options": null
}
],
"availabilityType": "shared",
"schedule": {
"uri": "https://api.zeeg.me/v2/schedules/Q1ZYo391da",
"uuid": "Q1ZYo391da",
"title": "Working hours",
"timezone": "Europe/Berlin",
"weeklyHours": [
{
"day": "Mon",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Tue",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Wed",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Thu",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Fri",
"timesets": [
[
"09:00",
"17:00"
]
]
}
],
"specialHours": []
},
"hosts": [],
"notifications": {
"inviteeConfirmation": "email",
"addEventLinkNotif": true,
"bccEmails": null,
"excludePII": false,
"excludeHostEmails": false,
"privateCalendarEvent": false,
"defaultNotifications": {},
"customNotifications": {},
"notificationVariables": []
},
"currentTime": "2026-03-23T10:00:00.000000Z",
"isSecret": false
}
}Authorizations
Path Parameters
UUID of a specific scheduling page
Response
OK
A scheduling page (event type) with full details, as returned when fetching a single scheduling page. Extends the list shape with hosts, notifications, and Flexi configuration.
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Numeric ID of the question, used when submitting answers via the booking API.
Where the availability schedule for this scheduling page lives. shared — one schedule is set on the page itself and applies to everyone; see schedule. per_host — each host has their own schedule for this page (COLLECTIVE / ROUND_ROBIN); the per-host schedules are returned on the single-page endpoint in hosts[].schedule.
shared, per_host The page-level availability schedule shared by all hosts, inlined with full hours (the list endpoint returns a reference only). Only populated when availabilityType is shared.
Hide child attributes
Hide child attributes
API resource URI for this schedule
"https://api.zeeg.me/v2/schedules/Q1ZYo391da"
Schedule identifier
"Q1ZYo391da"
Display name of the schedule
IANA timezone identifier
Weekly recurring availability hours
Notification settings for this scheduling page, including invitee email behaviour, host email behaviour and the templates used by the dashboard UI.
Hide child attributes
Hide child attributes
How the invitee is notified once a booking is confirmed. calendar_invitation sends a calendar invite from the host's connected calendar, email sends a Zeeg confirmation email, none sends nothing.
calendar_invitation, email, none When true, invitee notification emails include a link to the event detail page.
Up to three email addresses that are BCC'd on invitee notification emails. Business-plan feature; null or an empty array when unused.
3When true, host notification emails omit the invitee's personal information.
When true, hosts do not receive confirmation, update or cancellation emails for events booked on this scheduling page.
When true, the calendar event synced to the host's connected calendar (Google, Microsoft or Exchange) is marked as private, so people with access to the host's calendar see only the busy time and not the subject, attendees or location.
Pre-filled default templates (subject, body and available variables) for invitee-facing emails, keyed by notification type. Primarily consumed by the dashboard UI.
Customized template overrides (subject and body), keyed by notification type. Only populated for notification types the user has customized.
Assigned hosts for the scheduling page. Populated for ONE_ON_ONE, GROUP, ROUND_ROBIN and COLLECTIVE pages. For FLEXI pages this array is empty; see flexiCollections instead.
Hide child attributes
Hide child attributes
Stable identifier of the host user.
Round-robin priority weighting, when applicable.
The availability schedule this host uses for this scheduling page, inlined. Only populated when availabilityType is per_host; null when the page uses a shared schedule (see the top-level schedule).
Hide child attributes
Hide child attributes
API resource URI for this schedule
"https://api.zeeg.me/v2/schedules/Q1ZYo391da"
Schedule identifier
"Q1ZYo391da"
Display name of the schedule
IANA timezone identifier
Weekly recurring availability hours
Whether this is the host's default schedule, or one dedicated to this page.
Host collections for FLEXI scheduling pages. Empty for all other page types.
Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
Current server time
curl --request GET \
--url https://api.zeeg.me/v2/event-types/{uuid} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.zeeg.me/v2/event-types/{uuid}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.zeeg.me/v2/event-types/{uuid}', 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.zeeg.me/v2/event-types/{uuid}",
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.zeeg.me/v2/event-types/{uuid}"
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.zeeg.me/v2/event-types/{uuid}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.zeeg.me/v2/event-types/{uuid}")
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{
"resource": {
"uri": "https://api.zeeg.me/v2/event-types/80f46bf5-eb01-4c07-960e-a9a3e18aae5e",
"uuid": "80f46bf5-eb01-4c07-960e-a9a3e18aae5e",
"title": "30-Minute Discovery Call",
"type": "ONE_ON_ONE",
"slug": "30min-discovery-call",
"schedulingUrl": "https://zeeg.me/lena-meier/30min-discovery-call",
"isActive": true,
"duration": 30,
"eventDurations": [
{
"minutes": 30,
"default": true
}
],
"profile": {
"type": "User",
"firstName": "Lena",
"lastName": "Meier",
"slug": "lena-meier",
"url": "https://zeeg.me/lena-meier",
"avatarUrl": null,
"email": "lena.meier@horizondigital.de"
},
"description": "<p>Let's connect for a quick 30-minute discovery call to explore how we can help your business grow.</p>",
"color": "2196f3",
"maxActiveInvitees": 1,
"inviteeNameFormat": "FULL_NAME",
"inviteePhoneNumber": false,
"inviteeQuestions": [
{
"id": 1,
"order": 1,
"question": "What would you like to discuss?",
"isActive": true,
"isRequired": true,
"type": "TEXT_INPUT",
"options": null
}
],
"availabilityType": "shared",
"schedule": {
"uri": "https://api.zeeg.me/v2/schedules/Q1ZYo391da",
"uuid": "Q1ZYo391da",
"title": "Working hours",
"timezone": "Europe/Berlin",
"weeklyHours": [
{
"day": "Mon",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Tue",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Wed",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Thu",
"timesets": [
[
"09:00",
"17:00"
]
]
},
{
"day": "Fri",
"timesets": [
[
"09:00",
"17:00"
]
]
}
],
"specialHours": []
},
"hosts": [],
"notifications": {
"inviteeConfirmation": "email",
"addEventLinkNotif": true,
"bccEmails": null,
"excludePII": false,
"excludeHostEmails": false,
"privateCalendarEvent": false,
"defaultNotifications": {},
"customNotifications": {},
"notificationVariables": []
},
"currentTime": "2026-03-23T10:00:00.000000Z",
"isSecret": false
}
}