Mavy - Personal AI Executive Assistant
Mavy - Personal AI Executive Assistant · GPT Actions
Mavex AI Calendar API
API endpoint for calendar management and scheduling via conversation.
POST /api/gpts/eventCreate EventCreate an event in this user's calendar.
GET /api/gpts/userinfoGet Basic User InfoGet basic user information like name and email
POST /api/gpts/events/allGet Calendar EventsGet a list of calendar events.
PUT /api/gpts/event/{event_id}Update EventUpdate event details by event_id.
DELETE /api/gpts/event/{event_id}Delete EventDelete an event by event_id.
POST /api/gpts/freeslotsGet Free Time SlotsGet free time slots for the given user.
POST /api/gpts/emailSend Email on Behalf of UserSend an email to receipient from mavy@mavex.ai on user's behalf
原始 API 定义
{
"openapi": "3.1.0",
"info": {
"title": "Mavex AI Calendar API",
"description": "API endpoint for calendar management and scheduling via conversation.",
"version": "0.0.1"
},
"servers": [
{
"url": "https://api.mavex.ai",
"description": "Mavex.ai API for Mavy."
}
],
"paths": {
"/api/gpts/event": {
"post": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Create Event",
"description": "Create an event in this user's calendar.",
"operationId": "create_event_api_gpts_event_post",
"x-openai-isConsequential": false,
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CalendarEvent"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/api/gpts/userinfo": {
"get": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Get Basic User Info",
"description": "Get basic user information like name and email",
"operationId": "get_basic_user_info_api_gpts_userinfo_get",
"x-openai-isConsequential": false,
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
}
}
}
},
"/api/gpts/events/all": {
"post": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Get Calendar Events",
"description": "Get a list of calendar events.",
"operationId": "get_calendar_events_api_gpts_events_all_post",
"x-openai-isConsequential": false,
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/EventListParams"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/api/gpts/event/{event_id}": {
"put": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Update Event",
"description": "Update event details by event_id.",
"operationId": "update_event_api_gpts_event__event_id__put",
"x-openai-isConsequential": false,
"parameters": [
{
"name": "event_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"title": "Event Id"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatedEvent"
}
}
}
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
},
"delete": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Delete Event",
"description": "Delete an event by event_id.",
"operationId": "delete_event_api_gpts_event__event_id__delete",
"x-openai-isConsequential": true,
"parameters": [
{
"name": "event_id",
"in": "path",
"required": true,
"schema": {
"type": "string",
"title": "Event Id"
}
}
],
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/api/gpts/freeslots": {
"post": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Get Free Time Slots",
"description": "Get free time slots for the given user.",
"operationId": "get_free_time_slots_api_gpts_freeslots_post",
"x-openai-isConsequential": true,
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FreeSlotsDetails"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/api/gpts/email": {
"post": {
"tags": [
"GPTs",
"OpenAI"
],
"summary": "Send Email on Behalf of User",
"description": "Send an email to receipient from mavy@mavex.ai on user's behalf",
"operationId": "send_email_api_gpts_email_post",
"x-openai-isConsequential": true,
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Email"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"Email": {
"properties": {
"to": {
"type": "string",
"title": "To"
},
"subject": {
"type": "string",
"title": "Subject"
},
"body": {
"type": "string",
"title": "Body"
}
},
"type": "object",
"required": [
"to",
"subject",
"body"
],
"title": "Email",
"description": "Model for email to be sent."
},
"CalendarEvent": {
"properties": {
"start": {
"type": "string",
"format": "date-time",
"title": "Start"
},
"end": {
"type": "string",
"format": "date-time",
"title": "End"
},
"summary": {
"type": "string",
"title": "Summary"
},
"attendees": {
"items": {
"type": "string"
},
"type": "array",
"title": "Attendees"
},
"description": {
"type": "string",
"title": "Description",
"default": "Scheduled by <a href='https://mavex.ai'>Mavy</a>."
}
},
"type": "object",
"required": [
"start",
"end",
"summary",
"attendees"
],
"title": "CalendarEvent",
"description": "Model for new event scheduling."
},
"EventListParams": {
"properties": {
"range_start": {
"type": "string",
"format": "date-time",
"title": "Range Start"
},
"range_end": {
"type": "string",
"format": "date-time",
"title": "Range End"
},
"n_events": {
"type": "integer",
"title": "N Events",
"default": 10
},
"query_string": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Query String"
}
},
"type": "object",
"required": [
"range_start",
"range_end"
],
"title": "EventListParams"
},
"FreeSlotsDetails": {
"properties": {
"range_start": {
"type": "string",
"format": "date-time",
"title": "Range Start"
},
"range_end": {
"type": "string",
"format": "date-time",
"title": "Range End"
},
"duration_minutes": {
"type": "integer",
"title": "Duration Minutes",
"default": 30
},
"n_slots": {
"type": "integer",
"title": "N Slots",
"default": 3
}
},
"type": "object",
"required": [
"range_start",
"range_end"
],
"title": "FreeSlotsDetails"
},
"HTTPValidationError": {
"properties": {
"detail": {
"items": {
"$ref": "#/components/schemas/ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
},
"UpdatedEvent": {
"properties": {
"summary": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Summary"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Description"
},
"start": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "Start"
},
"end": {
"anyOf": [
{
"type": "string",
"format": "date-time"
},
{
"type": "null"
}
],
"title": "End"
},
"attendees": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"title": "Attendees"
}
},
"type": "object",
"required": [
"event_id"
],
"title": "UpdatedEvent",
"description": "Model for updating event details."
},
"ValidationError": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
}
}
}
}