Skip to content

Commit 7f5d55e

Browse files
authored
rename cal_com to cal (#329)
fix #314 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced integration with Cal.com, enabling users to manage schedules directly within the platform. - Added support for creating, viewing, updating, and deleting schedules through a user-friendly interface. - Enhanced scheduling capabilities with customizable settings and public visibility options. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
1 parent 3f13f41 commit 7f5d55e

File tree

2 files changed

+262
-0
lines changed

2 files changed

+262
-0
lines changed

backend/apps/cal/app.json

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"name": "CAL",
3+
"display_name": "Cal.com",
4+
"logo": "https://raw.githubusercontent.com/aipotheosis-labs/aipolabs-icons/refs/heads/main/apps/cal.svg",
5+
"provider": "Cal.com, Inc.",
6+
"version": "aipolabs_0.0.1",
7+
"description": "Cal.com is a fully customizable scheduling platform that enables individuals and teams to automate meeting bookings, manage availability, and integrate with popular calendar and productivity tools. With Cal.com, users can streamline appointment scheduling, avoid double bookings, and enhance collaboration through flexible, privacy-focused solutions.",
8+
"security_schemes": {
9+
"api_key": {
10+
"location": "query",
11+
"name": "apiKey",
12+
"prefix": null
13+
}
14+
},
15+
"default_security_credentials_by_scheme": {},
16+
"categories": [
17+
"scheduling",
18+
"meet"
19+
],
20+
"visibility": "public",
21+
"active": true
22+
}

backend/apps/cal/functions.json

+240
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,240 @@
1+
[
2+
{
3+
"name": "CAL__GET_SCHEDULES",
4+
"description": "Retrieves a list of schedules from Cal.com",
5+
"tags": [
6+
"cal.com",
7+
"schedules"
8+
],
9+
"visibility": "public",
10+
"active": true,
11+
"protocol": "rest",
12+
"protocol_data": {
13+
"method": "GET",
14+
"path": "/v1/schedules",
15+
"server_url": "https://api.cal.com"
16+
},
17+
"parameters": {
18+
"type": "object",
19+
"properties": {},
20+
"required": [],
21+
"visible": [],
22+
"additionalProperties": false
23+
}
24+
},
25+
{
26+
"name": "CAL__CREATE_SCHEDULE",
27+
"description": "Create a new schedule in Cal.com",
28+
"tags": [
29+
"cal.com",
30+
"scheduling",
31+
"availability"
32+
],
33+
"visibility": "public",
34+
"active": true,
35+
"protocol": "rest",
36+
"protocol_data": {
37+
"method": "POST",
38+
"path": "/v1/schedules",
39+
"server_url": "https://api.cal.com",
40+
"content_type": "application/json"
41+
},
42+
"parameters": {
43+
"type": "object",
44+
"properties": {
45+
"body": {
46+
"type": "object",
47+
"properties": {
48+
"name": {
49+
"type": "string",
50+
"description": "Name of the schedule"
51+
},
52+
"timeZone": {
53+
"type": "string",
54+
"description": "Timezone for the schedule",
55+
"example": "Asia/Shanghai"
56+
}
57+
},
58+
"required": [
59+
"name",
60+
"timeZone"
61+
],
62+
"visible": [
63+
"name",
64+
"timeZone"
65+
],
66+
"additionalProperties": false
67+
}
68+
},
69+
"required": [
70+
"body"
71+
],
72+
"visible": [
73+
"body"
74+
],
75+
"additionalProperties": false
76+
}
77+
},
78+
{
79+
"name": "CAL__GET_SCHEDULE",
80+
"description": "Retrieve a specific schedule from Cal.com by ID",
81+
"tags": [
82+
"cal.com",
83+
"scheduling",
84+
"availability"
85+
],
86+
"visibility": "public",
87+
"active": true,
88+
"protocol": "rest",
89+
"protocol_data": {
90+
"method": "GET",
91+
"path": "/v1/schedules/{schedule_id}",
92+
"server_url": "https://api.cal.com"
93+
},
94+
"parameters": {
95+
"type": "object",
96+
"properties": {
97+
"path": {
98+
"type": "object",
99+
"properties": {
100+
"schedule_id": {
101+
"type": "string",
102+
"description": "ID of the schedule to retrieve",
103+
"example": "613135"
104+
}
105+
},
106+
"required": [
107+
"schedule_id"
108+
],
109+
"visible": [
110+
"schedule_id"
111+
],
112+
"additionalProperties": false
113+
}
114+
},
115+
"required": [
116+
"path"
117+
],
118+
"visible": [
119+
"path"
120+
],
121+
"additionalProperties": false
122+
}
123+
},
124+
{
125+
"name": "CAL__UPDATE_SCHEDULE",
126+
"description": "Update an existing schedule in Cal.com",
127+
"tags": [
128+
"cal.com",
129+
"scheduling",
130+
"update"
131+
],
132+
"visibility": "public",
133+
"active": true,
134+
"protocol": "rest",
135+
"protocol_data": {
136+
"method": "PATCH",
137+
"path": "/v1/schedules/{schedule_id}",
138+
"server_url": "https://api.cal.com",
139+
"content_type": "application/json"
140+
},
141+
"parameters": {
142+
"type": "object",
143+
"properties": {
144+
"path": {
145+
"type": "object",
146+
"properties": {
147+
"schedule_id": {
148+
"type": "string",
149+
"description": "ID of the schedule to update",
150+
"example": "613135"
151+
}
152+
},
153+
"required": [
154+
"schedule_id"
155+
],
156+
"visible": [
157+
"schedule_id"
158+
],
159+
"additionalProperties": false
160+
},
161+
"body": {
162+
"type": "object",
163+
"properties": {
164+
"name": {
165+
"type": "string",
166+
"description": "Updated name for the schedule",
167+
"example": "date1"
168+
},
169+
"timeZone": {
170+
"type": "string",
171+
"description": "Updated timezone in IANA format",
172+
"example": "Asia/Shanghai"
173+
}
174+
},
175+
"required": [],
176+
"visible": [
177+
"name",
178+
"timeZone"
179+
],
180+
"additionalProperties": false
181+
}
182+
},
183+
"required": [
184+
"path",
185+
"body"
186+
],
187+
"visible": [
188+
"path",
189+
"body"
190+
],
191+
"additionalProperties": false
192+
}
193+
},
194+
{
195+
"name": "CAL__DELETE_SCHEDULE",
196+
"description": "Delete a specific schedule from Cal.com by ID",
197+
"tags": [
198+
"cal.com",
199+
"scheduling",
200+
"delete"
201+
],
202+
"visibility": "public",
203+
"active": true,
204+
"protocol": "rest",
205+
"protocol_data": {
206+
"method": "DELETE",
207+
"path": "/v1/schedules/{schedule_id}",
208+
"server_url": "https://api.cal.com"
209+
},
210+
"parameters": {
211+
"type": "object",
212+
"properties": {
213+
"path": {
214+
"type": "object",
215+
"properties": {
216+
"schedule_id": {
217+
"type": "string",
218+
"description": "ID of the schedule to delete",
219+
"example": "613135"
220+
}
221+
},
222+
"required": [
223+
"schedule_id"
224+
],
225+
"visible": [
226+
"schedule_id"
227+
],
228+
"additionalProperties": false
229+
}
230+
},
231+
"required": [
232+
"path"
233+
],
234+
"visible": [
235+
"path"
236+
],
237+
"additionalProperties": false
238+
}
239+
}
240+
]

0 commit comments

Comments
 (0)