Integrations module for calling integration methods. This module provides access to integration methods for interacting with external services. Unlike the connectors module that gives you raw OAuth tokens, integrations provide pre-built functions that Base44 executes on your behalf. There are two types of integrations:
-
Built-in integrations (
Core): Pre-built functions provided by Base44 for common tasks such as AI-powered text generation, image creation, file uploads, and email. Access core integration methods using: -
Custom integrations (
custom): Pre-configured external APIs. Custom integration calls are proxied through Base44’s backend, so credentials are never exposed to the frontend. Access custom integration methods using:To call a custom integration, it must be pre-configured by a workspace administrator who imports an OpenAPI specification.
- Anonymous or User authentication (
base44.integrations): Integration methods are invoked with the current user’s permissions. Anonymous users invoke methods without authentication, while authenticated users invoke methods with their authentication context. - Service role authentication (
base44.asServiceRole.integrations): Integration methods are invoked with elevated admin-level permissions. The methods execute with admin authentication context.
Indexable
[packageName: string]: IntegrationPackage
Access to additional integration packages.
Type Declarations
Core
Core: CoreIntegrations
Core package containing built-in Base44 integration functions.
custom
custom: CustomIntegrationsModule
Custom integrations module for calling pre-configured external APIs.
CoreIntegrations
Core package containing built-in Base44 integration functions.
Methods
InvokeLLM()
InvokeLLM(Generate text or structured JSON data using AI models.params):Promise<string|object>
Parameters
Parameters for the LLM invocation
Properties
Properties
The prompt text to send to the model
If set to
true, the LLM will use Google Search, Maps, and News to gather real-time context before answering.If you want structured data back, provide a JSON schema object here. If provided, the function returns a JSON object; otherwise, it returns a string.
A list of file URLs (uploaded via UploadFile) to provide as context/attachments to the LLM. Do not use this together with
add_context_from_internet.Returns
Promise<string | object>
Promise resolving to a string (when no schema provided) or an object (when schema provided).
Examples
GenerateImage()
GenerateImage(Create AI-generated images from text prompts.params):Promise<GenerateImageResult>
Parameters
Parameters for image generation
Properties
Properties
Description of the image to generate.
Returns
GenerateImageResult
URL of the generated image.
Example
UploadFile()
UploadFile(Upload files to public storage and get a URL.params):Promise<UploadFileResult>
Parameters
Parameters for file upload
Properties
Properties
The file object to upload.
Returns
UploadFileResult
URL of the uploaded file.
Example
SendEmail()
SendEmail(Send emails to registered users of your app.params):Promise<any>
Parameters
Parameters for sending email
Properties
Properties
Returns
Promise<any>
Promise resolving when the email is sent.
ExtractDataFromUploadedFile()
ExtractDataFromUploadedFile(Extract structured data from uploaded files based on the specified schema. Start by uploading the file to public storage using theparams):Promise<object>
UploadFile() function. Then, use the file_url parameter to extract structured data from the uploaded file.
Parameters
Parameters for data extraction
Properties
Properties
The URL of the uploaded file to extract data from.
A JSON schema object defining what data fields you want to extract.
Returns
Promise<object>
Promise resolving to the extracted data.
Examples
UploadPrivateFile()
UploadPrivateFile(Upload files to private storage that requires a signed URL to access. Create a signed URL to access uploaded files using theparams):Promise<UploadPrivateFileResult>
CreateFileSignedUrl() function.
Parameters
Parameters for private file upload
Properties
Properties
The file object to upload.
Returns
UploadPrivateFileResult
URI of the uploaded private file, used to create a signed URL.
Examples
CreateFileSignedUrl()
CreateFileSignedUrl(Generate temporary access links for private files. Start by uploading the file to private storage using theparams):Promise<CreateFileSignedUrlResult>
UploadPrivateFile() function. Then, use the file_uri parameter to create a signed URL to access the uploaded file.
Parameters
Parameters for creating signed URL
Properties
Properties
Returns
CreateFileSignedUrlResult
Temporary signed URL to access the private file.
Example
CustomIntegrationsModule
Module for calling custom pre-configured API integrations. Custom integrations allow workspace administrators to connect any external API by importing an OpenAPI specification. Apps in the workspace can then call these integrations using this module.
Methods
call()
call(Call a custom integration endpoint.slug,operationId,params?):Promise<CustomIntegrationCallResponse>
Parameters
Properties
Properties
The integration’s unique identifier, as defined by the workspace admin.
The endpoint in
method:path format. For example, "get:/contacts", or "post:/users/{id}". The method is the HTTP verb in lowercase and the path matches the OpenAPI specification.Optional parameters including payload, pathParams, and queryParams.
Returns
Promise<CustomIntegrationCallResponse>
Promise resolving to the integration call response.

