auth for developer credentials and connection entries to let users link their own accounts.
Credentials and identity
Google factory options
createGoogleSheets, createGoogleDrive, createGoogleCalendar, and createGmail accept the same options:
createGoogle accepts slug (default 'google'), oauth for sign-in, and auth: { accessToken }. It has no actions, so its auth is not used for API calls. See factory options for the shared options. Linear and Resend options are on the Linear and Email pages.
Link Linear
connections to your root config, then open Settings → Linked accounts. For a custom client, submit the raw schema input:
Share Google app credentials
scopes option on createGmail changes only Gmail’s consent screen, not the shared app. Put google in a collection’s auth.signIn for login and pass connections to the root config for Gmail linking. Sheets, Drive, and Calendar share google.oauth the same way, with a separate entry and callback for each product. See the complete product connection example and redirect setup.
Google actions
Sheets, Drive, and Calendar provide 52 actions in total. Select action properties directly in an agent’stools array, such as [googleSheets.findRows, googleDrive.getFile, googleCalendar.listEvents].
Import each action-name list from its product package for the complete inventory. All three also expose
customApiCall.
Actions are callable properties on each piece instance. Tool slugs use the instance slug and action name, such as google-sheets_appendRow.
- Sheets
appendRowappends to the table;insertRowinserts afterafterRow(default1, just below the header). Row writes usespreadsheetId, numericsheetId, andvaluesas an ordered array or column-letter object;updateRowalso requires a one-basedrow. - Drive
getFilereturns metadata.downloadFilesaves a FrogBot file and returns its reference, not extracted text.uploadFileacceptsfile: { fileId, name? }referring to an accessible FrogBot file. - Calendar
createEventusescalendarId,title, andstartDateTime, with optionalendDateTime(default duration: 30 minutes). Date-times must include a timezone.findFreeBusyPeriodstakescalendarIds,startDate, andendDateand returns busy intervals and per-calendar errors.
Custom API calls
Gmail, Sheets, Drive, Calendar and the provider packages in More packages, except Exa, Front, Linear and Monday, have acustomApiCall action for endpoints their other actions don’t cover. It sends the request with the connected credential and works the same way in every piece.
The result is always
{ status, headers, body }. An empty body is null. A non-2xx status throws an error with the piece, the status and the first 500 characters of the body, unless failsafe is true. Redirects are never followed: a 3xx throws, or is returned with failsafe. Slack and Telegram also throw when a 2xx response has ok: false.
With responseType: 'binary', body is the saved file, { id, name, mimeType, size, url }. The file is created as the caller, with access control. Binary calls need an upload collection with file: true; without one the call throws before sending the request.
More packages
Each shipped package is a native FrogBot piece and defines its own actions, triggers, and credential requirements.Pieces without provider credentials
The utility packages arepiece-text-helper, piece-math-helper, piece-date-helper, piece-crypto, piece-csv, piece-xml, piece-qrcode, piece-data-summarizer, piece-http, piece-graphql, piece-file-helper, piece-image-helper, and piece-pdf, all under @frogbotai/.
See Pieces for selecting agent tools and Connections for credential resolution, replacement, and refresh behavior.