Base44 audit log: how to see who logged in and who changed what

Base44 documents one audit log, the Audit Logs API, and it needs an Enterprise plan workspace. On any other plan, a record of who signed in and who changed what is something the app has to write itself. Base44’s documentation puts the security of each app on the person who built it, so the log is yours to build. Below: what each option gives, a pattern to copy, and where a self-made log falls short.

Updated October 22, 2026Based on Base44’s documentation6 min read

Three ways to keep a record of who did what in a Base44 app

The first column comes from Base44’s documentation as of October 22, 2026. The other two are what you build or what Keep44 sets up.

What you need to knowAudit Logs API (Enterprise)A log you build in the appApp on the company server
1. Who can use it?An Enterprise workspace, a workspace API key, admin or owner roleAny plan, whoever builds the appNeeds the hybrid model (Diagnosis first)
2. What does it record?Authentication events, entity changes, administrative actionsOnly what the app is told to writeWhat the app writes, plus the server’s and Entra’s own records
3. How wide is it?Every app in the workspaceOne appOne app
4. Where does the log live?Base44’s cloudIn the app’s data on Base44In SQL Server, in your backup plan
5. Can an app editor change it?Not stated in the docs readYes, unless the entity’s access rules block itControlled by database permissions
6. What does it cost?Enterprise, quote from salesYour current plan, plus credits to build itMigration from $5,000, plus a Base44 plan with GitHub sync

Do you need an audit log at all?

If the app holds nothing sensitive and a handful of people use it, probably not. You need one when someone can ask “who changed this order?” or “who exported the customer list?” and the answer matters: money, staff data, customers, or an IT team that has to approve the app. Questions like these come up in most security reviews, and they are on the checklist IT runs before approving a Base44 app.

Base44 holds SOC 2 Type II certification for the platform. That covers how Base44 runs its service. It does not record what the people using your app do inside it.

A log you build in the app

On a plan without the Audit Logs API, the usual route is an entity that the app writes to. Ask the Base44 chat for it in one message:

Create an entity called AuditLog with the fields user_email (text), action (text), detail (text) and at (date-time). Any signed-in user can create a record, but only admins can read, edit or delete records. Add a function logEvent(action, detail) that reads the signed-in user and creates an AuditLog record, and call it when someone opens the app and each time someone creates, edits or deletes a record.

The function it writes should look like this (adjust the import to your app):

import { base44 } from "@/api/base44Client";

export async function logEvent(action, detail = {}) {
  const user = await base44.auth.me();
  await base44.entities.AuditLog.create({
    user_email: user.email,
    action,                       // "open_app", "delete_order", "export_customers"
    detail: JSON.stringify(detail),
    at: new Date().toISOString()
  });
}

Then open the entity’s settings and check that the access rules really are “anyone signed in can create, only admins can read or change”. Keep44 has not tested this exact prompt, so confirm the rules were applied before you trust the log.

Where a self-made log falls short

  • It records only what the code calls. A screen or action you forgot leaves a gap.
  • No real sign-in events. A request on Base44’s feedback board asks for login and logout events and suggests writing a record on page load as a workaround. That records “opened the app”, not a verified sign-in.
  • Editors can change the code that writes the log. Anyone with edit access to the app can remove a logEvent call, so the log proves less than one the platform keeps for you.
  • Retention and export are yours. Export the table to CSV on a schedule and decide how long to keep it. The log holds email addresses, which are personal data.

On Enterprise, the Audit Logs API returns authentication events, entity changes and administrative actions for every app in the workspace, and can feed a SIEM. Callers need the admin or owner role and a workspace API key. The Audit Logs docs do not state how long events are kept.

What IT asks about an audit log

Have an answer to each before the security review.

  • Events: sign-in, viewing sensitive records, changes, deletions, exports and admin actions.
  • Who can read it: a short, named list.
  • Who can change or delete it: ideally nobody who builds or uses the app.
  • How long it is kept: and who decides.
  • How it leaves the app: a scheduled export, an API, or a feed to the log tool IT already uses.
  • When someone leaves: their past records stay, and their access ends the same day.

When the app runs on the company server

In the hybrid model the app runs on the client’s servers and the client keeps building it in Base44. The log then lives in a SQL Server table that IT already backs up, and database permissions decide who can read it. The app should be able to insert rows but not edit or delete them. Company sign-in through Entra ID adds Entra’s own sign-in records, which the app’s editors cannot touch. How that works is in the guides to Base44 SSO with Microsoft Entra ID and to running a Base44 app on-premise.

On the client’s servers, the log sits in the database and backup plan IT already runs.

Testing status

Tested in the lab on October 6 to 8, 2026: Windows Server 2025, IIS, SQL Server and a free Entra ID tenant, with a demo app built in Base44. The sync and company sign-in worked. The AuditLog table, the insert-only permission and the prompt above are design, not yet tested in the lab. Whether it fits your app is confirmed in the Diagnosis.

When Keep44 isn’t the answer: if your workspace already has an Enterprise plan, use the Audit Logs API. If the app is small and holds nothing sensitive, the entity above is enough on its own.

Sources

Get the next guide by email

One email when a new guide is out. To unsubscribe, reply to any of them.

No ads. You can unsubscribe or ask for it to be deleted at contact@keep44.com.

A record of who did what, inside your own network.

The Diagnosis reviews the app piece by piece and gives you a report: which route fits, whether it can run on your servers with company sign-in and a log IT controls, what has to be rebuilt, and a fixed price for the migration. All it takes is the code export and 30 minutes with whoever knows the infrastructure. See a sample report.

$500 · Fully credited if you go ahead with the migration

Not ready to book? Take the free 3-minute check and get a short report on screen.