Skip to main content
This page is part of an AI coding agent skill and is written for agents, not humans. For the human-readable Base44 docs, see the developer documentation.

Integrations Module

Access third-party services via base44.integrations.

Types of Integrations

  1. Core/Built-in: AI, email, file uploads (available by default)
  2. Catalog integrations: Pre-built connectors from Base44 catalog
  3. Custom integrations: Your own OpenAPI-based integrations

Accessing Integrations

Core Integrations

InvokeLLM (AI Text Generation)

Generate text or structured JSON data using AI models.
Parameters:
  • prompt (string, required): The prompt text to send to the model
  • model (string, optional): Override the app-level model setting for this call. One of: gemini_3_8_flash, gpt_6_luna, claude-sonnet-5, claude_opus_5_5, gpt_6_sol, gpt_6_astra, claude_fable_5_1, glm_5_2, gemini_3_1_pro, gpt_5_4, claude_sonnet_4_6, claude_opus_4_6, claude_opus_4_7, claude_opus_4_8, claude_opus_5, gpt_5_6_terra, gpt_5_6_sol, gpt_5_6_luna
  • add_context_from_internet (boolean, optional): If true, uses Google Search/Maps/News for real-time context. Default false
  • response_json_schema (object, optional): JSON schema for structured output
  • file_urls (string[], optional): URLs of uploaded files for context. Don’t use together with add_context_from_internet
InvokeLLM is a single call with no tools. Don’t chain it to simulate an agent loop — for a tool-using agent, build a code agent on the AI gateway. See ai-gateway.md.

GenerateImage

Create AI-generated images from text prompts, optionally using existing images as references.
Parameters:
  • prompt (string, required): Description of the image. When passing existing_image_urls, describe what to do with the reference images instead
  • existing_image_urls (string[], optional): URLs of images to use as references (edit, style match, visual context). Unreadable images are skipped; if none can be read, the request fails

SendEmail

Send emails to registered users of your app. To email anyone else, the app needs a paid plan and a connected custom domain.
Parameters:
  • to (string, required): Recipient email address
  • subject (string, required): Email subject line
  • body (string, optional): HTML email body. Same as html — set one or the other, not both
  • html (string, optional): HTML email body. Same as body — set one or the other, not both
  • text (string, optional): Plain-text body. Alone, sends plain-text only; combined with body/html, sends both so the recipient’s mail client picks the one it prefers (keep them saying the same thing)
  • from_name (string, optional): Sender name displayed to recipient (defaults to the app’s name)
  • attachments (EmailAttachment[], optional): Up to 5 files, up to 5 MB each and 10 MB total. Each needs filename and exactly one of file_url (a file your app already uploaded, e.g. via UploadFile/UploadPrivateFile) or content (base64-encoded contents for a file your code generated). Supported filename extensions: csv, docx, gif, ics, jpeg, jpg, md, pdf, png, txt, webp, xlsx
Set at least one of body, html, or text. Limitations:
  • 1 credit per email (2 credits with custom domain)

UploadFile (Public)

Upload files to public storage.

UploadPrivateFile

Upload files to private storage that requires a signed URL to access.

CreateFileSignedUrl

Generate temporary access links for private files.
Parameters:
  • file_uri (string, required): URI from UploadPrivateFile
  • expires_in (number, optional): Expiration time in seconds, from 60 to 3600 (default: 300)

ExtractDataFromUploadedFile

Extract structured data from uploaded files using AI.

Custom Integrations

Custom integrations allow workspace administrators to connect any external API by importing an OpenAPI specification. Use base44.integrations.custom.call() to invoke them.

Syntax

Examples

Response Structure

Errors

call() throws:
  • A plain Error if slug is missing/empty, or if operationId is missing/empty.
  • A Base44Error (404) if the integration or operation isn’t found.
  • A Base44Error (502) if the external API call fails.
  • A Base44Error (504) if the request times out.

Requirements

  • Core integrations: Available on all plans
  • Catalog/Custom integrations: Require Builder plan or higher

Authentication Modes

  • Anonymous or user authentication (base44.integrations): methods run with the current user’s permissions (or anonymously, where the app allows it).
  • Service role authentication (base44.asServiceRole.integrations): methods run with the service role, for backend code that needs elevated permissions.

Type Definitions

Core Integration Parameters

CoreIntegrations

Custom Integrations

IntegrationsModule