Get User Profile
Retrieve a user’s public scheduling profile, including their available event types, branding, and profile information.
Endpoint
GET /api/public/scheduling/{userSlug}Authentication: None required
Path Parameters
| Parameter | Type | Description |
|---|---|---|
userSlug | string | The user’s unique URL slug |
Response
Returns 200 OK with the user’s public profile.
{
"eventTypes": [
{
"id": "evt_abc123",
"name": "30 Minute Call",
"slug": "30min-call",
"description": "A quick 30-minute introductory call.",
"color": "#4F46E5",
"duration": 30,
"locationType": "GoogleMeet",
"isActive": true,
"sortOrder": 0
}
],
"hideProstayBranding": false,
"branding": {
"primaryColor": "#4F46E5",
"accentColor": "#6366F1",
"logoUrl": "https://storage.proximity.io/logos/acme.png",
"faviconUrl": null,
"bannerUrl": null
},
"hostProfile": {
"name": "Jane Doe",
"avatarUrl": "https://storage.proximity.io/avatars/jane.jpg",
"bio": "Product Manager at Acme Inc.",
"welcomeMessage": "Pick a time that works for you!",
"bannerUrl": null
}
}Response Fields
eventTypes[]
| Field | Type | Description |
|---|---|---|
id | string | Unique event type identifier |
name | string | Display name |
slug | string | URL-safe slug used in API paths |
description | string | null | Description shown on the booking page |
color | string | Hex color for UI display |
duration | number | Meeting duration in minutes |
locationType | string | GoogleMeet, Zoom, MicrosoftTeams, Phone, InPerson, Custom |
isActive | boolean | Whether the event type accepts bookings |
sortOrder | number | Display order |
branding
| Field | Type | Description |
|---|---|---|
primaryColor | string | Primary brand color (hex) |
accentColor | string | Accent color (hex) |
logoUrl | string | null | Organization logo URL |
faviconUrl | string | null | Favicon URL |
bannerUrl | string | null | Banner image URL |
hostProfile
| Field | Type | Description |
|---|---|---|
name | string | Host’s display name |
avatarUrl | string | null | Profile photo URL |
bio | string | null | Short biography |
welcomeMessage | string | null | Welcome message shown on the booking page |
Errors
| Status | Description |
|---|---|
404 | User with the given slug was not found |
Code Examples
cURL
curl https://app.proximity.io/api/public/scheduling/jane-doeJavaScript
const response = await fetch(
'https://app.proximity.io/api/public/scheduling/jane-doe'
);
const profile = await response.json();
console.log(profile.hostProfile.name);
profile.eventTypes.forEach(evt => {
console.log(`${evt.name} (${evt.duration} min) — ${evt.slug}`);
});Python
import requests
response = requests.get(
"https://app.proximity.io/api/public/scheduling/jane-doe"
)
profile = response.json()
print(profile["hostProfile"]["name"])
for evt in profile["eventTypes"]:
print(f"{evt['name']} ({evt['duration']} min) — {evt['slug']}")Last updated on