집수리 블로그 도우미

집수리 블로그 도우미 · GPT-Aktionen

Superface Hub

  • POST /api/hub/sessionsuperface_hub_configuration

    Get link with tools list and configurations

  • POST /api/hub/perform/calendar-management__add-conference-link__AddConferenceLinkcalendar-management__add-conference-link__AddConferenceLink

    Creates Google Meet link and updates an existing event in Google Calendar.

  • POST /api/hub/perform/calendar-management__create-event__InsertEventcalendar-management__create-event__InsertEvent

    Creates a new event in the specified calendar based on provided details.

  • POST /api/hub/perform/calendar-management__delete-event__DeleteEventcalendar-management__delete-event__DeleteEvent

    Deletes an event in Google Calendar.

  • POST /api/hub/perform/calendar-management__find-calendar__CalendarSearchcalendar-management__find-calendar__CalendarSearch

    Search for calendars by name or ID in the user's list of Google Calendars. The result will be a list of calendars whose names include the search term, or a single calendar whose ID matches the search term exactly. You can use search term 'primary' to find the user's primary calendar.

  • POST /api/hub/perform/calendar-management__get-event__RetrieveEventcalendar-management__get-event__RetrieveEvent

    Returns an event based on its Google Calendar ID.

  • POST /api/hub/perform/calendar-management__list-calendars__ListUserCalendarscalendar-management__list-calendars__ListUserCalendars

    Retrieve the list of calendars from the user's calendar list using the Google Calendar API.

  • POST /api/hub/perform/calendar-management__list-events__ListCalendarEventscalendar-management__list-events__ListCalendarEvents

    Returns events on the specified calendar. Inform the user that there are move events if nextPageToken is present in the result. Instead of printing the event ID to the user, prefer to print the event summary.

  • POST /api/hub/perform/calendar-management__update-event__UpdateEventcalendar-management__update-event__UpdateEvent

    Updates an existing event in Google Calendar based on its Google Calendar ID.

  • POST /api/hub/perform/gmail__send-message__SendMessagegmail__send-message__SendMessage

    Sending the message.

  • POST /api/hub/perform/google-drive__create-file__CreateFilegoogle-drive__create-file__CreateFile

    Creates a new file and supports uploading media with specified MIME types. Maximum file size: 5 MB, Accepted Media MIME types: */*. Note: Specify a valid MIME type, rather than the literal */* value.

  • POST /api/hub/perform/google-sheets__add-column__AddColumngoogle-sheets__add-column__AddColumn

    Updates next empty column in specified spreadsheet sheet, returns updated sheet

  • POST /api/hub/perform/google-sheets__add-row__AddRowgoogle-sheets__add-row__AddRow

    Updates next empty row in specified spreadsheet sheet, returns updated sheet

  • POST /api/hub/perform/google-sheets__append-rows__AppendRowsgoogle-sheets__append-rows__AppendRows

    Updates next empty rows in specified spreadsheet sheet.

  • POST /api/hub/perform/google-sheets__find-rows__FindRowsgoogle-sheets__find-rows__FindRows

    Fetches the specified sheet rows within spreadsheet, filters the rows by specified column values.

  • POST /api/hub/perform/google-sheets__get-spreadsheet__RetrieveSpreadsheetgoogle-sheets__get-spreadsheet__RetrieveSpreadsheet

    Fetches the specified spreadsheet, with optional grid data inclusion.

  • POST /api/hub/perform/google-sheets__post-sheets__CreateSheetgoogle-sheets__post-sheets__CreateSheet

    Creates a new sheet in specified (existing) spreadsheet and returns the created sheet data.

  • POST /api/hub/perform/google-sheets__post-spreadsheets__CreateSpreadsheetgoogle-sheets__post-spreadsheets__CreateSpreadsheet

    Creates a new spreadsheet and returns the created spreadsheet.

  • POST /api/hub/perform/google-sheets__put-spreadsheets__UpdateSpreadsheetgoogle-sheets__put-spreadsheets__UpdateSpreadsheet

    Updates specified spreadsheet sheet, returns updated sheet. Use the `get-spreadsheet` usecase to get the current data. Rows and columns are indexed from 0. The data is written to the sheet starting from the cell specified by updatePosition input.

Ursprüngliches API-Schema
{
  "openapi": "3.1.0",
  "info": {
    "version": "1.0.0",
    "title": "Superface Hub"
  },
  "security": [
    {
      "bearer_token": []
    }
  ],
  "paths": {
    "/api/hub/session": {
      "post": {
        "operationId": "superface_hub_configuration",
        "description": "Get link with tools list and configurations",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool configuration response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__add-conference-link__AddConferenceLink": {
      "post": {
        "operationId": "calendar-management__add-conference-link__AddConferenceLink",
        "description": "Creates Google Meet link and updates an existing event in Google Calendar.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId",
                  "eventId",
                  "conferenceSolutionType"
                ],
                "properties": {
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use 'primary' for the primary calendar of the currently logged in user."
                  },
                  "eventId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Event identifier."
                  },
                  "conferenceSolutionType": {
                    "enum": [
                      "hangoutsMeet"
                    ],
                    "title": "Which conference solution to use for the event. The conference solution type has to be supported by the calendar."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__create-event__InsertEvent": {
      "post": {
        "operationId": "calendar-management__create-event__InsertEvent",
        "description": "Creates a new event in the specified calendar based on provided details.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId",
                  "event"
                ],
                "properties": {
                  "maxAttendees": {
                    "type": "number",
                    "nullable": false,
                    "title": "The maximum number of attendees to include in the response."
                  },
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use the 'primary' keyword for the primary calendar of the currently logged in user."
                  },
                  "event": {
                    "type": "object",
                    "required": [
                      "description",
                      "name",
                      "start",
                      "end",
                      "attendees"
                    ],
                    "properties": {
                      "description": {
                        "type": "string",
                        "nullable": false
                      },
                      "name": {
                        "type": "string",
                        "nullable": false
                      },
                      "location": {
                        "type": "string",
                        "nullable": false
                      },
                      "start": {
                        "type": "object",
                        "required": [
                          "dateTime"
                        ],
                        "properties": {
                          "dateTime": {
                            "type": "string",
                            "nullable": false,
                            "title": "Start date time of the event."
                          }
                        },
                        "nullable": false
                      },
                      "end": {
                        "type": "object",
                        "required": [
                          "dateTime"
                        ],
                        "properties": {
                          "dateTime": {
                            "type": "string",
                            "nullable": false,
                            "title": "Start date time of the event."
                          }
                        },
                        "nullable": false
                      },
                      "attendees": {
                        "items": {
                          "type": "object",
                          "required": [
                            "email",
                            "displayName",
                            "optional"
                          ],
                          "properties": {
                            "email": {
                              "type": "string",
                              "nullable": false
                            },
                            "displayName": {
                              "type": "string",
                              "nullable": false
                            },
                            "optional": {
                              "type": "boolean",
                              "nullable": false
                            }
                          },
                          "nullable": false
                        },
                        "type": "array",
                        "nullable": false
                      },
                      "conferenceSolutionType": {
                        "enum": [
                          "hangoutsMeet",
                          "none"
                        ],
                        "title": "Which conferencing solution to use for the event. Use none if no conference link is to be created. The default is none. The conference solution type has to be supported by the calendar."
                      },
                      "sendUpdates": {
                        "enum": [
                          "all",
                          "externalOnly",
                          "none"
                        ],
                        "description": "Warning: Using the value none can have significant adverse effects, including events not syncing to external calendars or events being lost altogether for some users. For calendar migration tasks, consider using the events.import method instead.",
                        "title": "Whether to send notifications about the creation of the new event. Note that some emails might still be sent. The default is all."
                      }
                    },
                    "nullable": false,
                    "title": "Event object containing event details."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__delete-event__DeleteEvent": {
      "post": {
        "operationId": "calendar-management__delete-event__DeleteEvent",
        "description": "Deletes an event in Google Calendar.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId",
                  "eventId"
                ],
                "properties": {
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use 'primary' for the primary calendar of the currently logged in user."
                  },
                  "eventId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Event identifier."
                  },
                  "sendUpdates": {
                    "enum": [
                      "all",
                      "externalOnly",
                      "none"
                    ],
                    "title": "Guests who should receive notifications about the deletion of the event."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__find-calendar__CalendarSearch": {
      "post": {
        "operationId": "calendar-management__find-calendar__CalendarSearch",
        "description": "Search for calendars by name or ID in the user's list of Google Calendars. The result will be a list of calendars whose names include the search term, or a single calendar whose ID matches the search term exactly. You can use search term 'primary' to find the user's primary calendar.\n",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "searchTerm": {
                    "type": "string",
                    "nullable": false,
                    "title": "The name or ID of the calendar to search for. This value is used to match against the calendar's name or ID. You ca use search term 'primary' to find the user's primary calendar."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__get-event__RetrieveEvent": {
      "post": {
        "operationId": "calendar-management__get-event__RetrieveEvent",
        "description": "Returns an event based on its Google Calendar ID.\n",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId",
                  "eventId"
                ],
                "properties": {
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use the 'primary' keyword for the primary calendar of the currently logged in user."
                  },
                  "eventId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Event identifier."
                  },
                  "maxAttendees": {
                    "type": "number",
                    "nullable": false,
                    "title": "The maximum number of attendees to include in the response. If there are more than the specified number of attendees, only the participant is returned."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__list-calendars__ListUserCalendars": {
      "post": {
        "operationId": "calendar-management__list-calendars__ListUserCalendars",
        "description": "Retrieve the list of calendars from the user's calendar list using the Google Calendar API.\n",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "maxResults": {
                    "type": "number",
                    "nullable": false,
                    "title": "Specifies the maximum number of results to be returned by the request. The maximum can not exceed 250. The default value is 100."
                  },
                  "minAccessRole": {
                    "enum": [
                      "freeBusyReader",
                      "owner",
                      "reader",
                      "writer"
                    ],
                    "title": "Filters the calendars returned by the minimum access role the user has. Options include 'freeBusyReader', 'owner', 'reader', and 'writer'."
                  },
                  "pageToken": {
                    "type": "string",
                    "nullable": false,
                    "title": "Token specifying which result page to return. Used for pagination."
                  },
                  "showDeleted": {
                    "type": "boolean",
                    "nullable": false,
                    "title": "Determines whether to include deleted calendar list entries. The default is false."
                  },
                  "showHidden": {
                    "type": "boolean",
                    "nullable": false,
                    "title": "Determines whether to show hidden entries. The default is false."
                  },
                  "syncToken": {
                    "type": "string",
                    "nullable": false,
                    "title": "Token obtained from the nextSyncToken field returned on the last page of results from the previous list request. It makes the result of this list request contain only entries that have changed since then."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__list-events__ListCalendarEvents": {
      "post": {
        "operationId": "calendar-management__list-events__ListCalendarEvents",
        "description": "Returns events on the specified calendar.\nInform the user that there are move events if nextPageToken is present in the result. Instead of printing the event ID to the user, prefer to print the event summary.",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId"
                ],
                "properties": {
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use the 'primary' keyword for the primary calendar of the currently logged in user."
                  },
                  "maxResults": {
                    "type": "number",
                    "nullable": false,
                    "title": "Maximum number of events returned on one result page. The number of events in the resulting page may be less than this value, or none at all, even if there are more events matching the query."
                  },
                  "pageToken": {
                    "type": "string",
                    "nullable": false,
                    "title": "Token specifying which result page to return."
                  },
                  "q": {
                    "type": "string",
                    "nullable": false,
                    "title": "Free text search terms to find events that match these terms in the following fields: summary, description, location, attendee's displayName, attendee's email."
                  },
                  "timeMax": {
                    "type": "string",
                    "nullable": false,
                    "title": "Upper bound (exclusive) for an event's start time to filter by. The default is not to filter by start time. Must be an RFC3339 timestamp with mandatory time zone offset."
                  },
                  "timeMin": {
                    "type": "string",
                    "nullable": false,
                    "title": "Lower bound (exclusive) for an event's end time to filter by. The default is not to filter by end time. Must be an RFC3339 timestamp with mandatory time zone offset."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/calendar-management__update-event__UpdateEvent": {
      "post": {
        "operationId": "calendar-management__update-event__UpdateEvent",
        "description": "Updates an existing event in Google Calendar based on its Google Calendar ID.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "calendarId",
                  "eventId",
                  "event"
                ],
                "properties": {
                  "calendarId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Calendar identifier. Use 'primary' for the primary calendar of the currently logged in user."
                  },
                  "eventId": {
                    "type": "string",
                    "nullable": false,
                    "title": "Event identifier."
                  },
                  "event": {
                    "type": "object",
                    "required": [
                      "summary",
                      "location",
                      "start",
                      "end"
                    ],
                    "properties": {
                      "summary": {
                        "type": "string",
                        "nullable": false,
                        "title": "Title of the event."
                      },
                      "location": {
                        "type": "string",
                        "nullable": false,
                        "title": "Geographical location of the event as free-form text."
                      },
                      "start": {
                        "type": "object",
                        "required": [
                          "dateTime",
                          "timeZone"
                        ],
                        "properties": {
                          "dateTime": {
                            "type": "string",
                            "nullable": false,
                            "title": "The start time of the event, as a combined date-time value (formatted according to RFC3339). A time zone offset is required unless a time zone is explicitly specified in timeZone."
                          },
                          "timeZone": {
                            "type": "string",
                            "nullable": false,
                            "title": "The time zone in which the time is specified. (Formatted as an IANA Time Zone Database name, e.g. 'Europe/Zurich'.)"
                          }
                        },
                        "nullable": false
                      },
                      "end": {
                        "type": "object",
                        "required": [
                          "dateTime",
                          "timeZone"
                        ],
                        "properties": {
                          "dateTime": {
                            "type": "string",
                            "nullable": false,
                            "title": "The end time of the event, as a combined date-time value (formatted according to RFC3339). A time zone offset is required unless a time zone is explicitly specified in timeZone."
                          },
                          "timeZone": {
                            "type": "string",
                            "nullable": false,
                            "title": "The time zone in which the time is specified. (Formatted as an IANA Time Zone Database name, e.g. 'Europe/Zurich'.)"
                          }
                        },
                        "nullable": false
                      },
                      "attendees": {
                        "items": {
                          "type": "object",
                          "required": [
                            "email",
                            "displayName",
                            "optional"
                          ],
                          "properties": {
                            "email": {
                              "type": "string",
                              "nullable": false
                            },
                            "displayName": {
                              "type": "string",
                              "nullable": false
                            },
                            "optional": {
                              "type": "boolean",
                              "nullable": false
                            }
                          },
                          "nullable": false
                        },
                        "type": "array",
                        "nullable": false
                      },
                      "extendedProperties": {
                        "type": "object",
                        "required": [
                          "private",
                          "shared"
                        ],
                        "properties": {
                          "private": {
                            "type": "object",
                            "properties": {},
                            "nullable": false
                          },
                          "shared": {
                            "type": "object",
                            "properties": {},
                            "nullable": false
                          }
                        },
                        "nullable": false
                      },
                      "hangoutLink": {
                        "type": "string",
                        "nullable": false
                      },
                      "reminders": {
                        "type": "object",
                        "required": [
                          "useDefault",
                          "overrides"
                        ],
                        "properties": {
                          "useDefault": {
                            "type": "boolean",
                            "nullable": false
                          },
                          "overrides": {
                            "items": {
                              "type": "object",
                              "required": [
                                "method",
                                "minutes"
                              ],
                              "properties": {
                                "method": {
                                  "type": "string",
                                  "nullable": false
                                },
                                "minutes": {
                                  "type": "number",
                                  "nullable": false
                                }
                              },
                              "nullable": false
                            },
                            "type": "array",
                            "nullable": false
                          }
                        },
                        "nullable": false
                      }
                    },
                    "nullable": false
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/gmail__send-message__SendMessage": {
      "post": {
        "operationId": "gmail__send-message__SendMessage",
        "description": "Sending the message.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "userId",
                  "to",
                  "from",
                  "subject",
                  "body"
                ],
                "properties": {
                  "userId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The user's email address. The special value me can be used to indicate the authenticated user."
                  },
                  "to": {
                    "type": "string",
                    "nullable": false,
                    "title": "Address of the recipient."
                  },
                  "from": {
                    "type": "string",
                    "nullable": false,
                    "title": "Address of the sender."
                  },
                  "subject": {
                    "type": "string",
                    "nullable": false,
                    "title": "The message subject."
                  },
                  "body": {
                    "type": "string",
                    "nullable": false,
                    "title": "The message body."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-drive__create-file__CreateFile": {
      "post": {
        "operationId": "google-drive__create-file__CreateFile",
        "description": "Creates a new file and supports uploading media with specified MIME types. Maximum file size: 5 MB, Accepted Media MIME types: */*. Note: Specify a valid MIME type, rather than the literal */* value.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "name",
                  "mimeType",
                  "fileData"
                ],
                "properties": {
                  "name": {
                    "type": "string",
                    "nullable": false,
                    "title": "The name of the file, including the file extension."
                  },
                  "mimeType": {
                    "type": "string",
                    "nullable": false,
                    "title": "The MIME type of the file."
                  },
                  "fileData": {
                    "type": "string",
                    "title": "New content of the file."
                  },
                  "parents": {
                    "items": {
                      "type": "string",
                      "nullable": false
                    },
                    "type": "array",
                    "nullable": false,
                    "title": "The IDs of the parent folders which contain the file."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__add-column__AddColumn": {
      "post": {
        "operationId": "google-sheets__add-column__AddColumn",
        "description": "Updates next empty column in specified spreadsheet sheet, returns updated sheet\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId",
                  "rows"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The ID of the spreadsheet to update."
                  },
                  "sheetName": {
                    "type": "string",
                    "title": "The name of the sheet to update. If not specified, the first sheet will be updated."
                  },
                  "rows": {
                    "items": {
                      "oneOf": [
                        {
                          "type": "boolean"
                        },
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "nullable": false
                        }
                      ]
                    },
                    "type": "array",
                    "nullable": false,
                    "title": "The values in the column, each item is a value of a cell."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__add-row__AddRow": {
      "post": {
        "operationId": "google-sheets__add-row__AddRow",
        "description": "Updates next empty row in specified spreadsheet sheet, returns updated sheet\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId",
                  "columns"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The ID of the spreadsheet to update."
                  },
                  "sheetName": {
                    "type": "string",
                    "title": "The name of the sheet to update. If not specified, the first sheet will be updated."
                  },
                  "columns": {
                    "items": {
                      "oneOf": [
                        {
                          "type": "boolean"
                        },
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "nullable": false
                        }
                      ]
                    },
                    "type": "array",
                    "nullable": false,
                    "title": "The values in the row, each item is a value of a cell."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__append-rows__AppendRows": {
      "post": {
        "operationId": "google-sheets__append-rows__AppendRows",
        "description": "Updates next empty rows in specified spreadsheet sheet.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId",
                  "rows"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The ID of the spreadsheet to update."
                  },
                  "sheetName": {
                    "type": "string",
                    "title": "The name of the sheet to update. If not specified, the first sheet will be updated."
                  },
                  "rows": {
                    "items": {
                      "items": {
                        "oneOf": [
                          {
                            "type": "boolean"
                          },
                          {
                            "type": "number"
                          },
                          {
                            "type": "string",
                            "nullable": false
                          }
                        ]
                      },
                      "type": "array",
                      "nullable": false
                    },
                    "type": "array",
                    "nullable": false,
                    "description": "rows = [\n  //First row data\n  [\n    // First row and first column value\n    \"example\",\n    // First row and second column value\n    1,\n    // First row and third column value\n    true\n  ]\n  //second row data\n  []\n]",
                    "title": "The values in the rows, each item is a list of values in a row. Use it like this:"
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__find-rows__FindRows": {
      "post": {
        "operationId": "google-sheets__find-rows__FindRows",
        "description": "Fetches the specified sheet rows within spreadsheet, filters the rows by specified column values.\n",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The spreadsheet."
                  },
                  "sheetTitleOrId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The title or ID of the sheet. If not specified, the first sheet will be used."
                  },
                  "columnIndexesOrNames": {
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "nullable": false
                        }
                      ]
                    },
                    "type": "array",
                    "nullable": false,
                    "title": "Column indexes or names from the header row to match. And operator is used to match all columns."
                  },
                  "columnValues": {
                    "items": {
                      "oneOf": [
                        {
                          "type": "string"
                        },
                        {
                          "type": "number"
                        },
                        {
                          "type": "boolean"
                        }
                      ]
                    },
                    "type": "array",
                    "nullable": false,
                    "title": "Column values to match."
                  },
                  "maxRows": {
                    "type": "number",
                    "nullable": false,
                    "title": "Maximum number of rows to return. If not specified, all rows will be returned."
                  },
                  "headerRowIndex": {
                    "type": "number",
                    "nullable": false,
                    "title": "The row index of the header row. If not specified, the first row will be used."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__get-spreadsheet__RetrieveSpreadsheet": {
      "post": {
        "operationId": "google-sheets__get-spreadsheet__RetrieveSpreadsheet",
        "description": "Fetches the specified spreadsheet, with optional grid data inclusion.\n",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The spreadsheet to request."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__post-sheets__CreateSheet": {
      "post": {
        "operationId": "google-sheets__post-sheets__CreateSheet",
        "description": "Creates a new sheet in specified (existing) spreadsheet and returns the created sheet data.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId",
                  "sheet"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "ID of the spreadsheet to create the sheet in."
                  },
                  "sheet": {
                    "type": "object",
                    "required": [
                      "title"
                    ],
                    "properties": {
                      "title": {
                        "type": "string",
                        "nullable": false,
                        "title": "The title of the sheet."
                      },
                      "rows": {
                        "items": {
                          "type": "object",
                          "properties": {
                            "columns": {
                              "items": {
                                "type": "object",
                                "properties": {
                                  "boolValue": {
                                    "type": "boolean",
                                    "nullable": false,
                                    "title": "Represents a boolean value."
                                  },
                                  "formulaValue": {
                                    "type": "string",
                                    "nullable": false,
                                    "title": "Represents a formula."
                                  },
                                  "numberValue": {
                                    "type": "number",
                                    "nullable": false,
                                    "title": "Represents a double value. Note: Dates, Times and DateTimes are represented as doubles in SERIAL_NUMBER format."
                                  },
                                  "stringValue": {
                                    "type": "string",
                                    "nullable": false,
                                    "title": "Represents a string value. Leading single quotes are not included. For example, if the user typed `'123` into the UI, this would be represented as a `stringValue` of `'123'`."
                                  }
                                },
                                "nullable": false
                              },
                              "type": "array",
                              "nullable": false,
                              "title": "The values in the column, each item is one value"
                            }
                          },
                          "nullable": false
                        },
                        "type": "array",
                        "nullable": false,
                        "title": "The values in the row, each item is one row. If you want to add multiple rows you must add multiple items to this list."
                      }
                    },
                    "nullable": false,
                    "title": "The sheet to be created."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__post-spreadsheets__CreateSpreadsheet": {
      "post": {
        "operationId": "google-sheets__post-spreadsheets__CreateSpreadsheet",
        "description": "Creates a new spreadsheet and returns the created spreadsheet.\n",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheet"
                ],
                "properties": {
                  "spreadsheet": {
                    "type": "object",
                    "required": [
                      "title",
                      "sheets"
                    ],
                    "properties": {
                      "title": {
                        "type": "string",
                        "nullable": false,
                        "title": "The title of the spreadsheet."
                      },
                      "sheets": {
                        "items": {
                          "type": "object",
                          "required": [
                            "title"
                          ],
                          "properties": {
                            "title": {
                              "type": "string",
                              "nullable": false,
                              "title": "The title of the sheet."
                            },
                            "rows": {
                              "items": {
                                "type": "object",
                                "properties": {
                                  "columns": {
                                    "items": {
                                      "oneOf": [
                                        {
                                          "type": "string"
                                        },
                                        {
                                          "type": "number"
                                        },
                                        {
                                          "type": "boolean"
                                        }
                                      ]
                                    },
                                    "type": "array",
                                    "nullable": false,
                                    "title": "The values in the column, each item is one value"
                                  }
                                },
                                "nullable": false
                              },
                              "type": "array",
                              "nullable": false,
                              "title": "The values in the row, each item is one row. If you want to add multiple rows you must add multiple items to this list."
                            }
                          },
                          "nullable": false
                        },
                        "type": "array",
                        "nullable": false,
                        "title": "The sheets in the spreadsheet."
                      }
                    },
                    "nullable": false,
                    "title": "The spreadsheet to be created."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    },
    "/api/hub/perform/google-sheets__put-spreadsheets__UpdateSpreadsheet": {
      "post": {
        "operationId": "google-sheets__put-spreadsheets__UpdateSpreadsheet",
        "description": "Updates specified spreadsheet sheet, returns updated sheet.\nUse the `get-spreadsheet` usecase to get the current data.\nRows and columns are indexed from 0. The data is written to the sheet starting from the cell specified by updatePosition input.",
        "x-openai-isConsequential": true,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "spreadsheetId",
                  "sheetName",
                  "updatePosition",
                  "rows"
                ],
                "properties": {
                  "spreadsheetId": {
                    "type": "string",
                    "nullable": false,
                    "title": "The ID of the spreadsheet to update."
                  },
                  "sheetName": {
                    "type": "string",
                    "nullable": false,
                    "title": "The name of the sheet to update."
                  },
                  "updatePosition": {
                    "type": "object",
                    "required": [
                      "row",
                      "column"
                    ],
                    "properties": {
                      "row": {
                        "type": "number",
                        "nullable": false
                      },
                      "column": {
                        "type": "number",
                        "nullable": false
                      }
                    },
                    "nullable": false,
                    "title": "The cell from which to write data."
                  },
                  "rows": {
                    "items": {
                      "type": "object",
                      "required": [
                        "columns"
                      ],
                      "properties": {
                        "columns": {
                          "items": {
                            "type": "object",
                            "properties": {
                              "boolValue": {
                                "type": "boolean",
                                "nullable": false,
                                "title": "Represents a boolean value."
                              },
                              "formulaValue": {
                                "type": "string",
                                "nullable": false,
                                "title": "Represents a formula."
                              },
                              "numberValue": {
                                "type": "number",
                                "nullable": false,
                                "title": "Represents a double value. Note: Dates, Times and DateTimes are represented as doubles in SERIAL_NUMBER format."
                              },
                              "stringValue": {
                                "type": "string",
                                "nullable": false,
                                "title": "Represents a string value. Leading single quotes are not included. For example, if the user typed `'123` into the UI, this would be represented as a `stringValue` of `'123'`."
                              }
                            },
                            "nullable": false
                          },
                          "type": "array",
                          "nullable": false,
                          "title": "The values in the column, each item is one cell"
                        }
                      },
                      "nullable": false
                    },
                    "type": "array",
                    "nullable": false,
                    "description": "Rows contains the values in the row, each item is one row. If you want to add multiple rows you must add multiple items to this list.",
                    "title": "The data to be written to the sheet."
                  }
                },
                "nullable": true
              }
            }
          }
        },
        "responses": {
          "default": {
            "description": "Tool response"
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://pod.superface.ai"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearer_token": {
        "type": "http",
        "scheme": "bearer"
      }
    },
    "schemas": {
      "some": {
        "type": "string"
      }
    }
  },
  "externalDocs": {
    "description": "Privacy Policy",
    "url": "https://pod.superface.ai/hub/privacy-policy/gpt/b8dixyok0f"
  }
}

webPilot

Start with a Request: Users can either directly request the 'longContentWriter' to write a long form article or choose to use 'webPageReader' for information gathering before content creation. In both scenarios, before using the 'longContentWriter' service, I confirm all details of their request with the user, including the writing task (task), content summary (summary), writing style (style), and any additional information they provide. Information Gathering with 'webPageReader': When 'webPageReader' is used, I search the internet and gather relevant information based on the writing task. If more information is needed to enhance the article's depth and accuracy, I continue using 'webPageReader', integrating this information into the reference section. Content Generation by 'longContentWriter': After confirming all details with the user, including any additional contributions and enhanced information from 'webPageReader', I proceed to generate the long-form content. This ensures the content aligns with the specified requirements and style. Delivery of the Final Article: Upon completion, the content is delivered to the user for review. They can request revisions or additional information if necessary. Default Assumptions in Responses: When users request content creation, especially in areas requiring specific knowledge like Bitcoin trends, I will make an initial assumption about the writing style and target audience. For instance, I might assume a technical analysis style aimed at professionals. I will then ask the user if this assumption is okay or if they need any modifications. This approach helps streamline the content creation process.

  • POST /api/readvisit web page
  • POST /api/writegenerate a book
Ursprüngliches API-Schema
{
  "openapi": "3.1.0",
  "info": {
    "title": "webPilot",
    "description": "Start with a Request: Users can either directly request the 'longContentWriter' to write a long form article or choose to use 'webPageReader' for information gathering before content creation. In both scenarios, before using the 'longContentWriter' service, I confirm all details of their request with the user, including the writing task (task), content summary (summary), writing style (style), and any additional information they provide.\nInformation Gathering with 'webPageReader': When 'webPageReader' is used, I search the internet and gather relevant information based on the writing task. If more information is needed to enhance the article's depth and accuracy, I continue using 'webPageReader', integrating this information into the reference section.\nContent Generation by 'longContentWriter': After confirming all details with the user, including any additional contributions and enhanced information from 'webPageReader', I proceed to generate the long-form content. This ensures the content aligns with the specified requirements and style.\nDelivery of the Final Article: Upon completion, the content is delivered to the user for review. They can request revisions or additional information if necessary.\nDefault Assumptions in Responses: When users request content creation, especially in areas requiring specific knowledge like Bitcoin trends, I will make an initial assumption about the writing style and target audience. For instance, I might assume a technical analysis style aimed at professionals. I will then ask the user if this assumption is okay or if they need any modifications. This approach helps streamline the content creation process.",
    "version": "v1.1"
  },
  "servers": [
    {
      "url": "https://gpts.webpilot.ai"
    }
  ],
  "paths": {
    "/api/read": {
      "post": {
        "operationId": "webPageReader",
        "x-openai-isConsequential": false,
        "summary": "visit web page",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/visitWebPageRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/visitWebPageResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/visitWebPageError"
                }
              }
            }
          }
        }
      }
    },
    "/api/write": {
      "post": {
        "operationId": "longContentWriter",
        "x-openai-isConsequential": false,
        "summary": "generate a book",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/generateContentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/generateContentResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/generateContentError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "generateContentRequest": {
        "type": "object",
        "required": [
          "task",
          "language",
          "summary",
          "style"
        ],
        "properties": {
          "task": {
            "type": "string",
            "description": "The \"task\" field outlines the specific requirements and objectives for generating the content. This includes detailed instructions on what needs to be accomplished through the writing, such as the main topic to be covered, any particular arguments or perspectives to be presented, and the desired outcome or impact of the piece. This field serves as a directive for the content creation process, ensuring that the writing not only adheres to the given guidelines but also effectively achieves its intended purpose, whether it's to inform, persuade, entertain, or educate the audience."
          },
          "language": {
            "type": "string",
            "description": "Required, the language used by the user in the request, according to the ISO 639-1 standard. For Chinese, use zh-CN for Simplified Chinese and zh-TW for Traditional Chinese."
          },
          "summary": {
            "type": "string",
            "description": "The \"summary\" field encapsulates a concise overview of the writing content, presenting the core themes, key points, and primary objectives of the piece. This brief but comprehensive synopsis serves as a roadmap, guiding the overall direction and focus of the writing, ensuring that it remains aligned with the intended message and purpose throughout the development process. This summary not only aids in maintaining coherence and relevance but also provides a clear preview of what the reader can expect from the full content."
          },
          "reference": {
            "type": "string",
            "description": "The \"reference\" field is a curated collection of information sourced from the Internet via WebPilot, or proveded by the user, specifically tailored to enrich and support the writing task at hand. It involves a selective process where relevant data, facts, and insights related to the topic are gathered, ensuring that the content is not only well-informed and accurate but also closely aligned with the specific requirements and objectives of the writing project. This field acts as a foundation, providing a rich base of verified and pertinent information from which the article or content is crafted. This field would be long."
          },
          "style": {
            "type": "string",
            "description": "The \"style\" field in content creation is a comprehensive framework that includes four essential components - the writing tone or style, the target audience, the language style, and inspiration from a notable content creator. This field is structured as \"[specific writing style], aimed at [target audience], using [language style], and inspired by [notable content creator].\" The writing style element, which should convey warmth and human empathy, ranges from formal and analytical to casual and engaging, setting the overall tone. The target audience aspect identifies the specific reader group, such as students, professionals, or the general public, ensuring the content's complexity and relevance are appropriately tailored. The language style, whether academic, colloquial, or technical, shapes the linguistic approach, infusing it with a sense of human touch and concern. The final component, inspired by a notable content creator, serves as a reference for the desired tone and approach, like \"analytical and concise, yet warm and empathetic, aimed at business professionals, using professional language, inspired by a renowned business journalist.\" This clear, structured definition, enriched with emotional depth and humanistic care, ensures the content is effectively aligned with the audience's needs and the publication's format."
          }
        }
      },
      "generateContentResponse": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "Result message of the request"
          }
        }
      },
      "generateContentError": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "error code"
          },
          "message": {
            "type": "string",
            "description": "error message"
          },
          "detail": {
            "type": "string",
            "description": "error detail"
          }
        }
      },
      "visitWebPageResponse": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "The title of this web page"
          },
          "content": {
            "type": "string",
            "description": "The content of the web page's url to be summarized"
          },
          "meta": {
            "type": "object",
            "description": "The Html meta info of the web page"
          },
          "links": {
            "type": "array",
            "description": "Some links in the web page",
            "items": {
              "type": "string"
            }
          },
          "extra_search_results": {
            "type": "array",
            "description": "Additional Search results",
            "items": {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string",
                  "description": "the title of this search result"
                },
                "link": {
                  "type": "string",
                  "description": "the link of this search result"
                },
                "snippet": {
                  "type": "string",
                  "description": "the snippet of this search result"
                }
              }
            }
          },
          "todo": {
            "type": "array",
            "description": "what to do with the content",
            "items": {
              "type": "string"
            }
          },
          "tips": {
            "type": "array",
            "description": "Tips placed at the end of the answer",
            "items": {
              "type": "string"
            }
          },
          "rules": {
            "description": "Adherence is required when outputting content.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "visitWebPageRequest": {
        "type": "object",
        "required": [
          "link",
          "ur"
        ],
        "properties": {
          "link": {
            "type": "string",
            "description": "Required, The web page's url to visit and retrieve content from."
          },
          "ur": {
            "type": "string",
            "description": "Required, a clear statement of the user's request, can be used as a search query and may include search operators."
          },
          "lp": {
            "type": "boolean",
            "description": "Required, Whether the link is directly provided by the user"
          },
          "rt": {
            "type": "boolean",
            "description": "If the last request doesn't meet user's need, set this to true when trying to retry another request."
          },
          "l": {
            "type": "string",
            "description": "Required, the language used by the user in the request, according to the ISO 639-1 standard. For Chinese, use zh-CN for Simplified Chinese and zh-TW for Traditional Chinese."
          }
        }
      },
      "visitWebPageError": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "error code"
          },
          "message": {
            "type": "string",
            "description": "error message"
          },
          "detail": {
            "type": "string",
            "description": "error detail"
          }
        }
      }
    }
  }
}