Update entity record

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Changes the fields you send on one record and returns the whole updated record.

This merges rather than replaces. A field you leave out keeps the value it already has, so you can send a single field on its own. Base44 stores only the fields the entity's schema declares and drops the rest, so a misspelled name is left out of the record instead of failing the call. Base44 also assigns id, created_date, updated_date, created_by and created_by_id, and ignores them if you send them.

Row-level security decides this differently from a read. A record the entity's rls update rule doesn't cover reports 403 even when the caller can't read it, so a 403 here tells you the record exists. Field-level rules can refuse a change to one field while allowing the rest.

Updating a record triggers the app's webhooks and any automation or workflow that listens for this entity.

This endpoint is limited to 100 requests per minute per app.

<Note>This endpoint accepts a personal API key belonging to a user with access to the app. A read-only key is refused, and workspace API keys are not accepted.</Note>

put/api/apps/{app_id}/entities/{entity_name}/{entity_id}

Path parameters

entity_idstring required

ID of the record, as id in the response of List entity records.

ID of the record, as id in the response of List entity records.

app_idstring required

ID of the app that owns the entity.

ID of the app that owns the entity.

entity_namestring required

Name of the entity, exactly as List entity schemas reports it.

Name of the entity, exactly as List entity schemas reports it.

Request body

object required

The record's fields, as a flat JSON object using the names the entity's schema declares.

Response

The updated record.

idstring nullable

ID of the record. Pass it as entity_id to Get entity record, Update entity record or Delete entity record.

created_datestring nullable

When the record was created, as a UTC timestamp in ISO 8601 format. A record Base44 has just created carries a Z suffix, and a record read back from storage does not.

updated_datestring nullable

When the record last changed, as a UTC timestamp in ISO 8601 format. A record Base44 has just created carries a Z suffix, and a record read back from storage does not.

created_bystring nullable

Email of the app user who created the record, or anonymous when a visitor created it on an app that needs no login. Apps that hide record authorship leave this field out of the response.

created_by_idstring nullable

ID of the app user who created the record, or anonymous when a visitor created it on an app that needs no login.

is_sampleboolean nullable

Whether Base44 stored the record as sample data while the app was being built. A record you create reports false.

Example response

{
  "id": "6886b8d390dc7e2f4a2c91b3",
  "created_date": "2026-06-01T09:23:41.481000",
  "updated_date": "2026-06-04T14:07:02.115000",
  "created_by": "jane@acme.com",
  "created_by_id": "6874b0c2e1a94d0031bb77de"
}

Changes

No recorded changes to this endpoint across all 1 revision of this API.